38 $this->lng->loadLanguageModule(
'crs');
39 $this->tabs_gui =& $ilTabs;
41 $this->container_gui =& $container_gui_obj;
42 $this->container_obj =& $this->container_gui->object;
51 if(!$ilAccess->checkAccess(
'read',
'',$this->container_obj->getRefId()))
53 $ilErr->raiseError($this->lng->txt(
'msg_no_perm_read'),$ilErr->WARNING);
60 $this->tabs_gui->setTabActive(
'view_content');
61 $cmd = $this->ctrl->getCmd();
63 switch($this->ctrl->getNextClass($this))
65 case 'ilcourseitemadministrationgui':
67 include_once
'Modules/Course/classes/class.ilCourseItemAdministrationGUI.php';
68 $this->tabs_gui->clearSubTabs();
69 $this->ctrl->setReturn($this,
'view');
72 $this->ctrl->forwardCommand($item_adm_gui);
75 case 'ilcoursearchivesgui':
79 case 'ilcourseobjectivepresentationgui':
84 $ilCtrl->saveParameterByClass(
"ilcolumngui",
"col_return");
85 $ilTabs->setSubTabActive(
"crs_content");
97 if(!$this->is_tutor = $ilAccess->checkAccess(
'write',
'',$this->course_obj->getRefId()) and
98 $this->course_obj->isArchived())
105 if((!$this->is_tutor and
106 $this->container_obj->getType() ==
'crs' and
107 $this->container_obj->enabledObjectiveView()) ||
108 $_GET[
"col_return"] ==
"objectives")
110 $this->use_objective_presentation =
true;
131 if(
$_SESSION[
'crs_timings_panel'][$this->course_obj->getId()])
133 return 'editTimings';
135 if($ilAccess->checkAccess(
'write',
'',$this->container_obj->getRefId()))
139 if($this->container_obj->getType() ==
'crs' and
142 return 'editUserTimings';
149 include_once
'Modules/Course/classes/class.ilCourseObjectivePresentationGUI.php';
151 $this->ctrl->setReturn($this,
'');
154 if(!$this->ctrl->getNextClass())
156 $this->ctrl->setCmdClass(get_class($objectives_gui));
158 $this->ctrl->forwardCommand($objectives_gui);
164 include_once
'Modules/Course/classes/class.ilCourseArchivesGUI.php';
166 $this->ctrl->setReturn($this,
'');
168 $this->ctrl->forwardCommand($archives_gui);
170 $this->tabs_gui->setTabActive(
'view_content');
171 $this->tabs_gui->setSubTabActive(
'crs_archives');
178 include_once
'./Modules/Course/classes/class.ilCourseStart.php';
180 global $ilAccess,$ilUser;
182 if($ilAccess->checkAccess(
'write',
'',$this->course_obj->getRefId()))
186 $this->start_obj =
new ilCourseStart($this->course_obj->getRefId(),$this->course_obj->getId());
187 if(count($this->start_obj->getStartObjects()) and !$this->start_obj->allFullfilled($ilUser->getId()))
196 include_once
'./Modules/Course/classes/class.ilCourseLMHistory.php';
197 include_once
'./Services/Repository/classes/class.ilRepositoryExplorer.php';
198 include_once
'./classes/class.ilLink.php';
200 global $rbacsystem,
$ilias,$ilUser,$ilAccess,$ilObjDataCache;
202 $this->tabs_gui->setSubTabActive(
'crs_content');
204 $this->tpl->addBlockFile(
"ADM_CONTENT",
"adm_content",
"tpl.crs_start_view.html",
'Modules/Course');
205 $this->tpl->setVariable(
"INFO_STRING",$this->lng->txt(
'crs_info_start'));
206 $this->tpl->setVariable(
"TBL_TITLE_START",$this->lng->txt(
'crs_table_start_objects'));
207 $this->tpl->setVariable(
"HEADER_NR",$this->lng->txt(
'crs_nr'));
208 $this->tpl->setVariable(
"HEADER_DESC",$this->lng->txt(
'description'));
209 $this->tpl->setVariable(
"HEADER_EDITED",$this->lng->txt(
'crs_objective_accomplished'));
212 $lm_continue =&
new ilCourseLMHistory($this->course_obj->getRefId(),$ilUser->getId());
216 foreach($this->start_obj->getStartObjects() as $start)
218 $obj_id = $ilObjDataCache->lookupObjId($start[
'item_ref_id']);
219 $ref_id = $start[
'item_ref_id'];
220 $type = $ilObjDataCache->lookupType(
$obj_id);
226 $obj_frame = $obj_frame ? $obj_frame :
'';
229 $obj_frame = $type ==
'tst' ?
'' : $obj_frame;
233 if($ilAccess->checkAccess(
'read',
'',
$ref_id))
235 $this->tpl->setCurrentBlock(
"start_read");
236 $this->tpl->setVariable(
"READ_TITLE_START",$ilObjDataCache->lookupTitle(
$obj_id));
237 $this->tpl->setVariable(
"READ_TARGET_START",$obj_frame);
238 $this->tpl->setVariable(
"READ_LINK_START", $obj_link.
'&crs_show_result='.$this->course_obj->getRefId());
239 $this->tpl->parseCurrentBlock();
243 $this->tpl->setCurrentBlock(
"start_visible");
244 $this->tpl->setVariable(
"VISIBLE_LINK_START",$ilObjDataCache->lookupTitle(
$obj_id));
245 $this->tpl->parseCurrentBlock();
249 if(isset($continue_data[
$ref_id]))
251 $this->tpl->setCurrentBlock(
"link");
252 $this->tpl->setVariable(
"LINK_HREF",
ilLink::_getLink($ref_id,
'',array(
'obj_id',
253 $continue_data[$ref_id][
'lm_page_id'])));
254 #$this->tpl->setVariable("CONTINUE_LINK_TARGET",$target);
255 $this->tpl->setVariable(
"LINK_NAME",$this->lng->txt(
'continue_work'));
256 $this->tpl->parseCurrentBlock();
260 if(!$ilUser->isDesktopItem($ref_id,$type) and
261 $this->course_obj->getAboStatus())
263 if ($ilAccess->checkAccess(
'read',
'',$ref_id))
265 $this->tpl->setCurrentBlock(
"link");
266 $this->ctrl->setParameterByClass(get_class($this->container_gui),
'item_ref_id',$ref_id);
267 $this->ctrl->setParameterByClass(get_class($this->container_gui),
'item_id',$ref_id);
268 $this->ctrl->setParameterByClass(get_class($this->container_gui),
'type',$type);
270 $this->tpl->setVariable(
"LINK_HREF",$this->ctrl->getLinkTarget($this->container_gui,
'addToDesk'));
271 $this->tpl->setVariable(
"LINK_NAME", $this->lng->txt(
"to_desktop"));
272 $this->tpl->parseCurrentBlock();
275 elseif($this->course_obj->getAboStatus())
277 $this->tpl->setCurrentBlock(
"link");
278 $this->ctrl->setParameterByClass(get_class($this->container_gui),
'item_ref_id',$ref_id);
279 $this->ctrl->setParameterByClass(get_class($this->container_gui),
'item_id',$ref_id);
280 $this->ctrl->setParameterByClass(get_class($this->container_gui),
'type',$type);
282 $this->tpl->setVariable(
"LINK_HREF",$this->ctrl->getLinkTarget($this->container_gui,
'removeFromDesk'));
283 $this->tpl->setVariable(
"LINK_NAME", $this->lng->txt(
"unsubscribe"));
284 $this->tpl->parseCurrentBlock();
289 if(strlen($ilObjDataCache->lookupDescription(
$obj_id)))
291 $this->tpl->setCurrentBlock(
"start_description");
292 $this->tpl->setVariable(
"DESCRIPTION_START",$ilObjDataCache->lookupDescription(
$obj_id));
293 $this->tpl->parseCurrentBlock();
297 if($this->start_obj->isFullfilled($ilUser->getId(),
$ref_id))
299 $accomplished =
'accomplished';
303 $accomplished =
'not_accomplished';
305 $this->tpl->setCurrentBlock(
"start_row");
307 $this->tpl->setVariable(
"EDITED_ALT",$this->lng->txt(
'crs_objective_'.$accomplished));
308 $this->tpl->setVariable(
"ROW_CLASS",
'option_value');
309 $this->tpl->setVariable(
"ROW_CLASS_CENTER",
'option_value_center');
310 $this->tpl->setVariable(
"OBJ_NR_START",++$counter.
'.');
311 $this->tpl->parseCurrentBlock();
322 require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
326 $this->container_obj->getType(), $this->container_obj->getRefId(),
332 if (!$this->no_right_column)
345 if ($ilCtrl->getNextClass() ==
"ilcourseobjectivepresentationgui")
347 $ilCtrl->setParameterByClass(
"ilcolumngui",
"col_return",
"objectives");
349 $ilCtrl->saveParameterByClass(
"ilcolumngui",
"col_return");
354 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
364 if ($ilCtrl->getNextClass() ==
"ilcolumngui" &&
369 $html = $ilCtrl->forwardCommand($column_gui);
373 if (!$ilCtrl->isAsynch())
375 $html = $ilCtrl->getHTML($column_gui);
389 $this->tabs_gui->setSubTabActive(
'crs_content');
391 $ilCtrl->saveParameterByClass(
"ilcolumngui",
"col_return");
393 if ($this->use_objective_presentation)
397 switch ($ilCtrl->getNextClass())
401 if (
$_GET[
"col_return"] ==
"objectives")
403 $ilCtrl->setParameter($this,
"col_return",
"objectives");
404 $ilCtrl->setReturn($this,
"view");
408 $this->tabs_gui->setSubTabActive(
'crs_content');
409 $ilCtrl->setReturn($this,
"view");
414 case "ilcourseobjectivepresentationgui":
419 $this->no_right_column =
true;
424 if(
$_SESSION[
'crs_timings_panel'][$this->course_obj->getId()])
431 include_once
'Services/Object/classes/class.ilObjectListGUIFactory.php';
439 $this->__showFeedBack();
443 #$this->container_gui->renderContainer();
444 $this->container_gui->showAdministrationPanel($this->tpl);
449 global $ilAccess,
$lng;
451 $column_gui->setRepositoryMode(
true);
452 $column_gui->setEnableEdit(
false);
453 $column_gui->setBlockProperty(
"news",
"title",
454 $lng->txt(
"crs_news"));
456 $grouped_items = array();
457 foreach($this->course_obj->items_obj->items as $item)
459 $grouped_items[$item[
"type"]][] = $item;
462 $column_gui->setRepositoryItems($grouped_items);
463 if ($ilAccess->checkAccess(
"write",
"", $this->container_obj->getRefId()))
465 $column_gui->setEnableEdit(
true);
469 if ($this->is_tutor &&
470 $this->container_gui->isActiveAdministrationPanel())
472 $column_gui->setEnableMovement(
true);
478 $column_gui->setBlockProperty(
"news",
"settings",
true);
480 $column_gui->setBlockProperty(
"news",
"default_visibility_option",
true);
481 $column_gui->setBlockProperty(
"news",
"hide_news_block_option",
true);
484 if ($this->container_gui->isActiveAdministrationPanel())
486 $column_gui->setAdminCommands(
true);
498 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
501 $this->course_obj->initCourseItemObject($this->container_obj->getRefId());
506 if (!$ilCtrl->isAsynch())
516 $html = $ilCtrl->forwardCommand($column_gui);
523 $html = $ilCtrl->forwardCommand($column_gui);
528 if (
$_GET[
"col_return"] ==
"objectives")
531 include_once
'Modules/Course/classes/class.ilCourseObjectivePresentationGUI.php';
532 $this->ctrl->setReturn($this,
'');
534 $this->ctrl->getHTML($objectives_gui);
561 if(!$ilAccess->checkAccess(
'visible',
'',$cont_data[
'ref_id']))
570 if (!$this->container_gui->isActiveAdministrationPanel())
572 require_once
'Modules/File/classes/class.ilObjFileAccess.php';
582 $tpl =
new ilTemplate(
'tpl.crs_subcontent_row.html',
true,
true,
'Modules/Course');
587 $tpl =
new ilTemplate(
'tpl.crs_content_row.html',
true,
true,
'Modules/Course');
593 $html = $item_list_gui->getListItemHTML($cont_data[
'ref_id'],
594 $cont_data[
'obj_id'], $cont_data[
'title'], $cont_data[
'description']);
603 foreach($this->
__getOptions($cont_data,$num) as $key => $image)
605 $tpl->setCurrentBlock(
"img");
606 $tpl->setVariable(
"IMG_TYPE",$image[
"gif"]);
607 $tpl->setVariable(
"IMG_ALT",$image[
"lng"]);
608 $tpl->setVariable(
"IMG_LINK",$image[
"lnk"]);
609 $tpl->setVariable(
"IMG_TARGET",$image[
"tar"]);
610 $tpl->parseCurrentBlock();
616 $tpl->setCurrentBlock(
"options");
618 $tpl->parseCurrentBlock();
621 if ($this->container_gui->isActiveAdministrationPanel())
623 $tpl->setCurrentBlock(
"block_row_check");
624 $tpl->setVariable(
"ITEM_ID", $cont_data[
'ref_id']);
625 $tpl->parseCurrentBlock();
629 $tpl->setVariable(
"ITEM_HTML",$html);
634 $tpl->setVariable(
"ALT_IMG", $this->lng->txt(
"obj_".$cont_data[
"type"]));
635 $tpl->setCurrentBlock(
"tbl_content");
636 $tpl->parseCurrentBlock();
641 if($cont_data[
'type'] ==
'sess')
643 foreach($this->course_obj->items_obj->getItemsByEvent($cont_data[
'obj_id']) as $item)
655 $this->course_obj->initCourseItemObject($this->container_obj->getRefId());
659 $this->cont_arr = $this->course_obj->items_obj->getFilteredItems($this->container_obj->getRefId());
665 $this->cont_arr = $this->course_obj->items_obj->getFilteredItems($this->container_obj->getRefId());
670 $this->cont_arr = $this->course_obj->items_obj->getFilteredItems($this->container_obj->getRefId());
676 if(!count($this->cont_arr))
678 #ilUtil::sendInfo($this->lng->txt("crs_no_items_found"));
679 $this->tpl->addBlockFile(
"CONTENT_TABLE",
"content_tab",
"tpl.container_page.html",
680 "Services/Container");
681 $this->tpl->setVariable(
"FORM_ACTION", $this->ctrl->getFormAction($this));
682 $this->tpl->setVariable(
"CONTAINER_PAGE_CONTENT",
"");
688 $cont_num = count($this->cont_arr);
690 $this->container_gui->clearAdminCommandsDetermination();
695 foreach ($this->cont_arr as $cont_data)
700 $html .= $this->
displayRow($cont_data,$item_list_gui);
704 if($cont_data[
'type'] ==
'sess')
706 $html .= $this->
displayRow($cont_data,$item_list_gui);
711 if($cont_data[
'type'] !=
'sess')
713 $html .= $this->
displayRow($cont_data,$item_list_gui);
720 $tpl->setVariable(
'TBL_CONTENT',$html);
727 include_once
"./Services/Table/classes/class.ilTableGUI.php";
729 $tbl->setStyle(
'table',
'il_ContainerBlock');
733 if($a_selection ==
'session')
735 $title = $this->lng->txt(
'events');
739 $title = $this->lng->txt(
"crs_content");
743 $tbl->setHelp(
"tbl_help.php",
"icon_help.gif",$this->lng->txt(
"help"));
747 $tbl->setHeaderNames(array($this->lng->txt(
"type"),$this->lng->txt(
"title"),
749 $tbl->setHeaderVars(array(
"type",
"title",
"options"),
750 array(
"ref_id" => $this->course_obj->getRefId(),
751 "cmdClass" =>
"ilobjcoursecontentgui",
752 "cmdNode" =>
$_GET[
"cmdNode"]));
753 $tbl->setColumnWidth(array(
"1px",
"100%",
"24px"));
754 $tbl->disable(
"header");
758 $tbl->setHeaderNames(array($this->lng->txt(
"type"),$this->lng->txt(
"title"),
''));
759 $tbl->setHeaderVars(array(
"type",
"title",
'options'),
760 array(
"ref_id" => $this->course_obj->getRefId(),
761 "cmdClass" =>
"ilobjcoursecontentgui",
762 "cmdNode" =>
$_GET[
"cmdNode"]));
763 $tbl->setColumnWidth(array(
"1px",
""));
764 $tbl->disable(
"header");
768 $tbl->disable(
"footer");
769 $tbl->disable(
'sort');
770 $tbl->disable(
"form");
773 $tbl->setTemplate(
$tpl);
776 $this->tpl->setVariable(
"FORM_ACTION", $this->ctrl->getFormAction($this));
777 $this->tpl->setCurrentBlock(
"cont_page_content");
778 $this->tpl->setVariable(
"CONTAINER_PAGE_CONTENT",
$tpl->get());
779 $this->tpl->parseCurrentBlock();
789 include_once
'Services/MetaData/classes/class.ilMDEducational.php';
790 include_once
'classes/class.ilLink.php';
792 $this->lng->loadLanguageModule(
'meta');
794 if(!$ilAccess->checkAccess(
'write',
'',$this->container_obj->getRefId()))
796 $ilErr->raiseError($this->lng->txt(
'msg_no_perm_write'),$ilErr->WARNING);
799 $this->tabs_gui->setSubTabActive(
'timings_timings');
801 $this->course_obj->initCourseItemObject($this->container_obj->getRefId());
802 $this->cont_arr = $this->course_obj->items_obj->getAllItems($this->container_obj->getId());
804 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.crs_edit_items.html',
'Modules/Course');
805 $this->tpl->setVariable(
"FORMACTION",$this->ctrl->getFormAction($this));
807 $this->tpl->setVariable(
"HEADER_ALT",$this->lng->txt(
'crs_materials'));
808 $this->tpl->setVariable(
"BLOCK_HEADER_CONTENT",$this->lng->txt(
'edit_timings_list'));
809 $this->tpl->setVariable(
"TXT_TITLE",$this->lng->txt(
'title'));
812 $this->tpl->setVariable(
"TXT_DURATION",$this->lng->txt(
'crs_timings_time_frame'));
813 $this->tpl->setVariable(
"TXT_INFO_DURATION",$this->lng->txt(
'crs_timings_in_days'));
815 $this->tpl->setVariable(
"TXT_START_END",$this->lng->txt(
'crs_timings_short_start_end'));
816 $this->tpl->setVariable(
"TXT_INFO_START_END",$this->lng->txt(
'crs_timings_start_end_info'));
818 $this->tpl->setVariable(
"TXT_CHANGEABLE",$this->lng->txt(
'crs_timings_short_changeable'));
820 $this->tpl->setVariable(
"TXT_INFO_LIMIT",$this->lng->txt(
'crs_timings_from_until'));
821 $this->tpl->setVariable(
"TXT_LIMIT",$this->lng->txt(
'crs_timings_short_limit_start_end'));
822 $this->tpl->setVariable(
"TXT_ACTIVE",$this->lng->txt(
'crs_timings_short_active'));
823 $this->tpl->setVariable(
"TXT_INFO_ACTIVE",$this->lng->txt(
'crs_timings_info_active'));
826 foreach($this->cont_arr as $item)
835 $item_prefix =
"item[$item[ref_id]]";
836 $item_change_prefix =
"item_change[$item[ref_id]]";
837 $item_active_prefix =
"item_active[$item[ref_id]]";
839 if($item[
'type'] ==
'grp' or
840 $item[
'type'] ==
'fold')
842 $this->tpl->setVariable(
"TITLE_LINK",
ilLink::_getLink($item[
'ref_id'],$item[
'type']));
844 $this->tpl->setVariable(
"TITLE_LINK_NAME",$item[
'title']);
848 $this->tpl->setVariable(
"TITLE",$item[
'title']);
851 if(strlen($item[
'description']))
853 $this->tpl->setCurrentBlock(
"item_description");
854 $this->tpl->setVariable(
"DESC",$item[
'description']);
855 $this->tpl->parseCurrentBlock();
860 $this->tpl->setCurrentBlock(
"tlt");
861 $this->tpl->setVariable(
"TXT_TLT",$this->lng->txt(
'meta_typical_learning_time'));
863 $this->tpl->parseCurrentBlock();
866 $this->tpl->setCurrentBlock(
"container_standard_row");
869 if(is_array(
$_POST[
'item'][
"$item[ref_id]"][
'sug_start']))
871 $start = $this->
__toUnix(
$_POST[
'item'][
"$item[ref_id]"][
'sug_start']);
875 $start = $item[
'suggestion_start'];
877 $end = $item[
'suggestion_end'];
879 $this->tpl->setVariable(
"SUG_START",
881 $date[
'y'],$date[
'm'],$date[
'd'],date(
'Y',time()),
false));
883 $this->tpl->setVariable(
"NAME_DURATION_A",$item_prefix.
"[duration_a]");
884 if(isset(
$_POST[
'item'][
"$item[ref_id]"][
'duration_a']))
886 $this->tpl->setVariable(
"VAL_DURATION_A",abs(
$_POST[
'item'][
"$item[ref_id]"][
'duration_a']));
890 $this->tpl->setVariable(
"VAL_DURATION_A",intval(($end-$start)/(60*60*24)));
896 if(is_array(
$_POST[
'item'][
"$item[ref_id]"][
'lim_end']))
898 $end = $this->
__toUnix(
$_POST[
'item'][
"$item[ref_id]"][
'lim_end']);
902 $end = $item[
'latest_end'];
906 $this->tpl->setVariable(
"LIM_END",
908 $date[
'y'],$date[
'm'],$date[
'd'],date(
'Y',time()),
false));
910 $this->tpl->setVariable(
"NAME_CHANGE",$item_change_prefix.
"[change]");
911 $this->tpl->setVariable(
"NAME_ACTIVE",$item_active_prefix.
"[active]");
915 $change =
$_POST[
'item_change'][
"$item[ref_id]"][
'change'];
916 $active =
$_POST[
'item_active'][
"$item[ref_id]"][
'active'];
920 $change = $item[
'changeable'];
924 $this->tpl->setVariable(
"CHECKED_ACTIVE",$active ?
'checked="checked"' :
'');
925 $this->tpl->setVariable(
"CHECKED_CHANGE",$change ?
'checked="checked"' :
'');
927 if(isset($this->failed[
"$item[ref_id]"]))
929 $this->tpl->setVariable(
"ROWCLASS",
'tblrowmarked');
935 $this->tpl->parseCurrentBlock();
940 $this->tpl->setVariable(
"SELECT_ALL",$this->lng->txt(
'select_all'));
942 $this->tpl->setVariable(
"BTN_SAVE",$this->lng->txt(
'save'));
943 $this->tpl->setVariable(
"BTN_CANCEL",$this->lng->txt(
'cancel'));
951 include_once
'Modules/Course/classes/Timings/class.ilTimingAccepted.php';
952 $accept_obj =
new ilTimingAccepted($this->course_obj->getId(),$ilUser->getId());
954 $this->tpl->setVariable(
"REMARK",$accept_obj->getRemark());
955 $this->tpl->setVariable(
"ACCEPT_CHECKED",$accept_obj->isAccepted() ?
'checked="checked"' :
'');
956 $this->tpl->setVariable(
"TUTOR_CHECKED",$accept_obj->isVisible() ?
'checked="checked"' :
'');
958 $this->tpl->setVariable(
"TIMING_ACCEPT",$this->lng->txt(
'timing_accept_table'));
959 $this->tpl->setVariable(
"TXT_ACCEPT",$this->lng->txt(
'timing_user_accept'));
960 $this->tpl->setVariable(
"TXT_REMARK",$this->lng->txt(
'timing_remark'));
961 $this->tpl->setVariable(
"TXT_TUTOR",$this->lng->txt(
'timing_tutor_visible'));
962 $this->tpl->setVariable(
"TXT_BTN_UPDATE",$this->lng->txt(
'save'));
968 include_once
'Modules/Course/classes/Timings/class.ilTimingAccepted.php';
969 $accept_obj =
new ilTimingAccepted($this->course_obj->getId(),$ilUser->getId());
972 $accept_obj->accept(
$_POST[
'accepted']);
973 $accept_obj->setVisible(
$_POST[
'tutor']);
974 $accept_obj->update();
981 if(
$_SESSION[
'crs_timings_panel'][$this->course_obj->getId()])
987 if(!$ilAccess->checkAccess(
'read',
'',$this->container_obj->getRefId()))
989 $ilErr->raiseError($this->lng->txt(
'msg_no_perm_read'),$ilErr->WARNING);
991 $this->tabs_gui->setSubTabActive(
'timings_timings');
995 include_once
'Modules/Course/classes/class.ilCourseItems.php';
1008 $this->ctrl->returnToParent($this);
1013 global $ilObjDataCache;
1015 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.crs_user_timings.html',
'Modules/Course');
1016 $this->tabs_gui->clearSubTabs();
1017 $this->tabs_gui->setTabActive(
'members');
1019 if(!
$_GET[
'member_id'])
1022 $this->ctrl->returnToParent($this);
1027 $this->tpl->addBlockfile(
"BUTTONS",
"buttons",
"tpl.buttons.html");
1028 $this->tpl->setCurrentBlock(
"btn_cell");
1029 $this->tpl->setVariable(
"BTN_LINK",$this->ctrl->getLinkTarget($this,
'returnToMembers'));
1030 $this->tpl->setVariable(
"BTN_TXT",$this->lng->txt(
"back"));
1031 $this->tpl->parseCurrentBlock();
1033 include_once
'Modules/Course/classes/Timings/class.ilTimingAccepted.php';
1036 if($usr_accepted->isAccepted())
1039 $this->tpl->setVariable(
"ACC_ALT",$this->lng->txt(
'timing_accepted'));
1044 $this->tpl->setVariable(
"ACC_ALT",$this->lng->txt(
'timing_not_accepted'));
1046 if($usr_accepted->isVisible() and strlen($usr_accepted->getRemark()))
1048 $this->tpl->setVariable(
"REMARK",nl2br($usr_accepted->getRemark()));
1052 $this->tpl->setVariable(
"REMARK",$this->lng->txt(
'not_available'));
1055 $this->tpl->setVariable(
"TIMING_ACCEPT",$this->lng->txt(
'timing_accept_table'));
1056 $this->tpl->setVariable(
"TXT_ACCEPTED",$this->lng->txt(
'timing_user_accepted'));
1057 $this->tpl->setVariable(
"TXT_REMARK",$this->lng->txt(
'timing_remark'));
1060 $this->tpl->setVariable(
"HEADER_ALT",$this->lng->txt(
'obj_usr'));
1061 $this->tpl->setVariable(
"TABLE_HEADER",$this->lng->txt(
'timings_of'));
1063 $this->tpl->setVariable(
"USER_NAME",$name[
'lastname'].
', '.$name[
'firstname']);
1065 $this->tpl->setVariable(
"TXT_TITLE",$this->lng->txt(
'title'));
1066 $this->tpl->setVariable(
"TXT_START_END",$this->lng->txt(
'crs_timings_short_start_end'));
1067 $this->tpl->setVariable(
"TXT_INFO_START_END",$this->lng->txt(
'crs_timings_start_end_info'));
1068 $this->tpl->setVariable(
"TXT_CHANGED",$this->lng->txt(
'crs_timings_changed'));
1069 $this->tpl->setVariable(
"TXT_OWN_PRESETTING",$this->lng->txt(
'crs_timings_planed_start'));
1070 $this->tpl->setVariable(
"TXT_INFO_OWN_PRESETTING",$this->lng->txt(
'crs_timings_from_until'));
1072 $this->items_obj =
new ilCourseItems($this->course_obj->getRefId(),$this->container_obj->getRefId());
1073 $items =& $this->items_obj->
getItems();
1075 foreach($items as $item)
1087 global $ilUser,$ilAccess;
1089 include_once
'Modules/Course/classes/Timings/class.ilTimingPlaned.php';
1090 include_once
'./Services/MetaData/classes/class.ilMDEducational.php';
1092 $this->lng->loadLanguageModule(
'meta');
1095 for($i = 0;$i < $level;$i++)
1097 $this->tpl->touchBlock(
'start_indent');
1098 $this->tpl->touchBlock(
'end_indent');
1100 if(strlen($item[
'description']))
1102 $this->tpl->setCurrentBlock(
"item_description");
1103 $this->tpl->setVariable(
"DESC",$item[
'description']);
1104 $this->tpl->parseCurrentBlock();
1108 $this->tpl->setCurrentBlock(
"tlt");
1109 $this->tpl->setVariable(
"TXT_TLT",$this->lng->txt(
'meta_typical_learning_time'));
1111 $this->tpl->parseCurrentBlock();
1114 $this->tpl->setCurrentBlock(
"title_plain");
1115 $this->tpl->setVariable(
"TITLE",$item[
'title']);
1116 $this->tpl->parseCurrentBlock();
1118 $this->tpl->setCurrentBlock(
"container_standard_row");
1120 $this->tpl->setVariable(
"ROWCLASS",
ilUtil::switchColor($this->counter++,
'tblrow1',
'tblrow2'));
1121 #$this->tpl->setVariable("TYPE_IMG",ilUtil::getImagePath('icon_'.$item['type'].'.gif'));
1123 $this->tpl->setVariable(
"TYPE_ALT_IMG",$this->lng->txt(
'obj_'.$item[
'type']));
1133 if($usr_planed->getPlanedStartingTime())
1135 $start = $usr_planed->getPlanedStartingTime();
1139 $start = $item[
'suggestion_start'];
1143 if($usr_planed->getPlanedEndingTime())
1145 $end = $usr_planed->getPlanedEndingTime();
1149 $end = $item[
'suggestion_end'];
1151 if($start != $item[
'suggestion_start'] or $end != $item[
'suggestion_end'])
1154 $this->tpl->setVariable(
"OK_ALT",$this->lng->txt(
'crs_timings_changed'));
1159 $this->tpl->setVariable(
"OK_ALT",$this->lng->txt(
'crs_timings_not_changed'));
1164 $this->tpl->parseCurrentBlock();
1166 $sub_items_obj =
new ilCourseItems($this->course_obj->getRefId(),$item[
'ref_id'],
$_GET[
'member_id']);
1167 foreach($sub_items_obj->getItems() as $item_data)
1181 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.crs_usr_edit_timings_adv.html',
'Modules/Course');
1185 $this->tpl->setVariable(
"FORMACTION",$this->ctrl->getFormAction($this));
1187 $this->tpl->setVariable(
"HEADER_ALT",$this->lng->txt(
'obj_crs'));
1188 $this->tpl->setVariable(
"BLOCK_HEADER_CONTENT",$this->lng->txt(
'timings_usr_edit'));
1190 if(!
$_SESSION[
'crs_timings_user_hidden'])
1192 $this->tpl->setVariable(
"SHOW_HIDE_TEXT",$this->lng->txt(
'show_details'));
1193 $this->ctrl->setParameter($this,
'show_details',1);
1194 $this->tpl->setVariable(
"SHOW_HIDE_LINK",$this->ctrl->getLinkTarget($this,
'editUserTimings'));
1198 $this->tpl->setVariable(
"SHOW_HIDE_TEXT",$this->lng->txt(
'hide_details'));
1199 $this->ctrl->setParameter($this,
'show_details',0);
1200 $this->tpl->setVariable(
"SHOW_HIDE_LINK",$this->ctrl->getLinkTarget($this,
'editUserTimings'));
1202 $this->ctrl->clearParameters($this);
1203 $this->tpl->setVariable(
"TXT_TITLE",$this->lng->txt(
'title'));
1204 $this->tpl->setVariable(
"TXT_START_END",$this->lng->txt(
'crs_timings_short_start_end'));
1205 $this->tpl->setVariable(
"TXT_INFO_START_END",$this->lng->txt(
'crs_timings_start_end_info'));
1207 $this->tpl->setVariable(
"TXT_LIMIT",$this->lng->txt(
'crs_timings_short_limit_start_end'));
1208 $this->tpl->setVariable(
"TXT_INFO_LIMIT",$this->lng->txt(
'crs_timings_from_until'));
1210 $this->tpl->setVariable(
"TXT_OWN_PRESETTING",$this->lng->txt(
'crs_timings_planed_start'));
1211 $this->tpl->setVariable(
"TXT_INFO_OWN_PRESETTING",$this->lng->txt(
'crs_timings_start_end_info'));
1213 $this->tpl->setVariable(
"TXT_DURATION",$this->lng->txt(
'crs_timings_time_frame'));
1214 $this->tpl->setVariable(
"TXT_INFO_DURATION",$this->lng->txt(
'crs_timings_in_days'));
1216 $this->tpl->setVariable(
"TXT_BTN_UPDATE",$this->lng->txt(
'save'));
1217 $this->tpl->setVariable(
"TXT_CANCEL",$this->lng->txt(
'cancel'));
1219 $this->items_obj =
new ilCourseItems($this->course_obj->getRefId(),$this->container_obj->getRefId());
1220 $items =& $this->items_obj->
getItems();
1222 $all_items = $this->items_obj->getFilteredItems($this->course_obj->getRefId());
1226 foreach($sorted_items as $item)
1228 switch($item[
'type'])
1244 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.crs_usr_edit_timings.html',
'Modules/Course');
1249 $this->tpl->setVariable(
"FORMACTION",$this->ctrl->getFormAction($this));
1251 $this->tpl->setVariable(
"HEADER_ALT",$this->lng->txt(
'obj_crs'));
1253 if(!
$_SESSION[
'crs_timings_user_hidden'])
1255 $this->tpl->setVariable(
"SHOW_HIDE_TEXT",$this->lng->txt(
'show_details'));
1256 $this->ctrl->setParameter($this,
'show_details',1);
1257 $this->tpl->setVariable(
"SHOW_HIDE_LINK",$this->ctrl->getLinkTarget($this,
'editUserTimings'));
1261 $this->tpl->setVariable(
"SHOW_HIDE_TEXT",$this->lng->txt(
'hide_details'));
1262 $this->ctrl->setParameter($this,
'show_details',0);
1263 $this->tpl->setVariable(
"SHOW_HIDE_LINK",$this->ctrl->getLinkTarget($this,
'editUserTimings'));
1265 $this->ctrl->clearParameters($this);
1267 $this->tpl->setVariable(
"BLOCK_HEADER_CONTENT",$this->lng->txt(
'timings_timings'));
1268 $this->tpl->setVariable(
"TXT_TITLE",$this->lng->txt(
'title'));
1269 $this->tpl->setVariable(
"TXT_START",$this->lng->txt(
'crs_timings_sug_begin'));
1270 $this->tpl->setVariable(
"TXT_END",$this->lng->txt(
'crs_timings_sug_end'));
1273 $this->items_obj =
new ilCourseItems($this->course_obj->getRefId(),$this->container_obj->getRefId());
1275 $all_items = $this->items_obj->
getFilteredItems($this->course_obj->getRefId());
1279 foreach($sorted_items as $item)
1281 switch($item[
'type'])
1299 foreach($a_items as $item)
1303 $inactive[] = $item;
1313 return array_merge($sorted_active,$sorted_inactive);
1320 if(strlen($item[
'description']))
1322 $this->tpl->setCurrentBlock(
"item_description");
1323 $this->tpl->setVariable(
"DESC",$item[
'description']);
1324 $this->tpl->parseCurrentBlock();
1327 if($ilAccess->checkAccess(
'read',
'',$item[
'ref_id']))
1329 $this->tpl->setCurrentBlock(
"title_as_link");
1331 include_once
'./classes/class.ilLink.php';
1332 $this->tpl->setVariable(
"TITLE_LINK",
ilLink::_getLink($item[
'ref_id'],$item[
'type']));
1333 $this->tpl->setVariable(
"TITLE_NAME",$item[
'title']);
1334 $this->tpl->parseCurrentBlock();
1338 $this->tpl->setCurrentBlock(
"title_plain");
1339 $this->tpl->setVariable(
"TITLE",$item[
'title']);
1340 $this->tpl->parseCurrentBlock();
1347 $this->tpl->setCurrentBlock(
"tlt");
1348 $this->tpl->setVariable(
"TXT_TLT",$this->lng->txt(
'event_date'));
1349 include_once(
'./Modules/Session/classes/class.ilSessionAppointment.php');
1351 $this->tpl->parseCurrentBlock();
1353 $this->tpl->setCurrentBlock(
"container_standard_row");
1354 $this->tpl->setVariable(
"ROWCLASS",
ilUtil::switchColor($this->counter++,
'tblrow1',
'tblrow2'));
1356 $this->tpl->setVariable(
"TYPE_ALT_IMG",$this->lng->txt(
'obj_'.$item[
'type']));
1357 $this->tpl->parseCurrentBlock();
1359 #if(!$_SESSION['crs_timings_user_hidden'])
1363 foreach($this->items_obj->getItemsByEvent($item[
'event_id']) as $item)
1371 global $ilUser,$ilAccess;
1373 include_once
'Modules/Course/classes/Timings/class.ilTimingPlaned.php';
1374 include_once
'./classes/class.ilLink.php';
1375 include_once
'./Services/MetaData/classes/class.ilMDEducational.php';
1377 if(!$ilAccess->checkAccess(
'visible',
'',$item[
'ref_id']))
1382 $this->lng->loadLanguageModule(
'meta');
1384 $usr_planed =
new ilTimingPlaned($item[
'ref_id'],$ilUser->getId());
1386 for($i = 0;$i < $level;$i++)
1388 $this->tpl->touchBlock(
'start_indent');
1389 $this->tpl->touchBlock(
'end_indent');
1391 if(strlen($item[
'description']))
1393 $this->tpl->setCurrentBlock(
"item_description");
1394 $this->tpl->setVariable(
"DESC",$item[
'description']);
1395 $this->tpl->parseCurrentBlock();
1399 $this->tpl->setCurrentBlock(
"tlt");
1400 $this->tpl->setVariable(
"TXT_TLT",$this->lng->txt(
'meta_typical_learning_time'));
1402 $this->tpl->parseCurrentBlock();
1405 if($ilAccess->checkAccess(
'read',
'',$item[
'ref_id']))
1407 $this->tpl->setCurrentBlock(
"title_as_link");
1408 $this->tpl->setVariable(
"TITLE_LINK",
ilLink::_getLink($item[
'ref_id'],$item[
'type']));
1409 $this->tpl->setVariable(
"TITLE_NAME",$item[
'title']);
1410 $this->tpl->parseCurrentBlock();
1414 $this->tpl->setCurrentBlock(
"title_plain");
1415 $this->tpl->setVariable(
"TITLE",$item[
'title']);
1416 $this->tpl->parseCurrentBlock();
1418 $this->tpl->setCurrentBlock(
"container_standard_row");
1420 if(isset($this->invalid[
"$item[ref_id]"]))
1422 $this->tpl->setVariable(
"ROWCLASS",
'tblrowmarked');
1426 $this->tpl->setVariable(
"ROWCLASS",
ilUtil::switchColor($this->counter++,
'tblrow1',
'tblrow2'));
1428 #$this->tpl->setVariable("TYPE_IMG",ilUtil::getImagePath('icon_'.$item['type'].'.gif'));
1430 $this->tpl->setVariable(
"TYPE_ALT_IMG",$this->lng->txt(
'obj_'.$item[
'type']));
1439 if($item[
'changeable'])
1441 $item_prefix =
"item[".$item[
'ref_id'].
']';
1443 if(is_array(
$_POST[
'item'][
"$item[ref_id]"][
'own_start']))
1445 #echo "Start post<br>";
1446 $start = $this->
__toUnix(
$_POST[
'item'][
"$item[ref_id]"][
'own_start']);
1448 elseif($usr_planed->getPlanedStartingTime())
1450 #echo "Own start<br>";
1451 $start = $usr_planed->getPlanedStartingTime();
1455 #echo "Empfehlung start<br>";
1456 $start = $item[
'suggestion_start'];
1460 $this->tpl->setVariable(
"OWN_START",
1462 $date[
'y'],$date[
'm'],$date[
'd'],date(
'Y',time()),
false));
1464 if($usr_planed->getPlanedEndingTime())
1466 #echo "Own End<br>";
1467 $end = $usr_planed->getPlanedEndingTime();
1471 #echo "Empfehlung end<br>";
1472 $end = $item[
'suggestion_end'];
1475 $this->tpl->setVariable(
"NAME_DURATION",$item_prefix.
"[duration]");
1478 if(isset(
$_POST[
'item'][
"$item[ref_id]"][
'duration']))
1480 $this->tpl->setVariable(
"VAL_DURATION",
$_POST[
'item'][
"$item[ref_id]"][
'duration']);
1484 $this->tpl->setVariable(
"VAL_DURATION",intval(($end - $start) / (60 * 60 * 24)));
1490 $this->tpl->parseCurrentBlock();
1492 if(!
$_SESSION[
'crs_timings_user_hidden'])
1497 $sub_items_obj =
new ilCourseItems($this->course_obj->getRefId(),$item[
'ref_id']);
1498 foreach($sub_items_obj->getItems() as $item_data)
1508 if(!$ilAccess->checkAccess(
'write',
'',$this->container_obj->getRefId()))
1513 if(!
$_SESSION[
'crs_timings_panel'][$this->course_obj->getId()])
1515 $this->tpl->addBlockfile(
"BUTTONS",
"buttons",
"tpl.buttons.html");
1516 $this->tpl->setCurrentBlock(
"btn_cell");
1517 $this->tpl->setVariable(
"BTN_LINK",$this->ctrl->getLinkTarget($this,
'timingsOn'));
1518 $this->tpl->setVariable(
"BTN_TXT",$this->lng->txt(
"timings_timings_on"));
1519 $this->tpl->parseCurrentBlock();
1523 $this->tpl->addBlockfile(
"BUTTONS",
"buttons",
"tpl.buttons.html");
1524 $this->tpl->setCurrentBlock(
"btn_cell");
1525 $this->tpl->setVariable(
"BTN_LINK",$this->ctrl->getLinkTarget($this,
'timingsOff'));
1526 $this->tpl->setVariable(
"BTN_TXT",$this->lng->txt(
"timings_timings_off"));
1527 $this->tpl->parseCurrentBlock();
1534 $_SESSION[
'crs_timings_panel'][$this->course_obj->getId()] = 1;
1536 $ilTabs->clearSubTabs();
1544 $_SESSION[
'crs_timings_panel'][$this->course_obj->getId()] = 0;
1546 $ilTabs->clearSubTabs();
1554 global $ilUser,$ilObjDataCache;
1555 include_once
'Modules/Course/classes/Timings/class.ilTimingPlaned.php';
1558 $this->invalid = array();
1564 if(isset(
$data[
'duration']))
1566 $data[
'own_start'][
'd'] +=
$data[
'duration'];
1567 $tmp_planed->setPlanedEndingTime($this->
__toUnix(
$data[
'own_start'],array(
'h' => 23,
'm' => 55)));
1571 $tmp_planed->setPlanedEndingTime($this->
__toUnix(
$data[
'own_start']),array(
'h' => 23,
'm' => 55));
1573 if(!$tmp_planed->validate())
1575 $this->invalid[
$ref_id] = $ilObjDataCache->lookupTitle($ilObjDataCache->lookupObjId(
$ref_id));
1577 $all_items[] = $tmp_planed;
1579 if(count($this->invalid))
1581 $message = $this->lng->txt(
'crs_timings_update_error');
1582 $message .= (
"<br />".$this->lng->txt(
'crs_materials').
': ');
1583 $message .= (implode(
',',$this->invalid));
1588 foreach($all_items as $new_item_obj)
1590 $new_item_obj->update();
1607 $item[
'suggestion_start'] = $this->
__toUnix(
$_POST[
'item'][$obj_id][
'sug_start']);
1608 $item[
'suggestion_end'] = $this->
__toUnix(
$_POST[
'item'][$obj_id][
'sug_end']);
1609 $item[
'earliest_start'] = $this->
__toUnix(
$_POST[
'item'][$obj_id][
'lim_start']);
1610 $item[
'latest_end'] = $this->
__toUnix(
$_POST[
'item'][$obj_id][
'lim_end']);
1613 $item[
'duration_a'] =
$_POST[
'item'][
$obj_id][
'duration_a'];
1614 $item[
'duration_b'] =
$_POST[
'item'][
$obj_id][
'duration_b'];
1621 include_once
'Modules/Course/classes/class.ilCourseItems.php';
1625 if(!$ilAccess->checkAccess(
'write',
'',$this->container_obj->getRefId()))
1627 $ilErr->raiseError($this->lng->txt(
'msg_no_perm_write'),$ilErr->WARNING);
1629 $this->failed = array();
1633 $all_items = array();
1637 $item_obj =&
new ilCourseItems($this->course_obj->getRefId(),$this->container_obj->getRefId());
1641 $item_obj->setTimingStart($old_data[
'timing_start']);
1642 $item_obj->setTimingEnd($old_data[
'timing_end']);
1643 $item_obj->setSuggestionStart($this->
__toUnix(
$data[
"sug_start"]));
1646 $data[
'sug_start'][
'd'] += abs(
$data[
'duration_a']);
1647 $item_obj->setSuggestionEnd($this->
__toUnix(
$data[
'sug_start'],array(
'h' => 23,
'm' => 55)));
1649 $item_obj->setEarliestStart(time());
1650 $item_obj->setLatestEnd($this->
__toUnix(
$data[
'lim_end'],array(
'h' => 23,
'm' => 55)));
1652 $item_obj->toggleVisible($old_data[
'visible']);
1653 $item_obj->toggleChangeable(
$_POST[
'item_change'][
$ref_id][
'change']);
1655 if(!$item_obj->validateActivation())
1657 $this->failed[
$ref_id] = $old_data[
'title'];
1659 $all_items[
$ref_id] =& $item_obj;
1663 if(count($this->failed))
1665 $message = $this->lng->txt(
'crs_timings_update_error');
1666 $message .= (
"<br />".$this->lng->txt(
'crs_materials').
': ');
1667 $message .= (implode(
',',$this->failed));
1674 foreach($all_items as
$ref_id => $item_obj_new)
1676 $item_obj_new->update(
$ref_id);
1688 include_once
'Services/Object/classes/class.ilObjectListGUIFactory.php';
1702 if (!is_object ($this->list_gui[$cont_data[
"type"]]))
1706 $item_list_gui->setContainerObject($this->container_gui);
1708 $item_list_gui->enableSubscribe($this->course_obj->getAboStatus());
1710 $this->list_gui[$cont_data[
"type"]] =& $item_list_gui;
1714 $item_list_gui =& $this->list_gui[$cont_data[
"type"]];
1718 if (!$this->container_gui->isActiveAdministrationPanel())
1720 $item_list_gui->enableDelete(
false);
1721 $item_list_gui->enableLink(
false);
1722 $item_list_gui->enableCut(
false);
1723 $item_list_gui->enableCopy(
false);
1727 if ($activation !=
"")
1729 $item_list_gui->addCustomProperty($this->lng->txt($cont_data[
'activation_info']), $activation,
1733 if($a_show_path and $this->is_tutor)
1735 $item_list_gui->addCustomProperty($this->lng->txt(
'path'),
1744 $this->ctrl->setParameterByClass(
'ilcourseitemadministrationgui',
"ref_id",
1745 $this->container_obj->getRefId());
1746 $this->ctrl->setParameterByClass(
'ilcourseitemadministrationgui',
"item_id",
1747 $cont_data[
'child']);
1749 $item_list_gui->addCustomCommand($this->ctrl->getLinkTargetByClass(
'ilCourseItemAdministrationGUI',
1754 return $item_list_gui;
1768 $tmp_array[
"lng"] = $this->lng->txt(
"crs_move_up");
1770 $this->ctrl->setParameterByClass(
'ilcourseitemadministrationgui',
"ref_id",
1771 $this->container_obj->getRefId());
1772 $this->ctrl->setParameterByClass(
'ilcourseitemadministrationgui',
"item_id",
1773 $cont_data[
'child']);
1774 $tmp_array[
'lnk'] = $this->ctrl->getLinkTargetByClass(
'ilcourseitemadministrationgui',
'moveUp');
1775 $tmp_array[
"tar"] =
"";
1777 $images[] = $tmp_array;
1779 if($num != count($this->cont_arr) - 1)
1782 $tmp_array[
"lng"] = $this->lng->txt(
"crs_move_down");
1783 $this->ctrl->setParameterByClass(
'ilcourseitemadministrationgui',
"ref_id",
1784 $this->container_obj->getRefId());
1785 $this->ctrl->setParameterByClass(
'ilcourseitemadministrationgui',
"item_id",
1786 $cont_data[
'child']);
1787 $tmp_array[
'lnk'] = $this->ctrl->getLinkTargetByClass(
'ilcourseitemadministrationgui',
'moveDown');
1789 $images[] = $tmp_array;
1794 return $images ? $images : array();
1800 if(!$this->is_tutor && $this->container_obj->getType() ==
'crs')
1802 include_once(
'Services/Feedback/classes/class.ilFeedbackGUI.php');
1804 $feedbackHTML = $feedbackGUI->getCRSFeedbackListHTML();
1806 if(strlen($feedbackHTML))
1808 $this->tpl->setCurrentBlock(
"cont_page_content");
1809 $this->tpl->setVariable(
"CONTAINER_PAGE_CONTENT",$feedbackHTML);
1810 $this->tpl->parseCurrentBlock();
1818 if($this->container_obj->getType() ==
'crs')
1820 $this->container_gui->setContentSubTabs();
1828 if($this->container_obj->getType() ==
'crs')
1836 $course_ref_id = $tree->checkForParentType($this->container_obj->getRefId(),
'crs');
1844 return gmmktime($time[
'h'],$time[
'm'],0,$date[
'm'],$date[
'd'],$date[
'y']);
1849 return array(
'y' => date(
'Y',$a_unix_time),
1850 'm' => date(
'm',$a_unix_time),
1851 'd' => date(
'd',$a_unix_time));
1856 return array(
'h' => date(
'G',$a_unix_time),
1857 'm' => date(
'i',$a_unix_time),
1858 's' => date(
's',$a_unix_time));
1866 $path_arr = $tree->getPathFull($a_ref_id,$this->course_obj->getRefId());
1868 foreach($path_arr as
$data)
1874 $path .= $data[
'title'];