34 protected \ILIAS\Awareness\StandardGUIRequest
$request;
51 ??
$DIC->awareness()->internal()->data();
52 $domain_service = $domain_service
53 ??
$DIC->awareness()->internal()->domain();
54 $gui_service = $gui_service
55 ??
$DIC->awareness()->internal()->gui();
56 $this->
user = $domain_service->user();
57 $this->
lng = $domain_service->lng();
58 $this->
ui = $gui_service->ui();
59 $this->
ctrl = $gui_service->ctrl();
61 $this->
lng->loadLanguageModule(
"awrn");
62 $this->request = $gui_service->standardRequest();
63 $this->main_tpl = $gui_service->mainTemplate();
65 $this->ref_id = $this->request->getRefId();
66 $this->manager = $domain_service->widget(
70 $this->gui =
$DIC->awareness()->internal()->gui();
76 $this->ui->renderer(),
85 $cmd = $this->
ctrl->getCmd();
87 if (in_array($cmd, array(
"getAwarenessList"))) {
96 $this->main_tpl->addJavaScript(
"../components/ILIAS/Awareness/resources/Awareness.js");
98 $this->main_tpl->addJavaScript(
"./assets/js/Awareness.js");
100 $this->
ctrl->setParameter($this,
"ref_id", $this->ref_id);
101 $this->main_tpl->addOnLoadCode(
"il.Awareness.setBaseUrl('" . $this->
ctrl->getLinkTarget(
108 $this->main_tpl->addOnLoadCode(
"il.Awareness.setLoaderSrc('" .
ilUtil::getImagePath(
"media/loader.svg") .
"');");
109 $this->main_tpl->addOnLoadCode(
"il.Awareness.init();");
111 $this->user_action_gui->init();
121 $filter = $this->request->getFilter();
123 $tpl =
new ilTemplate(
"tpl.awareness_list.html",
true,
true,
"components/ILIAS/Awareness");
125 $ad = $this->manager->getListData($filter);
127 $users = $ad[
"data"];
131 foreach ($users as $u) {
132 if ($u->collector != $last_uc_title) {
133 if ($u->highlighted) {
134 $tpl->touchBlock(
"highlighted");
136 $tpl->setCurrentBlock(
"uc_title");
137 $tpl->setVariable(
"UC_TITLE", $u->collector);
138 $tpl->parseCurrentBlock();
139 $tpl->setCurrentBlock(
"item");
140 $tpl->parseCurrentBlock();
142 $last_uc_title = $u->collector;
147 foreach ($u->actions as $act) {
150 $tpl->touchBlock(
"arrow");
154 if (is_array($act->data) && count($act->data) > 0) {
155 foreach ($act->data as $k => $v) {
156 $tpl->setCurrentBlock(
"f_data");
157 $tpl->setVariable(
"DATA_KEY", $k);
159 $tpl->parseCurrentBlock();
162 $tpl->setCurrentBlock(
"feature");
163 $tpl->setVariable(
"FEATURE_HREF", $act->href);
164 $tpl->setVariable(
"FEATURE_TEXT", $act->text);
165 $tpl->parseCurrentBlock();
169 $tpl->touchBlock(
"uonline");
170 $tpl->setCurrentBlock(
"uonline_text");
171 $tpl->setVariable(
"TXT_ONLINE", $this->
lng->txt(
"awrn_online"));
172 $tpl->parseCurrentBlock();
175 $tpl->setCurrentBlock(
"user");
176 if ($u->public_profile) {
177 $tpl->setVariable(
"UNAME", $u->lastname .
", " . $u->firstname);
179 $tpl->setVariable(
"UNAME",
"-");
181 $tpl->setVariable(
"UACCOUNT", $u->login);
183 $tpl->setVariable(
"USERIMAGE", $u->img);
184 $tpl->setVariable(
"CNT", $ucnt);
185 $tpl->parseCurrentBlock();
186 $tpl->setCurrentBlock(
"item");
187 $tpl->parseCurrentBlock();
190 $tpl->setCurrentBlock(
"filter");
191 $tpl->setVariable(
"GL_FILTER", $this->gui->symbol()->glyph(
"filter")->render());
192 $tpl->setVariable(
"FILTER_INPUT_LABEL", $this->
lng->txt(
"awrn_filter"));
193 $tpl->parseCurrentBlock();
196 $result = [
"html" => $tpl->get(),
198 "cnt" => $ad[
"cnt"]];
205 echo json_encode($result, JSON_THROW_ON_ERROR);
Provides fluid interface to RBAC services.
InternalDataService $data_service
ILIAS Awareness StandardGUIRequest $request
__construct(?InternalDataService $data_service=null, ?InternalDomainService $domain_service=null, ?InternalGUIService $gui_service=null)
ilUserActionGUI $user_action_gui
getAwarenessList(bool $return=false)
Get awareness list (ajax)
ilGlobalTemplateInterface $main_tpl
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Class ilCtrl provides processing control methods.
special template class to simplify handling of ITX/PEAR
A class that provides a collection of actions on users.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static getImagePath(string $image_name, string $module_path="", string $mode="output", bool $offline=false)
get image path (for images located in a template directory)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...