protected function setDefault($a_prtf_id) { global $ilCtrl, $lng, $ilUser; if ($a_prtf_id && $this->checkAccess("write")) { // #12845 if ($this->access_handler->hasGlobalPermission($a_prtf_id)) { $ilUser->setPref("public_profile", "g"); $ilUser->writePrefs(); } else { if ($this->access_handler->hasRegisteredPermission($a_prtf_id)) { $ilUser->setPref("public_profile", "y"); $ilUser->writePrefs(); } else { return; } } ilObjPortfolio::setUserDefault($this->user_id, $a_prtf_id); ilUtil::sendSuccess($lng->txt("settings_saved"), true); } $ilCtrl->redirect($this, "show"); }
/** * @throws ilException */ protected function generatePortfolio() { if ($this->getPortfolioTemplateId() < 10) { return false; } // Generate Portfolio from Template global $ilUser; $tmp_user = $ilUser; $source = new ilObjPortfolioTemplate($this->getPortfolioTemplateId(), false); $target = new ilObjPortfolio(); $user = $this->getUsrObject(); $target->setOwner($user->getId()); $target->setTitle($this->getReplacesPortfolioTitle()); $target->setUserDefault($user->getId()); $target->setOnline(true); $target->create(); include_once "Modules/Portfolio/classes/class.ilPortfolioTemplatePage.php"; foreach (ilPortfolioTemplatePage::getAllPages($this->getPortfolioTemplateId()) as $page) { switch ($page["type"]) { case ilPortfolioTemplatePage::TYPE_BLOG_TEMPLATE: $a_recipe[$page["id"]] = array("blog", "create", $this->getBlogName()); break; } } $GLOBALS['ilUser'] = $user; ilObjPortfolioTemplate::clonePagesAndSettings($source, $target, $a_recipe); $GLOBALS['ilUser'] = $tmp_user; ilObjPortfolio::setUserDefault($user->getId(), $target->getId()); $ilPortfolioAccessHandler = new ilPortfolioAccessHandler(); foreach ($this->getPortfolioAssignedToGroups() as $grp_obj_id) { if (ilObject2::_lookupType($grp_obj_id) == 'grp') { $ilPortfolioAccessHandler->addPermission($target->getId(), $grp_obj_id); } } }
public function updateCustom(ilPropertyFormGUI $a_form) { $this->object->setOnline($a_form->getInput("online")); // if portfolio is not online, it cannot be default if (!$a_form->getInput("online")) { ilObjPortfolio::setUserDefault($this->user_id, 0); } parent::updateCustom($a_form); }
protected function setDefault($a_prtf_id) { global $ilCtrl, $lng; if ($a_prtf_id && $this->checkAccess("write")) { ilObjPortfolio::setUserDefault($this->user_id, $a_prtf_id); ilUtil::sendSuccess($lng->txt("settings_saved"), true); } $ilCtrl->redirect($this, "show"); }
/** * Unset default portfolio for user */ protected function unsetDefault() { global $ilCtrl, $lng; if ($this->portfolio && $this->checkAccess("write")) { ilObjPortfolio::setUserDefault($this->user_id); ilUtil::sendSuccess($lng->txt("prtf_unset_default_share_info"), true); } $ilCtrl->redirect($this, "show"); }
protected function syncProfile($a_node_id) { global $ilUser; // #12845 include_once "Modules/Portfolio/classes/class.ilObjPortfolio.php"; if (ilObjPortfolio::getDefaultPortfolio($ilUser->getId()) == $a_node_id) { $has_registered = $this->hasRegisteredPermission($a_node_id); $has_global = $this->hasGlobalPermission($a_node_id); // not published anymore - remove portfolio as profile if (!$has_registered && !$has_global) { $ilUser->setPref("public_profile", "n"); $ilUser->writePrefs(); ilObjPortfolio::setUserDefault($ilUser->getId()); } else { $new_pref = "y"; if ($has_global) { $new_pref = "g"; } if ($ilUser->getPref("public_profile") != $new_pref) { $ilUser->setPref("public_profile", $new_pref); $ilUser->writePrefs(); } } } }