53 $ilErr->setErrorHandling(PEAR_ERROR_CALLBACK,array($ilErr,
'errorHandler'));
60 $this->ilias =& $ilias;
61 $this->objDefinition =& $objDefinition;
65 $this->lng->loadLanguageModule(
"rbac");
69 $this->gui_obj =& $a_gui_obj;
71 $this->roles = array();
78 global $rbacsystem,
$ilErr;
81 if (!$rbacsystem->checkAccess(
"edit_permission",$this->gui_obj->object->getRefId()))
83 $ilErr->raiseError($this->lng->txt(
"permission_denied"),$ilErr->MESSAGE);
86 $next_class = $this->ctrl->getNextClass($this);
91 include_once(
"./Services/AccessControl/classes/class.ilObjRoleGUI.php");
93 $this->gui_obj->setBackTarget($this->lng->txt(
"perm_settings"),
94 $this->ctrl->getLinkTarget($this,
"perm"));
95 $ret =& $this->ctrl->forwardCommand($this->gui_obj);
99 $cmd = $this->ctrl->getCmd();
114 global $rbacsystem, $rbacreview;
123 $this->gui_obj->getTemplateFile(
"perm");
125 $this->num_roles = count($this->roles);
128 $this->tpl->setCurrentBlock(
"filter");
129 $this->tpl->setVariable(
"FILTER_TXT_FILTER",$this->lng->txt(
'filter'));
131 $this->tpl->setVariable(
"FILTER_ACTION",$this->ctrl->getFormAction($this).
"&cmd=perm");
132 $this->tpl->setVariable(
"FILTER_NAME",
'view');
133 $this->tpl->setVariable(
"FILTER_VALUE",$this->lng->txt(
'apply_filter'));
134 $this->tpl->parseCurrentBlock();
137 if ($this->num_roles < 1)
144 $this->tpl->addBlockFile(
"PERM_PERMISSIONS",
"permissions",
"tpl.obj_perm_permissions.html");
146 $this->tpl->setVariable(
"TXT_TITLE", $this->lng->txt(
"permission_settings"));
148 $this->tpl->setVariable(
"TXT_TITLE_INFO",
149 sprintf($this->lng->txt(
"permission_settings_info"),
150 $this->gui_obj->object->getTitle()
152 $this->tpl->setVariable(
"COLSPAN", $this->num_roles);
153 $this->tpl->setVariable(
"FORMACTION",
154 $this->gui_obj->getFormAction(
"permSave",$this->ctrl->getLinkTarget($this,
"permSave")));
155 $this->tpl->setVariable(
"TXT_SAVE", $this->lng->txt(
"save"));
158 $global_roles = $rbacreview->getGlobalRoles();
160 foreach ($this->roles as $role)
162 $tmp_role_folder = $rbacreview->getRoleFolderOfObject($this->gui_obj->object->getRefId());
163 $tmp_local_roles = array();
165 if ($tmp_role_folder)
167 $tmp_local_roles = $rbacreview->getRolesOfRoleFolder($tmp_role_folder[
"ref_id"]);
171 if ($role[
'protected'] ==
false and in_array($role[
'obj_id'],$tmp_local_roles))
173 $role_folder_data = $rbacreview->getRoleFolderOfObject(
$_GET[
'ref_id']);
174 $role_folder_id = $role_folder_data[
'ref_id'];
177 $this->tpl->setCurrentBlock(
"rolelink_open");
179 $up_path = defined(
'ILIAS_MODULE') ?
"../" :
"";
180 $this->ctrl->setParameterByClass(
"ilobjrolegui",
"obj_id",
182 $this->ctrl->setParameterByClass(
"ilobjrolegui",
"rolf_ref_id",
184 $this->tpl->setVariable(
"LINK_ROLE_RULESET",
185 $this->ctrl->getLinkTargetByClass(
"ilobjrolegui",
"perm"));
187 $this->tpl->setVariable(
"TXT_ROLE_RULESET",$this->lng->txt(
"edit_perm_ruleset"));
188 $this->tpl->parseCurrentBlock();
190 $this->tpl->touchBlock(
"rolelink_close");
193 $this->tpl->setCurrentBlock(
"role_infos");
196 include_once (
'./Services/AccessControl/classes/class.ilObjRole.php');
201 if (in_array($role[
"obj_id"],$global_roles))
203 $this->tpl->setVariable(
"ROLE_CONTEXT_TYPE",
"global");
207 if($rolf = $rbacreview->getFoldersAssignedToRole($role[
"obj_id"],
true))
209 $parent_node = $this->tree->getParentNodeData($rolf[0]);
212 $this->tpl->setVariable(
"ROLE_CONTEXT_TYPE",$parent_node[
"title"]);
216 $this->tpl->parseCurrentBlock();
218 $this->ctrl->clearParametersByClass(
"ilobjrolegui");
234 $this->tpl->setVariable(
"COLSPAN", $this->num_roles);
248 global $rbacreview, $rbacadmin, $rbacsystem;
252 foreach($this->roles as $role_id =>
$data)
254 $rbacadmin->revokePermission($this->gui_obj->object->getRefId(),$role_id);
257 if (is_array($_POST[
"perm"]))
259 foreach ($_POST[
"perm"] as $key => $new_role_perms)
261 $rbacadmin->grantPermission($key,$new_role_perms,$this->gui_obj->object->getRefId());
266 $this->gui_obj->object->update();
276 $rolf_data = $rbacreview->getRoleFolderOfObject($this->gui_obj->object->getRefId());
277 $rolf_id = $rolf_data[
"child"];
279 $stop_inherit_roles = $_POST[
"stop_inherit"] ? $_POST[
"stop_inherit"] : array();
281 if ($stop_inherit_roles)
287 $rfoldObj = $this->gui_obj->object->createRoleFolder();
290 $rolf_id = $rfoldObj->getRefId();
293 $roles_of_folder = $rbacreview->getRolesOfRoleFolder($rolf_id);
295 foreach ($stop_inherit_roles as $stop_inherit)
298 if (!in_array($stop_inherit,$roles_of_folder))
300 $parentRoles = $rbacreview->getParentRoleIds($rolf_id);
301 $rbacadmin->copyRoleTemplatePermissions($stop_inherit,$parentRoles[$stop_inherit][
"parent"],
302 $rolf_id,$stop_inherit);
303 $rbacadmin->assignRoleToFolder($stop_inherit,$rolf_id,
'n');
308 if ($rolf_id and $rolf_id != ROLE_FOLDER_ID)
311 $linked_roles = $rbacreview->getLinkedRolesOfRoleFolder($rolf_id);
312 $linked_roles_to_remove = array_diff($linked_roles,$stop_inherit_roles);
315 $linked_roles_to_remove = (array) array_intersect(
316 (array) $linked_roles_to_remove,
317 (array) array_keys($this->roles));
320 foreach ($linked_roles_to_remove as $role_id)
322 if ($rbacreview->isProtected($rolf_id,$role_id))
327 $role_obj =& $this->ilias->obj_factory->getInstanceByObjId($role_id);
328 $role_obj->setParent($rolf_id);
337 if (!$rbacsystem->checkAccess(
"edit_permission",$this->gui_obj->object->getRefId()))
339 $this->ctrl->redirect($this->gui_obj);
342 $this->ctrl->redirect($this,
'perm');
356 global $rbacadmin, $rbacreview, $rbacsystem;
359 if (substr($_POST[
"Fobject"][
"title"],0,3) ==
"il_")
361 $this->ilias->raiseError($this->lng->txt(
"msg_role_reserved_prefix"),$this->ilias->error_obj->MESSAGE);
363 if(!strlen($_POST[
"Fobject"][
"title"]))
365 $this->ilias->raiseError($this->lng->txt(
"fill_out_all_required_fields"),$this->ilias->error_obj->MESSAGE);
369 if ($this->gui_obj->object->getType() !=
"rolf")
371 $rolf_data = $rbacreview->getRoleFolderOfObject($this->gui_obj->object->getRefId());
374 if (!($rolf_id = $rolf_data[
"child"]))
377 $subobjects = $this->objDefinition->getSubObjects($this->gui_obj->object->getType());
379 if (!isset($subobjects[
"rolf"]))
381 $this->ilias->raiseError($this->lng->txt(
"msg_no_rolf_allowed1").
" '".$this->gui_obj->object->getTitle().
"' ".
382 $this->lng->txt(
"msg_no_rolf_allowed2"),$this->ilias->error_obj->WARNING);
386 $rolfObj = $this->gui_obj->object->createRoleFolder();
387 $rolf_id = $rolfObj->getRefId();
393 $rolf_id = $this->gui_obj->object->getRefId();
397 if ($this->gui_obj->object->getType() ==
"rolf")
399 $roleObj = $this->gui_obj->object->createRole($_POST[
"Fobject"][
"title"],$_POST[
"Fobject"][
"desc"]);
403 $rfoldObj = $this->ilias->obj_factory->getInstanceByRefId($rolf_id);
404 $roleObj = $rfoldObj->createRole($_POST[
"Fobject"][
"title"],$_POST[
"Fobject"][
"desc"]);
424 $this->ctrl->redirect($this,
'perm');
429 include_once
"./Services/Table/classes/class.ilTableGUI.php";
443 case "clipboardObject":
444 $offset =
$_GET[
"offset"];
445 $order =
$_GET[
"sort_by"];
446 $direction =
$_GET[
"sort_order"];
447 $tbl->disable(
"footer");
451 $offset =
$_GET[
"offset"];
452 $order =
$_GET[
"sort_by"];
453 $direction =
$_GET[
"sort_order"];
457 $tbl->setOrderColumn($order);
458 $tbl->setOrderDirection($direction);
459 $tbl->setOffset($offset);
460 $tbl->setLimit(
$_GET[
"limit"]);
461 $tbl->setFooter(
"tblfooter",$this->lng->txt(
"previous"),$this->lng->txt(
"next"));
462 $tbl->setData($result_set);
468 $action[1] = $this->lng->txt(
'filter_all_roles');
469 $action[2] = $this->lng->txt(
'filter_global_roles');
470 $action[3] = $this->lng->txt(
'filter_local_roles');
471 $action[4] = $this->lng->txt(
'filter_roles_local_policy');
472 $action[5] = $this->lng->txt(
'filter_local_roles_object');
487 $arr_global_roles = $rbacreview->getGlobalRoles();
488 $arr_remove_roles = array_diff(array_keys($a_roles),$arr_global_roles);
490 foreach ($arr_remove_roles as $role_id)
492 unset($a_roles[$role_id]);
499 $arr_global_roles = $rbacreview->getGlobalRoles();
501 foreach ($arr_global_roles as $role_id)
503 unset($a_roles[$role_id]);
510 $role_folder = $rbacreview->getRoleFolderOfObject($this->gui_obj->object->getRefId());
517 $arr_local_roles = $rbacreview->getRolesOfRoleFolder($role_folder[
"ref_id"]);
518 $arr_remove_roles = array_diff(array_keys($a_roles),$arr_local_roles);
520 foreach ($arr_remove_roles as $role_id)
522 unset($a_roles[$role_id]);
530 $role_folder = $rbacreview->getRoleFolderOfObject($this->gui_obj->object->getRefId());
537 $arr_local_roles = $rbacreview->getRolesOfRoleFolder($role_folder[
"ref_id"],
false);
538 $arr_remove_roles = array_diff(array_keys($a_roles),$arr_local_roles);
540 foreach ($arr_remove_roles as $role_id)
542 unset($a_roles[$role_id]);
555 global $ilObjDataCache,$ilUser;
559 $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.obj_owner.html');
561 $this->tpl->setVariable(
"FORMACTION",$this->ctrl->getFormAction($this));
564 $this->tpl->setVariable(
"TBL_TITLE_IMG_ALT",$this->lng->txt(
'owner'));
565 $this->tpl->setVariable(
"TBL_TITLE",$this->lng->txt(
'info_owner_of_object'));
566 $this->tpl->setVariable(
"BTN_CHOWN",$this->lng->txt(
'change_owner'));
567 $this->tpl->setVariable(
"TXT_USERNAME",$this->lng->txt(
'username'));
568 $this->tpl->setVariable(
"CHOWN_WARNING",$this->lng->txt(
'chown_warning'));
573 global $rbacsystem,
$ilErr,$ilObjDataCache;
582 $this->gui_obj->object->setOwner($user_id);
583 $this->gui_obj->object->updateOwner();
584 $ilObjDataCache->deleteCachedEntry($this->gui_obj->object->getId());
587 if (!$rbacsystem->checkAccess(
"edit_permission",$this->gui_obj->object->getRefId()))
589 $this->ctrl->redirect($this->gui_obj);
593 $this->ctrl->redirect($this,
'owner');
603 include_once(
'classes/class.ilObjectStatusGUI.php');
607 $this->tpl->setVariable(
"ADM_CONTENT",$ilInfo->getHTML());
615 $perm = ($a_cmd ==
'perm') ?
true :
false;
616 $info = ($a_cmd ==
'info') ?
true :
false;
617 $owner = ($a_cmd ==
'owner') ?
true :
false;
619 $ilTabs->addSubTabTarget(
"permission_settings", $this->ctrl->getLinkTarget($this,
"perm"),
621 $ilTabs->addSubTabTarget(
"info_status_info", $this->ctrl->getLinkTarget($this,
"info"),
623 $ilTabs->addSubTabTarget(
"owner", $this->ctrl->getLinkTarget($this,
"owner"),
629 global $rbacsystem, $rbacreview, $tree;
632 $roles = $rbacreview->getParentRoleIds($this->gui_obj->object->getRefId());
635 $_SESSION[
'perm_filtered_roles'] = isset($_POST[
'filter']) ? $_POST[
'filter'] :
$_SESSION[
'perm_filtered_roles'];
638 if (
$_SESSION[
'perm_filtered_roles'] == 0)
640 if ($tree->checkForParentType($this->gui_obj->object->getRefId(),
'crs') || $tree->checkForParentType($this->gui_obj->object->getRefId(),
'grp'))
652 $role_folder = $rbacreview->getRoleFolderOfObject($this->gui_obj->object->getRefId());
654 $local_roles = array();
656 if (!empty($role_folder))
658 $local_roles = $rbacreview->getRolesOfRoleFolder($role_folder[
"ref_id"]);
661 foreach ($roles as $key => $role)
664 if ($role[
"obj_id"] == SYSTEM_ROLE_ID)
670 $this->roles[$role[
'obj_id']] = $role;
673 $this->roles[$role[
'obj_id']][
'keep_protected'] = $rbacreview->isProtected($role[
'parent'],$role[
'obj_id']);
675 if (!in_array($role[
"obj_id"],$local_roles))
677 $this->roles[$role[
'obj_id']][
'local_policy_enabled'] =
false;
678 $this->roles[$role[
'obj_id']][
'local_policy_allowed'] =
true;
683 if ($rbacreview->isAssignable($role[
"obj_id"],$role_folder[
"ref_id"]))
685 $this->roles[$role[
'obj_id']][
'local_policy_allowed'] =
false;
689 $this->roles[$role[
'obj_id']][
'local_policy_enabled'] =
true;
690 $this->roles[$role[
'obj_id']][
'local_policy_allowed'] =
true;
696 foreach ($grouped_ops as $ops_group => $ops_data)
698 foreach ($ops_data as $key => $operation)
700 $grouped_ops[$ops_group][$key][
'checked'] = $rbacsystem->checkPermission($this->gui_obj->object->getRefId(), $role[
'obj_id'], $operation[
'name']);
704 $this->roles[$role[
'obj_id']][
'permissions'] = $grouped_ops;
712 $object_types_exclude = array(
"adm",
"root",
"mail",
"objf",
"lngf",
"trac",
"taxf",
"auth",
"assf",
"svyf",
'seas',
'extt',
'adve');
714 if (!in_array($this->gui_obj->object->getType(),$object_types_exclude) and $this->gui_obj->object->getRefId() != ROLE_FOLDER_ID)
716 $this->tpl->addBlockFile(
"PERM_ADD_ROLE",
"add_local_roles",
"tpl.obj_perm_add_role.html");
720 $data[
"fields"] = array();
721 $data[
"fields"][
"title"] =
$_SESSION[
"error_post_vars"][
"Fobject"][
"title"];
722 $data[
"fields"][
"desc"] =
$_SESSION[
"error_post_vars"][
"Fobject"][
"desc"];
724 foreach (
$data[
"fields"] as $key => $val)
726 $this->tpl->setVariable(
"TXT_LR_".strtoupper($key), $this->lng->txt($key));
727 $this->tpl->setVariable(strtoupper($key), $val);
730 $this->tpl->setVariable(
"FORMACTION_LR",$this->gui_obj->getFormAction(
"addRole", $this->ctrl->getLinkTarget($this,
"addRole")));
731 $this->tpl->setVariable(
"TXT_LR_HEADER", $this->lng->txt(
"you_may_add_local_roles"));
732 $this->tpl->setVariable(
"TXT_ADD_ROLE", $this->lng->txt(
"role_add_local"));
733 $this->tpl->setVariable(
"TXT_REQUIRED_FLD", $this->lng->txt(
"required_field"));
739 $this->tpl->setCurrentBlock(
"perm_subtitle");
740 $this->tpl->setVariable(
"TXT_PERM_CLASS",$this->lng->txt(
'perm_class_general'));
741 $this->tpl->setVariable(
"TXT_PERM_CLASS_DESC",$this->lng->txt(
'perm_class_general_desc'));
742 $this->tpl->setVariable(
"COLSPAN", $this->num_roles);
743 $this->tpl->parseCurrentBlock();
745 foreach ($this->roles as $role)
747 foreach ($role[
'permissions'][
'general'] as $perm)
750 if ($perm[
'name'] ==
'delete' and $this->gui_obj->object->getType() ==
'rolf' and $this->gui_obj->object->getRefId() != ROLE_FOLDER_ID)
755 $box = ilUtil::formCheckBox($perm[
'checked'],
"perm[".$role[
"obj_id"].
"][]",$perm[
"ops_id"],$role[
"protected"]);
757 $this->tpl->setCurrentBlock(
"perm_item");
758 $this->tpl->setVariable(
"PERM_CHECKBOX",$box);
759 $this->tpl->setVariable(
"PERM_NAME",$this->lng->txt($perm[
'name']));
760 $this->tpl->setVariable(
"PERM_TOOLTIP",$this->lng->txt($this->gui_obj->object->getType().
"_".$perm[
'name']));
761 $this->tpl->setVariable(
"PERM_LABEL",
'perm_'.$role[
'obj_id'].
'_'.$perm[
'ops_id']);
762 $this->tpl->parseCurrentBlock();
765 $this->tpl->setCurrentBlock(
"perm_table");
766 $this->tpl->parseCurrentBlock();
769 $this->tpl->setCurrentBlock(
"perm_settings");
770 $this->tpl->parseCurrentBlock();
777 $first_role =& current($this->roles);
779 if (count($first_role[
'permissions'][
'object']))
781 $this->tpl->setCurrentBlock(
"perm_subtitle");
782 $this->tpl->setVariable(
"TXT_PERM_CLASS",$this->lng->txt(
'perm_class_object'));
783 $this->tpl->setVariable(
"TXT_PERM_CLASS_DESC",$this->lng->txt(
'perm_class_object_desc'));
784 $this->tpl->setVariable(
"COLSPAN", $this->num_roles);
785 $this->tpl->parseCurrentBlock();
787 foreach ($this->roles as $role)
789 foreach ($role[
'permissions'][
'object'] as $perm)
791 $box = ilUtil::formCheckBox($perm[
'checked'],
"perm[".$role[
"obj_id"].
"][]",$perm[
"ops_id"],$role[
"protected"]);
793 $this->tpl->setCurrentBlock(
"perm_item");
794 $this->tpl->setVariable(
"PERM_CHECKBOX",$box);
795 $this->tpl->setVariable(
"PERM_NAME",$this->lng->txt($this->gui_obj->object->getType().
"_".$perm[
'name']));
796 $this->tpl->setVariable(
"PERM_TOOLTIP",$this->lng->txt($this->gui_obj->object->getType().
"_".$perm[
'name']));
797 $this->tpl->setVariable(
"PERM_LABEL",
'perm_'.$role[
'obj_id'].
'_'.$perm[
'ops_id']);
798 $this->tpl->parseCurrentBlock();
801 $this->tpl->setCurrentBlock(
"perm_table");
802 $this->tpl->parseCurrentBlock();
805 $this->tpl->setCurrentBlock(
"perm_settings");
806 $this->tpl->parseCurrentBlock();
812 $this->tpl->setCurrentBlock(
"perm_subtitle");
813 $this->tpl->setVariable(
"TXT_PERM_CLASS",$this->lng->txt(
'perm_class_rbac'));
814 $this->tpl->setVariable(
"TXT_PERM_CLASS_DESC",$this->lng->txt(
'perm_class_rbac_desc'));
815 $this->tpl->setVariable(
"COLSPAN", $this->num_roles);
816 $this->tpl->parseCurrentBlock();
818 foreach ($this->roles as $role)
820 foreach ($role[
'permissions'][
'rbac'] as $perm)
822 $box = ilUtil::formCheckBox($perm[
'checked'],
"perm[".$role[
"obj_id"].
"][]",$perm[
"ops_id"],$role[
"protected"]);
824 $this->tpl->setCurrentBlock(
"perm_item");
825 $this->tpl->setVariable(
"PERM_CHECKBOX",$box);
826 $this->tpl->setVariable(
"PERM_NAME",$this->lng->txt(
'perm_administrate'));
827 $this->tpl->setVariable(
"PERM_TOOLTIP",$this->lng->txt($this->gui_obj->object->getType().
"_".$perm[
'name']));
828 $this->tpl->setVariable(
"PERM_LABEL",
'perm_'.$role[
'obj_id'].
'_'.$perm[
'ops_id']);
829 $this->tpl->parseCurrentBlock();
834 if ($this->objDefinition->stopInheritance($this->gui_obj->object->getType()))
836 if ($role[
'local_policy_allowed'])
838 $box = ilUtil::formCheckBox($role[
'local_policy_enabled'],
'stop_inherit[]',$role[
'obj_id'],$role[
'keep_protected']);
839 $lang = $this->lng->txt(
"perm_use_local_policy").
" (".
840 $this->lng->txt(
"stop_inheritance").
")";
841 $lang_desc = $this->lng->txt(
"perm_use_local_policy_desc");
846 $lang = $this->lng->txt(
"perm_local_role");
847 $lang_desc = $this->lng->txt(
"perm_local_role_desc");
850 $this->tpl->setCurrentBlock(
"perm_item");
851 $this->tpl->setVariable(
"PERM_CHECKBOX",$box);
852 $this->tpl->setVariable(
"PERM_NAME",
$lang);
853 $this->tpl->setVariable(
"PERM_TOOLTIP",$lang_desc);
854 $this->tpl->setVariable(
"PERM_LABEL",
'stop_inherit_'.$role[
'obj_id']);
855 $this->tpl->parseCurrentBlock();
858 $this->tpl->setCurrentBlock(
"perm_table");
859 $this->tpl->parseCurrentBlock();
862 $this->tpl->setCurrentBlock(
"perm_settings");
863 $this->tpl->parseCurrentBlock();
870 if ($this->gui_obj->object->getType() ==
'rolf' and $this->gui_obj->object->getRefId() != ROLE_FOLDER_ID)
877 $first_role =& current($this->roles);
879 if (count($first_role[
'permissions'][
'create']))
881 $this->tpl->setCurrentBlock(
"perm_subtitle");
882 $this->tpl->setVariable(
"TXT_PERM_CLASS",$this->lng->txt(
'perm_class_create'));
883 $this->tpl->setVariable(
"TXT_PERM_CLASS_DESC",$this->lng->txt(
'perm_class_create_desc'));
884 $this->tpl->setVariable(
"COLSPAN", $this->num_roles);
885 $this->tpl->parseCurrentBlock();
888 $container_arr = array(
'cat',
'grp',
'crs',
'fold');
890 if (in_array($this->gui_obj->object->getType(),$container_arr))
892 $chk_toggle_create =
true;
895 foreach ($this->roles as $role)
899 foreach ($role[
'permissions'][
'create'] as $perm)
901 $ops_ids[] = $perm[
'ops_id'];
904 if ($chk_toggle_create)
906 $this->tpl->setCurrentBlock(
'chk_toggle_create');
907 $this->tpl->setVariable(
'PERM_NAME',$this->lng->txt(
'check_all').
"/".$this->lng->txt(
'uncheck_all'));
908 $this->tpl->setVariable(
'PERM_TOOLTIP',$this->lng->txt(
'check_all'));
909 $this->tpl->setVariable(
'ROLE_ID',$role[
'obj_id']);
910 $this->tpl->setVariable(
'JS_VARNAME',
'perm_'.$role[
'obj_id']);
912 $this->tpl->parseCurrentBlock();
915 foreach ($role[
'permissions'][
'create'] as $perm)
917 if ($perm[
"name"] ==
"create_icrs" and !$this->ilias->getSetting(
"ilinc_active"))
922 $box = ilUtil::formCheckBox($perm[
'checked'],
"perm[".$role[
"obj_id"].
"][]",$perm[
"ops_id"],$role[
"protected"]);
924 $this->tpl->setCurrentBlock(
"perm_item");
925 $this->tpl->setVariable(
"PERM_CHECKBOX",$box);
926 $this->tpl->setVariable(
"PERM_NAME",$this->lng->txt(
"obj".substr($perm[
'name'],6)));
927 $this->tpl->setVariable(
"PERM_TOOLTIP",$this->lng->txt($this->gui_obj->object->getType().
"_".$perm[
'name']));
928 $this->tpl->setVariable(
"PERM_LABEL",
'perm_'.$role[
'obj_id'].
'_'.$perm[
'ops_id']);
929 $this->tpl->parseCurrentBlock();
932 $this->tpl->setCurrentBlock(
"perm_table");
933 $this->tpl->parseCurrentBlock();
936 $this->tpl->setCurrentBlock(
"perm_settings");
937 $this->tpl->parseCurrentBlock();