/** * Fill table row */ protected function fillRow($a_set) { global $ilCtrl; if (!$this->details) { $this->tpl->setCurrentBlock("column_checkbox"); $this->tpl->setVariable("OBJ_ID", $a_set["obj_id"]); $this->tpl->parseCurrentBlock(); } $this->tpl->setVariable("ICON_SRC", ilObject::_getIcon("", "tiny", $a_set["type"])); $this->tpl->setVariable("ICON_ALT", $this->lng->txt($a_set["type"])); $this->tpl->setVariable("TITLE_TEXT", $a_set["title"]); if ($a_set["offline"]) { $this->tpl->setCurrentBlock("offline"); $this->tpl->setVariable("TEXT_STATUS", $this->lng->txt("status")); $this->tpl->setVariable("TEXT_OFFLINE", $this->lng->txt("offline")); $this->tpl->parseCurrentBlock(); } $this->tpl->setVariable("STATUS_ALT", ilLearningProgressBaseGUI::_getStatusText($a_set["status"])); $this->tpl->setVariable("STATUS_IMG", ilLearningProgressBaseGUI::_getImagePathForStatus($a_set["status"])); if ($this->mode == LP_MODE_SCORM) { $this->tpl->setVariable('SCORE_VAL', $a_set["score"]); } else { if ($this->mode != LP_MODE_OBJECTIVES) { $this->tpl->setCurrentBlock("status_details"); $this->tpl->setVariable('STATUS_CHANGED_VAL', ilDatePresentation::formatDate(new ilDateTime($a_set['status_changed'], IL_CAL_DATETIME))); $this->tpl->setVariable("MODE_TEXT", ilLPObjSettings::_mode2Text($a_set["u_mode"])); $this->tpl->setVariable("MARK_VALUE", $a_set["mark"]); $this->tpl->setVariable("COMMENT_TEXT", $a_set["comment"]); if (!$this->isPercentageAvailable($a_set["obj_id"]) || (int) $a_set["percentage"] === 0) { $this->tpl->setVariable("PERCENTAGE_VALUE", ""); } else { $this->tpl->setVariable("PERCENTAGE_VALUE", sprintf("%d%%", $a_set["percentage"])); } // path $path = $this->buildPath($a_set["ref_ids"]); if ($path) { $this->tpl->setCurrentBlock("item_path"); foreach ($path as $path_item) { $this->tpl->setVariable("PATH_ITEM", $path_item); $this->tpl->parseCurrentBlock(); } } $this->tpl->parseCurrentBlock(); } } // not for objectives/scos if (!$this->mode) { // tlt warning if ($a_set["status"] != LP_STATUS_COMPLETED_NUM && $a_set["ref_ids"]) { $ref_id = $a_set["ref_ids"]; $ref_id = array_shift($ref_id); $timing = $this->showTimingsWarning($ref_id, $this->tracked_user->getId()); if ($timing) { if ($timing !== true) { $timing = ": " . ilDatePresentation::formatDate(new ilDate($timing, IL_CAL_UNIX)); } else { $timing = ""; } $this->tpl->setCurrentBlock('warning_img'); $this->tpl->setVariable('WARNING_IMG', ilUtil::getImagePath('time_warn.png')); $this->tpl->setVariable('WARNING_ALT', $this->lng->txt('trac_time_passed') . $timing); $this->tpl->parseCurrentBlock(); } } // hide / unhide?! if (!$this->details) { $this->tpl->setCurrentBlock("item_command"); $ilCtrl->setParameterByClass(get_class($this), 'hide', $a_set["obj_id"]); $this->tpl->setVariable("HREF_COMMAND", $ilCtrl->getLinkTargetByClass(get_class($this), 'hide')); $this->tpl->setVariable("TXT_COMMAND", $this->lng->txt('trac_hide')); $this->tpl->parseCurrentBlock(); if (ilLPObjSettings::_isContainer($a_set["u_mode"]) && $a_set["ref_ids"]) { $ref_id = $a_set["ref_ids"]; $ref_id = array_shift($ref_id); $ilCtrl->setParameterByClass($ilCtrl->getCmdClass(), 'details_id', $ref_id); $this->tpl->setVariable("HREF_COMMAND", $ilCtrl->getLinkTargetByClass($ilCtrl->getCmdClass(), 'details')); $ilCtrl->setParameterByClass($ilCtrl->getCmdClass(), 'details_id', ''); $this->tpl->setVariable("TXT_COMMAND", $this->lng->txt('trac_subitems')); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("column_action"); $this->tpl->parseCurrentBlock(); } } }