Play FrameworkでFlag Icon Cssを使ってみる

サイト内に国旗を表示するケース、ありますよね。 画像化して使うこともできますが、MITライセンスでflag-icon-cssが公開されています。

https://github.com/lipis/flag-icon-css

<span class="flag-icon flag-icon-gr"></span>

などのようなタグで国旗を表示することができるようになります。

このwebjarsをPlay Frameworkで使ってみましょう。

build.sbt

"org.webjars" % "flag-icon-css" % "0.6.3"

app/controllers/samples/FlagIconCss.java

package controllers.samples;

import play.i18n.Messages;
import play.mvc.Controller;
import play.mvc.Result;
import views.html.samples.flagiconcss;

public class FlagIconCss extends Controller {

    public static Result index() {
        return ok(flagiconcss.render());
    }

}

app/views/samples/flagiconcss.scala.html

@()
@import play.i18n._

@main(Messages.get("home.title")) {
<span class="flag-icon flag-icon-gr"></span>
<span class="flag-icon flag-icon-gr flag-icon-squared"></span>
}{
        <link rel='stylesheet' href='@routes.WebJarAssets.at(WebJarAssets.locate("css/flag-icon.min.css"))'>
        <link rel='stylesheet' href='@routes.WebJarAssets.at(WebJarAssets.locate("assets/docs.css"))'>

}{
        <script type='text/javascript' src='@routes.WebJarAssets.at(WebJarAssets.locate("assets/docs.js"))'></script>
}

https://github.com/YoshiteruIwasaki/sample-play-java-app/commit/44634d50d47d3ec023969ec22730059f2369092b