package views.html.helper

import play.twirl.api._
import play.twirl.api.TemplateMagic._


     object select_Scope0 {
import play.api.templates.PlayMagic._

class select extends BaseScalaTemplate[play.twirl.api.HtmlFormat.Appendable,Format[play.twirl.api.HtmlFormat.Appendable]](play.twirl.api.HtmlFormat) with play.twirl.api.Template5[play.api.data.Field,Seq[scala.Tuple2[String, String]],Array[scala.Tuple2[Symbol, Any]],FieldConstructor,play.api.i18n.Messages,play.twirl.api.HtmlFormat.Appendable] {

  /**
 * Generate an HTML select.
 *
 * Example:
 * {{{
 * @select(field = myForm("isDone"), options = options(List("Yes","No")))
 * }}}
 *
 * @param field The form field.
 * @param options Sequence of options as pairs of value and HTML.
 * @param args Set of extra attributes ('''_default''' is a special argument).
 * @param handler The field constructor.
 */
  def apply/*14.2*/(field: play.api.data.Field, options: Seq[(String,String)], args: (Symbol,Any)*)(implicit handler: FieldConstructor, messages: play.api.i18n.Messages):play.twirl.api.HtmlFormat.Appendable = {
    _display_ {
      {


Seq[Any](format.raw/*14.152*/("""

"""),_display_(/*16.2*/input(field, args:_*)/*16.23*/ { (id, name, value, htmlArgs) =>_display_(Seq[Any](format.raw/*16.56*/("""
    """),_display_(/*17.6*/defining( if( htmlArgs.contains('multiple) ) "%s[]".format(name) else name )/*17.82*/ { selectName =>_display_(Seq[Any](format.raw/*17.98*/("""
    """),_display_(/*18.6*/defining( ( !field.indexes.isEmpty && htmlArgs.contains('multiple) ) match {
            case true => field.indexes.map( i => field("[%s]".format(i)).value ).flatten.toSet
            case _ => field.value.toSet
    })/*21.7*/{ values =>_display_(Seq[Any](format.raw/*21.18*/("""
        """),format.raw/*22.9*/("""<select id=""""),_display_(/*22.22*/id),format.raw/*22.24*/("""" name=""""),_display_(/*22.33*/selectName),format.raw/*22.43*/("""" """),_display_(/*22.46*/toHtmlArgs(htmlArgs)),format.raw/*22.66*/(""">
            """),_display_(/*23.14*/args/*23.18*/.toMap.get('_default).map/*23.43*/ { defaultValue =>_display_(Seq[Any](format.raw/*23.61*/("""
                """),format.raw/*24.17*/("""<option class="blank" value="">"""),_display_(/*24.49*/defaultValue),format.raw/*24.61*/("""</option>
            """)))}),format.raw/*25.14*/("""
            """),_display_(/*26.14*/options/*26.21*/.map/*26.25*/ { v =>_display_(Seq[Any](format.raw/*26.32*/("""
                """),format.raw/*27.17*/("""<option value=""""),_display_(/*27.33*/v/*27.34*/._1),format.raw/*27.37*/("""" """),_display_(/*27.40*/if(values.contains(v._1))/*27.65*/{_display_(Seq[Any](format.raw/*27.66*/("""selected="selected"""")))}),format.raw/*27.86*/(""">"""),_display_(/*27.88*/v/*27.89*/._2),format.raw/*27.92*/("""</option>
            """)))}),format.raw/*28.14*/("""
        """),format.raw/*29.9*/("""</select>
    """)))})))}),format.raw/*30.7*/("""
""")))}),format.raw/*31.2*/("""
"""))
      }
    }
  }

  def render(field:play.api.data.Field,options:Seq[scala.Tuple2[String, String]],args:Array[scala.Tuple2[Symbol, Any]],handler:FieldConstructor,messages:play.api.i18n.Messages): play.twirl.api.HtmlFormat.Appendable = apply(field,options,args:_*)(handler,messages)

  def f:((play.api.data.Field,Seq[scala.Tuple2[String, String]],Array[scala.Tuple2[Symbol, Any]]) => (FieldConstructor,play.api.i18n.Messages) => play.twirl.api.HtmlFormat.Appendable) = (field,options,args) => (handler,messages) => apply(field,options,args:_*)(handler,messages)

  def ref: this.type = this

}


}

/**
 * Generate an HTML select.
 *
 * Example:
 * {{{
 * @select(field = myForm("isDone"), options = options(List("Yes","No")))
 * }}}
 *
 * @param field The form field.
 * @param options Sequence of options as pairs of value and HTML.
 * @param args Set of extra attributes ('''_default''' is a special argument).
 * @param handler The field constructor.
 */
object select extends select_Scope0.select
              /*
                  -- GENERATED --
                  DATE: Tue May 26 21:50:37 PDT 2015
                  SOURCE: /home/play/deploy/playframework/framework/src/play/src/main/scala/views/helper/select.scala.html
                  HASH: dd7d19ec35400c31889678d91f2ddc0f6450bef0
                  MATRIX: 887->361|1134->511|1163->514|1193->535|1264->568|1296->574|1381->650|1435->666|1467->672|1693->890|1742->901|1778->910|1818->923|1841->925|1877->934|1908->944|1938->947|1979->967|2021->982|2034->986|2068->1011|2124->1029|2169->1046|2228->1078|2261->1090|2315->1113|2356->1127|2372->1134|2385->1138|2430->1145|2475->1162|2518->1178|2528->1179|2552->1182|2582->1185|2616->1210|2655->1211|2706->1231|2735->1233|2745->1234|2769->1237|2823->1260|2859->1269|2908->1285|2940->1287
                  LINES: 26->14|31->14|33->16|33->16|33->16|34->17|34->17|34->17|35->18|38->21|38->21|39->22|39->22|39->22|39->22|39->22|39->22|39->22|40->23|40->23|40->23|40->23|41->24|41->24|41->24|42->25|43->26|43->26|43->26|43->26|44->27|44->27|44->27|44->27|44->27|44->27|44->27|44->27|44->27|44->27|44->27|45->28|46->29|47->30|48->31
                  -- GENERATED --
              */