4 include_once(
"./Services/Table/classes/class.ilTable2GUI.php");
5 include_once
'./Services/Search/classes/class.ilSearchSettings.php';
19 public function __construct($a_parent_obj, $a_parent_cmd =
"", $a_template_context =
"")
24 $this->lng->loadLanguageModule(
"meta");
33 if(!$ilCtrl->getNextClass($this))
37 switch($ilCtrl->getCmd())
50 $to_hide =
$_POST[
"item_id"];
54 $to_hide = array((
int)
$_GET[
"hide"]);
67 $value = array_unique(array_merge((array)$obj->getValue(), $to_hide));
68 $obj->setValue($value);
69 $obj->writeToSession();
72 if(isset(
$_POST[
"tbltplcrt"]))
74 $ilCtrl->setParameter($this->parent_obj,
"tbltplcrt",
$_POST[
"tbltplcrt"]);
76 if(isset(
$_POST[
"tbltpldel"]))
78 $ilCtrl->setParameter($this->parent_obj,
"tbltpldel",
$_POST[
"tbltpldel"]);
81 $ilCtrl->redirect($this->parent_obj, $this->parent_cmd);
99 global $ilObjDataCache;
101 include_once
'./Services/Search/classes/class.ilQueryParser.php';
104 $query_parser->setMinWordLength(0);
106 $query_parser->parse();
107 if(!$query_parser->validate())
113 include_once
'Services/Search/classes/Like/class.ilLikeObjectSearch.php';
115 $object_search->setFilter($filter[
"type"]);
116 $res =& $object_search->performSearch();
117 $res->setRequiredPermission($permission);
118 $res->setMaxHits(1000);
119 $res->addObserver($this,
"searchFilterListener");
121 if(!$this->filter[
"area"])
123 $res->filter(ROOT_FOLDER_ID,
false);
127 $res->filter($this->filter[
"area"],
false);
131 foreach(
$res->getResults() as $obj_data)
133 $objects[$obj_data[
'obj_id']][] = $obj_data[
'ref_id'];
137 $this->limit_reached =
$res->isLimitReached();
139 return $objects ? $objects : array();
149 if(is_array($this->filter[
"hide"]) && in_array($a_data[
"obj_id"], $this->filter[
"hide"]))
166 global
$lng, $ilObjDataCache;
171 include_once(
"./Services/Form/classes/class.ilSelectInputGUI.php");
175 $si->readFromSession();
178 $si->setValue(
"crs");
180 $this->filter[
"type"] = $si->getValue();
183 include_once(
"./Services/Form/classes/class.ilMultiSelectInputGUI.php");
186 $msi->readFromSession();
187 $this->filter[
"hide"] = $msi->getValue();
188 if($this->filter[
"hide"])
192 $types = $types[
"type"];
194 foreach($this->filter[
"hide"] as $obj_id)
196 if(in_array($ilObjDataCache->lookupType($obj_id), $types))
198 $options[$obj_id] = $ilObjDataCache->lookupTitle($obj_id);
201 $msi->setOptions($options);
205 include_once(
"./Services/Form/classes/class.ilTextInputGUI.php");
206 $ti =
new ilTextInputGUI($lng->txt(
"trac_title_description"),
"query");
210 $ti->readFromSession();
211 $this->filter[
"query"] = $ti->getValue();
214 include_once(
"./Services/Form/classes/class.ilRepositorySelectorInputGUI.php");
218 $rs->readFromSession();
219 $this->filter[
"area"] = $rs->getValue();
232 include_once
'classes/class.ilLink.php';
242 $path_full = $tree->getPathFull($ref_id);
243 foreach($path_full as
$data)
245 if(++$counter < (count($path_full)-1))
249 $path .=
" » ";
250 if($ref_id != $data[
'ref_id'])
252 $path .= $data[
'title'];
256 $path .= (
'<a target="_top" href="'.
258 $data[
'title'].
'</a>');
274 return array(
'crs' => $lng->txt(
'objs_crs'),
275 'grp' => $lng->txt(
'objs_grp'),
276 'lm' => $lng->txt(
'learning_resources'),
277 'exc' => $lng->txt(
'objs_exc'),
278 'tst' => $lng->txt(
'objs_tst'));
286 $pos = strrpos($id,
"_");
289 $function = strtoupper(substr($id, $pos+1));
290 if(in_array($function, array(
"MIN",
"MAX",
"SUM",
"AVG",
"COUNT")))
292 $id = substr($id, 0, $pos);
296 if(trim($value) ==
"" && $id !=
"status")
298 if($id ==
"title" && get_class($this) !=
"ilTrObjectUsersPropsTableGUI")
300 return "--".$lng->txt(
"none").
"--";
320 case "spent_seconds":
321 if(in_array($type, array(
"exc")))
327 include_once(
"./classes/class.ilFormat.php");
349 if(in_array($type, array(
"lm",
"dbk")))
356 $value = $lng->txt(
"gender_".$value);
360 include_once(
"./Services/Tracking/classes/class.ilLearningProgressBaseGUI.php");
367 $value = $lng->txt(
"lang_".$value);
371 $value = $lng->txt(
"meta_c_".$value);
381 foreach($this->filter as $id => $value)
390 $result[
"type"] = array(
'lm',
'sahs',
'htlm',
'dbk');
394 $result[
"type"] = array($value);
415 case "matriculation":
435 case "spent_seconds":
436 if(is_array($value) && implode(
"", $value))
452 $result[$id][
"from"] = substr(
$result[$id][
"from"], 0, -8).
"00:00:00";
457 $result[$id][
"to"] = substr(
$result[$id][
"to"], 0, -8).
"23:59:59";
469 include_once(
"./Services/Tracking/classes/class.ilLPObjSettings.php");
479 protected function parseTitle($a_obj_id, $action, $a_user_id =
false)
481 global
$lng, $ilObjDataCache, $ilUser;
486 if($a_user_id != $ilUser->getId())
494 $user .=
", ".$a_user->getFullName();
497 $this->
setTitle($lng->txt($action).
": ".$ilObjDataCache->lookupTitle($a_obj_id).$user);
508 global
$lng, $ilObjDataCache, $ilUser, $ilClientIniFile;
521 include_once
'./classes/class.ilLink.php';
524 $lng->txt(
"trac_name_of_installation") => $ilClientIniFile->readVariable(
'client',
'name'),
525 $lng->txt(
"trac_object_name") => $ilObjDataCache->lookupTitle($this->obj_id),
528 $lng->txt(
"trac_report_date") =>
530 $lng->txt(
"trac_report_owner") => $ilUser->getFullName()
539 $worksheet->write($a_row, 0, $caption);
540 $worksheet->write($a_row, 1, $value);
550 $a_csv->addColumn(strip_tags($caption));
551 $a_csv->addColumn(strip_tags($value));
559 include_once
'Modules/Course/classes/Timings/class.ilTimingCache.php';
563 if($timings[
'item'][
'changeable'] and $timings[
'user'][$a_usr_id][
'end'])
565 $end = $timings[
'user'][$a_usr_id][
'end'];
567 else if ($timings[
'item'][
'suggestion_end'])
569 $end = $timings[
'item'][
'suggestion_end'];