Skip to content

Instantly share code, notes, and snippets.

@arashi01
Created November 14, 2012 13:13
Show Gist options
  • Select an option

  • Save arashi01/4072014 to your computer and use it in GitHub Desktop.

Select an option

Save arashi01/4072014 to your computer and use it in GitHub Desktop.
Foundation 3 top nav Lift snippet
package org.drugfreezanzibar.drugfreez
package snippet
import net.liftweb.sitemap.FlexMenuBuilder
import net.liftweb.http.DispatchSnippet
import xml.NodeSeq
object Navigation extends DispatchSnippet with FlexMenuBuilder {
override def expandAll: Boolean = true
override protected def expandAny: Boolean = true
override def render: NodeSeq = {
<xml:group>
<ul class="left">
{for (entry <- toRender) yield {
var styles = entry.cssClass.openOr("")
if (entry.current) styles += " active"
entry.kids match {
case Nil =>
<li class={styles}>
<a href={entry.uri}>
{entry.text}
</a>
</li>
case kids =>
<li class={styles + " has-dropdown"}>
<a href={entry.uri}>
{entry.text}
</a>
<ul class="dropdown">
{for (kid <- kids) yield {
<li>
<a href={kid.uri}>
{kid.text}
</a>
</li>
}}
</ul>
</li>
}
}}
</ul>
</xml:group>
}
def dispatch: DispatchIt = {
case "builder" => ignore => render
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment