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; }