user = $user; $this->groupList = $tikilib->get_user_groups($user); if ($activate) { $this->activate(); } } public function overrideGroups(array $groupList) { $this->groupList = $groupList; } public function activate($globalize = false) { global $user, $globalperms; $perms = Perms::getInstance(); $this->previousUser = $user; $this->previousGroupList = $perms->getGroups(); $smarty = TikiLib::lib('smarty'); $user = $this->user; $perms->setGroups($this->groupList); $globalperms = Perms::get(); $globalperms->globalize(self::$permissionList, $smarty, false); if (is_object($smarty)) { $smarty->assign('globalperms', $globalperms); } } public function activatePermanently() { global $user, $globalperms; $perms = Perms::getInstance(); $smarty = TikiLib::lib('smarty'); $user = $this->user; $perms->setGroups($this->groupList); $globalperms = Perms::get(); $globalperms->globalize(self::$permissionList, $smarty, false); if (is_object($smarty)) { $smarty->assign('globalperms', $globalperms); } $this->previousUser = $user; $this->previousGroupList = $perms->getGroups(); } public function __destruct() { global $user, $globalperms; $user = $this->previousUser; $perms = Perms::getInstance(); $perms->setGroups($this->previousGroupList); $globalperms = Perms::get(); } }