public function __showSearchGroupTable($a_result_set, $a_grp_ids = NULL) { $tbl =& $this->__initTableGUI(); $tpl =& $tbl->getTemplateObject(); $tpl->setCurrentBlock("tbl_form_header"); $tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this)); $tpl->parseCurrentBlock(); $tpl->setCurrentBlock("tbl_action_btn"); $tpl->setVariable("BTN_NAME", "searchUserForm"); $tpl->setVariable("BTN_VALUE", $this->lng->txt("back")); $tpl->parseCurrentBlock(); $tpl->setCurrentBlock("tbl_action_btn"); $tpl->setVariable("BTN_NAME", "listUsersGroup"); $tpl->setVariable("BTN_VALUE", $this->lng->txt("grp_list_users")); $tpl->parseCurrentBlock(); if (!empty($a_grp_ids)) { // set checkbox toggles $tpl->setCurrentBlock("tbl_action_toggle_checkboxes"); $tpl->setVariable("JS_VARNAME", "group"); $tpl->setVariable("JS_ONCLICK", ilUtil::array_php2js($a_grp_ids)); $tpl->setVariable("TXT_CHECKALL", $this->lng->txt("check_all")); $tpl->setVariable("TXT_UNCHECKALL", $this->lng->txt("uncheck_all")); $tpl->parseCurrentBlock(); } $tpl->setCurrentBlock("tbl_action_row"); $tpl->setVariable("COLUMN_COUNTS", 5); $tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.png")); $tpl->parseCurrentBlock(); $tbl->setTitle($this->lng->txt("ilinc_header_edit_users"), "icon_usr_b.png", $this->lng->txt("ilinc_header_edit_users")); $tbl->setHeaderNames(array("", $this->lng->txt("obj_grp"), $this->lng->txt("grp_count_members"))); $tbl->setHeaderVars(array("", "title", "nr_members"), array("ref_id" => $this->object->getRefId(), "cmd" => "search", "cmdClass" => "ilobjilinccoursegui", "cmdNode" => $_GET["cmdNode"])); $tbl->setColumnWidth(array("", "80%", "19%")); $this->__setTableGUIBasicData($tbl, $a_result_set, "group"); $tbl->render(); $this->tpl->setVariable("SEARCH_RESULT_TABLE", $tbl->tpl->get()); return true; }
function editPublicSection() { global $ilTabs, $ilToobar, $ilAccess; if (!$ilAccess->checkAccessOfUser(ANONYMOUS_USER_ID, "read", "", $this->object->getRefId())) { ilUtil::sendInfo($this->lng->txt("cont_anonymous_user_missing_perm")); } $this->setTabs(); $this->setSubTabs("public_section"); $ilTabs->setTabActive("settings"); switch ($this->object->getType()) { case "lm": $gui_class = "ilobjlearningmodulegui"; break; case "dlb": $gui_class = "ilobjdlbookgui"; break; } $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.lm_public_selector.html", "Modules/LearningModule"); // get learning module object $this->lm_obj = new ilObjLearningModule($this->ref_id, true); // public mode $my_toolbar = new ilToolbarGUI(); $modes = array("complete" => $this->lng->txt("all_pages"), "selected" => $this->lng->txt("selected_pages_only")); include_once "./Services/Form/classes/class.ilSelectInputGUI.php"; $si = new ilSelectInputGUI($this->lng->txt("choose_public_mode"), "lm_public_mode"); $si->setOptions($modes); $si->setValue($this->object->getPublicAccessMode()); $my_toolbar->addInputItem($si, true); $my_toolbar->setOpenFormTag(false); $my_toolbar->setCloseFormTag(false); $my_toolbar->addFormButton($this->lng->txt("save"), "savePublicSection"); $this->tpl->setVariable("TOOLBAR", $my_toolbar->getHTML()); $this->tpl->setVariable("FORMACTION", $this->ctrl->getLinkTarget($this, "savePublicSection")); if ($this->object->getPublicAccessMode() == "selected") { $this->tpl->setCurrentBlock("select_pages"); require_once "./Modules/LearningModule/classes/class.ilPublicSectionSelector.php"; $exp = new ilPublicSectionSelector($this->ctrl->getLinkTarget($this, "view"), $this->object, $gui_class); $exp->setTargetGet("obj_id"); // build html-output $exp->setOutput(0); $output = $exp->getOutput(); // get page ids foreach ($exp->format_options as $node) { if (!$node["container"]) { $pages[] = $node["child"]; } } $js_pages = ilUtil::array_php2js($pages); $this->tpl->setVariable("EXPLORER", $output); $this->tpl->setVariable("ONCLICK", $js_pages); $this->tpl->setVariable("TXT_CHECKALL", $this->lng->txt("check_all")); $this->tpl->setVariable("TXT_UNCHECKALL", $this->lng->txt("uncheck_all")); $this->tpl->setVariable("TXT_SAVE", $this->lng->txt("save")); $this->tpl->parseCurrentBlock(); } }
/** * Creates output * recursive method * @access private * @param integer * @param array * @return string */ function formatObject(&$tpl, $a_node_id, $a_option, $a_obj_id = 0) { global $lng; if (!isset($a_node_id) or !is_array($a_option)) { $this->ilias->raiseError(get_class($this) . "::formatObject(): Missing parameter or wrong datatype! " . "node_id: " . $a_node_id . " options:" . var_dump($a_option), $this->ilias->error_obj->WARNING); } if ($this->output_icons) { $tpl->setCurrentBlock("icon"); $tpl->setVariable("ICON_IMAGE", ilUtil::getImagePath("icon_" . $a_option["type"] . ".png")); $tpl->setVariable("PAGE_ID", $a_node_id); //$this->iconList[] = "iconid_".$a_node_id; $tpl->setVariable("TXT_ALT_IMG", $lng->txt($a_option["desc"])); $tpl->parseCurrentBlock(); } if (!$a_option["container"]) { $tpl->setCurrentBlock("checkbox"); $tpl->setVariable("PAGE_ID", $a_node_id); if (ilLMObject::_isPagePublic($a_node_id)) { $tpl->setVariable("CHECKED", "checked=\"checked\""); } $tpl->parseCurrentBlock(); } else { $childs = $this->tree->getChilds($a_node_id); foreach ($childs as $node) { if ($node["type"] == "pg") { $pages[] = $node["child"]; } } $js_pages = ilUtil::array_php2js($pages); $tpl->setVariable("ONCLICK", " onclick=\"alterCheckboxes('PublicSelector','page_',{$js_pages}); return false;\""); } $tpl->setCurrentBlock("text"); $tpl->setVariable("PAGE_ID", $a_node_id); $tpl->setVariable("OBJ_TITLE", ilUtil::shortenText($a_option["title"], $this->textwidth, true)); $tpl->parseCurrentBlock(); $tpl->setCurrentBlock("element"); $tpl->parseCurrentBlock(); //$this->output[] = $tpl->get(); }
/** * display permissions * * @access public */ function permObject() { global $rbacadmin, $rbacreview, $rbacsystem, $objDefinition; if (!$rbacsystem->checkAccess('write', $this->rolf_ref_id)) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_perm"), $this->ilias->error_obj->WARNING); exit; } $to_filter = $objDefinition->getSubobjectsToFilter(); $tpl_filter = array(); $internal_tpl = false; if ($internal_tpl = $this->object->isInternalTemplate()) { $tpl_filter = $this->object->getFilterOfInternalTemplate(); } $operation_info = $rbacreview->getOperationAssignment(); foreach ($operation_info as $info) { if ($objDefinition->getDevMode($info['type'])) { continue; } // FILTER SUBOJECTS OF adm OBJECT if (in_array($info['type'], $to_filter)) { continue; } if ($internal_tpl and $tpl_filter and !in_array($info['type'], $tpl_filter)) { continue; } $rbac_objects[$info['typ_id']] = array("obj_id" => $info['typ_id'], "type" => $info['type']); $txt = $objDefinition->isPlugin($info['type']) ? ilPlugin::lookupTxt("rep_robj", $info['type'], $info['type'] . "_" . $info['operation']) : $this->lng->txt($info['type'] . "_" . $info['operation']); if (substr($info['operation'], 0, 7) == "create_" && $objDefinition->isPlugin(substr($info['operation'], 7))) { $txt = ilPlugin::lookupTxt("rep_robj", substr($info['operation'], 7), $info['type'] . "_" . $info['operation']); } elseif (substr($info['operation'], 0, 6) == 'create') { $txt = $this->lng->txt('rbac_' . $info['operation']); } $rbac_operations[$info['typ_id']][$info['ops_id']] = array("ops_id" => $info['ops_id'], "title" => $info['operation'], "name" => $txt); } foreach ($rbac_objects as $key => $obj_data) { if ($objDefinition->isPlugin($obj_data["type"])) { $rbac_objects[$key]["name"] = ilPlugin::lookupTxt("rep_robj", $obj_data["type"], "obj_" . $obj_data["type"]); } else { $rbac_objects[$key]["name"] = $this->lng->txt("obj_" . $obj_data["type"]); } $rbac_objects[$key]["ops"] = $rbac_operations[$key]; } sort($rbac_objects); foreach ($rbac_objects as $key => $obj_data) { sort($rbac_objects[$key]["ops"]); } // sort by (translated) name of object type $rbac_objects = ilUtil::sortArray($rbac_objects, "name", "asc"); // BEGIN CHECK_PERM foreach ($rbac_objects as $key => $obj_data) { $arr_selected = $rbacreview->getOperationsOfRole($this->object->getId(), $obj_data["type"], $this->rolf_ref_id); $arr_checked = array_intersect($arr_selected, array_keys($rbac_operations[$obj_data["obj_id"]])); foreach ($rbac_operations[$obj_data["obj_id"]] as $operation) { $checked = in_array($operation["ops_id"], $arr_checked); $disabled = false; // Es wird eine 2-dim Post Variable �bergeben: perm[rol_id][ops_id] $box = ilUtil::formCheckBox($checked, "template_perm[" . $obj_data["type"] . "][]", $operation["ops_id"], $disabled); $output["perm"][$obj_data["obj_id"]][$operation["ops_id"]] = $box; } } // END CHECK_PERM $output["col_anz"] = count($rbac_objects); $output["txt_save"] = $this->lng->txt("save"); $output["check_protected"] = ilUtil::formCheckBox($rbacreview->isProtected($this->rolf_ref_id, $this->object->getId()), "protected", 1); $output["text_protected"] = $this->lng->txt("role_protect_permissions"); /************************************/ /* adopt permissions form */ /************************************/ $output["message_middle"] = $this->lng->txt("adopt_perm_from_template"); // send message for system role if ($this->object->getId() == SYSTEM_ROLE_ID) { $output["adopt"] = array(); ilUtil::sendFailure($this->lng->txt("msg_sysrole_not_editable")); } else { // BEGIN ADOPT_PERMISSIONS $parent_role_ids = $rbacreview->getParentRoleIds($this->rolf_ref_id, true); // sort output for correct color changing ksort($parent_role_ids); foreach ($parent_role_ids as $key => $par) { if ($par["obj_id"] != SYSTEM_ROLE_ID) { $radio = ilUtil::formRadioButton(0, "adopt", $par["obj_id"]); $output["adopt"][$key]["css_row_adopt"] = ilUtil::switchColor($key, "tblrow1", "tblrow2"); $output["adopt"][$key]["check_adopt"] = $radio; $output["adopt"][$key]["type"] = $par["type"] == 'role' ? 'Role' : 'Template'; $output["adopt"][$key]["role_name"] = $par["title"]; } } $output["formaction_adopt"] = $this->ctrl->getFormAction($this); // END ADOPT_PERMISSIONS } $output["formaction"] = $this->ctrl->getFormAction($this); $this->data = $output; /************************************/ /* generate output */ /************************************/ $this->tpl->addBlockFile("CONTENT", "content", "tpl.adm_content.html"); $this->tpl->addBlockFile("LOCATOR", "locator", "tpl.locator.html", "Services/Locator"); $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.adm_perm_role.html", "Services/AccessControl"); foreach ($rbac_objects as $obj_data) { // BEGIN object_operations $this->tpl->setCurrentBlock("object_operations"); foreach ($obj_data["ops"] as $operation) { $ops_ids[] = $operation["ops_id"]; $css_row = ilUtil::switchColor($key, "tblrow1", "tblrow2"); $this->tpl->setVariable("CSS_ROW", $css_row); $this->tpl->setVariable("PERMISSION", $operation["name"]); $this->tpl->setVariable("CHECK_PERMISSION", $this->data["perm"][$obj_data["obj_id"]][$operation["ops_id"]]); $this->tpl->parseCurrentBlock(); } // END object_operations // BEGIN object_type $this->tpl->setCurrentBlock("object_type"); $this->tpl->setVariable("TXT_OBJ_TYPE", $obj_data["name"]); // TODO: move this if in a function and query all objects that may be disabled or inactive if ($this->objDefinition->getDevMode($obj_data["type"])) { $this->tpl->setVariable("TXT_NOT_IMPL", "(" . $this->lng->txt("not_implemented_yet") . ")"); } else { if ($obj_data["type"] == "icrs" and !$this->ilias->getSetting("ilinc_active")) { $this->tpl->setVariable("TXT_NOT_IMPL", "(" . $this->lng->txt("not_enabled_or_configured") . ")"); } } // js checkbox toggles $this->tpl->setVariable("JS_VARNAME", "template_perm_" . $obj_data["type"]); $this->tpl->setVariable("JS_ONCLICK", ilUtil::array_php2js($ops_ids)); $this->tpl->setVariable("TXT_CHECKALL", $this->lng->txt("check_all")); $this->tpl->setVariable("TXT_UNCHECKALL", $this->lng->txt("uncheck_all")); $this->tpl->parseCurrentBlock(); // END object_type } /* // BEGIN ADOPT PERMISSIONS foreach ($this->data["adopt"] as $key => $value) { $this->tpl->setCurrentBlock("ADOPT_PERM_ROW"); $this->tpl->setVariable("CSS_ROW_ADOPT",$value["css_row_adopt"]); $this->tpl->setVariable("CHECK_ADOPT",$value["check_adopt"]); $this->tpl->setVariable("TYPE",$value["type"]); $this->tpl->setVariable("ROLE_NAME",$value["role_name"]); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("ADOPT_PERM_FORM"); $this->tpl->setVariable("MESSAGE_MIDDLE",$this->data["message_middle"]); $this->tpl->setVariable("FORMACTION_ADOPT",$this->data["formaction_adopt"]); $this->tpl->setVariable("ADOPT",$this->lng->txt('copy')); $this->tpl->parseCurrentBlock(); // END ADOPT PERMISSIONS */ $this->tpl->setCurrentBlock("tblfooter_protected"); $this->tpl->setVariable("COL_ANZ", 3); $this->tpl->setVariable("CHECK_BOTTOM", $this->data["check_protected"]); $this->tpl->setVariable("MESSAGE_TABLE", $this->data["text_protected"]); $this->tpl->parseCurrentBlock(); $this->tpl->setVariable("COL_ANZ_PLUS", 4); $this->tpl->setVariable("TXT_SAVE", $this->data["txt_save"]); $this->tpl->setCurrentBlock("adm_content"); $this->tpl->setVariable("TBL_TITLE_IMG", ilUtil::getImagePath("icon_" . $this->object->getType() . ".png")); $this->tpl->setVariable("TBL_TITLE_IMG_ALT", $this->lng->txt($this->object->getType())); $this->tpl->setVariable("TBL_HELP_IMG", ilUtil::getImagePath("icon_help.png")); $this->tpl->setVariable("TBL_HELP_LINK", "tbl_help.php"); $this->tpl->setVariable("TBL_HELP_IMG_ALT", $this->lng->txt("help")); // compute additional information in title if (substr($this->object->getTitle(), 0, 3) == "il_") { $desc = $this->lng->txt("predefined_template"); //$this->lng->txt("obj_".$parent_node['type'])." (".$parent_node['obj_id'].") : ".$parent_node['title']; } $description = "<br/> <span class=\"small\">" . $desc . "</span>"; // translation for autogenerated roles if (substr($this->object->getTitle(), 0, 3) == "il_") { include_once './Services/AccessControl/classes/class.ilObjRole.php'; $title = ilObjRole::_getTranslation($this->object->getTitle()) . " (" . $this->object->getTitle() . ")"; } else { $title = $this->object->getTitle(); } $this->tpl->setVariable("TBL_TITLE", $title . $description); $this->tpl->setVariable("TXT_PERMISSION", $this->data["txt_permission"]); $this->tpl->setVariable("FORMACTION", $this->data["formaction"]); $this->tpl->parseCurrentBlock(); }
/** * List all feedback items. */ function fbList() { include_once 'Services/Feedback/classes/class.ilFeedback.php'; $tbl =& $this->__initTableGUI(); $cnt = 0; $ilFeedback = new ilFeedback(); $ilFeedback->setRefId($_GET['ref_id']); $barometers = $ilFeedback->getAllBarometer(); if (is_Array($barometers)) { foreach ($barometers as $barometer) { $rows[$cnt]['checkbox'] = ilUtil::formCheckbox(0, "barometer[]", $barometer->getId()); $rows[$cnt]['title'] = $barometer->getTitle(); $rows[$cnt]['status'] = 'Aktive'; if ($barometer->getStarttime() > 0 && $barometer->getStarttime() > 0) { $rows[$cnt]['running'] = date('d.m.Y H:i', $barometer->getStarttime()) . ' - ' . date('d.m.Y H:i', $barometer->getEndtime()); if ($barometer->getStarttime() <= time() && $barometer->getEndtime() >= time()) { $rows[$cnt]['status'] = $this->lng->txt('active'); } else { $rows[$cnt]['status'] = $this->lng->txt('inactive'); } } else { $rows[$cnt]['running'] = ''; $rows[$cnt]['status'] = $this->lng->txt('active'); } $rows[$cnt]['options'] = $this->getButtons($barometer->getId()); $barometer_ids[] = $barometer->getId(); $cnt++; } } $tbl->tpl->setCurrentBlock("tbl_form_header"); $tbl->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this)); $tbl->tpl->parseCurrentBlock(); $tbl->setTitle($this->lng->txt("feedb_feedback_list"), "icon_feedb.png", $this->lng->txt("feedb_feedback_list")); $tbl->setHeaderNames(array("", $this->lng->txt("title"), $this->lng->txt("status"), $this->lng->txt("time"), $this->lng->txt("options"))); $tbl->setHeaderVars(array("checkbox", "title", "stauts", "running", "options")); $tbl->setData($rows); $tbl->setOffset(0); $tbl->setLimit(0); $tbl->disable('sort'); $tbl->setMaxCount(count($rows)); /* deprecated - will be removed in 4.4 $tbl->tpl->setCurrentBlock("plain_button"); $tbl->tpl->setVariable("PBTN_NAME","addBarometer"); $tbl->tpl->setVariable("PBTN_VALUE",$this->lng->txt("barometer_add")); $tbl->tpl->parseCurrentBlock(); $tbl->tpl->setCurrentBlock("plain_buttons"); $tbl->tpl->parseCurrentBlock(); */ if (!empty($rows)) { // set checkbox toggles $tbl->tpl->setCurrentBlock("tbl_action_toggle_checkboxes"); $tbl->tpl->setVariable("JS_VARNAME", "barometer"); $tbl->tpl->setVariable("JS_ONCLICK", ilUtil::array_php2js($barometer_ids)); $tbl->tpl->setVariable("TXT_CHECKALL", $this->lng->txt("check_all")); $tbl->tpl->setVariable("TXT_UNCHECKALL", $this->lng->txt("uncheck_all")); $tbl->tpl->parseCurrentBlock(); } $tbl->tpl->setVariable("COLUMN_COUNTS", 5); $tbl->tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.png")); $tbl->tpl->setCurrentBlock("tbl_action_select"); //$tbl->tpl->setVariable("SELECT_ACTION",ilUtil::formSelect(1,"action",array('delete'),false,true)); $tbl->tpl->setVariable("BTN_NAME", "delete"); $tbl->tpl->setVariable("BTN_VALUE", $this->lng->txt("delete")); $tbl->tpl->parseCurrentBlock(); //$tbl->setOrderColumn('title'); $tbl->setOrderDirection('asc'); $tbl->setColumnWidth(array("", "25%", "25%", "25%", "")); #$tbl->disable('sort'); $tbl->setFooter("tblfooter"); $tbl->render(); return $tbl->tpl->get(); }
function __showPermissionsCreateSection() { global $objDefinition, $ilSetting; // no create operation for roles/role templates in local role folders // access is controlled by 'administrate' (change permission settings) only if ($this->gui_obj->object->getType() == 'rolf' and $this->gui_obj->object->getRefId() != ROLE_FOLDER_ID) { return; } // create pointer to first role (only the permission list is needed) reset($this->roles); $first_role =& current($this->roles); if (count($first_role['permissions']['create'])) { $this->tpl->setCurrentBlock("perm_subtitle"); $this->tpl->setVariable("TXT_PERM_CLASS", $this->lng->txt('perm_class_create')); $this->tpl->setVariable("TXT_PERM_CLASS_DESC", $this->lng->txt('perm_class_create_desc')); $this->tpl->setVariable("COLSPAN", $this->num_roles); $this->tpl->parseCurrentBlock(); // add a checkbox 'select all' for create permissions of the following object types $container_arr = array('cat', 'grp', 'crs', 'fold'); if (in_array($this->gui_obj->object->getType(), $container_arr)) { $chk_toggle_create = true; } foreach ($this->roles as $role) { $ops_ids = array(); foreach ($role['permissions']['create'] as $perm) { $ops_ids[] = $perm['ops_id']; } if ($chk_toggle_create) { $this->tpl->setCurrentBlock('chk_toggle_create'); $this->tpl->setVariable('PERM_NAME', $this->lng->txt('check_all') . "/" . $this->lng->txt('uncheck_all')); $this->tpl->setVariable('PERM_TOOLTIP', $this->lng->txt('check_all')); $this->tpl->setVariable('ROLE_ID', $role['obj_id']); $this->tpl->setVariable('JS_VARNAME', 'perm_' . $role['obj_id']); $this->tpl->setVariable('JS_ONCLICK', ilUtil::array_php2js($ops_ids)); $this->tpl->parseCurrentBlock(); } foreach ($role['permissions']['create'] as $perm) { if ($perm["name"] == "create_icrs" and !$ilSetting->get("ilinc_active")) { continue; } $box = ilUtil::formCheckBox($perm['checked'], "perm[" . $role["obj_id"] . "][]", $perm["ops_id"], $role["protected"]); $this->tpl->setCurrentBlock("perm_item"); $this->tpl->setVariable("PERM_CHECKBOX", $box); if ($objDefinition->isPlugin(substr($perm['name'], 7))) { $this->tpl->setVariable("PERM_NAME", ilPlugin::lookupTxt("rep_robj", substr($perm['name'], 7), "obj_" . substr($perm['name'], 7))); $this->tpl->setVariable("PERM_TOOLTIP", ilPlugin::lookupTxt("rep_robj", substr($perm['name'], 7), $this->gui_obj->object->getType() . "_" . $perm['name'])); } else { $this->tpl->setVariable("PERM_NAME", $this->lng->txt("obj" . substr($perm['name'], 6))); $this->tpl->setVariable("PERM_TOOLTIP", $this->lng->txt($this->gui_obj->object->getType() . "_" . $perm['name'])); } $this->tpl->setVariable("PERM_LABEL", 'perm_' . $role['obj_id'] . '_' . $perm['ops_id']); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("perm_table"); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("perm_settings"); $this->tpl->parseCurrentBlock(); } }
function __showRolesTable($a_result_set, $a_role_ids = NULL) { global $rbacsystem; $actions = array("assignSave" => $this->lng->txt("change_assignment")); $tbl =& $this->__initTableGUI(); $tpl =& $tbl->getTemplateObject(); $tpl->setCurrentBlock("tbl_form_header"); $tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this)); $tpl->parseCurrentBlock(); $tpl->setCurrentBlock("tbl_action_row"); $tpl->setVariable("COLUMN_COUNTS", 4); $tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.png")); foreach ($actions as $name => $value) { $tpl->setCurrentBlock("tbl_action_btn"); $tpl->setVariable("BTN_NAME", $name); $tpl->setVariable("BTN_VALUE", $value); $tpl->parseCurrentBlock(); } if (!empty($a_role_ids)) { // set checkbox toggles $tpl->setCurrentBlock("tbl_action_toggle_checkboxes"); $tpl->setVariable("JS_VARNAME", "role_id"); $tpl->setVariable("JS_ONCLICK", ilUtil::array_php2js($a_role_ids)); $tpl->setVariable("TXT_CHECKALL", $this->lng->txt("check_all")); $tpl->setVariable("TXT_UNCHECKALL", $this->lng->txt("uncheck_all")); $tpl->parseCurrentBlock(); } $tpl->setVariable("TPLPATH", $this->tpl->tplPath); $this->ctrl->setParameter($this, "cmd", "roleassignment"); // title & header columns $tbl->setTitle($this->lng->txt("edit_roleassignment"), "icon_role.png", $this->lng->txt("roles")); //user must be administrator $tbl->setHeaderNames(array("", $this->lng->txt("role"), $this->lng->txt("description"), $this->lng->txt("context"))); $tbl->setHeaderVars(array("", "title", "description", "context"), $this->ctrl->getParameterArray($this, "", false)); $tbl->setColumnWidth(array("", "30%", "40%", "30%")); $this->__setTableGUIBasicData($tbl, $a_result_set, "roleassignment"); $tbl->render(); $this->tpl->setVariable("ROLES_TABLE", $tbl->tpl->get()); return true; }