5 include_once
'./Services/User/classes/class.ilObjUser.php';
6 include_once
"Services/Mail/classes/class.ilMail.php";
7 include_once
'Services/Mail/classes/class.ilMailGlobalServices.php';
8 include_once
'Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php';
50 $ilCtrl->setContext($ilUser->getId(),
53 $ilMainMenu->setActive(
"desktop");
54 $this->lng->loadLanguageModule(
"pdesk");
55 $this->lng->loadLanguageModule(
"pd");
58 if (
$_SESSION[
"AccountId"] == ANONYMOUS_USER_ID)
60 $this->ilias->raiseError($this->lng->txt(
"msg_not_available_for_anon"),$this->ilias->error_obj->MESSAGE);
62 $this->cmdClass =
$_GET[
'cmdClass'];
76 $next_class = $this->ctrl->getNextClass();
77 $this->ctrl->setReturn($this,
"show");
82 if (isset(
$_GET[
'PDHistory']) &&
$_GET[
'PDHistory'])
91 $next_class ==
'ilmailaddressbookgui' && ($this->ilias->getSetting(
"disable_contacts") ||
93 !$this->ilias->getSetting(
"disable_contacts_require_mail") &&
104 case "ilbookmarkadministrationgui":
105 if ($ilSetting->get(
'disable_bookmarks'))
111 include_once(
"./Services/Bookmarks/classes/class.ilBookmarkAdministrationGUI.php");
113 if ($bookmark_gui->getMode() ==
'tree') {
119 $ret =& $this->ctrl->forwardCommand($bookmark_gui);
123 case "ilpersonalprofilegui":
126 include_once(
"./Services/User/classes/class.ilPersonalProfileGUI.php");
128 $ret =& $this->ctrl->forwardCommand($profile_gui);
132 case "ilpersonalsettingsgui":
135 include_once(
"./Services/User/classes/class.ilPersonalSettingsGUI.php");
137 $ret =& $this->ctrl->forwardCommand($settings_gui);
142 include_once(
'./Services/User/classes/class.ilObjUserGUI.php');
144 $ret =& $this->ctrl->forwardCommand($user_gui);
147 case 'ilcalendarpresentationgui':
150 $this->tpl->setTitle($this->lng->txt(
"calendar"));
152 include_once(
'./Services/Calendar/classes/class.ilCalendarPresentationGUI.php');
154 $ret = $this->ctrl->forwardCommand($cal);
160 if ($ilSetting->get(
'disable_notes'))
169 include_once(
"./Services/Notes/classes/class.ilPDNotesGUI.php");
171 $ret =& $this->ctrl->forwardCommand($pd_notes_gui);
178 include_once(
"./Services/News/classes/class.ilPDNewsGUI.php");
180 $ret =& $this->ctrl->forwardCommand($pd_news_gui);
183 case "illearningprogressgui":
186 include_once
'./Services/Tracking/classes/class.ilLearningProgressGUI.php';
188 $ret =& $this->ctrl->forwardCommand($new_gui);
195 include_once(
"./Services/Block/classes/class.ilColumnGUI.php");
202 case 'ilmailaddressbookgui':
205 $this->tpl->setTitle($this->lng->txt(
"mail_addressbook"));
207 include_once
'Services/Contact/classes/class.ilMailAddressbookGUI.php';
209 $ret = $this->ctrl->forwardCommand($mailgui);
212 case 'ilpersonalworkspacegui':
215 include_once
'Services/PersonalWorkspace/classes/class.ilPersonalWorkspaceGUI.php';
217 $ret = $this->ctrl->forwardCommand($wsgui);
221 case 'ilportfoliorepositorygui':
224 include_once
'Modules/Portfolio/classes/class.ilPortfolioRepositoryGUI.php';
226 $ret = $this->ctrl->forwardCommand($pfgui);
230 case 'ilpersonalskillsgui':
232 include_once
'./Services/Skill/classes/class.ilPersonalSkillsGUI.php';
235 $ret = $this->ctrl->forwardCommand($skgui);
246 $cmd = $this->ctrl->getCmd(
"show");
261 foreach(
$_GET as $key => $val)
263 if(substr($key, 0, strlen(
'param_')) ==
'param_')
265 $this->ctrl->setParameterByClass(
$_GET[
'redirectClass'], substr($key, strlen(
'param_')), $val);
277 $this->tpl->getStandardTemplate();
289 $this->tpl->addBlockFile(
"CONTENT",
"content",
"tpl.adm_content.html");
290 $this->tpl->addBlockFile(
"STATUSLINE",
"statusline",
"tpl.statusline.html");
300 include_once(
"Services/Block/classes/class.ilBlockSetting.php");
304 $this->pd_tpl =
new ilTemplate(
"tpl.usr_personaldesktop.html",
true,
true,
"Services/PersonalDesktop");
305 $this->tpl->getStandardTemplate();
310 $this->tpl->setTitle($this->lng->txt(
"overview"));
317 if(count($this->action_menu->getItems()))
325 $this->action_menu->setAsynch(
false);
326 $this->action_menu->setAsynchUrl(
'');
327 $this->action_menu->setListTitle($lng->txt(
'actions'));
328 $this->action_menu->setId(
'act_pd');
329 $this->action_menu->setSelectionHeaderClass(
'small');
330 $this->action_menu->setItemLinkClass(
'xsmall');
331 $this->action_menu->setLinksMode(
'il_ContainerItemCommand2');
333 $this->action_menu->setUseImages(
false);
335 $htpl =
new ilTemplate(
'tpl.header_action.html',
true,
true,
'Services/Repository');
336 $htpl->setVariable(
'ACTION_DROP_DOWN', $this->action_menu->getHTML());
338 $tpl->setHeaderActionMenu($htpl->get());
350 global
$ilCtrl, $ilPluginAdmin;
352 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
356 if ($ilCtrl->getNextClass() ==
"ilcolumngui" &&
359 $html = $ilCtrl->forwardCommand($column_gui);
363 if (!$ilCtrl->isAsynch())
372 $html = $ilCtrl->forwardCommand($column_gui);
379 $html = $ilCtrl->forwardCommand($column_gui);
387 include_once(
"./Services/UIComponent/classes/class.ilUIHookProcessor.php");
389 array(
"personal_desktop_gui" => $this));
390 if (!$uip->replaced())
392 $html = $ilCtrl->getHTML($column_gui);
394 $html = $uip->getHTML($html);
409 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
418 if ($ilCtrl->getNextClass() ==
"ilcolumngui" &&
422 $html = $ilCtrl->forwardCommand($column_gui);
426 if (!$ilCtrl->isAsynch())
431 include_once(
"./Services/UIComponent/classes/class.ilUIHookProcessor.php");
433 array(
"personal_desktop_gui" => $this));
434 if (!$uip->replaced())
436 $html = $ilCtrl->getHTML($column_gui);
438 $html = $uip->getHTML($html);
452 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
461 if ($ilCtrl->getNextClass() ==
"ilcolumngui" &&
465 $html = $ilCtrl->forwardCommand($column_gui);
469 if (!$ilCtrl->isAsynch())
474 include_once(
"./Services/UIComponent/classes/class.ilUIHookProcessor.php");
476 array(
"personal_desktop_gui" => $this));
477 if (!$uip->replaced())
479 $html = $ilCtrl->getHTML($column_gui);
481 $html = $uip->getHTML($html);
491 $this->pd_tpl =
new ilTemplate(
"tpl.usr_personaldesktop.html",
true,
true,
"Services/PersonalDesktop");
492 $this->tpl->getStandardTemplate();
498 $this->tpl->setTitle($this->lng->txt(
"personal_desktop"));
509 if (strlen($err_msg) > 0)
511 $this->ilias->raiseError($this->lng->txt($err_msg),$this->ilias->error_obj->MESSAGE);
521 include_once(
"Services/Mail/classes/class.ilPDSysMessageBlockGUI.php");
523 return $sys_block->getHTML();
539 $key_sorta = explode(
";", $key_sort);
541 $multikeys = array_keys($array);
542 $keys = array_keys($array[$multikeys[0]]);
544 for($m=0; $m < count($key_sorta); $m++) {
545 $nkeys[$m] = trim($key_sorta[$m]);
547 $n += count($key_sorta);
549 for($i=0; $i < count($keys); $i++){
550 if(!in_array($keys[$i], $key_sorta)) {
551 $nkeys[
$n] = $keys[$i];
556 for($u=0;$u<count($array); $u++) {
557 $arr = $array[$multikeys[$u]];
558 for($s=0; $s<count($nkeys); $s++) {
560 $output[$multikeys[$u]][$k] = $array[$multikeys[$u]][$k];
575 $ilHelp->setScreenIdComponent(
"pd");
581 public function jumpToMemberships()
588 if(!$ilSetting->get(
'disable_my_memberships'))
590 require_once
'Services/PersonalDesktop/classes/class.ilPDSelectedItemsBlockGUI.php';
600 public function jumpToSelectedItems()
607 if(!$ilSetting->get(
'disable_my_offers'))
609 require_once
'Services/PersonalDesktop/classes/class.ilPDSelectedItemsBlockGUI.php';
622 $this->ctrl->redirectByClass(
"ilpersonalprofilegui");
631 $this->ctrl->setParameterByClass(
"ilportfoliorepositorygui",
"shr_id",
$_REQUEST[
"dsh"]);
638 $this->ctrl->setParameterByClass(
"ilobjportfoliogui",
"prt_id", (
int)
$_GET[
"prt_id"]);
639 $this->ctrl->setParameterByClass(
"ilobjportfoliogui",
"gtp", (
int)$_GET[
"gtp"]);
640 $this->ctrl->redirectByClass(array(
"ilportfoliorepositorygui",
"ilobjportfoliogui"),
"preview");
644 $this->ctrl->redirectByClass(
"ilportfoliorepositorygui",
$cmd);
653 $this->ctrl->redirectByClass(
"ilpersonalsettingsgui");
661 if ($this->ilias->getSetting(
"disable_bookmarks"))
668 $this->ctrl->redirectByClass(
"ilbookmarkadministrationgui");
676 if ($this->ilias->getSetting(
'disable_notes'))
683 $this->ctrl->redirectByClass(
"ilpdnotesgui");
691 $this->ctrl->redirectByClass(
"ilpdnewsgui");
699 $this->ctrl->redirectByClass(
"illearningprogressgui");
707 $this->ctrl->redirectByClass(
"ilcalendarpresentationgui");
715 $this->ctrl->redirectByClass(
"ilmailaddressbookgui");
727 $this->ctrl->setParameterByClass(
"ilpersonalworkspacegui",
"shr_id",
$_REQUEST[
"dsh"]);
733 $this->ctrl->setParameterByClass(
"ilpersonalworkspacegui",
"wsp_id", (
int)
$_REQUEST[
"wsp_id"]);
738 $this->ctrl->setParameterByClass(
"ilpersonalworkspacegui",
"gtp", (
int)
$_REQUEST[
"gtp"]);
741 $this->ctrl->redirectByClass(
"ilpersonalworkspacegui",
$cmd);
749 $this->ctrl->redirectByClass(
"ilpersonalskillsgui");
754 $stored_classes = array(
'ilpersonaldesktopgui',
755 'ilpersonalprofilegui',
757 'ilcalendarpresentationgui',
758 'ilbookmarkadministrationgui',
759 'illearningprogressgui');
761 if(isset(
$_SESSION[
'il_pd_history']) and in_array(
$_SESSION[
'il_pd_history'],$stored_classes))
767 $this->ctrl->getNextClass($this);
773 $this->cmdClass = $a_class;
783 if ($pd_set->get(
"enable_block_moving"))
785 $a_column_gui->setEnableMovement(
true);
787 $a_column_gui->setActionMenu($this->action_menu);
795 $this->tpl->setTitle($this->lng->txt(
"personal_desktop"));