public function getMainMenu() { $url = $this->controller->url; $translateEngine = $this->controller->getTranslateEngine(); $jquery = $this->controller->jquery; $navbar = $jquery->bootstrap()->htmlNavbar("navbarJS"); $navbar->setClass(""); $navbar->fromArray(array("brand" => $translateEngine->translate(1, "index.home", "home"), "brandHref" => $url->get("index"))); $domaines = \Domaine::find("isNull(idParent)"); $navbar->fromDatabaseObjects($domaines, function ($domaine) use($url, $translateEngine) { $libelle = $translateEngine->translate($domaine->getId(), "domaine.libelle", $domaine->getLibelle()); $lnk = new HtmlLink("lnk-" . $domaine->getId(), "#", $libelle); if ($domaine->getSemantic()) { $lnk->setHref($url->get("Index/semantic/" . $domaine->getId())); } else { $lnk->getOnClick("Index/content/main/" . $domaine->getId(), "#response"); } return $lnk; }); $right = $navbar->addZone("right"); $ddLang = new HtmlDropdown("btLang"); $ddLang->asButton(); foreach (TranslateEngine::$languages as $keyLang => $valueLang) { $item = $ddLang->addItem($valueLang, $url->get("Index/index/" . $keyLang)); $item->getOnClick("Index/index/" . $keyLang, "body"); if (JString::startsWith($translateEngine->getLanguage(), $keyLang, true)) { $item->active(); $ddLang->setValue($valueLang . " : " . $keyLang); } } $right->addElement($ddLang); $right->asForm(); $left = $navbar->addZone("right", "leftZ"); $left->asForm(); $searchInput = new HtmlInputgroup("search"); $searchInput->createButton("btSearch", "Go", "right"); $searchInput->setPlaceHolder($translateEngine->translate(1, "index.search", "Search...")); $left->addElement($searchInput); $jquery->postOnClick("#btSearch", "Index/search", '{"text":$("#search").val()}', "#response"); $navbar->cssInverse(); return $navbar; }
public function getMainMenu() { $url = $this->controller->url; $translateEngine = $this->controller->getTranslateEngine(); $jquery = $this->controller->jquery; $menu = $jquery->semantic()->htmlMenu("navbarJS"); $menu->addItem($translateEngine->translate(1, "index.home", "home")); $domaines = \Domaine::find("isNull(idParent)"); $menu->fromDatabaseObjects($domaines, function ($domaine) use($url, $translateEngine) { $libelle = $translateEngine->translate($domaine->getId(), "domaine.libelle", $domaine->getLibelle()); $item = new HtmlSemDoubleElement("menu-" . $libelle, "a", "item"); $item->setContent($libelle); if (!$domaine->getSemantic()) { $item->setProperty("href", $url->get("Index/bootstrap/" . $domaine->getId())); } else { $item->getOnClick("Index/content/main/" . $domaine->getId(), "#response"); } return $item; }); $menu->getItem(0)->addToProperty("class", "navbar-brand")->setProperty("href", $url->get("index")); $menu->setInverted()->setSize(Size::LARGE); $input = new HtmlInput("search", "search", "", $translateEngine->translate(1, "index.search", "Search...")); $input->addIcon("search", Direction::RIGHT)->asLink(); $jquery->postOnClick("#div-search i", "Index/search", '{"text":$("#search").val()}', "#response"); $ddLang = new \Ajax\semantic\html\modules\HtmlDropdown("idLang"); foreach (TranslateEngine::$languages as $keyLang => $valueLang) { $item = $ddLang->addItem($valueLang, $url->get("Index/index/" . $keyLang)); $item->setProperty("href", $url->get("Index/index/" . $keyLang)); // $item->getOnClick("Index/index/".$keyLang,"body"); if (JString::startsWith($translateEngine->getLanguage(), $keyLang, true)) { $ddLang->setValue($valueLang . " : " . $keyLang); } } $ddLang->asButton(); $menu2 = $jquery->semantic()->htmlMenu("menu2", array($input, $ddLang)); $menu2->setPosition("right"); $menu2->setInverted(); $menu->addItem($menu2); return $menu; }