Public Member Functions | |
ilObjGroupGUI ($a_data, $a_id, $a_call_by_reference, $a_prepare_output=true) | |
Constructor public. | |
viewObject () | |
list childs of current object | |
& | executeCommand () |
execute command | |
createObject () | |
create new object form | |
canceledObject () | |
canceledObject is called when operation is canceled, method links back public | |
cancelMemberObject () | |
canceledObject is called when operation is canceled, method links back public | |
saveObject () | |
save group object public | |
updateObject () | |
update GroupObject public | |
editObject () | |
edit Group public | |
confirmationObject ($user_id="", $confirm, $cancel, $info="", $status="", $a_cmd_return_location="") | |
displays confirmation form public | |
leaveGrpObject () | |
leave Group public | |
assignMemberObject () | |
displays confirmation formular with users that shall be assigned to group public | |
addUserObject () | |
displays confirmation formular with users that shall be assigned to group public | |
removeMemberObject () | |
displays confirmation formular with users that shall be removed from group public | |
confirmedRemoveMemberObject () | |
remove members from group TODO: set return location to parent object if user removes himself TODO: allow user to remove himself when he is not group admin public | |
changeMemberObject () | |
displays form in which the member-status can be changed public | |
membersObject () | |
display group members | |
showNewRegistrationsObject () | |
assignApplicantsObject () | |
adds applicant to group as member public | |
refuseApplicantsObject () | |
adds applicant to group as member public | |
updateMemberStatusObject () | |
displays form in which the member-status can be changed public | |
searchUserFormObject () | |
searchObject () | |
searchCancelledObject () | |
getTabs (&$tabs_gui) | |
get tabs abstract method. | |
importObject () | |
import new object form | |
performImportObject () | |
__initFileObject () | |
__initParserObject ($a_xml_file) | |
initCourseContentInterface () | |
cciEditObject () | |
cciUpdateObject () | |
cciMoveObject () | |
__unsetSessionVariables () | |
__search ($a_search_string, $a_search_for) | |
__showSearchUserTable ($a_result_set, $a_user_ids=NULL, $a_cmd="search") | |
__showSearchRoleTable ($a_result_set, $a_role_ids=NULL) | |
__showSearchGroupTable ($a_result_set, $a_grp_ids=NULL) | |
__showMembersTable ($a_result_set, $a_user_ids=NULL) | |
& | __initTableGUI () |
__setTableGUIBasicData (&$tbl, &$result_set, $from="") | |
standard implementation for tables use 'from' variable use different initial setting of table | |
listUsersRoleObject () | |
listUsersGroupObject () | |
initConditionHandlerGUI ($item_id) | |
chi_updateObject () | |
chi_deleteObject () | |
chi_selectorObject () | |
chi_assignObject () | |
exportObject () | |
Creates the output form for group member export. | |
exportMembersObject () | |
Exports group members to Microsoft Excel file. | |
cleanString ($str) | |
Clean output string from german umlauts. |
Definition at line 40 of file class.ilObjGroupGUI.php.
ilObjGroupGUI::__initFileObject | ( | ) |
Definition at line 1378 of file class.ilObjGroupGUI.php.
Referenced by performImportObject().
{ include_once "classes/class.ilFileDataImportGroup.php"; $this->file_obj =& new ilFileDataImportGroup(); return true; }
ilObjGroupGUI::__initParserObject | ( | $ | a_xml_file | ) |
Definition at line 1387 of file class.ilObjGroupGUI.php.
Referenced by performImportObject().
{ include_once "classes/class.ilGroupImportParser.php"; $this->parser_obj =& new ilGroupImportParser($a_xml_file,$this->ref_id); return true; }
& ilObjGroupGUI::__initTableGUI | ( | ) |
Reimplemented from ilObjectGUI.
Definition at line 1758 of file class.ilObjGroupGUI.php.
Referenced by __showMembersTable(), __showSearchGroupTable(), __showSearchRoleTable(), and __showSearchUserTable().
{ include_once "class.ilTableGUI.php"; return new ilTableGUI(0,false); }
ilObjGroupGUI::__search | ( | $ | a_search_string, | |
$ | a_search_for | |||
) |
Definition at line 1465 of file class.ilObjGroupGUI.php.
References $_SESSION, sendInfo(), and ilUtil::stripSlashes().
Referenced by searchObject().
{ include_once("class.ilSearch.php"); $this->lng->loadLanguageModule("content"); $search =& new ilSearch($_SESSION["AccountId"]); $search->setPerformUpdate(false); $search->setSearchString(ilUtil::stripSlashes($a_search_string)); $search->setCombination("and"); $search->setSearchFor(array(0 => $a_search_for)); $search->setSearchType('new'); if($search->validate($message)) { $search->performSearch(); } else { sendInfo($message,true); $this->ctrl->redirect($this,"searchUserForm"); } return $search->getResultByType($a_search_for); }
ilObjGroupGUI::__setTableGUIBasicData | ( | &$ | tbl, | |
&$ | result_set, | |||
$ | a_from = "" | |||
) |
standard implementation for tables use 'from' variable use different initial setting of table
Reimplemented from ilObjectGUI.
Definition at line 1765 of file class.ilObjGroupGUI.php.
Referenced by __showMembersTable(), __showSearchGroupTable(), __showSearchRoleTable(), and __showSearchUserTable().
{ switch($from) { case "subscribers": $offset = $_GET["update_subscribers"] ? $_GET["offset"] : 0; $order = $_GET["update_subscribers"] ? $_GET["sort_by"] : 'login'; $direction = $_GET["update_subscribers"] ? $_GET["sort_order"] : ''; break; case "group": $offset = $_GET["offset"]; $order = $_GET["sort_by"] ? $_GET["sort_by"] : "title"; $direction = $_GET["sort_order"]; break; case "role": $offset = $_GET["offset"]; $order = $_GET["sort_by"] ? $_GET["sort_by"] : "title"; $direction = $_GET["sort_order"]; break; default: $offset = $_GET["offset"]; // init sort_by (unfortunatly sort_by is preset with 'title' if ($_GET["sort_by"] == "title" or empty($_GET["sort_by"])) { $_GET["sort_by"] = "login"; } $order = $_GET["sort_by"]; $direction = $_GET["sort_order"]; break; } $tbl->setOrderColumn($order); $tbl->setOrderDirection($direction); $tbl->setOffset($offset); $tbl->setLimit($_GET["limit"]); //$tbl->setMaxCount(count($result_set)); $tbl->setFooter("tblfooter",$this->lng->txt("previous"),$this->lng->txt("next")); $tbl->setData($result_set); }
ilObjGroupGUI::__showMembersTable | ( | $ | a_result_set, | |
$ | a_user_ids = NULL | |||
) |
Definition at line 1675 of file class.ilObjGroupGUI.php.
References ilObjectGUI::$actions, $ilBench, $rbacsystem, $tbl, ilObjectGUI::$tpl, __initTableGUI(), __setTableGUIBasicData(), ilUtil::array_php2js(), and ilUtil::getImagePath().
Referenced by membersObject().
{ global $rbacsystem,$ilBench; $ilBench->start("GroupGUI", "__showMembersTable"); $actions = array("RemoveMember" => $this->lng->txt("remove"),"changeMember" => $this->lng->txt("change")); $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"); //INTERIMS:quite a circumstantial way to show the list on rolebased accessrights if ($rbacsystem->checkAccess("write",$this->object->getRefId())) { //user is administrator $tpl->setCurrentBlock("plain_button"); $tpl->setVariable("PBTN_NAME","searchUserForm"); $tpl->setVariable("PBTN_VALUE",$this->lng->txt("grp_add_member")); $tpl->parseCurrentBlock(); $tpl->setCurrentBlock("plain_buttons"); $tpl->parseCurrentBlock(); $tpl->setVariable("COLUMN_COUNTS",7); $tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.gif")); 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_user_ids)) { // set checkbox toggles $tpl->setCurrentBlock("tbl_action_toggle_checkboxes"); $tpl->setVariable("JS_VARNAME","user_id"); $tpl->setVariable("JS_ONCLICK",ilUtil::array_php2js($a_user_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","members"); // title & header columns $tbl->setTitle($this->lng->txt("members"),"icon_usr_b.gif",$this->lng->txt("group_members")); //INTERIMS:quite a circumstantial way to show the list on rolebased accessrights if ($rbacsystem->checkAccess("write",$this->object->getRefId())) { //user must be administrator $tbl->setHeaderNames(array("",$this->lng->txt("username"),$this->lng->txt("firstname"),$this->lng->txt("lastname"),$this->lng->txt("last_visit"),$this->lng->txt("role"),$this->lng->txt("grp_options"))); $tbl->setHeaderVars(array("","login","firstname","lastname","role","functions"),$this->ctrl->getParameterArray($this,"",false)); $tbl->setColumnWidth(array("","22%","22%","22%","22%","10%")); } else { //user must be member $tbl->setHeaderNames(array($this->lng->txt("username"),$this->lng->txt("firstname"),$this->lng->txt("lastname"),$this->lng->txt("last_visit"),$this->lng->txt("role"),$this->lng->txt("grp_options"))); $tbl->setHeaderVars(array("login","firstname","lastname","role","functions"),$this->ctrl->getParameterArray($this,"",false)); $tbl->setColumnWidth(array("22%","22%","22%","22%","10%")); } $this->__setTableGUIBasicData($tbl,$a_result_set,"members"); $tbl->render(); $this->tpl->setVariable("ADM_CONTENT",$tbl->tpl->get()); $ilBench->stop("GroupGUI", "__showMembersTable"); return true; }
ilObjGroupGUI::__showSearchGroupTable | ( | $ | a_result_set, | |
$ | a_grp_ids = NULL | |||
) |
Definition at line 1617 of file class.ilObjGroupGUI.php.
References $_GET, $tbl, ilObjectGUI::$tpl, __initTableGUI(), __setTableGUIBasicData(), ilUtil::array_php2js(), and ilUtil::getImagePath().
Referenced by searchObject().
{ $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.gif")); $tpl->parseCurrentBlock(); $tbl->setTitle($this->lng->txt("grp_header_edit_members"),"icon_usr_b.gif",$this->lng->txt("grp_header_edit_members")); $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" => "ilobjgroupgui", "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; }
ilObjGroupGUI::__showSearchRoleTable | ( | $ | a_result_set, | |
$ | a_role_ids = NULL | |||
) |
Definition at line 1559 of file class.ilObjGroupGUI.php.
References $_GET, $tbl, ilObjectGUI::$tpl, __initTableGUI(), __setTableGUIBasicData(), ilUtil::array_php2js(), and ilUtil::getImagePath().
Referenced by searchObject().
{ $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","listUsersRole"); $tpl->setVariable("BTN_VALUE",$this->lng->txt("grp_list_users")); $tpl->parseCurrentBlock(); if (!empty($a_role_ids)) { // set checkbox toggles $tpl->setCurrentBlock("tbl_action_toggle_checkboxes"); $tpl->setVariable("JS_VARNAME","role"); $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->setCurrentBlock("tbl_action_row"); $tpl->setVariable("COLUMN_COUNTS",5); $tpl->setVariable("IMG_ARROW",ilUtil::getImagePath("arrow_downright.gif")); $tpl->parseCurrentBlock(); $tbl->setTitle($this->lng->txt("grp_header_edit_members"),"icon_usr_b.gif",$this->lng->txt("grp_header_edit_members")); $tbl->setHeaderNames(array("", $this->lng->txt("obj_role"), $this->lng->txt("grp_count_members"))); $tbl->setHeaderVars(array("", "title", "nr_members"), array("ref_id" => $this->object->getRefId(), "cmd" => "search", "cmdClass" => "ilobjgroupgui", "cmdNode" => $_GET["cmdNode"])); $tbl->setColumnWidth(array("","80%","19%")); $this->__setTableGUIBasicData($tbl,$a_result_set,"role"); $tbl->render(); $this->tpl->setVariable("SEARCH_RESULT_TABLE",$tbl->tpl->get()); return true; }
ilObjGroupGUI::__showSearchUserTable | ( | $ | a_result_set, | |
$ | a_user_ids = NULL , |
|||
$ | a_cmd = "search" | |||
) |
Definition at line 1490 of file class.ilObjGroupGUI.php.
References $_GET, $tbl, ilObjectGUI::$tpl, __initTableGUI(), __setTableGUIBasicData(), ilUtil::array_php2js(), and ilUtil::getImagePath().
Referenced by listUsersGroupObject(), listUsersRoleObject(), and searchObject().
{ $return_to = "searchUserForm"; if ($a_cmd == "listUsersRole" or $a_cmd == "listUsersGroup") { $return_to = "search"; } $tbl =& $this->__initTableGUI(); $tpl =& $tbl->getTemplateObject(); // SET FORMACTION $tpl->setCurrentBlock("tbl_form_header"); $tpl->setVariable("FORMACTION",$this->ctrl->getFormAction($this)); $tpl->parseCurrentBlock(); $tpl->setCurrentBlock("tbl_action_btn"); $tpl->setVariable("BTN_NAME",$return_to); $tpl->setVariable("BTN_VALUE",$this->lng->txt("back")); $tpl->parseCurrentBlock(); $tpl->setCurrentBlock("tbl_action_btn"); $tpl->setVariable("BTN_NAME","addUser"); $tpl->setVariable("BTN_VALUE",$this->lng->txt("add")); $tpl->parseCurrentBlock(); if (!empty($a_user_ids)) { // set checkbox toggles $tpl->setCurrentBlock("tbl_action_toggle_checkboxes"); $tpl->setVariable("JS_VARNAME","user"); $tpl->setVariable("JS_ONCLICK",ilUtil::array_php2js($a_user_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.gif")); $tpl->parseCurrentBlock(); $tbl->setTitle($this->lng->txt("grp_header_edit_members"),"icon_usr_b.gif",$this->lng->txt("grp_header_edit_members")); $tbl->setHeaderNames(array("", $this->lng->txt("username"), $this->lng->txt("firstname"), $this->lng->txt("lastname"), $this->lng->txt("last_visit"))); $tbl->setHeaderVars(array("", "login", "firstname", "lastname", "last_visit"), array("ref_id" => $this->object->getRefId(), "cmd" => $a_cmd, "cmdClass" => "ilobjgroupgui", "cmdNode" => $_GET["cmdNode"])); $tbl->setColumnWidth(array("","33%","33%","33%")); $this->__setTableGUIBasicData($tbl,$a_result_set); $tbl->render(); $this->tpl->setVariable("SEARCH_RESULT_TABLE",$tbl->tpl->get()); return true; }
ilObjGroupGUI::__unsetSessionVariables | ( | ) |
Definition at line 1454 of file class.ilObjGroupGUI.php.
References $_SESSION.
Referenced by searchUserFormObject().
{ unset($_SESSION["grp_delete_member_ids"]); unset($_SESSION["grp_delete_subscriber_ids"]); unset($_SESSION["grp_search_str"]); unset($_SESSION["grp_search_for"]); unset($_SESSION["grp_role"]); unset($_SESSION["grp_group"]); unset($_SESSION["grp_archives"]); }
ilObjGroupGUI::addUserObject | ( | ) |
displays confirmation formular with users that shall be assigned to group public
Definition at line 615 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, ilUtil::redirect(), and sendInfo().
{ $user_ids = $_POST["user"]; if (empty($user_ids[0])) { // TODO: jumps back to grp content. go back to last search result $this->ilErr->raiseError($this->lng->txt("no_checkbox"),$this->ilErr->MESSAGE); } foreach ($user_ids as $new_member) { if (!$this->object->addMember($new_member,$this->object->getDefaultMemberRole())) { $this->ilErr->raiseError("An Error occured while assigning user to group !",$this->ilErr->MESSAGE); } } unset($_SESSION["saved_post"]); sendInfo($this->lng->txt("grp_msg_member_assigned"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,"members")); }
ilObjGroupGUI::assignApplicantsObject | ( | ) |
adds applicant to group as member public
Definition at line 993 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, $user, ilUtil::redirect(), and sendInfo().
{ $user_ids = $_POST["user_id"]; if (empty($user_ids[0])) { $this->ilErr->raiseError($this->lng->txt("no_checkbox"),$this->ilErr->MESSAGE); } $mail = new ilMail($_SESSION["AccountId"]); foreach ($user_ids as $new_member) { $user =& $this->ilias->obj_factory->getInstanceByObjId($new_member); if (!$this->object->addMember($new_member, $this->object->getDefaultMemberRole())) { $this->ilErr->raiseError("An Error occured while assigning user to group !",$this->ilErr->MESSAGE); } $this->object->deleteApplicationListEntry($new_member); $mail->sendMail($user->getLogin(),"","","New Membership in Group: ".$this->object->getTitle(),"You have been assigned to the group as a member. You can now access all group specific objects like forums, learningmodules,etc..",array(),array('normal')); } sendInfo($this->lng->txt("grp_msg_applicants_assigned"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,"members")); }
ilObjGroupGUI::assignMemberObject | ( | ) |
displays confirmation formular with users that shall be assigned to group public
Definition at line 587 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, ilUtil::redirect(), and sendInfo().
{ $user_ids = $_POST["id"]; if (empty($user_ids[0])) { // TODO: jumps back to grp content. go back to last search result $this->ilErr->raiseError($this->lng->txt("no_checkbox"),$this->ilErr->MESSAGE); } foreach ($user_ids as $new_member) { if (!$this->object->addMember($new_member,$this->object->getDefaultMemberRole())) { $this->ilErr->raiseError("An Error occured while assigning user to group !",$this->ilErr->MESSAGE); } } unset($_SESSION["saved_post"]); sendInfo($this->lng->txt("grp_msg_member_assigned"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,"members")); }
ilObjGroupGUI::canceledObject | ( | ) |
canceledObject is called when operation is canceled, method links back public
Definition at line 240 of file class.ilObjGroupGUI.php.
References $_GET, ilObjectGUI::$return_location, and sendInfo().
{ $return_location = $_GET["cmd_return_location"]; if (strcmp($return_location, "") == 0) { $return_location = "members"; } sendInfo($this->lng->txt("action_aborted"),true); $this->ctrl->redirect($this, $return_location); }
ilObjGroupGUI::cancelMemberObject | ( | ) |
canceledObject is called when operation is canceled, method links back public
Definition at line 256 of file class.ilObjGroupGUI.php.
References ilObjectGUI::$return_location, ilUtil::redirect(), and sendInfo().
{ $return_location = "members"; sendInfo($this->lng->txt("action_aborted"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,$return_location)); }
ilObjGroupGUI::cciEditObject | ( | ) |
Definition at line 1407 of file class.ilObjGroupGUI.php.
References $rbacsystem, and initCourseContentInterface().
Referenced by chi_assignObject(), chi_deleteObject(), and chi_updateObject().
{ global $rbacsystem; // CHECK ACCESS if(!$rbacsystem->checkAccess("write", $this->ref_id)) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilias->error_obj->MESSAGE); } $this->initCourseContentInterface(); $this->cci_obj->cci_edit(); return true;; }
ilObjGroupGUI::cciMoveObject | ( | ) |
Definition at line 1438 of file class.ilObjGroupGUI.php.
References $rbacsystem, and initCourseContentInterface().
{ global $rbacsystem; // CHECK ACCESS if(!$rbacsystem->checkAccess("write", $this->ref_id)) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilias->error_obj->MESSAGE); } $this->initCourseContentInterface(); $this->cci_obj->cci_move(); return true;; }
ilObjGroupGUI::cciUpdateObject | ( | ) |
Definition at line 1423 of file class.ilObjGroupGUI.php.
References $rbacsystem, and initCourseContentInterface().
{ global $rbacsystem; // CHECK ACCESS if(!$rbacsystem->checkAccess("write", $this->ref_id)) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilias->error_obj->MESSAGE); } $this->initCourseContentInterface(); $this->cci_obj->cci_update(); return true;; }
ilObjGroupGUI::changeMemberObject | ( | ) |
displays form in which the member-status can be changed public
Definition at line 710 of file class.ilObjGroupGUI.php.
References $_GET, $_POST, $_SESSION, $output, $tbl, formatDate(), ilUtil::formSelect(), ilUtil::getImagePath(), infoPanel(), and ilUtil::sortArray().
{ if ($_GET["sort_by"] == "title" or $_GET["sort_by"] == "") { $_GET["sort_by"] = "login"; } $member_ids = array(); if (isset($_POST["user_id"])) { $member_ids = $_POST["user_id"]; } else if (isset($_GET["mem_id"])) { $member_ids[0] = $_GET["mem_id"]; } if (empty($member_ids[0])) { $this->ilErr->raiseError($this->lng->txt("no_checkbox"),$this->ilErr->MESSAGE); } if (!in_array(SYSTEM_ROLE_ID,$_SESSION["RoleId"]) and !in_array($this->ilias->account->getId(),$this->object->getGroupAdminIds())) { $this->ilErr->raiseError($this->lng->txt("grp_err_no_permission"),$this->ilErr->MESSAGE); } $stati = array_flip($this->object->getLocalGroupRoles()); //build data structure foreach ($member_ids as $member_id) { $member =& $this->ilias->obj_factory->getInstanceByObjId($member_id); $mem_status = $this->object->getMemberRoles($member_id); $this->data["data"][$member->getId()]= array( "login" => $member->getLogin(), "firstname" => $member->getFirstname(), "lastname" => $member->getLastname(), "last_visit"=> ilFormat::formatDate($member->getLastLogin()), "grp_role" => ilUtil::formSelect($mem_status,"member_status_select[".$member->getId()."][]",$stati,true,true,3) ); } unset($member); infoPanel(); $this->tpl->addBlockfile("ADM_CONTENT", "member_table", "tpl.table.html"); // load template for table content data $this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this)); $this->data["buttons"] = array( "members" => $this->lng->txt("back"), "updateMemberStatus" => $this->lng->txt("confirm")); $this->tpl->setCurrentBlock("tbl_action_row"); $this->tpl->setVariable("COLUMN_COUNTS",5); //$this->tpl->setVariable("TPLPATH",$this->tpl->tplPath); $this->tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.gif")); foreach ($this->data["buttons"] as $name => $value) { $this->tpl->setCurrentBlock("tbl_action_btn"); $this->tpl->setVariable("BTN_NAME",$name); $this->tpl->setVariable("BTN_VALUE",$value); $this->tpl->parseCurrentBlock(); } //sort data array $this->data["data"] = ilUtil::sortArray($this->data["data"], $_GET["sort_by"], $_GET["sort_order"]); $output = array_slice($this->data["data"],$_GET["offset"],$_GET["limit"]); // create table include_once "./classes/class.ilTableGUI.php"; $tbl = new ilTableGUI($output); // title & header columns $tbl->setTitle($this->lng->txt("grp_mem_change_status"),"icon_usr_b.gif",$this->lng->txt("grp_mem_change_status")); //$tbl->setHelp("tbl_help.php","icon_help.gif",$this->lng->txt("help")); $tbl->setHeaderNames(array($this->lng->txt("username"),$this->lng->txt("firstname"),$this->lng->txt("lastname"),$this->lng->txt("last_visit"),$this->lng->txt("role"))); $tbl->setHeaderVars(array("login","firstname","lastname","last_visit","role"),$this->ctrl->getParameterArray($this,"",false)); $tbl->setColumnWidth(array("20%","20%","20%","40%")); $this->tpl->setCurrentBlock("tbl_action_row"); $this->tpl->parseCurrentBlock(); // control $tbl->setOrderColumn($_GET["sort_by"]); $tbl->setOrderDirection($_GET["sort_order"]); $tbl->setLimit($_GET["limit"]); $tbl->setOffset($_GET["offset"]); $tbl->setMaxCount(count($this->data["data"])); $tbl->setFooter("tblfooter",$this->lng->txt("previous"),$this->lng->txt("next")); // render table $tbl->render(); }
ilObjGroupGUI::chi_assignObject | ( | ) |
Definition at line 1989 of file class.ilObjGroupGUI.php.
References $_GET, cciEditObject(), editObject(), and initConditionHandlerGUI().
{ $this->initConditionHandlerGUI($_GET['item_id'] ? $_GET['item_id'] : $this->object->getRefId()); $this->chi_obj->chi_assign(); if($_GET['item_id']) { $this->cciEditObject(); } else { $this->editObject(); } }
ilObjGroupGUI::chi_deleteObject | ( | ) |
Definition at line 1968 of file class.ilObjGroupGUI.php.
References $_GET, cciEditObject(), editObject(), and initConditionHandlerGUI().
{ $this->initConditionHandlerGUI($_GET['item_id'] ? $_GET['item_id'] : $this->object->getRefId()); $this->chi_obj->chi_delete(); if($_GET['item_id']) { $this->cciEditObject(); } else { $this->editObject(); } }
ilObjGroupGUI::chi_selectorObject | ( | ) |
Definition at line 1983 of file class.ilObjGroupGUI.php.
References $_GET, and initConditionHandlerGUI().
{ $this->initConditionHandlerGUI($_GET['item_id'] ? $_GET['item_id'] : $this->object->getRefId()); $this->chi_obj->chi_selector(); }
ilObjGroupGUI::chi_updateObject | ( | ) |
Definition at line 1954 of file class.ilObjGroupGUI.php.
References $_GET, cciEditObject(), editObject(), and initConditionHandlerGUI().
{ $this->initConditionHandlerGUI($_GET['item_id'] ? $_GET['item_id'] : $this->object->getRefId()); $this->chi_obj->chi_update(); if($_GET['item_id']) { $this->cciEditObject(); } else { $this->editObject(); } }
ilObjGroupGUI::cleanString | ( | $ | str | ) |
Clean output string from german umlauts.
Clean output string from german umlauts. Replaces ä -> ae etc.
string | $str String to clean |
Definition at line 2180 of file class.ilObjGroupGUI.php.
Referenced by exportMembersObject().
{ return str_replace(array("ä","ö","ü","ß","Ä","Ö","Ü"), array("ae","oe","ue","ss","Ae","Oe","Ue"), $str); }
ilObjGroupGUI::confirmationObject | ( | $ | user_id = "" , |
|
$ | confirm, | |||
$ | cancel, | |||
$ | info = "" , |
|||
$ | status = "" , |
|||
$ | a_cmd_return_location = "" | |||
) |
displays confirmation form public
Definition at line 459 of file class.ilObjGroupGUI.php.
References $_SESSION, $counter, $id, $status, $user_id, ilUtil::getImagePath(), ilUtil::getImageTagByType(), ilObjectGUI::getTemplateFile(), infoPanel(), sendInfo(), and ilUtil::switchColor().
Referenced by leaveGrpObject(), and removeMemberObject().
{ $this->data["cols"] = array("type", "title", "description", "last_change"); if (is_array($user_id)) { foreach ($user_id as $id) { $obj_data =& $this->ilias->obj_factory->getInstanceByObjId($id); $this->data["data"]["$id"] = array( "type" => $obj_data->getType(), "title" => $obj_data->getTitle(), "desc" => $obj_data->getDescription(), "last_update" => $obj_data->getLastUpdateDate(), ); } } else { $obj_data =& $this->ilias->obj_factory->getInstanceByObjId($user_id); $this->data["data"]["$id"] = array( "type" => $obj_data->getType(), "title" => $obj_data->getTitle(), "desc" => $obj_data->getDescription(), "last_update" => $obj_data->getLastUpdateDate(), ); } //write in sessionvariables if(is_array($user_id)) { $_SESSION["saved_post"]["user_id"] = $user_id; } else { $_SESSION["saved_post"]["user_id"][0] = $user_id; } if (isset($status)) { $_SESSION["saved_post"]["status"] = $status; } $this->data["buttons"] = array( $cancel => $this->lng->txt("cancel"), $confirm => $this->lng->txt("confirm")); $this->getTemplateFile("confirm"); $this->tpl->setVariable("TPLPATH",$this->tpl->tplPath); infoPanel(); sendInfo($this->lng->txt($info)); $this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this)."&cmd_return_location=".$a_cmd_return_location); // BEGIN TABLE HEADER foreach ($this->data["cols"] as $key) { $this->tpl->setCurrentBlock("table_header"); $this->tpl->setVariable("TEXT",$this->lng->txt($key)); $this->tpl->parseCurrentBlock(); } // END TABLE HEADER // BEGIN TABLE DATA $counter = 0; foreach ($this->data["data"] as $key => $value) { // BEGIN TABLE CELL foreach ($value as $key => $cell_data) { $this->tpl->setCurrentBlock("table_cell"); // CREATE TEXT STRING if ($key == "type") { $this->tpl->setVariable("TEXT_CONTENT",ilUtil::getImageTagByType($cell_data,$this->tpl->tplPath)); } else { $this->tpl->setVariable("TEXT_CONTENT",$cell_data); } $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("table_row"); $this->tpl->setVariable("CSS_ROW",ilUtil::switchColor(++$counter,"tblrow1","tblrow2")); $this->tpl->parseCurrentBlock(); // END TABLE CELL } // END TABLE DATA // BEGIN OPERATION_BTN foreach ($this->data["buttons"] as $name => $value) { $this->tpl->setCurrentBlock("operation_btn"); $this->tpl->setVariable("IMG_ARROW",ilUtil::getImagePath("spacer.gif")); $this->tpl->setVariable("BTN_NAME",$name); $this->tpl->setVariable("BTN_VALUE",$value); $this->tpl->parseCurrentBlock(); } }
ilObjGroupGUI::confirmedRemoveMemberObject | ( | ) |
remove members from group TODO: set return location to parent object if user removes himself TODO: allow user to remove himself when he is not group admin public
Definition at line 686 of file class.ilObjGroupGUI.php.
References $_SESSION, ilUtil::redirect(), and sendInfo().
{ //User needs to have administrative rights to remove members... foreach($_SESSION["saved_post"]["user_id"] as $member_id) { $err_msg = $this->object->removeMember($member_id); if (strlen($err_msg) > 0) { $this->ilErr->raiseError($this->lng->txt($err_msg),$this->ilErr->MESSAGE); } } unset($_SESSION["saved_post"]); sendInfo($this->lng->txt("grp_msg_membership_annulled"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,"members")); }
ilObjGroupGUI::createObject | ( | ) |
create new object form
Reimplemented from ilObjectGUI.
Definition at line 127 of file class.ilObjGroupGUI.php.
References $_GET, $_POST, $_SESSION, ilObjectGUI::$data, $rbacsystem, ilUtil::formRadioButton(), formSelect(), ilFormat::getDateDE(), ilObjectGUI::getFormAction(), ilObjectGUI::getTargetFrame(), ilObjectGUI::getTemplateFile(), ilUtil::prepareFormOutput(), and ilUtil::stripSlashes().
{ global $rbacsystem; $new_type = $_POST["new_type"] ? $_POST["new_type"] : $_GET["new_type"]; if (!$rbacsystem->checkAccess("create", $_GET["ref_id"], $new_type)) { $this->ilErr->raiseError($this->lng->txt("permission_denied"),$this->ilErr->MESSAGE); } $data = array(); if ($_SESSION["error_post_vars"]) { // fill in saved values in case of error $data["fields"]["title"] = ilUtil::prepareFormOutput($_SESSION["error_post_vars"]["Fobject"]["title"],true); $data["fields"]["desc"] = ilUtil::stripSlashes($_SESSION["error_post_vars"]["Fobject"]["desc"]); $data["fields"]["password"] = $_SESSION["error_post_vars"]["password"]; $data["fields"]["expirationdate"] = $_SESSION["error_post_vars"]["expirationdate"]; $data["fields"]["expirationtime"] = $_SESSION["error_post_vars"]["expirationtime"]; } else { $data["fields"]["title"] = ""; $data["fields"]["desc"] = ""; $data["fields"]["password"] = ""; $data["fields"]["expirationdate"] = ilFormat::getDateDE(); $data["fields"]["expirationtime"] = ""; } $this->getTemplateFile("edit",$new_type); foreach ($data["fields"] as $key => $val) { $this->tpl->setVariable("TXT_".strtoupper($key), $this->lng->txt($key)); $this->tpl->setVariable(strtoupper($key), $val); if ($this->prepare_output) { $this->tpl->parseCurrentBlock(); } } $stati = array(0=>$this->lng->txt("group_status_public"),1=>$this->lng->txt("group_status_closed")); $grp_status = $_SESSION["error_post_vars"]["group_status"]; $checked = array(0=>0,1=>0,2=>0); switch ($_SESSION["error_post_vars"]["enable_registration"]) { case 0: $checked[0]=1; break; case 1: $checked[1]=1; break; case 2: $checked[2]=1; break; default: $checked[0]=1; break; } //build form $cb_registration[0] = ilUtil::formRadioButton($checked[0], "enable_registration", 0); $cb_registration[1] = ilUtil::formRadioButton($checked[1], "enable_registration", 1); $cb_registration[2] = ilUtil::formRadioButton($checked[2], "enable_registration", 2); $opts = ilUtil::formSelect(0,"group_status",$stati,false,true); $this->tpl->setVariable("FORMACTION", $this->getFormAction("save",$this->ctrl->getFormAction($this)."&new_type=".$new_type)); $this->tpl->setVariable("TXT_HEADER", $this->lng->txt($new_type."_new")); $this->tpl->setVariable("TXT_REQUIRED_FLD", $this->lng->txt("required_field")); $this->tpl->setVariable("TXT_REGISTRATION", $this->lng->txt("group_registration_mode")); $this->tpl->setVariable("TXT_CANCEL", $this->lng->txt("cancel")); $this->tpl->setVariable("TXT_SUBMIT", $this->lng->txt($new_type."_add")); $this->tpl->setVariable("CMD_SUBMIT", "save"); $this->tpl->setVariable("TARGET", $this->getTargetFrame("save")); $this->tpl->setVariable("TXT_REQUIRED_FLD", $this->lng->txt("required_field")); $this->tpl->setVariable("TXT_DISABLEREGISTRATION", $this->lng->txt("disabled")); $this->tpl->setVariable("RB_NOREGISTRATION", $cb_registration[0]); $this->tpl->setVariable("TXT_ENABLEREGISTRATION", $this->lng->txt("enabled")); $this->tpl->setVariable("RB_REGISTRATION", $cb_registration[1]); $this->tpl->setVariable("TXT_PASSWORDREGISTRATION", $this->lng->txt("password")); $this->tpl->setVariable("RB_PASSWORDREGISTRATION", $cb_registration[2]); $this->tpl->setVariable("TXT_EXPIRATIONDATE", $this->lng->txt("group_registration_expiration_date")); $this->tpl->setVariable("TXT_EXPIRATIONTIME", $this->lng->txt("group_registration_expiration_time")); $this->tpl->setVariable("TXT_DATE", $this->lng->txt("DD.MM.YYYY")); $this->tpl->setVariable("TXT_TIME", $this->lng->txt("HH:MM")); $this->tpl->setVariable("CB_KEYREGISTRATION", $cb_keyregistration); $this->tpl->setVariable("TXT_KEYREGISTRATION", $this->lng->txt("group_keyregistration")); $this->tpl->setVariable("TXT_PASSWORD", $this->lng->txt("password")); $this->tpl->setVariable("SELECT_GROUPSTATUS", $opts); $this->tpl->setVariable("TXT_GROUP_STATUS", $this->lng->txt("group_status")); $this->tpl->setVariable("TXT_GROUP_STATUS_DESC", $this->lng->txt("group_status_desc")); }
ilObjGroupGUI::editObject | ( | ) |
edit Group public
Reimplemented from ilObjectGUI.
Definition at line 363 of file class.ilObjGroupGUI.php.
References $_SESSION, ilObjectGUI::$data, $rbacsystem, ilUtil::formRadioButton(), ilObjectGUI::getTemplateFile(), ilUtil::prepareFormOutput(), and ilUtil::stripSlashes().
Referenced by chi_assignObject(), chi_deleteObject(), and chi_updateObject().
{ global $rbacsystem; if (!$rbacsystem->checkAccess("write", $this->ref_id)) { $this->ilErr->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilErr->MESSAGE); } $data = array(); if ($_SESSION["error_post_vars"]) { // fill in saved values in case of error $data["title"] = ilUtil::prepareFormOutput($_SESSION["error_post_vars"]["Fobject"]["title"],true); $data["desc"] = ilUtil::stripSlashes($_SESSION["error_post_vars"]["Fobject"]["desc"]); $data["registration"] = $_SESSION["error_post_vars"]["registration"]; $data["password"] = $_SESSION["error_post_vars"]["password"]; $data["expirationdate"] = $_SESSION["error_post_vars"]["expirationdate"];//$datetime[0];//$this->grp_object->getExpirationDateTime()[0]; $data["expirationtime"] = $_SESSION["error_post_vars"]["expirationtime"];//$datetime[1];//$this->grp_object->getExpirationDateTime()[1]; } else { $data["title"] = ilUtil::prepareFormOutput($this->object->getTitle()); $data["desc"] = $this->object->getDescription(); $data["registration"] = $this->object->getRegistrationFlag(); $data["password"] = $this->object->getPassword(); $datetime = $this->object->getExpirationDateTime(); $data["expirationdate"] = $datetime[0];//$this->grp_object->getExpirationDateTime()[0]; $data["expirationtime"] = substr($datetime[1],0,5);//$this->grp_object->getExpirationDateTime()[1]; } $this->getTemplateFile("edit"); foreach ($data as $key => $val) { $this->tpl->setVariable("TXT_".strtoupper($key), $this->lng->txt($key)); $this->tpl->setVariable(strtoupper($key), $val); $this->tpl->parseCurrentBlock(); } $checked = array(0=>0,1=>0,2=>0); switch ($this->object->getRegistrationFlag()) { case 0: $checked[0]=1; break; case 1: $checked[1]=1; break; case 2: $checked[2]=1; break; } $cb_registration[0] = ilUtil::formRadioButton($checked[0], "enable_registration", 0); $cb_registration[1] = ilUtil::formRadioButton($checked[1], "enable_registration", 1); $cb_registration[2] = ilUtil::formRadioButton($checked[2], "enable_registration", 2); $this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));//$this->getFormAction("update",$this->ctrl->getFormAction($this))); $this->tpl->setVariable("TXT_HEADER", $this->lng->txt("grp_edit")); $this->tpl->setVariable("TXT_CANCEL", $this->lng->txt("cancel")); $this->tpl->setVariable("TXT_SUBMIT", $this->lng->txt("save")); $this->tpl->setVariable("CMD_CANCEL", "canceled"); $this->tpl->setVariable("CMD_SUBMIT", "update"); $this->tpl->setVariable("TXT_REQUIRED_FLD", $this->lng->txt("required_field")); $this->tpl->setVariable("TXT_REGISTRATION", $this->lng->txt("group_registration_mode")); $this->tpl->setVariable("TXT_DISABLEREGISTRATION", $this->lng->txt("disabled")); $this->tpl->setVariable("RB_NOREGISTRATION", $cb_registration[0]); $this->tpl->setVariable("TXT_ENABLEREGISTRATION", $this->lng->txt("enabled")); $this->tpl->setVariable("RB_REGISTRATION", $cb_registration[1]); $this->tpl->setVariable("TXT_PASSWORDREGISTRATION", $this->lng->txt("password")); $this->tpl->setVariable("RB_PASSWORDREGISTRATION", $cb_registration[2]); $this->tpl->setVariable("TXT_EXPIRATIONDATE", $this->lng->txt("group_registration_expiration_date")); $this->tpl->setVariable("TXT_EXPIRATIONTIME", $this->lng->txt("group_registration_expiration_time")); $this->tpl->setVariable("TXT_DATE", $this->lng->txt("DD.MM.YYYY")); $this->tpl->setVariable("TXT_TIME", $this->lng->txt("HH:MM")); $this->tpl->setVariable("CB_KEYREGISTRATION", $cb_keyregistration); $this->tpl->setVariable("TXT_KEYREGISTRATION", $this->lng->txt("group_keyregistration")); $this->tpl->setVariable("TXT_PASSWORD", $this->lng->txt("password")); }
& ilObjGroupGUI::executeCommand | ( | ) |
execute command
Reimplemented from ilObjectGUI.
Definition at line 74 of file class.ilObjGroupGUI.php.
References $_GET, $cmd, and $reg_gui.
{ $next_class = $this->ctrl->getNextClass($this); $cmd = $this->ctrl->getCmd(); switch($next_class) { case "ilconditionhandlerinterface": include_once './classes/class.ilConditionHandlerInterface.php'; if($_GET['item_id']) { $new_gui =& new ilConditionHandlerInterface($this,(int) $_GET['item_id']); $this->ctrl->saveParameter($this,'item_id',$_GET['item_id']); $this->ctrl->forwardCommand($new_gui); } else { $new_gui =& new ilConditionHandlerInterface($this); $this->ctrl->forwardCommand($new_gui); } break; case "ilregistergui": $this->ctrl->setReturn($this, ""); // ### $reg_gui = new ilRegisterGUI(); //$reg_gui->executeCommand(); $ret =& $this->ctrl->forwardCommand($reg_gui); break; default: if ($this->object->requireRegistration() and !$this->object->isUserRegistered()) { $this->ctrl->redirectByClass("ilRegisterGUI", "showRegistrationForm"); } if (empty($cmd)) { #$this->ctrl->returnToParent($this); // NOT ACCESSIBLE SINCE returnToParent() starts a redirect $cmd = "view"; } // NOT ACCESSIBLE SINCE returnToParent() starts a redirect $cmd .= "Object"; $this->$cmd(); break; } }
ilObjGroupGUI::exportMembersObject | ( | ) |
Exports group members to Microsoft Excel file.
Exports group members to Microsoft Excel file
Definition at line 2025 of file class.ilObjGroupGUI.php.
References ilObjectGUI::$data, $result, $row, and cleanString().
{ // Creating a workbook $result = @include_once 'Spreadsheet/Excel/Writer.php'; if (!$result) { include_once './classes/Spreadsheet/Excel/Writer.php'; } // Creating a workbook $workbook = new Spreadsheet_Excel_Writer(); // sending HTTP headers $title = preg_replace("/\s/", "_", $this->object->getTitle()); $workbook->send("export_" . $title . ".xls"); // Creating a worksheet $format_bold =& $workbook->addFormat(); $format_bold->setBold(); $format_percent =& $workbook->addFormat(); $format_percent->setNumFormat("0.00%"); $format_datetime =& $workbook->addFormat(); $format_datetime->setNumFormat("DD/MM/YYYY hh:mm:ss"); $format_title =& $workbook->addFormat(); $format_title->setBold(); $format_title->setColor('black'); $format_title->setPattern(1); $format_title->setFgColor('silver'); $worksheet =& $workbook->addWorksheet(); $column = 0; $profile_data = array("email", "gender", "firstname", "lastname", "person_title", "institution", "department", "street", "zipcode","city", "country", "phone_office", "phone_home", "phone_mobile", "fax", "matriculation"); foreach ($profile_data as $data) { $worksheet->writeString(0, $column++, $this->cleanString($this->lng->txt($data)), $format_title); } $member_ids = $this->object->getGroupMemberIds(); $row = 1; foreach ($member_ids as $member_id) { $column = 0; $member =& $this->ilias->obj_factory->getInstanceByObjId($member_id); if ($member->getPref("public_email")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getEmail())); } else { $column++; } $worksheet->writeString($row, $column++, $this->cleanString($this->lng->txt("gender_" . $member->getGender()))); $worksheet->writeString($row, $column++, $this->cleanString($member->getFirstname())); $worksheet->writeString($row, $column++, $this->cleanString($member->getLastname())); $worksheet->writeString($row, $column++, $this->cleanString($member->getUTitle())); if ($member->getPref("public_institution")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getInstitution())); } else { $column++; } if ($member->getPref("public_department")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getDepartment())); } else { $column++; } if ($member->getPref("public_street")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getStreet())); } else { $column++; } if ($member->getPref("public_zip")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getZipcode())); } else { $column++; } if ($member->getPref("public_city")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getCity())); } else { $column++; } if ($member->getPref("public_country")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getCountry())); } else { $column++; } if ($member->getPref("public_phone_office")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getPhoneOffice())); } else { $column++; } if ($member->getPref("public_phone_home")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getPhoneHome())); } else { $column++; } if ($member->getPref("public_phone_mobile")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getPhoneMobile())); } else { $column++; } if ($member->getPref("public_fax")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getFax())); } else { $column++; } if ($member->getPref("public_matriculation")=="y") { $worksheet->writeString($row, $column++, $this->cleanString($member->getMatriculation())); } else { $column++; } $row++; } $workbook->close(); }
ilObjGroupGUI::exportObject | ( | ) |
Creates the output form for group member export.
Creates the output form for group member export
Definition at line 2010 of file class.ilObjGroupGUI.php.
References ilObjectGUI::getFormAction().
{ $this->tpl->addBlockfile("ADM_CONTENT", "adm_content", "tpl.grp_members_export.html"); $this->tpl->setCurrentBlock("adm_content"); $this->tpl->setVariable("FORMACTION", $this->getFormAction("export",$this->ctrl->getFormAction($this))); $this->tpl->setVariable("BUTTON_EXPORT", $this->lng->txt("export_group_members")); $this->tpl->parseCurrentBlock(); }
ilObjGroupGUI::getTabs | ( | &$ | tabs_gui | ) |
get tabs abstract method.
overwrite in derived GUI class of your object type public
object | instance of ilTabsGUI |
Reimplemented from ilObjectGUI.
Definition at line 1253 of file class.ilObjGroupGUI.php.
References $_SESSION, and $rbacsystem.
{ global $rbacsystem; $this->ctrl->setParameter($this,"ref_id",$this->ref_id); if ($rbacsystem->checkAccess('read',$this->ref_id)) { $tabs_gui->addTarget("view_content", $this->ctrl->getLinkTarget($this, ""), "", get_class($this)); } if ($rbacsystem->checkAccess('write',$this->ref_id)) { $tabs_gui->addTarget("edit_properties", $this->ctrl->getLinkTarget($this, "edit"), "edit", get_class($this)); // Export tab to export group members to an excel file. Only available for group admins // commented out for following reason: clearance needed with developer list // $tabs_gui->addTarget("export", // $this->ctrl->getLinkTarget($this, "export"), "export", get_class($this)); } if ($rbacsystem->checkAccess('read',$this->ref_id)) { $tabs_gui->addTarget("group_members", $this->ctrl->getLinkTarget($this, "members"), "members", get_class($this)); } $applications = $this->object->getNewRegistrations(); if (is_array($applications) and $this->object->isAdmin($this->ilias->account->getId())) { $tabs_gui->addTarget("group_new_registrations", $this->ctrl->getLinkTarget($this, "ShownewRegistrations"), "ShownewRegistrations", get_class($this)); } if ($rbacsystem->checkAccess('edit_permission',$this->ref_id)) { $tabs_gui->addTarget("perm_settings", $this->ctrl->getLinkTarget($this, "perm"), "perm", get_class($this)); } // show clipboard in repository if ($this->ctrl->getTargetScript() == "repository.php" and !empty($_SESSION['il_rep_clipboard'])) { $tabs_gui->addTarget("clipboard", $this->ctrl->getLinkTarget($this, "clipboard"), "clipboard", get_class($this)); } if ($this->ctrl->getTargetScript() == "adm_object.php") { $tabs_gui->addTarget("show_owner", $this->ctrl->getLinkTarget($this, "owner"), "owner", get_class($this)); if ($this->tree->getSavedNodeData($this->ref_id)) { $tabs_gui->addTarget("trash", $this->ctrl->getLinkTarget($this, "trash"), "trash", get_class($this)); } } }
ilObjGroupGUI::ilObjGroupGUI | ( | $ | a_data, | |
$ | a_id, | |||
$ | a_call_by_reference, | |||
$ | a_prepare_output = true | |||
) |
Constructor public.
Definition at line 46 of file class.ilObjGroupGUI.php.
References ilObjectGUI::ilObjectGUI().
{ $this->type = "grp"; $this->ilObjectGUI($a_data,$a_id,$a_call_by_reference,$a_prepare_output); }
ilObjGroupGUI::importObject | ( | ) |
import new object form
public
Reimplemented from ilObjectGUI.
Definition at line 1318 of file class.ilObjGroupGUI.php.
References $_GET, $rbacsystem, and ilObjectGUI::getTemplateFile().
Referenced by performImportObject().
{ global $rbacsystem; if (!$rbacsystem->checkAccess("create", $_GET["ref_id"],"grp")) { $this->ilias->raiseError($this->lng->txt("permission_denied"),$this->ilias->error_obj->MESSAGE); } $this->getTemplateFile("import","grp"); $this->tpl->setVariable("FORMACTION","adm_object.php?ref_id=".$this->ref_id."&cmd=gateway&new_type=grp"); $this->tpl->setVariable("TXT_IMPORT_GROUP",$this->lng->txt("group_import")); $this->tpl->setVariable("TXT_IMPORT_FILE",$this->lng->txt("group_import_file")); $this->tpl->setVariable("BTN_CANCEL",$this->lng->txt("cancel")); $this->tpl->setVariable("BTN_IMPORT",$this->lng->txt("import")); return true; }
ilObjGroupGUI::initConditionHandlerGUI | ( | $ | item_id | ) |
Definition at line 1935 of file class.ilObjGroupGUI.php.
References $_GET.
Referenced by chi_assignObject(), chi_deleteObject(), chi_selectorObject(), and chi_updateObject().
{ include_once './classes/class.ilConditionHandlerInterface.php'; if(!is_object($this->chi_obj)) { if($_GET['item_id']) { $this->chi_obj =& new ilConditionHandlerInterface($this,$item_id); $this->ctrl->saveParameter($this,'item_id',$_GET['item_id']); } else { $this->chi_obj =& new ilConditionHandlerInterface($this); } } return true; }
ilObjGroupGUI::initCourseContentInterface | ( | ) |
Definition at line 1397 of file class.ilObjGroupGUI.php.
References $ilCtrl.
Referenced by cciEditObject(), cciMoveObject(), cciUpdateObject(), and viewObject().
{ global $ilCtrl; include_once "./course/classes/class.ilCourseContentInterface.php"; $this->object->ctrl =& $ilCtrl; $this->cci_obj =& new ilCourseContentInterface($this,$this->object->getRefId()); }
ilObjGroupGUI::leaveGrpObject | ( | ) |
leave Group public
Definition at line 571 of file class.ilObjGroupGUI.php.
References $_GET, $status, and confirmationObject().
{ $member = array($_GET["mem_id"]); //set methods that are called after confirmation $confirm = "confirmedDeleteMember"; $cancel = "canceled"; $info = "info_delete_sure"; $status = ""; $return = ""; $this->confirmationObject($member, $confirm, $cancel, $info, $status, $return); }
ilObjGroupGUI::listUsersGroupObject | ( | ) |
Definition at line 1866 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, $counter, $rbacreview, $rbacsystem, ilObjectGUI::$tree, $user, ilObjectGUI::__showButton(), __showSearchUserTable(), formatDate(), ilUtil::formCheckbox(), ilObjectFactory::getInstanceByObjId(), ilObjectFactory::getInstanceByRefId(), searchObject(), and sendInfo().
{ global $rbacsystem,$rbacreview,$tree; $_SESSION["grp_group"] = $_POST["group"] = $_POST["group"] ? $_POST["group"] : $_SESSION["grp_group"]; // MINIMUM ACCESS LEVEL = 'administrate' if(!$rbacsystem->checkAccess("write", $this->object->getRefId())) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilias->error_obj->MESSAGE); } if(!is_array($_POST["group"])) { sendInfo($this->lng->txt("grp_no_groups_selected")); $this->searchObject(); return false; } $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.grp_usr_selection.html"); $this->__showButton("searchUserForm",$this->lng->txt("grp_new_search")); // GET ALL MEMBERS $members = array(); foreach($_POST["group"] as $group_id) { if (!$tree->isInTree($group_id)) { continue; } if (!$tmp_obj = ilObjectFactory::getInstanceByRefId($group_id)) { continue; } $members = array_merge($tmp_obj->getGroupMemberIds(),$members); unset($tmp_obj); } $members = array_unique($members); // FORMAT USER DATA $counter = 0; $f_result = array(); foreach($members as $user) { if(!$tmp_obj = ilObjectFactory::getInstanceByObjId($user,false)) { continue; } $user_ids[$counter] = $user; $f_result[$counter][] = ilUtil::formCheckbox(0,"user[]",$user); $f_result[$counter][] = $tmp_obj->getLogin(); $f_result[$counter][] = $tmp_obj->getLastname(); $f_result[$counter][] = $tmp_obj->getFirstname(); $f_result[$counter][] = ilFormat::formatDate($tmp_obj->getLastLogin()); unset($tmp_obj); ++$counter; } $this->__showSearchUserTable($f_result,$user_ids,"listUsersGroup"); return true; }
ilObjGroupGUI::listUsersRoleObject | ( | ) |
Definition at line 1808 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, $counter, $rbacreview, $rbacsystem, $role_id, $user, ilObjectGUI::__showButton(), __showSearchUserTable(), formatDate(), ilUtil::formCheckbox(), ilObjectFactory::getInstanceByObjId(), searchObject(), and sendInfo().
{ global $rbacsystem,$rbacreview; $_SESSION["grp_role"] = $_POST["role"] = $_POST["role"] ? $_POST["role"] : $_SESSION["grp_role"]; // MINIMUM ACCESS LEVEL = 'administrate' if(!$rbacsystem->checkAccess("write", $this->object->getRefId())) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilias->error_obj->MESSAGE); } if(!is_array($_POST["role"])) { sendInfo($this->lng->txt("grp_no_roles_selected")); $this->searchObject(); return false; } $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.grp_usr_selection.html"); $this->__showButton("searchUserForm",$this->lng->txt("grp_new_search")); // GET ALL MEMBERS $members = array(); foreach($_POST["role"] as $role_id) { $members = array_merge($rbacreview->assignedUsers($role_id),$members); } $members = array_unique($members); // FORMAT USER DATA $counter = 0; $f_result = array(); foreach($members as $user) { if(!$tmp_obj = ilObjectFactory::getInstanceByObjId($user,false)) { continue; } $user_ids[$counter] = $user; $f_result[$counter][] = ilUtil::formCheckbox(0,"user[]",$user); $f_result[$counter][] = $tmp_obj->getLogin(); $f_result[$counter][] = $tmp_obj->getLastname(); $f_result[$counter][] = $tmp_obj->getFirstname(); $f_result[$counter][] = ilFormat::formatDate($tmp_obj->getLastLogin()); unset($tmp_obj); ++$counter; } $this->__showSearchUserTable($f_result,$user_ids,"listUsersRole"); return true; }
ilObjGroupGUI::membersObject | ( | ) |
display group members
Definition at line 817 of file class.ilObjGroupGUI.php.
References $counter, $ilBench, $rbacsystem, __showMembersTable(), and formatDate().
{ global $rbacsystem,$ilBench,$ilDB; $ilBench->start("GroupGUI", "membersObject"); //if current user is admin he is able to add new members to group $val_contact = "<img src=\"".ilUtil::getImagePath("icon_pencil_b.gif")."\" alt=\"".$this->lng->txt("grp_mem_send_mail")."\" title=\"".$this->lng->txt("grp_mem_send_mail")."\" border=\"0\" vspace=\"0\"/>"; $val_change = "<img src=\"".ilUtil::getImagePath("icon_change_b.gif")."\" alt=\"".$this->lng->txt("grp_mem_change_status")."\" title=\"".$this->lng->txt("grp_mem_change_status")."\" border=\"0\" vspace=\"0\"/>"; $val_leave = "<img src=\"".ilUtil::getImagePath("icon_group_out_b.gif")."\" alt=\"".$this->lng->txt("grp_mem_leave")."\" title=\"".$this->lng->txt("grp_mem_leave")."\" border=\"0\" vspace=\"0\"/>"; // store access checks to improve performance $access_delete = $rbacsystem->checkAccess("delete",$this->object->getRefId()); $access_leave = $rbacsystem->checkAccess("leave",$this->object->getRefId()); $access_write = $rbacsystem->checkAccess("write",$this->object->getRefId()); $member_ids = $this->object->getGroupMemberIds(); // fetch all users data in one shot to improve performance $members = $this->object->getGroupMemberData($member_ids); $account_id = $this->ilias->account->getId(); $counter = 0; foreach ($members as $mem) { $link_contact = "mail_new.php?type=new&rcp_to=".$mem["login"]; $link_change = $this->ctrl->getLinkTarget($this,"changeMember")."&mem_id=".$mem["id"]; if (($mem["id"] == $account_id && $access_leave) || $access_delete) { $link_leave = $this->ctrl->getLinkTarget($this,"RemoveMember")."&mem_id=".$mem["id"]; } //build function if ($access_delete && $access_write) { $member_functions = "<a href=\"$link_change\">$val_change</a>"; } if (($mem["id"] == $account_id && $access_leave) || $access_delete) { $member_functions .="<a href=\"$link_leave\">$val_leave</a>"; } // this is twice as fast than the code above $str_member_roles = $this->object->getMemberRolesTitle($mem["id"]); if ($access_delete && $access_write) { $result_set[$counter][] = ilUtil::formCheckBox(0,"user_id[]",$mem["id"]); } $user_ids[$counter] = $mem["id"]; //discarding the checkboxes $result_set[$counter][] = $mem["login"]; $result_set[$counter][] = $mem["firstname"]; $result_set[$counter][] = $mem["lastname"]; $result_set[$counter][] = ilFormat::formatDate($mem["last_login"]); $result_set[$counter][] = $str_member_roles; $result_set[$counter][] = "<a href=\"$link_contact\">".$val_contact."</a>".$member_functions; ++$counter; unset($member_functions); } $ilBench->stop("GroupGUI", "membersObject"); return $this->__showMembersTable($result_set,$user_ids); }
ilObjGroupGUI::performImportObject | ( | ) |
Definition at line 1338 of file class.ilObjGroupGUI.php.
References $_GET, __initFileObject(), __initParserObject(), importObject(), ilUtil::redirect(), and sendInfo().
{ $this->__initFileObject(); if(!$this->file_obj->storeUploadedFile($_FILES["importFile"])) // STEP 1 save file in ...import/mail { $this->message = $this->lng->txt("import_file_not_valid"); $this->file_obj->unlinkLast(); } else if(!$this->file_obj->unzip()) { $this->message = $this->lng->txt("cannot_unzip_file"); // STEP 2 unzip uplaoded file $this->file_obj->unlinkLast(); } else if(!$this->file_obj->findXMLFile()) // STEP 3 getXMLFile { $this->message = $this->lng->txt("cannot_find_xml"); $this->file_obj->unlinkLast(); } else if(!$this->__initParserObject($this->file_obj->getXMLFile()) or !$this->parser_obj->startParsing()) { $this->message = $this->lng->txt("import_parse_error").":<br/>"; // STEP 5 start parsing } // FINALLY CHECK ERROR if(!$this->message) { sendInfo($this->lng->txt("import_grp_finished"),true); ilUtil::redirect("adm_object.php?ref_id=".$_GET["ref_id"]); } else { sendInfo($this->message); $this->importObject(); } }
ilObjGroupGUI::refuseApplicantsObject | ( | ) |
adds applicant to group as member public
Definition at line 1025 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, $user, ilUtil::redirect(), and sendInfo().
{ $user_ids = $_POST["user_id"]; if (empty($user_ids[0])) { $this->ilErr->raiseError($this->lng->txt("no_checkbox"),$this->ilErr->MESSAGE); } $mail = new ilMail($_SESSION["AccountId"]); foreach ($user_ids as $new_member) { $user =& $this->ilias->obj_factory->getInstanceByObjId($new_member); $this->object->deleteApplicationListEntry($new_member); $mail->sendMail($user->getLogin(),"","","Membership application refused: Group ".$this->object->getTitle(),"Your application has been refused.",array(),array('normal')); } sendInfo($this->lng->txt("grp_msg_applicants_removed"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,"members")); }
ilObjGroupGUI::removeMemberObject | ( | ) |
displays confirmation formular with users that shall be removed from group public
Definition at line 643 of file class.ilObjGroupGUI.php.
References $_GET, $_POST, $_SESSION, $status, and confirmationObject().
{ $user_ids = array(); if (isset($_POST["user_id"])) { $user_ids = $_POST["user_id"]; } else if (isset($_GET["mem_id"])) { $user_ids[] = $_GET["mem_id"]; } if (empty($user_ids[0])) { $this->ilErr->raiseError($this->lng->txt("no_checkbox"),$this->ilErr->MESSAGE); } if (count($user_ids) == 1 and $this->ilias->account->getId() != $user_ids[0]) { if (!in_array(SYSTEM_ROLE_ID,$_SESSION["RoleId"]) and !in_array($this->ilias->account->getId(),$this->object->getGroupAdminIds())) { $this->ilErr->raiseError($this->lng->txt("grp_err_no_permission"),$this->ilErr->MESSAGE); } } //bool value: says if $users_ids contains current user id $is_dismiss_me = array_search($this->ilias->account->getId(),$user_ids); $confirm = "confirmedRemoveMember"; $cancel = "canceled"; $info = ($is_dismiss_me !== false) ? "grp_dismiss_myself" : "grp_dismiss_member"; $status = ""; $return = "members"; $this->confirmationObject($user_ids, $confirm, $cancel, $info, $status, $return); }
ilObjGroupGUI::saveObject | ( | ) |
save group object public
Reimplemented from ilObjectGUI.
Definition at line 268 of file class.ilObjGroupGUI.php.
References $_POST, $rbacadmin, $roles, ilObjectGUI::getReturnLocation(), ilUtil::groupNameExists(), ilUtil::redirect(), and sendInfo().
{ global $rbacadmin; // check required fields if (empty($_POST["Fobject"]["title"])) { $this->ilErr->raiseError($this->lng->txt("fill_out_all_required_fields"),$this->ilErr->MESSAGE); } // check registration & password if ($_POST["enable_registration"] == 2 and empty($_POST["password"])) { $this->ilErr->raiseError($this->lng->txt("no_password"),$this->ilErr->MESSAGE); } // check groupname if (ilUtil::groupNameExists($_POST["Fobject"]["title"])) { $this->ilErr->raiseError($this->lng->txt("grp_name_exists"),$this->ilErr->MESSAGE); } // create and insert forum in objecttree $groupObj = parent::saveObject(); // setup rolefolder & default local roles (admin & member) $roles = $groupObj->initDefaultRoles(); // ...finally assign groupadmin role to creator of group object $groupObj->addMember($this->ilias->account->getId(),$groupObj->getDefaultAdminRole()); $groupObj->setRegistrationFlag($_POST["enable_registration"]);//0=no registration, 1=registration enabled 2=passwordregistration $groupObj->setPassword($_POST["password"]); $groupObj->setExpirationDateTime($_POST["expirationdate"]." ".$_POST["expirationtime"].":00"); $groupObj->setGroupStatus($_POST["group_status"]); //0=public,1=private,2=closed $this->ilias->account->addDesktopItem($groupObj->getRefId(),"grp"); // always send a message sendInfo($this->lng->txt("grp_added"),true); ilUtil::redirect($this->getReturnLocation("save",$this->ctrl->getLinkTarget($this,""))); }
ilObjGroupGUI::searchCancelledObject | ( | ) |
Definition at line 1246 of file class.ilObjGroupGUI.php.
References ilUtil::redirect(), and sendInfo().
{ sendInfo($this->lng->txt("action_aborted"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,"members")); }
ilObjGroupGUI::searchObject | ( | ) |
Definition at line 1109 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, $counter, $rbacsystem, $result, ilObjectGUI::$tree, $user, __search(), ilObjectGUI::__showButton(), __showSearchGroupTable(), __showSearchRoleTable(), __showSearchUserTable(), formatDate(), ilUtil::formCheckbox(), ilObjectFactory::getInstanceByObjId(), ilObjectFactory::getInstanceByRefId(), searchUserFormObject(), sendInfo(), and ilUtil::stripSlashes().
Referenced by listUsersGroupObject(), and listUsersRoleObject().
{ global $rbacsystem,$tree; $_SESSION["grp_search_str"] = $_POST["search_str"] = $_POST["search_str"] ? $_POST["search_str"] : $_SESSION["grp_search_str"]; $_SESSION["grp_search_for"] = $_POST["search_for"] = $_POST["search_for"] ? $_POST["search_for"] : $_SESSION["grp_search_for"]; // MINIMUM ACCESS LEVEL = 'administrate' if(!$rbacsystem->checkAccess("write", $this->object->getRefId())) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilias->error_obj->MESSAGE); } if(!isset($_POST["search_for"]) or !isset($_POST["search_str"])) { sendInfo($this->lng->txt("grp_search_enter_search_string")); $this->searchUserFormObject(); return false; } if(!count($result = $this->__search(ilUtil::stripSlashes($_POST["search_str"]),$_POST["search_for"]))) { sendInfo($this->lng->txt("grp_no_results_found")); $this->searchUserFormObject(); return false; } $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.grp_usr_selection.html"); $this->__showButton("searchUserForm",$this->lng->txt("grp_new_search")); $counter = 0; $f_result = array(); switch($_POST["search_for"]) { case "usr": foreach($result as $user) { if(!$tmp_obj = ilObjectFactory::getInstanceByObjId($user["id"],false)) { continue; } $user_ids[$counter] = $user["id"]; $f_result[$counter][] = ilUtil::formCheckbox(0,"user[]",$user["id"]); $f_result[$counter][] = $tmp_obj->getLogin(); $f_result[$counter][] = $tmp_obj->getFirstname(); $f_result[$counter][] = $tmp_obj->getLastname(); $f_result[$counter][] = ilFormat::formatDate($tmp_obj->getLastLogin()); unset($tmp_obj); ++$counter; } $this->__showSearchUserTable($f_result,$user_ids); return true; case "role": foreach($result as $role) { // exclude anonymous role if ($role["id"] == ANONYMOUS_ROLE_ID) { continue; } if(!$tmp_obj = ilObjectFactory::getInstanceByObjId($role["id"],false)) { continue; } // exclude roles with no users assigned to if ($tmp_obj->getCountMembers() == 0) { continue; } $role_ids[$counter] = $role["id"]; $f_result[$counter][] = ilUtil::formCheckbox(0,"role[]",$role["id"]); $f_result[$counter][] = array($tmp_obj->getTitle(),$tmp_obj->getDescription()); $f_result[$counter][] = $tmp_obj->getCountMembers(); unset($tmp_obj); ++$counter; } $this->__showSearchRoleTable($f_result,$role_ids); return true; case "grp": foreach($result as $group) { if(!$tree->isInTree($group["id"])) { continue; } if(!$tmp_obj = ilObjectFactory::getInstanceByRefId($group["id"],false)) { continue; } // exclude myself :-) if ($tmp_obj->getId() == $this->object->getId()) { continue; } $grp_ids[$counter] = $group["id"]; $f_result[$counter][] = ilUtil::formCheckbox(0,"group[]",$group["id"]); $f_result[$counter][] = array($tmp_obj->getTitle(),$tmp_obj->getDescription()); $f_result[$counter][] = $tmp_obj->getCountMembers(); unset($tmp_obj); ++$counter; } if(!count($f_result)) { sendInfo($this->lng->txt("grp_no_results_found")); $this->searchUserFormObject(); return false; } $this->__showSearchGroupTable($f_result,$grp_ids); return true; } }
ilObjGroupGUI::searchUserFormObject | ( | ) |
Definition at line 1073 of file class.ilObjGroupGUI.php.
References $_POST, $_SESSION, $rbacsystem, __unsetSessionVariables(), and ilUtil::formRadioButton().
Referenced by searchObject().
{ global $rbacsystem; $this->lng->loadLanguageModule('search'); // MINIMUM ACCESS LEVEL = 'administrate' if(!$rbacsystem->checkAccess("write", $this->object->getRefId())) { $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilias->error_obj->MESSAGE); } $this->tpl->addBlockFile("ADM_CONTENT","adm_content","tpl.grp_members_search.html"); $this->tpl->setVariable("F_ACTION",$this->ctrl->getFormAction($this)); $this->tpl->setVariable("SEARCH_ASSIGN_USR",$this->lng->txt("grp_search_members")); $this->tpl->setVariable("SEARCH_SEARCH_TERM",$this->lng->txt("search_search_term")); $this->tpl->setVariable("SEARCH_VALUE",$_SESSION["grp_search_str"] ? $_SESSION["grp_search_str"] : ""); $this->tpl->setVariable("SEARCH_FOR",$this->lng->txt("exc_search_for")); $this->tpl->setVariable("SEARCH_ROW_TXT_USER",$this->lng->txt("exc_users")); $this->tpl->setVariable("SEARCH_ROW_TXT_ROLE",$this->lng->txt("exc_roles")); $this->tpl->setVariable("SEARCH_ROW_TXT_GROUP",$this->lng->txt("exc_groups")); $this->tpl->setVariable("BTN2_VALUE",$this->lng->txt("cancel")); $this->tpl->setVariable("BTN1_VALUE",$this->lng->txt("search")); $usr = ($_POST["search_for"] == "usr" || $_POST["search_for"] == "") ? 1 : 0; $grp = ($_POST["search_for"] == "grp") ? 1 : 0; $role = ($_POST["search_for"] == "role") ? 1 : 0; $this->tpl->setVariable("SEARCH_ROW_CHECK_USER",ilUtil::formRadioButton($usr,"search_for","usr")); $this->tpl->setVariable("SEARCH_ROW_CHECK_ROLE",ilUtil::formRadioButton($role,"search_for","role")); $this->tpl->setVariable("SEARCH_ROW_CHECK_GROUP",ilUtil::formRadioButton($grp,"search_for","grp")); $this->__unsetSessionVariables(); }
ilObjGroupGUI::showNewRegistrationsObject | ( | ) |
Definition at line 890 of file class.ilObjGroupGUI.php.
References $_GET, $output, $rbacsystem, $tbl, $user, ilUtil::getImagePath(), and ilUtil::sortArray().
{ global $rbacsystem; //get new applicants $applications = $this->object->getNewRegistrations(); if (!$applications) { $this->ilErr->raiseError($this->lng->txt("no_applications"),$this->ilErr->MESSAGE); } if ($_GET["sort_by"] == "title" or $_GET["sort_by"] == "") { $_GET["sort_by"] = "login"; } $val_contact = "<img src=\"".ilUtil::getImagePath("icon_pencil_b.gif")."\" alt=\"".$this->lng->txt("grp_app_send_mail")."\" title=\"".$this->lng->txt("grp_app_send_mail")."\" border=\"0\" vspace=\"0\"/>"; foreach ($applications as $applicant) { $user =& $this->ilias->obj_factory->getInstanceByObjId($applicant->user_id); $link_contact = "mail_new.php?mobj_id=3&type=new&rcp_to=".$user->getLogin(); $link_change = $this->ctrl->getLinkTarget($this,"changeMember")."&mem_id=".$user->getId(); $member_functions = "<a href=\"$link_change\">$val_change</a>"; if (strcmp($_GET["check"], "all") == 0) { $checked = 1; } else { $checked = 0; } $this->data["data"][$user->getId()]= array( "check" => ilUtil::formCheckBox($checked,"user_id[]",$user->getId()), "username" => $user->getLogin(), "fullname" => $user->getFullname(), "subject" => $applicant->subject, "date" => $applicant->application_date, "functions" => "<a href=\"$link_contact\">".$val_contact."</a>" ); unset($member_functions); unset($user); } // load template for table content data $this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this,"post")); $this->data["buttons"] = array( "refuseApplicants" => $this->lng->txt("refuse"), "assignApplicants" => $this->lng->txt("assign")); $this->tpl->addBlockfile("ADM_CONTENT", "member_table", "tpl.table.html"); //prepare buttons [cancel|assign] foreach ($this->data["buttons"] as $name => $value) { $this->tpl->setCurrentBlock("tbl_action_btn"); $this->tpl->setVariable("BTN_NAME",$name); $this->tpl->setVariable("BTN_VALUE",$value); $this->tpl->parseCurrentBlock(); } $this->tpl->setCurrentBlock("tbl_action_plain_select"); $this->tpl->setVariable("SELECT_ACTION", "<a href=\"" . $this->ctrl->getLinkTarget($this,"ShownewRegistrations") . "&check=all\">" . $this->lng->txt("check_all") . "</a>" . " / " . "<a href=\"" . $this->ctrl->getLinkTarget($this,"ShownewRegistrations") . "&check=none\">" . $this->lng->txt("uncheck_all") . "</a>"); $this->tpl->parseCurrentBlock(); if (isset($this->data["data"])) { //sort data array $this->data["data"] = ilUtil::sortArray($this->data["data"], $_GET["sort_by"], $_GET["sort_order"]); $output = array_slice($this->data["data"],$_GET["offset"],$_GET["limit"]); } $this->tpl->setCurrentBlock("tbl_action_row"); $this->tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.gif")); $this->tpl->setVariable("COLUMN_COUNTS",6); $this->tpl->setVariable("TPLPATH",$this->tpl->tplPath); // create table include_once "./classes/class.ilTableGUI.php"; $tbl = new ilTableGUI($output); // title & header columns $tbl->setTitle($this->lng->txt("group_new_registrations"),"icon_usr_b.gif",$this->lng->txt("group_applicants")); //$tbl->setHelp("tbl_help.php","icon_help.gif",$this->lng->txt("help")); $tbl->setHeaderNames(array("",$this->lng->txt("username"),$this->lng->txt("fullname"),$this->lng->txt("subject"),$this->lng->txt("application_date"),$this->lng->txt("grp_options"))); $tbl->setHeaderVars(array("","login","fullname","subject","application_date","functions"),$this->ctrl->getParameterArray($this,"",false)); $tbl->setColumnWidth(array("","20%","20%","35%","20%","5%")); // control $tbl->setOrderColumn($_GET["sort_by"]); $tbl->setOrderDirection($_GET["sort_order"]); $tbl->setLimit($_GET["limit"]); $tbl->setOffset($_GET["offset"]); $tbl->setMaxCount(count($this->data["data"])); $tbl->setFooter("tblfooter",$this->lng->txt("previous"),$this->lng->txt("next")); $tbl->render(); }
ilObjGroupGUI::updateMemberStatusObject | ( | ) |
displays form in which the member-status can be changed public
Definition at line 1052 of file class.ilObjGroupGUI.php.
References $_POST, $rbacsystem, ilUtil::redirect(), and sendInfo().
{ global $rbacsystem; if (!$rbacsystem->checkAccess("write",$this->object->getRefId()) ) { $this->ilErr->raiseError("permission_denied",$this->ilErr->MESSAGE); } if (isset($_POST["member_status_select"])) { foreach ($_POST["member_status_select"] as $key=>$value) { $this->object->setMemberStatus($key,$value); } } sendInfo($this->lng->txt("msg_obj_modified"),true); ilUtil::redirect($this->ctrl->getLinkTarget($this,"members")); }
ilObjGroupGUI::updateObject | ( | ) |
update GroupObject public
Reimplemented from ilObjectGUI.
Definition at line 316 of file class.ilObjGroupGUI.php.
References $_GET, $_POST, $rbacsystem, ilObjectGUI::getReturnLocation(), ilUtil::groupNameExists(), ilUtil::isPassword(), ilUtil::redirect(), sendInfo(), and ilUtil::stripSlashes().
{ global $rbacsystem; if (!$rbacsystem->checkAccess("write",$_GET["ref_id"]) ) { $this->ilErr->raiseError("No permissions to change group status!",$this->ilErr->MESSAGE); } // check required fields if (empty($_POST["Fobject"]["title"])) { $this->ilErr->raiseError($this->lng->txt("fill_out_all_required_fields"),$this->ilErr->MESSAGE); } if ($_POST["enable_registration"] == 2 && empty($_POST["password"]) || empty($_POST["expirationdate"]) || empty($_POST["expirationtime"]) )//Password-Registration Mode { $this->ilErr->raiseError($this->lng->txt("grp_err_registration_data"),$this->ilErr->MESSAGE); } // check groupname if (ilUtil::groupNameExists(ilUtil::stripSlashes($_POST["Fobject"]["title"]),$this->object->getId())) { $this->ilErr->raiseError($this->lng->txt("grp_name_exists"),$this->ilErr->MESSAGE); } $this->object->setTitle(ilUtil::stripSlashes($_POST["Fobject"]["title"])); $this->object->setDescription(ilUtil::stripSlashes($_POST["Fobject"]["desc"])); if ($_POST["enable_registration"] == 2 && !ilUtil::isPassword($_POST["password"])) { $this->ilErr->raiseError($this->lng->txt("passwd_invalid"),$this->ilErr->MESSAGE); } $this->object->setRegistrationFlag($_POST["enable_registration"]); $this->object->setPassword($_POST["password"]); $this->object->setExpirationDateTime($_POST["expirationdate"]." ".$_POST["expirationtime"].":00"); $this->update = $this->object->update(); sendInfo($this->lng->txt("msg_obj_modified"),true); ilUtil::redirect($this->getReturnLocation("update",$this->ctrl->getLinkTarget($this,"members"))); }
ilObjGroupGUI::viewObject | ( | ) |
list childs of current object
public
Reimplemented from ilObjectGUI.
Definition at line 52 of file class.ilObjGroupGUI.php.
References ilObjectGUI::$tree, and initCourseContentInterface().
{ global $tree; if($this->ctrl->getTargetScript() == "adm_object.php") { parent::viewObject(); return true; } else if(!$tree->checkForParentType($this->ref_id,'crs')) { $this->ctrl->returnToParent($this); } else { $this->initCourseContentInterface(); $this->cci_obj->cci_view(); } return true; }