19declare(strict_types=1);
51 $this->
lng = $DIC->language();
52 $this->
lng->loadLanguageModule(
"search");
53 $this->tree =
$DIC->repositoryTree();
54 $this->
ctrl = $DIC->ctrl();
55 $this->
user = $DIC->user();
57 $this->
http = $DIC->http();
59 $DIC->ui()->mainTemplate()->addJavascript(
'assets/js/SearchMainMenu.js');
67 if ($this->
http->wrapper()->query()->has(
'ref_id')) {
68 $this->ref_id = $this->
http->wrapper()->query()->retrieve(
79 $this->tpl =
new ilTemplate(
'tpl.main_menu_search.html',
true,
true,
'components/ILIAS/Search');
81 $this->tpl->setVariable(
'LABEL_SEARCH_OPTIONS', $this->
lng->txt(
"label_search_options"));
83 $this->tpl->setCurrentBlock(
"position");
84 $this->tpl->setVariable(
'TXT_GLOBALLY', $this->
lng->txt(
"search_globally"));
86 $this->tpl->parseCurrentBlock();
88 $this->tpl->setCurrentBlock(
"position_hid");
90 $this->tpl->parseCurrentBlock();
93 $this->tpl->setCurrentBlock(
'position_rep');
94 $this->tpl->setVariable(
'TXT_CURRENT_POSITION', $this->
lng->txt(
"search_at_current_position"));
95 $this->tpl->setVariable(
'REF_ID', $this->ref_id);
96 $this->tpl->parseCurrentBlock();
101 $this->tpl->setCurrentBlock(
'usr_search');
102 $this->tpl->setVariable(
'TXT_USR_SEARCH', $this->
lng->txt(
'search_users'));
104 $this->tpl->parseCurrentBlock();
106 $this->tpl->setVariable(
110 $this->tpl->setVariable(
'BTN_SEARCH', $this->
lng->txt(
'search'));
111 $this->tpl->setVariable(
'SEARCH_INPUT_LABEL', $this->
lng->txt(
'search_field'));
112 $this->tpl->setVariable(
117 $this->tpl->setVariable(
'IMG_MM_SEARCH',
ilUtil::img(
119 $this->
lng->txt(
"search")
123 $this->tpl->setVariable(
127 $this->tpl->setVariable(
'TXT_SEARCH_LINK', $this->
lng->txt(
"last_search_result"));
129 $this->tpl->setVariable(
'TXT_SEARCH', $this->
lng->txt(
"search"));
131 return $this->tpl->get();
137 if ($this->
http->wrapper()->post()->has(
'root_id')) {
138 $root_id = $this->
http->wrapper()->post()->retrieve(
144 $default = ilLuceneUserSearchGUI::class;
146 $default = ilSearchGUI::class;
149 return $this->
ctrl->getLinkTargetByClass(
150 [ilSearchControllerGUI::class, $default],
Class ilCtrl provides processing control methods.
Add a search box to main menu.
buildSearchLink(string $cmd, bool $async)
const int TYPE_USER_SEARCH
special template class to simplify handling of ITX/PEAR
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
static getImagePath(string $image_name, string $module_path="", string $mode="output", bool $offline=false)
get image path (for images located in a template directory)
static img(string $a_src, ?string $a_alt=null, $a_width="", $a_height="", $a_border=0, $a_id="", $a_class="")
Build img tag.
static initjQuery(?ilGlobalTemplateInterface $a_tpl=null)
inits and adds the jQuery JS-File to the global or a passed template
Interface GlobalHttpState.
static http()
Fetches the global http state from ILIAS.