5 include_once 
'./Services/User/classes/class.ilObjUser.php';
 
    6 include_once 
"Services/Mail/classes/class.ilMail.php";
 
   41                 $ilCtrl->setContext($ilUser->getId(),
 
   44                 $ilMainMenu->setActive(
"desktop");
 
   45                 $this->lng->loadLanguageModule(
"pdesk");
 
   48                 if (
$_SESSION[
"AccountId"] == ANONYMOUS_USER_ID)
 
   50                         $this->ilias->raiseError($this->lng->txt(
"msg_not_available_for_anon"),$this->ilias->error_obj->MESSAGE);
 
   52                 $this->cmdClass = 
$_GET[
'cmdClass'];
 
   64                 $next_class = $this->ctrl->getNextClass();
 
   65                 $this->ctrl->setReturn($this, 
"show");
 
   71                 if ($ilUser->getProfileIncomplete() && $next_class != 
"ilpersonalprofilegui")
 
   73                         $this->ctrl->redirectByClass(
"ilpersonalprofilegui");
 
   78                 if( ($ilUser->isPasswordChangeDemanded() || $ilUser->isPasswordExpired())
 
   79                                 && $next_class != 
"ilpersonalprofilegui" 
   82                         $this->ctrl->redirectByClass(
"ilpersonalprofilegui");
 
   86                 if (isset(
$_GET[
'PDHistory']) && 
$_GET[
'PDHistory'])
 
   94                 include_once 
"Services/Mail/classes/class.ilMail.php";
 
   97                         $next_class == 
'ilmailaddressbookgui' && ($this->ilias->getSetting(
"disable_contacts") || 
 
   99                                 !$this->ilias->getSetting(
"disable_contacts_require_mail") &&
 
  100                                 !$rbacsystem->checkAccess(
'mail_visible',$mail->getMailObjectReferenceId())
 
  110                         case "ilfeedbackgui":
 
  113                                 $this->tpl->setTitle($this->lng->txt(
"personal_desktop"));
 
  119                                 include_once(
"Services/Feedback/classes/class.ilFeedbackGUI.php");
 
  121                                 $ret =& $this->ctrl->forwardCommand($feedback_gui);
 
  124                         case "ilbookmarkadministrationgui":
 
  125                                 if ($ilSetting->get(
'disable_bookmarks'))
 
  132                                 include_once(
"./Services/PersonalDesktop/classes/class.ilBookmarkAdministrationGUI.php");
 
  134                                 if ($bookmark_gui->getMode() == 
'tree') {
 
  140                                 $ret =& $this->ctrl->forwardCommand($bookmark_gui);
 
  144                         case "ilpersonalprofilegui":
 
  147                                 include_once(
"./Services/User/classes/class.ilPersonalProfileGUI.php");
 
  149                                 $ret =& $this->ctrl->forwardCommand($profile_gui);
 
  154                                 include_once(
'./Services/User/classes/class.ilObjUserGUI.php');
 
  156                                 $ret =& $this->ctrl->forwardCommand($user_gui);
 
  159                         case 'ilcalendarpresentationgui':
 
  163                                 include_once(
'./Services/Calendar/classes/class.ilCalendarPresentationGUI.php');
 
  165                                 $ret = $this->ctrl->forwardCommand($cal);
 
  171                                 if ($ilSetting->get(
'disable_notes'))
 
  180                                 include_once(
"./Services/Notes/classes/class.ilPDNotesGUI.php");
 
  182                                 $ret =& $this->ctrl->forwardCommand($pd_notes_gui);
 
  189                                 include_once(
"./Services/News/classes/class.ilPDNewsGUI.php");
 
  191                                 $ret =& $this->ctrl->forwardCommand($pd_news_gui);
 
  194                         case "illearningprogressgui":
 
  197                                 include_once 
'./Services/Tracking/classes/class.ilLearningProgressGUI.php';
 
  199                                 $ret =& $this->ctrl->forwardCommand($new_gui);
 
  206                                 include_once(
"./Services/Block/classes/class.ilColumnGUI.php");
 
  213                         case 'ilmailaddressbookgui':
 
  216                                 $this->tpl->setTitle($this->lng->txt(
"personal_desktop"));
 
  221                                 include_once 
'Services/Contact/classes/class.ilMailAddressbookGUI.php';
 
  223                                 $ret = $this->ctrl->forwardCommand($mailgui);
 
  231                                 $cmd = $this->ctrl->getCmd(
"show");
 
  246                         foreach(
$_GET as $key => $val)
 
  248                                 if(substr($key, 0, strlen(
'param_')) == 
'param_')
 
  250                                         $this->ctrl->setParameterByClass(
$_GET[
'redirectClass'], substr($key, strlen(
'param_')), $val);
 
  262                 $this->tpl->getStandardTemplate();
 
  275                 $this->tpl->addBlockFile(
"CONTENT", 
"content", 
"tpl.adm_content.html");
 
  276                 $this->tpl->addBlockFile(
"STATUSLINE", 
"statusline", 
"tpl.statusline.html");
 
  286                 include_once(
"Services/Block/classes/class.ilBlockSetting.php");
 
  290                 $this->pd_tpl = 
new ilTemplate(
"tpl.usr_personaldesktop.html", 
true, 
true);
 
  291                 $this->tpl->getStandardTemplate();
 
  300                 $this->tpl->setTitle($this->lng->txt(
"personal_desktop"));
 
  317                 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
 
  321                 if ($ilCtrl->getNextClass() == 
"ilcolumngui" &&
 
  324                         $html = $ilCtrl->forwardCommand($column_gui);
 
  328                         if (!$ilCtrl->isAsynch())
 
  337                                                 $html = $ilCtrl->forwardCommand($column_gui);
 
  344                                                 $html = $ilCtrl->forwardCommand($column_gui);
 
  349                                         $html = $ilCtrl->getHTML($column_gui);
 
  363                 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
 
  372                 if ($ilCtrl->getNextClass() == 
"ilcolumngui" &&
 
  376                         $html = $ilCtrl->forwardCommand($column_gui);
 
  380                         if (!$ilCtrl->isAsynch())
 
  382                                 $html = $ilCtrl->getHTML($column_gui);
 
  396                 include_once(
"Services/Block/classes/class.ilColumnGUI.php");
 
  405                 if ($ilCtrl->getNextClass() == 
"ilcolumngui" &&
 
  409                         $html = $ilCtrl->forwardCommand($column_gui);
 
  413                         if (!$ilCtrl->isAsynch())
 
  415                                 $html = $ilCtrl->getHTML($column_gui);
 
  425                 $this->pd_tpl = 
new ilTemplate(
"tpl.usr_personaldesktop.html", 
true, 
true);
 
  426                 $this->tpl->getStandardTemplate();
 
  435                 $this->tpl->setTitle($this->lng->txt(
"personal_desktop"));
 
  446                 if (strlen($err_msg) > 0)
 
  448                         $this->ilias->raiseError($this->lng->txt($err_msg),$this->ilias->error_obj->MESSAGE);
 
  458                 include_once(
"Services/Mail/classes/class.ilPDSysMessageBlockGUI.php");
 
  460                 return $sys_block->getHTML();
 
  469                 include_once(
"./Services/Feedback/classes/class.ilPDFeedbackBlockGUI.php");
 
  471                 return $fb_block->getHTML();
 
  473                 include_once(
'Services/Feedback/classes/class.ilFeedbackGUI.php');
 
  475                 return $feedback_gui->getPDFeedbackListHTML();
 
  491                         $key_sorta = explode(
";", $key_sort);
 
  493                         $multikeys = array_keys($array);
 
  494                         $keys = array_keys($array[$multikeys[0]]);
 
  496                         for($m=0; $m < count($key_sorta); $m++) {
 
  497                                 $nkeys[$m] = trim($key_sorta[$m]);
 
  499                         $n += count($key_sorta);
 
  501                         for($i=0; $i < count($keys); $i++){
 
  502                                 if(!in_array($keys[$i], $key_sorta)) {
 
  503                                         $nkeys[
$n] = $keys[$i];
 
  508                         for($u=0;$u<count($array); $u++) {
 
  509                                 $arr = $array[$multikeys[$u]];
 
  510                                 for($s=0; $s<count($nkeys); $s++) {
 
  512                                         $output[$multikeys[$u]][$k] = $array[$multikeys[$u]][$k];
 
  532                 if (isset(
$_GET[
"cmd"]))
 
  537                 if (preg_match(
"/whois/", 
$command))
 
  539                         $who_is_online = 
true;
 
  545                 $ilTabs->addTarget(
"overview", $this->ctrl->getLinkTarget($this));
 
  546                 if ((strtolower(
$_GET[
"baseClass"]) == 
"ilpersonaldesktopgui" &&
 
  547                         (strtolower($this->cmdClass) == 
"ilpersonaldesktopgui" ||
 
  548                         $this->cmdClass == 
"" || (strtolower($this->cmdClass)) == 
"ilfeedbackgui" 
  549                         || $ilCtrl->getNextClass() == 
"ilcolumngui")))
 
  551                         $ilTabs->setTabActive(
"overview");
 
  555                 $ilTabs->addTarget(
"personal_profile", $this->ctrl->getLinkTargetByClass(
"ilPersonalProfileGUI"));
 
  556                 if (strtolower($this->cmdClass) == 
"ilpersonalprofilegui")
 
  558                         $ilTabs->setTabActive(
"personal_profile");
 
  562                 if (
$_SESSION[
"AccountId"] != ANONYMOUS_USER_ID)
 
  565                         if ($ilSetting->get(
"block_activated_news"))
 
  567                                 $ilTabs->addTarget(
"news", $this->ctrl->getLinkTargetByClass(
"ilpdnewsgui"));
 
  568                                 if ($ilCtrl->getNextClass() == 
"ilpdnewsgui")
 
  570                                         $ilTabs->setTabActive(
"news");
 
  575                         include_once(
'./Services/Calendar/classes/class.ilCalendarSettings.php');
 
  577                         if($settings->isEnabled())
 
  579                                 $ilTabs->addTarget(
"calendar", $this->ctrl->getLinkTargetByClass(
"ilcalendarpresentationgui"));
 
  580                                 if (strtolower($this->cmdClass) == 
"ilcalendarpresentationgui")
 
  582                                         $ilTabs->setTabActive(
"calendar");
 
  587                         if (!$this->ilias->getSetting(
"disable_notes"))
 
  589                                 $ilTabs->addTarget(
"notes_and_comments", $this->ctrl->getLinkTargetByClass(
"ilpdnotesgui"));
 
  590                                 if (strtolower($this->cmdClass) == 
"ilpdnotesgui" ||
 
  591                                         strtolower($this->cmdClass) == 
"ilnotegui")
 
  593                                         $ilTabs->setTabActive(
"notes_and_comments");
 
  598                         if (!$this->ilias->getSetting(
"disable_bookmarks"))
 
  600                                 $ilTabs->addTarget(
"bookmarks", $this->ctrl->getLinkTargetByClass(
"ilbookmarkadministrationgui"));
 
  601                                 if (strtolower($this->cmdClass) == 
"ilbookmarkadministrationgui")
 
  603                                         $ilTabs->setTabActive(
"bookmarks");
 
  608                         include_once 
"Services/Mail/classes/class.ilMail.php";
 
  611                         if (!$this->ilias->getSetting(
"disable_contacts") && ($this->ilias->getSetting(
"disable_contacts_require_mail") || $rbacsystem->checkAccess(
'mail_visible',$mail->getMailObjectReferenceId())))
 
  613                                 $ilTabs->addTarget(
"mail_addressbook", $this->ctrl->getLinkTargetByClass(
"ilmailaddressbookgui"));
 
  614                                 if (strtolower($this->cmdClass) == 
"ilmailaddressbookgui")
 
  616                                         $ilTabs->setTabActive(
"mail_addressbook");
 
  622                 include_once(
"Services/Tracking/classes/class.ilObjUserTracking.php");
 
  625                         $ilTabs->addTarget(
"learning_progress", $this->ctrl->getLinkTargetByClass(
"ilLearningProgressGUI"));
 
  626                         $cmd_classes = array(
'illplistofobjectsgui',
'illplistofsettingsgui',
'illearningprogressgui',
'illplistofprogressgui');
 
  627                         if (in_array(strtolower($this->cmdClass),$cmd_classes))
 
  629                                 $ilTabs->setTabActive(
"learning_progress");
 
  639                 $this->ctrl->redirectByClass(
"ilpersonalprofilegui");
 
  647                 if ($this->ilias->getSetting(
"disable_bookmarks"))
 
  654                 $this->ctrl->redirectByClass(
"ilbookmarkadministrationgui");
 
  662                 if ($this->ilias->getSetting(
'disable_notes'))
 
  669                 $this->ctrl->redirectByClass(
"ilpdnotesgui");                   
 
  677                 $this->ctrl->redirectByClass(
"ilpdnewsgui");
 
  685                 $this->ctrl->redirectByClass(
"illearningprogressgui");
 
  690                 $stored_classes = array(
'ilpersonaldesktopgui',
 
  691                                                                 'ilpersonalprofilegui',
 
  693                                                                 'ilcalendarpresentationgui',
 
  694                                                                 'ilbookmarkadministrationgui',
 
  695                                                                 'illearningprogressgui');
 
  697                 if(isset(
$_SESSION[
'il_pd_history']) and in_array(
$_SESSION[
'il_pd_history'],$stored_classes))
 
  703                         $this->ctrl->getNextClass($this);
 
  709                 $this->cmdClass = $a_class;
 
  718                 if ($pd_set->get(
"enable_block_moving"))
 
  720                         $a_column_gui->setEnableMovement(
true);
 
  733                 $this->tpl->setTitle($this->lng->txt(
"personal_desktop"));