4require_once 
"./Services/Object/classes/class.ilObjectGUI.php";
 
   32                define(
'USER_FOLDER_ID',7);
 
   35                $this->
ilObjectGUI($a_data,$a_id,$a_call_by_reference,
false);
 
   37                $this->lng->loadLanguageModule(
'search');
 
   38                $this->lng->loadLanguageModule(
"user");
 
   40                $ilCtrl->saveParameter($this, 
"letter");
 
   45                $this->user_owner_id = $a_id;
 
   49                return $this->user_owner_id ? $this->user_owner_id : 
USER_FOLDER_ID;
 
   56                $next_class = $this->ctrl->getNextClass($this);
 
   57                $cmd = $this->ctrl->getCmd();
 
   62                        case 'ilusertablegui':
 
   63                                include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
   65                                $u_table->initFilter();
 
   66                                $this->ctrl->setReturn($this,
'view');
 
   67                                $this->ctrl->forwardCommand($u_table);
 
   70                        case 'ilpermissiongui':
 
   71                                include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
 
   73                                $ret =& $this->ctrl->forwardCommand($perm_gui);
 
   76                        case 'ilrepositorysearchgui':
 
   77                                include_once(
'./Services/Search/classes/class.ilRepositorySearchGUI.php');
 
   79                                $user_search->setTitle($this->lng->txt(
"search_user_extended")); 
 
   80                                $user_search->enableSearchableCheck(
false);
 
   81                                $user_search->setUserLimitations(
false);
 
   82                                $user_search->setCallback(
 
   84                                        'searchResultHandler',
 
   87                                $this->tabs_gui->setTabActive(
'search_user_extended');
 
   88                                $this->ctrl->setReturn($this,
'view');
 
   89                                $ret =& $this->ctrl->forwardCommand($user_search);
 
   92                        case 'ilaccountcodesgui':
 
   93                                $this->tabs_gui->setTabActive(
'settings');
 
   95                                $ilTabs->activateSubTab(
"account_codes");
 
   96                                include_once(
"./Services/User/classes/class.ilAccountCodesGUI.php");
 
   98                                $this->ctrl->forwardCommand($acc);
 
  101                        case 'ilcustomuserfieldsgui':
 
  102                                $this->tabs_gui->setTabActive(
'settings');
 
  104                                $ilTabs->activateSubTab(
"user_defined_fields");
 
  105                                include_once(
"./Services/User/classes/class.ilCustomUserFieldsGUI.php");
 
  107                                $this->ctrl->forwardCommand($cf);
 
  126                global $rbacsystem, 
$tpl;
 
  131                if (!$rbacsystem->checkAccess(
"read",$this->object->getRefId()) ||
 
  135                        $this->
ilias->raiseError($this->lng->txt(
"permission_denied"),$this->ilias->error_obj->MESSAGE);
 
  138                include_once 
"Services/User/classes/class.ilUserLPTableGUI.php";
 
  150                include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
  152                $utab->resetOffset();
 
  153                $utab->resetFilter();
 
  166                $ilCtrl->setParameterByClass(
"ilobjusergui", 
"new_type", 
"usr");
 
  167                $ilCtrl->redirectByClass(array(
"iladministrationgui", 
"ilobjusergui"), 
"create");
 
  178                include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
  180                $utab->resetOffset();
 
  181                $utab->writeFilterToSession();
 
  183                $ilTabs->activateTab(
"usrf");
 
  195                include_once 
"Services/UIComponent/Button/classes/class.ilLinkButton.php";
 
  197                if ($rbacsystem->checkAccess(
'create_usr', $this->object->getRefId()) ||
 
  198                        $rbacsystem->checkAccess(
'cat_administrate_users', $this->object->getRefId()))
 
  201                        $button->setCaption(
"usr_add");
 
  202                        $button->setUrl($this->ctrl->getLinkTarget($this, 
"addUser"));
 
  203                        $ilToolbar->addButtonInstance($button);
 
  206                        $button->setCaption(
"import_users");
 
  207                        $button->setUrl($this->ctrl->getLinkTarget($this, 
"importUserForm"));
 
  208                        $ilToolbar->addButtonInstance($button);
 
  212                include_once 
'./Services/User/classes/class.ilUserAccountSettings.php';
 
  214                if ((
int) 
$ilSetting->get(
'user_adm_alpha_nav'))
 
  216                        $ilToolbar->addSeparator();
 
  219                        include_once(
"./Services/Form/classes/class.ilAlphabetInputGUI.php");
 
  221                        include_once(
"./Services/User/classes/class.ilObjUser.php");
 
  227                        $ai->setParentCommand($this, 
"chooseLetter");
 
  228                        $ai->setHighlighted(
$_GET[
"letter"]);
 
  229                        $ilToolbar->addInputItem($ai, 
true);
 
  233                include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
  235                $tpl->setContent($utab->getHTML());
 
  243                include_once 
'./Services/User/classes/class.ilUserAutoComplete.php';
 
  245                $auto->setSearchFields(array(
'login',
'firstname',
'lastname',
'email'));
 
  246                $auto->enableFieldSearchableCheck(
false);
 
  247                $auto->setMoreLinkAvailable(
true);
 
  268                $ilCtrl->redirect($this, 
"view");
 
  282                $operations = array();
 
  284                if ($this->actions == 
"")
 
  287                                "delete" => array(
"name" => 
"delete", 
"lng" => 
"delete"),
 
  288                                "activate" => array(
"name" => 
"activate", 
"lng" => 
"activate"),
 
  289                                "deactivate" => array(
"name" => 
"deactivate", 
"lng" => 
"deactivate"),
 
  290                                "accessRestrict" => array(
"name" => 
"accessRestrict", 
"lng" => 
"accessRestrict"),
 
  291                                "accessFree" => array(
"name" => 
"accessFree", 
"lng" => 
"accessFree"),
 
  292                                "export" => array(
"name" => 
"export", 
"lng" => 
"export")
 
  301                        if ($rbacsystem->checkAccess(
$row[
"name"],$this->object->getRefId()))
 
  303                                $operations[] = 
$row;
 
  307                if (count($operations) > 0)
 
  309                        $select = 
"<select name=\"selectedAction\">\n";
 
  310                        foreach ($operations as $val)
 
  312                                $select .= 
"<option value=\"" . $val[
"name"] . 
"\"";
 
  313                                if (strcmp(
$_POST[
"selectedAction"], $val[
"name"]) == 0)
 
  315                                        $select .= 
" selected=\"selected\"";
 
  318                                $select .= $this->lng->txt($val[
"lng"]);
 
  319                                $select .= 
"</option>";
 
  321                        $select .= 
"</select>";
 
  322                        $this->tpl->setCurrentBlock(
"tbl_action_select");
 
  323                        $this->tpl->setVariable(
"SELECT_ACTION", $select);
 
  324                        $this->tpl->setVariable(
"BTN_NAME", 
"userAction");
 
  325                        $this->tpl->setVariable(
"BTN_VALUE", $this->lng->txt(
"submit"));
 
  326                        $this->tpl->parseCurrentBlock();
 
  329                if ($with_subobjects === 
true)
 
  334                if ((count($operations) > 0) or $subobjs === 
true)
 
  336                        $this->tpl->setCurrentBlock(
"tbl_action_row");
 
  337                        $this->tpl->setVariable(
"COLUMN_COUNTS",count($this->data[
"cols"]));
 
  339                        $this->tpl->setVariable(
"ALT_ARROW", $this->lng->txt(
"actions"));
 
  340                        $this->tpl->parseCurrentBlock();
 
  354                $d = $this->objDefinition->getCreatableSubObjects($this->object->getType());
 
  356                if (!$rbacsystem->checkAccess(
'create_usr',$this->object->getRefId()))
 
  369                                        for ($i=0; $i<count($this->data[
"ctrl"]); $i++)
 
  371                                                if ($this->data[
"ctrl"][$i][
"type"] == 
$row[
"name"])
 
  377                                if (
$row[
"max"] == 
"" || $count < 
$row[
"max"])
 
  379                                        $subobj[] = 
$row[
"name"];
 
  384                if (is_array($subobj))
 
  388                        $this->tpl->setCurrentBlock(
"add_object");
 
  389                        $this->tpl->setVariable(
"SELECT_OBJTYPE", $opts);
 
  390                        $this->tpl->setVariable(
"BTN_NAME", 
"create");
 
  391                        $this->tpl->setVariable(
"TXT_ADD", $this->lng->txt(
"add"));
 
  392                        $this->tpl->parseCurrentBlock();
 
  402                $this->ctrl->redirect($this, 
'view');
 
  407                $this->ctrl->redirectByClass(
'ilrepositorysearchgui', 
'showSearchResults');
 
  420                if (!$rbacsystem->checkAccess(
'write',$this->object->getRefId()))
 
  422                        $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->ilias->error_obj->WARNING);
 
  426                foreach (
$_POST[
"id"] as $id)
 
  429                        $obj =& $this->
ilias->obj_factory->getInstanceByObjId($id);
 
  430                        $obj->setActive(TRUE, 
$ilUser->getId());
 
  438                        $this->ctrl->redirectByClass(
'ilRepositorySearchGUI',
'show');                   
 
  442                        $this->ctrl->redirect($this, 
"view");
 
  456                if (!$rbacsystem->checkAccess(
'write',$this->object->getRefId()))
 
  458                        $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->ilias->error_obj->WARNING);
 
  462                foreach (
$_POST[
"id"] as $id)
 
  465                        $obj =& $this->
ilias->obj_factory->getInstanceByObjId($id);
 
  466                        $obj->setActive(FALSE, 
$ilUser->getId());
 
  475                        $this->ctrl->redirectByClass(
'ilRepositorySearchGUI',
'show');                   
 
  479                        $this->ctrl->redirect($this, 
"view");
 
  488                if (!$rbacsystem->checkAccess(
'write',$this->object->getRefId()))
 
  490                        $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->ilias->error_obj->WARNING);
 
  494                foreach (
$_POST[
"id"] as $id)
 
  497                        $obj = $this->
ilias->obj_factory->getInstanceByObjId($id);
 
  498                        $obj->setTimeLimitUnlimited(1);
 
  499                        $obj->setTimeLimitFrom(
"");
 
  500                        $obj->setTimeLimitUntil(
"");
 
  501                        $obj->setTimeLimitMessage(0);
 
  510                        $this->ctrl->redirectByClass(
'ilRepositorySearchGUI',
'show');                   
 
  514                        $this->ctrl->redirect($this, 
"view");
 
  524                $this->tpl->setContent($a_form->getHTML());
 
  539                include_once 
"Services/Form/classes/class.ilPropertyFormGUI.php";
 
  541                $form->setTitle($this->lng->txt(
"time_limit_add_time_limit_for_selected"));
 
  542                $form->setFormAction($this->ctrl->getFormAction($this, 
"confirmaccessRestrict"));
 
  545                $from->setShowTime(
true);
 
  546                $from->setRequired(
true);
 
  547                $form->addItem($from);
 
  550                $to->setRequired(
true);
 
  551                $to->setShowTime(
true);
 
  554                $form->addCommandButton(
"confirmaccessRestrict", $this->lng->txt(
"confirm"));
 
  555                $form->addCommandButton(
"view", $this->lng->txt(
"cancel"));
 
  557                foreach($user_ids as $user_id)
 
  560                        $ufield->setValue($user_id);
 
  561                        $form->addItem($ufield);
 
  565                if($a_from_search || 
$_POST[
"frsrch"])
 
  569                        $form->addItem($field);
 
  578                if(!$form->checkInput())
 
  583                $timefrom = $form->getItemByPostVar(
"from")->getDate()->get(
IL_CAL_UNIX);
 
  584                $timeuntil = $form->getItemByPostVar(
"to")->getDate()->get(
IL_CAL_UNIX);
 
  585                if ($timeuntil <= $timefrom)
 
  594                if (!$rbacsystem->checkAccess(
'write',$this->object->getRefId()))
 
  596                        $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->ilias->error_obj->WARNING);
 
  600                foreach (
$_POST[
"id"] as $id)
 
  603                        $obj = $this->
ilias->obj_factory->getInstanceByObjId($id);
 
  604                        $obj->setTimeLimitUnlimited(0);
 
  605                        $obj->setTimeLimitFrom($timefrom);
 
  606                        $obj->setTimeLimitUntil($timeuntil);
 
  607                        $obj->setTimeLimitMessage(0);
 
  616                        $this->ctrl->redirectByClass(
'ilRepositorySearchGUI',
'show');                   
 
  620                        $this->ctrl->redirect($this, 
"view");
 
  634                if (!$rbacsystem->checkAccess(
'delete',$this->object->getRefId()))
 
  637                        $ilCtrl->redirect($this, 
"view");
 
  642                        $this->
ilias->raiseError($this->lng->txt(
"msg_no_delete_yourself"),$this->ilias->error_obj->WARNING);
 
  646                foreach (
$_POST[
"id"] as $id)
 
  649                        $obj =& $this->
ilias->obj_factory->getInstanceByObjId($id);
 
  658                        $this->ctrl->redirectByClass(
'ilRepositorySearchGUI',
'show');                   
 
  662                        $this->ctrl->redirect($this, 
"view");
 
  673                if(
$_POST[
"select_cmd_all"])
 
  675                        include_once(
"./Services/User/classes/class.ilUserTableGUI.php");
 
  677                        return $utab->getUserIdsForFilter();
 
  695                        $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->ilias->error_obj->MESSAGE);
 
  700                        $ilTabs->activateTab(
"obj_usrf");
 
  704                        $ilTabs->activateTab(
"search_user_extended");
 
  707                if (strcmp($action, 
"accessRestrict") == 0) 
 
  711                if (strcmp($action, 
"mail") == 0) 
 
  720                        $cancel = 
"cancelUserFolderAction";
 
  724                        $cancel = 
"cancelSearchAction";                                                 
 
  728                include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
 
  730                $cgui->setFormAction($this->ctrl->getFormAction($this));
 
  731                $cgui->setHeaderText($this->lng->txt(
"info_" . $action . 
"_sure"));
 
  732                $cgui->setCancel($this->lng->txt(
"cancel"), $cancel);
 
  733                $cgui->setConfirm($this->lng->txt(
"confirm"), 
"confirm" . $action);
 
  737                        $cgui->addHiddenItem(
"frsrch", 1);
 
  740                foreach($user_ids as $id)
 
  744                        $login = $user->getLastLogin();
 
  747                                $login = $this->lng->txt(
"never");
 
  754                        $caption = $user->getFullname().
" (".$user->getLogin().
")".
", ".
 
  755                                $user->getEmail().
" -  ".$this->lng->txt(
"last_login").
": ".$login;
 
  757                        $cgui->addItem(
"id[]", $id, $caption);
 
  760                $this->tpl->setContent($cgui->getHTML());
 
  770                $_POST[
"selectedAction"] = 
"delete";
 
  779                $_POST[
"selectedAction"] = 
"activate";
 
  788                $_POST[
"selectedAction"] = 
"deactivate";
 
  797                $_POST[
"selectedAction"] = 
"accessRestrict";
 
  806                $_POST[
"selectedAction"] = 
"accessFree";
 
  820                global 
$tpl, $rbacsystem;
 
  823                if (
$_GET[
"baseClass"] == 
'ilRepositoryGUI')
 
  825                        $this->tabs_gui->clearTargets();
 
  828                if (!$rbacsystem->checkAccess(
"write", $this->object->getRefId()))
 
  830                        $this->
ilias->raiseError($this->lng->txt(
"permission_denied"),$this->ilias->error_obj->MESSAGE);
 
  834                $tpl->setContent($this->form->getHTML());
 
  846                include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
 
  850                include_once(
"./Services/Form/classes/class.ilFileInputGUI.php");
 
  852                $fi->setSuffixes(array(
"xml", 
"zip"));
 
  855                $this->form->addItem($fi);
 
  857                $this->form->addCommandButton(
"importUserRoleAssignment", 
$lng->txt(
"import"));
 
  858                $this->form->addCommandButton(
"importCancelled", 
$lng->txt(
"cancel"));
 
  860                $this->form->setTitle(
$lng->txt(
"import_users"));
 
  861                $this->form->setFormAction(
$ilCtrl->getFormAction($this));
 
  874                if (@is_dir($import_dir))
 
  879                if (strtolower(
$_GET[
"baseClass"]) == 
'iladministrationgui')
 
  881                        $this->ctrl->redirect($this, 
"view");
 
  886                        $this->ctrl->redirectByClass(
'ilobjcategorygui',
'listUsers');
 
  912                if (
$_GET[
"baseClass"] == 
'ilRepositoryGUI')
 
  914                        $this->tabs_gui->clearTargets();
 
  918                if ($this->form->checkInput())
 
  920                        include_once 
'./Services/AccessControl/classes/class.ilObjRole.php';
 
  921                        include_once 
'./Services/User/classes/class.ilUserImportParser.php';
 
  923                        global $rbacreview, $rbacsystem, 
$tree, 
$lng;
 
  926                        $this->tpl->addBlockfile(
"ADM_CONTENT", 
"adm_content", 
"tpl.usr_import_roles.html", 
"Services/User");
 
  931                        if (@is_dir($import_dir))
 
  938                        $file_name = $_FILES[
"importFile"][
"name"];
 
  939                        $parts = pathinfo($file_name);
 
  940                        $full_path = $import_dir.
"/".$file_name;
 
  943                        if (!is_file($_FILES[
"importFile"][
"tmp_name"]))
 
  946                                $this->
ilias->raiseError($this->lng->txt(
"no_import_file_found")
 
  947                                        , $this->ilias->error_obj->MESSAGE);
 
  950                                $_FILES[
"importFile"][
"name"], $full_path);
 
  953                        if (strtolower($parts[
"extension"]) == 
"zip")
 
  960                                foreach ($file_list as $a_file)
 
  962                                        if (substr($a_file[
'entry'],-4) == 
'.xml')
 
  964                                                $xml_file = $import_dir.
"/".$a_file[
'entry'];
 
  968                                if (is_null($xml_file))
 
  970                                        $subdir = basename($parts[
"basename"],
".".$parts[
"extension"]);
 
  971                                        $xml_file = $import_dir.
"/".$subdir.
"/".$subdir.
".xml";
 
  977                                $xml_file = $full_path;
 
  981                        if (!is_file($xml_file))
 
  984                                $this->
ilias->raiseError($this->lng->txt(
"no_xml_file_found_in_zip")
 
  985                                        .
" ".$subdir.
"/".$subdir.
".xml", $this->ilias->error_obj->MESSAGE);
 
  988                        require_once(
"./Services/User/classes/class.ilUserImportParser.php");
 
  993                        $importParser->startParsing();
 
  994                        switch ($importParser->getErrorLevel())
 
  999                                        $this->tpl->setVariable(
"IMPORT_LOG", $importParser->getProtocolAsHTML(
$lng->txt(
"verification_warning_log")));
 
 1003                                        $this->
ilias->raiseError(
 
 1004                                                $lng->txt(
"verification_failed").$importParser->getProtocolAsHTML(
$lng->txt(
"verification_failure_log")),
 
 1005                                                $this->ilias->error_obj->MESSAGE
 
 1012                        $this->tpl->setCurrentBlock(
"role_selection_form");
 
 1013                        $this->tpl->setVariable(
"FORMACTION",$this->ctrl->getFormAction($this));
 
 1014                        $this->tpl->setVariable(
"TXT_IMPORT_USERS", $this->lng->txt(
"import_users"));
 
 1015                        $this->tpl->setVariable(
"TXT_IMPORT_FILE", $this->lng->txt(
"import_file"));
 
 1016                        $this->tpl->setVariable(
"IMPORT_FILE", $file_name);
 
 1017                        $this->tpl->setVariable(
"TXT_USER_ELEMENT_COUNT", $this->lng->txt(
"num_users"));
 
 1018                        $this->tpl->setVariable(
"USER_ELEMENT_COUNT", $importParser->getUserCount());
 
 1019                        $this->tpl->setVariable(
"TXT_ROLE_ASSIGNMENT", $this->lng->txt(
"role_assignment"));
 
 1020                        $this->tpl->setVariable(
"BTN_IMPORT", $this->lng->txt(
"import"));
 
 1021                        $this->tpl->setVariable(
"BTN_CANCEL", $this->lng->txt(
"cancel"));
 
 1022                        $this->tpl->setVariable(
"XML_FILE_NAME", $xml_file);
 
 1026                        $importParser->startParsing();
 
 1027                        $roles = $importParser->getCollectedRoles();
 
 1030                        $all_gl_roles = $rbacreview->getRoleListByObject(ROLE_FOLDER_ID);
 
 1031                        $gl_roles = array();
 
 1032                        $roles_of_user = $rbacreview->assignedRoles(
$ilUser->getId());
 
 1033                        foreach ($all_gl_roles as $obj_data)
 
 1044                                if ($obj_data[
"obj_id"] != ANONYMOUS_ROLE_ID)
 
 1047                                        if ($obj_data[
"obj_id"] != SYSTEM_ROLE_ID or in_array(SYSTEM_ROLE_ID,$roles_of_user))
 
 1049                                                $gl_roles[$obj_data[
"obj_id"]] = $obj_data[
"title"];
 
 1055                        $got_globals = 
false;
 
 1056                        foreach($roles as $role_id => $role)
 
 1058                                if ($role[
"type"] == 
"Global")
 
 1062                                                $got_globals = 
true;
 
 1064                                                $this->tpl->setCurrentBlock(
"global_role_section");
 
 1065                                                $this->tpl->setVariable(
"TXT_GLOBAL_ROLES_IMPORT", $this->lng->txt(
"roles_of_import_global"));
 
 1066                                                $this->tpl->setVariable(
"TXT_GLOBAL_ROLES", $this->lng->txt(
"assign_global_role"));
 
 1070                                        $pre_select = array_search($role[name], $gl_roles);
 
 1073                                                switch($role[
"name"])
 
 1075                                                        case "Administrator":   
 
 1076                                                                $pre_select = array_search(
"Administrator", $gl_roles);
 
 1080                                                                $pre_select = array_search(
"User", $gl_roles);
 
 1084                                                                $pre_select = array_search(
"User", $gl_roles);
 
 1088                                                                $pre_select = array_search(
"Guest", $gl_roles);
 
 1092                                                                $pre_select = array_search(
"User", $gl_roles);
 
 1096                                        $this->tpl->setCurrentBlock(
"global_role");
 
 1097                                        $role_select = 
ilUtil::formSelect($pre_select, 
"role_assign[".$role_id.
"]", $gl_roles, 
false, 
true);
 
 1098                                        $this->tpl->setVariable(
"TXT_IMPORT_GLOBAL_ROLE", $role[
"name"].
" [".$role_id.
"]");
 
 1099                                        $this->tpl->setVariable(
"SELECT_GLOBAL_ROLE", $role_select);
 
 1100                                        $this->tpl->parseCurrentBlock();
 
 1105                        $got_locals = 
false;
 
 1106                        foreach($roles as $role_id => $role)
 
 1108                                if ($role[
"type"] == 
"Local")
 
 1117                                $this->tpl->setCurrentBlock(
"local_role_section");
 
 1118                                $this->tpl->setVariable(
"TXT_LOCAL_ROLES_IMPORT", $this->lng->txt(
"roles_of_import_local"));
 
 1119                                $this->tpl->setVariable(
"TXT_LOCAL_ROLES", $this->lng->txt(
"assign_local_role"));
 
 1130                                        $loc_roles = array();
 
 1131                                        foreach($roles as $role_id => $role)
 
 1133                                                if ($role[
"type"] == 
"Local")
 
 1135                                                        $searchName = (substr($role[
'name'],0,1) == 
'#') ? $role[
'name'] : 
'#'.$role[
'name'];
 
 1136                                                        $matching_role_ids = $rbacreview->searchRolesByMailboxAddressList($searchName);
 
 1137                                                        foreach ($matching_role_ids as $mid) {
 
 1138                                                                if (! in_array($mid, $loc_roles)) {
 
 1139                                                                        $loc_roles[] = $mid;
 
 1148                                        $loc_roles = $rbacreview->getAssignableRolesInSubtree($this->object->getRefId());
 
 1153                                $l_roles_mailbox_searcharray = array();
 
 1154                                foreach ($loc_roles as $key => $loc_role)
 
 1157                                        $rolf = $rbacreview->getFoldersAssignedToRole($loc_role,
true);
 
 1164                                                !$rbacreview->isDeleted($rolf[0]) &&
 
 1165                                                $rbacsystem->checkAccess(
'write',$rolf[0]) &&
 
 1166                                                $rolf[0] != ROLE_FOLDER_ID
 
 1179                                                $path_array = array();
 
 1180                                                if ($this->tree->isInTree($rolf[0]))
 
 1184                                                        $tmpPath = $this->tree->getPathFull($rolf[0]);
 
 1185                                                        $tmpPath[] = $rolf[0];
 
 1187                                                        for ($i = 1, 
$n = count($tmpPath) - 1; $i < 
$n; $i++)
 
 1189                                                                if ($i < 3 || $i > 
$n - 3)
 
 1191                                                                        $path_array[] = $tmpPath[$i][
'title'];
 
 1193                                                                else if ($i == 3 || $i == 
$n - 3)
 
 1195                                                                        $path_array[] = 
'...';
 
 1198                                                                $isInSubtree |= $tmpPath[$i][
'obj_id'] == $this->
object->getId();
 
 1201                                                        $path = implode(
" < ", array_reverse($path_array));
 
 1206                                                        $path = 
"<b>Rolefolder ".$rolf[0].
" not found in tree! (Role ".$loc_role.
")</b>";
 
 1208                                                $roleMailboxAddress = $rbacreview->getRoleMailboxAddress($loc_role);
 
 1209                                                $l_roles[$loc_role] = $roleMailboxAddress.
', '.
$path;
 
 1214                                natcasesort($l_roles);
 
 1215                                $l_roles[
""] = $this->lng->txt(
"usrimport_ignore_role"); 
 
 1216                                foreach($roles as $role_id => $role)
 
 1218                                        if ($role[
"type"] == 
"Local")
 
 1220                                                $this->tpl->setCurrentBlock(
"local_role");
 
 1221                                                $this->tpl->setVariable(
"TXT_IMPORT_LOCAL_ROLE", $role[
"name"]);
 
 1222                                                $searchName = (substr($role[
'name'],0,1) == 
'#') ? $role[
'name'] : 
'#'.$role[
'name'];
 
 1223                                                $matching_role_ids = $rbacreview->searchRolesByMailboxAddressList($searchName);
 
 1224                                                $pre_select = count($matching_role_ids) == 1 ? $matching_role_ids[0] : 
"";
 
 1229                                                        $selectable_roles = array();
 
 1230                                                        $selectable_roles[
""] =  $this->lng->txt(
"usrimport_ignore_role");
 
 1231                                                        foreach ($matching_role_ids as $id)
 
 1233                                                                $selectable_roles[$id] =  $l_roles[$id];
 
 1235                                                        $role_select = 
ilUtil::formSelect($pre_select, 
"role_assign[".$role_id.
"]", $selectable_roles, 
false, 
true);
 
 1237                                                        $role_select = 
ilUtil::formSelect($pre_select, 
"role_assign[".$role_id.
"]", $l_roles, 
false, 
true);
 
 1239                                                $this->tpl->setVariable(
"SELECT_LOCAL_ROLE", $role_select);
 
 1240                                                $this->tpl->parseCurrentBlock();
 
 1246                        $this->tpl->setVariable(
"TXT_CONFLICT_HANDLING", 
$lng->txt(
"conflict_handling"));
 
 1251                        $this->tpl->setVariable(
"TXT_CONFLICT_HANDLING_INFO", str_replace(
'\n',
'<br>',$this->lng->txt(
"usrimport_conflict_handling_info")));
 
 1252                        $this->tpl->setVariable(
"TXT_CONFLICT_CHOICE", 
$lng->txt(
"conflict_handling"));
 
 1256                        $this->lng->loadLanguageModule(
"mail");
 
 1257                        include_once 
'./Services/User/classes/class.ilObjUserFolder.php';
 
 1259                        if (trim($amail[
"body"]) != 
"" && trim($amail[
"subject"]) != 
"")
 
 1261                                $this->tpl->setCurrentBlock(
"inform_user");
 
 1262                                $this->tpl->setVariable(
"TXT_ACCOUNT_MAIL", 
$lng->txt(
"mail_account_mail"));
 
 1265                                        $this->tpl->setVariable(
"SEND_MAIL", 
" checked=\"checked\"");
 
 1267                                $this->tpl->setVariable(
"TXT_INFORM_USER_MAIL",
 
 1268                                        $this->lng->txt(
"user_send_new_account_mail"));
 
 1269                                $this->tpl->parseCurrentBlock();
 
 1274                        $this->form->setValuesByPost();
 
 1275                        $tpl->setContent($this->form->getHtml());
 
 1287                if (
$_GET[
"baseClass"] == 
'ilRepositoryGUI')
 
 1289                        $this->tabs_gui->clearTargets();
 
 1292                include_once 
'./Services/AccessControl/classes/class.ilObjRole.php';
 
 1293                include_once 
'./Services/User/classes/class.ilUserImportParser.php';
 
 1295                global $rbacreview, $rbacsystem, 
$tree, 
$lng;
 
 1297                switch (
$_POST[
"conflict_handling_choice"])
 
 1299                        case "update_on_conflict" :
 
 1302                        case "ignore_on_conflict" :
 
 1314                if (
$_POST[
"role_assign"])
 
 1316                        $global_roles = $rbacreview->getGlobalRoles();
 
 1317                        $roles_of_user = $rbacreview->assignedRoles(
$ilUser->getId());
 
 1318                        foreach (
$_POST[
"role_assign"] as $role_id)
 
 1322                                        if (in_array($role_id, $global_roles))
 
 1324                                                if(!in_array(SYSTEM_ROLE_ID,$roles_of_user))
 
 1326                                                        if ($role_id == SYSTEM_ROLE_ID && ! in_array(SYSTEM_ROLE_ID,$roles_of_user)
 
 1332                                                                $this->
ilias->raiseError($this->lng->txt(
"usrimport_with_specified_role_not_permitted"), 
 
 1333                                                                        $this->ilias->error_obj->MESSAGE);
 
 1339                                                $rolf = $rbacreview->getFoldersAssignedToRole($role_id,
true);
 
 1340                                                if ($rbacreview->isDeleted($rolf[0])
 
 1341                                                        || ! $rbacsystem->checkAccess(
'write',$rolf[0]))
 
 1344                                                        $this->
ilias->raiseError($this->lng->txt(
"usrimport_with_specified_role_not_permitted"), 
 
 1345                                                                $this->ilias->error_obj->MESSAGE);
 
 1353                $importParser->setRoleAssignment(
$_POST[
"role_assign"]);
 
 1354                $importParser->startParsing();
 
 1359                switch ($importParser->getErrorLevel())
 
 1365                                ilUtil::sendInfo($this->lng->txt(
"user_imported_with_warnings").$importParser->getProtocolAsHTML(
$lng->txt(
"import_warning_log")), 
true);
 
 1368                                $this->
ilias->raiseError(
 
 1369                                        $this->lng->txt(
"user_import_failed")
 
 1370                                        .$importParser->getProtocolAsHTML(
$lng->txt(
"import_failure_log")),
 
 1371                                        $this->ilias->error_obj->MESSAGE
 
 1376                if (strtolower(
$_GET[
"baseClass"]) == 
"iladministrationgui")
 
 1378                        $this->ctrl->redirect($this, 
"view");
 
 1383                        $this->ctrl->redirectByClass(
'ilobjcategorygui',
'listUsers');
 
 1390                global $rbacsystem,
$ilias;
 
 1394                if (!$rbacsystem->checkAccess(
"visible,read",$this->object->getRefId()))
 
 1396                        $this->
ilias->raiseError($this->lng->txt(
"permission_denied"),$this->ilias->error_obj->MESSAGE);
 
 1399                if(!count($app_users =& 
$ilias->account->getAppliedUsers()))
 
 1406                $this->tpl->addBlockFile(
"ADM_CONTENT", 
"adm_content", 
"tpl.usr_applied_users.html", 
"Services/User");
 
 1407                $this->lng->loadLanguageModule(
'crs');
 
 1410                foreach($app_users as $usr_id)
 
 1415                        $f_result[$counter][]   = $tmp_user->getLogin();
 
 1416                        $f_result[$counter][]   = $tmp_user->getFirstname();
 
 1417                        $f_result[$counter][]   = $tmp_user->getLastname();
 
 1419                        if($tmp_user->getTimeLimitUnlimited())
 
 1421                                $f_result[$counter][]   = 
"<b>".$this->lng->txt(
'crs_unlimited').
"</b>";
 
 1425                                $limit = 
"<b>".$this->lng->txt(
'crs_from').
'</b> '.strftime(
"%Y-%m-%d %R",$tmp_user->getTimeLimitFrom()).
'<br />';
 
 1426                                $limit .= 
"<b>".$this->lng->txt(
'crs_to').
'</b> '.strftime(
"%Y-%m-%d %R",$tmp_user->getTimeLimitUntil());
 
 1428                                $f_result[$counter][]   = $limit;
 
 1442                if(!$rbacsystem->checkAccess(
"write", $this->ref_id))
 
 1444                        $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->ilias->error_obj->MESSAGE);
 
 1447                $this->lng->loadLanguageModule(
'crs');
 
 1451                if(!isset(
$_SESSION[
'error_post_vars']))
 
 1453                        ilUtil::sendInfo($this->lng->txt(
'time_limit_add_time_limit_for_selected'));
 
 1456                if(!count(
$_POST[
"users"]))
 
 1465                foreach(
$_POST[
'users'] as $usr_id)
 
 1472                        $title .= $tmp_user->getLogin();
 
 1475                if(strlen($title) > 79)
 
 1477                        $title = substr($title,0,80);
 
 1482                $this->tpl->addBlockFile(
"ADM_CONTENT", 
"adm_content", 
"tpl.usr_edit_applied_users.html", 
"Services/User");
 
 1483                $this->tpl->setVariable(
"FORMACTION",$this->ctrl->getFormAction($this));
 
 1486                $time_limit_unlimited = 
$_SESSION[
"error_post_vars"][
"au"][
"time_limit_unlimited"] ? 
 
 1489                $time_limit_start = 
$_SESSION[
"error_post_vars"][
"au"][
"time_limit_start"] ? 
 
 1492                $time_limit_end = 
$_SESSION[
"error_post_vars"][
"au"][
"time_limit_end"] ? 
 
 1498                $this->tpl->setVariable(
"ALT_IMG",$this->lng->txt(
"obj_usr"));
 
 1500                $this->tpl->setVariable(
"TITLE",$title);
 
 1501                $this->tpl->setVariable(
"TXT_TIME_LIMIT",$this->lng->txt(
"time_limit"));
 
 1502                $this->tpl->setVariable(
"TXT_TIME_LIMIT_START",$this->lng->txt(
"crs_start"));
 
 1503                $this->tpl->setVariable(
"TXT_TIME_LIMIT_END",$this->lng->txt(
"crs_end"));
 
 1504                $this->tpl->setVariable(
"CMD_SUBMIT",
"updateAppliedUsers");
 
 1505                $this->tpl->setVariable(
"TXT_CANCEL",$this->lng->txt(
"cancel"));
 
 1506                $this->tpl->setVariable(
"TXT_SUBMIT",$this->lng->txt(
"submit"));
 
 1510                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_START_DAY",$this->
__getDateSelect(
"day",
"au[time_limit_start][day]",
 
 1511                                                                                                                                                                         date(
"d",$time_limit_start)));
 
 1512                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_START_MONTH",$this->
__getDateSelect(
"month",
"au[time_limit_start][month]",
 
 1513                                                                                                                                                                           date(
"m",$time_limit_start)));
 
 1514                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_START_YEAR",$this->
__getDateSelect(
"year",
"au[time_limit_start][year]",
 
 1515                                                                                                                                                                          date(
"Y",$time_limit_start)));
 
 1516                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_START_HOUR",$this->
__getDateSelect(
"hour",
"au[time_limit_start][hour]",
 
 1517                                                                                                                                                                          date(
"G",$time_limit_start)));
 
 1518                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_START_MINUTE",$this->
__getDateSelect(
"minute",
"au[time_limit_start][minute]",
 
 1519                                                                                                                                                                          date(
"i",$time_limit_start)));
 
 1520                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_END_DAY",$this->
__getDateSelect(
"day",
"au[time_limit_end][day]",
 
 1521                                                                                                                                                                   date(
"d",$time_limit_end)));
 
 1522                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_END_MONTH",$this->
__getDateSelect(
"month",
"au[time_limit_end][month]",
 
 1523                                                                                                                                                                         date(
"m",$time_limit_end)));
 
 1524                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_END_YEAR",$this->
__getDateSelect(
"year",
"au[time_limit_end][year]",
 
 1525                                                                                                                                                                        date(
"Y",$time_limit_end)));
 
 1526                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_END_HOUR",$this->
__getDateSelect(
"hour",
"au[time_limit_end][hour]",
 
 1527                                                                                                                                                                          date(
"G",$time_limit_end)));
 
 1528                $this->tpl->setVariable(
"SELECT_TIME_LIMIT_END_MINUTE",$this->
__getDateSelect(
"minute",
"au[time_limit_end][minute]",
 
 1529                                                                                                                                                                          date(
"i",$time_limit_end)));
 
 1530                if($this->
ilias->account->getTimeLimitUnlimited())
 
 1532                        $this->tpl->setVariable(
"ROWSPAN",3);
 
 1533                        $this->tpl->setCurrentBlock(
"unlimited");
 
 1534                        $this->tpl->setVariable(
"TXT_TIME_LIMIT_UNLIMITED",$this->lng->txt(
"crs_unlimited"));
 
 1535                        $this->tpl->setVariable(
"TIME_LIMIT_UNLIMITED",
ilUtil::formCheckbox($time_limit_unlimited,
"au[time_limit_unlimited]",1));
 
 1536                        $this->tpl->parseCurrentBlock();
 
 1540                        $this->tpl->setVariable(
"ROWSPAN",2);
 
 1548                if(!$rbacsystem->checkAccess(
"write", $this->ref_id))
 
 1550                        $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_write"),$this->ilias->error_obj->MESSAGE);
 
 1556                if(!
$_POST[
'au'][
'time_limit_unlimited'])
 
 1567                #if(!$this->ilias->account->getTimeLimitUnlimited()) 
 1569                #       if($start < $this->ilias->account->getTimeLimitFrom() or 
 1570                #          $end > $this->ilias->account->getTimeLimitUntil()) 
 1572                #               $_SESSION['error_post_vars'] = $_POST; 
 1573                #               ilUtil::sendInfo($this->lng->txt('time_limit_not_within_owners')); 
 1574                #               $this->editAppliedUsersObject(); 
 1580                foreach(
$_SESSION[
'applied_users'] as $usr_id)
 
 1584                        $tmp_user->setTimeLimitUnlimited((
int) 
$_POST[
'au'][
'time_limit_unlimited']);
 
 1585                        $tmp_user->setTimeLimitFrom($start);
 
 1586                        $tmp_user->setTimeLimitUntil($end);
 
 1587                        $tmp_user->setTimeLimitMessage(0);
 
 1588                        $tmp_user->update();
 
 1606                $tpl->setCurrentBlock(
"tbl_form_header");
 
 1608                $tpl->setVariable(
"FORMACTION",$this->ctrl->getFormAction($this));
 
 1609                $tpl->parseCurrentBlock();
 
 1611                $tpl->setCurrentBlock(
"tbl_action_btn");
 
 1612                $tpl->setVariable(
"BTN_NAME",
'editAppliedUsers');
 
 1613                $tpl->setVariable(
"BTN_VALUE",$this->lng->txt(
'edit'));
 
 1614                $tpl->parseCurrentBlock();
 
 1616                $tpl->setCurrentBlock(
"tbl_action_row");
 
 1617                $tpl->setVariable(
"COLUMN_COUNTS",5);
 
 1619                $tpl->setVariable(
"ALT_ARROW", $this->lng->txt(
"actions"));
 
 1620                $tpl->parseCurrentBlock();
 
 1624                $tbl->setTitle($this->lng->txt(
"time_limit_applied_users"),
"",$this->lng->txt(
"users"));
 
 1625                $tbl->setHeaderNames(array(
'',
 
 1626                                                                   $this->lng->txt(
"login"),
 
 1627                                                                   $this->lng->txt(
"firstname"),
 
 1628                                                                   $this->lng->txt(
"lastname"),
 
 1629                                                                   $this->lng->txt(
"time_limits")));
 
 1630                $header_params = $this->ctrl->getParameterArray($this, 
"appliedUsers");
 
 1631                $tbl->setHeaderVars(array(
"",
 
 1636                                                        array($header_params));
 
 1637                $tbl->setColumnWidth(array(
"3%",
"19%",
"19%",
"19%",
"40%"));
 
 1643                $this->tpl->setVariable(
"APPLIED_USERS",
$tbl->tpl->get());
 
 1650                include_once 
"./Services/Table/classes/class.ilTableGUI.php";
 
 1657                $offset = 
$_GET[
"offset"];
 
 1658                $order = 
$_GET[
"sort_by"];
 
 1659                $direction = 
$_GET[
"sort_order"];
 
 1662                $tbl->setOrderColumn($order);
 
 1663                $tbl->setOrderDirection($direction);
 
 1664                $tbl->setOffset($offset);
 
 1666                $tbl->setMaxCount(count($result_set));
 
 1667                $tbl->setFooter(
"tblfooter",$this->lng->txt(
"previous"),$this->lng->txt(
"next"));
 
 1668                $tbl->setData($result_set);
 
 1676                for($i=0;$i<=60;$i++)
 
 1678                    $days[$i] = $i < 10 ? 
"0".$i : $i;
 
 1683                for($i=0;$i<24;$i++)
 
 1685                    $days[$i] = $i < 10 ? 
"0".$i : $i;
 
 1690                for($i=1;$i<32;$i++)
 
 1692                    $days[$i] = $i < 10 ? 
"0".$i : $i;
 
 1697                for($i=1;$i<13;$i++)
 
 1699                    $month[$i] = $i < 10 ? 
"0".$i : $i;
 
 1704                for($i = date(
"Y",time());$i < date(
"Y",time()) + 3;++$i)
 
 1713        return mktime($a_time_arr[
"hour"],
 
 1714                      $a_time_arr[
"minute"],
 
 1715                      $a_time_arr[
"second"],
 
 1716                      $a_time_arr[
"month"],
 
 1718                      $a_time_arr[
"year"]);
 
 1723        parent::hitsperpageObject();
 
 1737                include_once 
'./Services/User/classes/class.ilUserAccountSettings.php';
 
 1740                $show_blocking_time_in_days = 
$ilSetting->get(
'loginname_change_blocking_time') / 86400;
 
 1741                $show_blocking_time_in_days = (float)$show_blocking_time_in_days;
 
 1743                include_once(
'./Services/PrivacySecurity/classes/class.ilSecuritySettings.php');
 
 1746                $this->form->setValuesByArray(
 
 1748                                'lua'   => $aset->isLocalUserAdministrationEnabled(),
 
 1749                                'lrua'  => $aset->isUserAccessRestricted(),
 
 1750                                'allow_change_loginname' => (
bool)
$ilSetting->get(
'allow_change_loginname'),
 
 1751                                'create_history_loginname' => (
bool)
$ilSetting->get(
'create_history_loginname'),
 
 1752                                'reuse_of_loginnames' => (
bool)
$ilSetting->get(
'reuse_of_loginnames'),
 
 1753                                'loginname_change_blocking_time' => (
float)$show_blocking_time_in_days,
 
 1754                                'user_adm_alpha_nav' => (
int)
$ilSetting->get(
'user_adm_alpha_nav'),
 
 1756                                'user_reactivate_code' => (
int)
$ilSetting->get(
'user_reactivate_code'),
 
 1757                                'user_own_account' => (
int)
$ilSetting->get(
'user_delete_own_account'),
 
 1758                                'user_own_account_email' => 
$ilSetting->get(
'user_delete_own_account_email'),
 
 1761                                'session_reminder_enabled' => 
$ilSetting->get(
'session_reminder_enabled'),
 
 1767                                'passwd_auto_generate' => (
bool)
$ilSetting->get(
"passwd_auto_generate"),                        
 
 1768                                'password_change_on_first_login_enabled' => $security->isPasswordChangeOnFirstLoginEnabled() ? 1 : 0,                                                                                                   
 
 1769                                'password_must_not_contain_loginame' => $security->getPasswordMustNotContainLoginnameStatus() ? 1 : 0,                                                                                                  
 
 1770                                'password_chars_and_numbers_enabled' => $security->isPasswordCharsAndNumbersEnabled() ? 1 : 0,
 
 1771                                'password_special_chars_enabled' => $security->isPasswordSpecialCharsEnabled() ? 1 : 0 ,
 
 1772                                'password_min_length' => $security->getPasswordMinLength(),
 
 1773                                'password_max_length' => $security->getPasswordMaxLength(),
 
 1774                                'password_ucase_chars_num' => $security->getPasswordNumberOfUppercaseChars(),
 
 1775                                'password_lowercase_chars_num' => $security->getPasswordNumberOfLowercaseChars(),
 
 1776                                'password_max_age' => $security->getPasswordMaxAge(),
 
 1778                                'login_max_attempts' => $security->getLoginMaxAttempts(),                               
 
 1779                                'ps_prevent_simultaneous_logins' => (
int)$security->isPreventionOfSimultaneousLoginsEnabled(),
 
 1780                                'password_assistance' => (
bool)
$ilSetting->get(
"password_assistance")
 
 1784                $this->tpl->setContent($this->form->getHTML());
 
 1797                if($this->form->checkInput())
 
 1801                        if(!strlen($this->form->getInput(
'loginname_change_blocking_time')))
 
 1804                                $this->form->getItemByPostVar(
'loginname_change_blocking_time')
 
 1805                                                                                ->setAlert($this->lng->txt(
'loginname_change_blocking_time_invalidity_info'));
 
 1808                        include_once(
'./Services/PrivacySecurity/classes/class.ilSecuritySettings.php');
 
 1812                        $security->setPasswordCharsAndNumbersEnabled((
bool) 
$_POST[
"password_chars_and_numbers_enabled"]);
 
 1813                        $security->setPasswordSpecialCharsEnabled((
bool) 
$_POST[
"password_special_chars_enabled"]);
 
 1814                        $security->setPasswordMinLength((
int) 
$_POST[
"password_min_length"]);
 
 1815                        $security->setPasswordMaxLength((
int) 
$_POST[
"password_max_length"]);
 
 1816                        $security->setPasswordNumberOfUppercaseChars((
int) 
$_POST[
'password_ucase_chars_num']);
 
 1817                        $security->setPasswordNumberOfLowercaseChars((
int) 
$_POST[
'password_lowercase_chars_num']);
 
 1818                        $security->setPasswordMaxAge((
int) 
$_POST[
"password_max_age"]);
 
 1819                        $security->setLoginMaxAttempts((
int) 
$_POST[
"login_max_attempts"]);
 
 1820                        $security->setPreventionOfSimultaneousLogins((
bool)
$_POST[
'ps_prevent_simultaneous_logins']);
 
 1821                        $security->setPasswordChangeOnFirstLoginEnabled((
bool) 
$_POST[
'password_change_on_first_login_enabled']);
 
 1822                        $security->setPasswordMustNotContainLoginnameStatus((
int) 
$_POST[
'password_must_not_contain_loginame']);
 
 1824                        if(!$security->validate($this->form))
 
 1833                                include_once 
'./Services/User/classes/class.ilUserAccountSettings.php';
 
 1838                                $ilSetting->set(
'allow_change_loginname', (
int)$this->form->getInput(
'allow_change_loginname'));
 
 1839                                $ilSetting->set(
'create_history_loginname', (
int)$this->form->getInput(
'create_history_loginname'));
 
 1840                                $ilSetting->set(
'reuse_of_loginnames', (
int)$this->form->getInput(
'reuse_of_loginnames'));
 
 1841                                $save_blocking_time_in_seconds = (int)($this->form->getInput(
'loginname_change_blocking_time') * 86400);
 
 1842                                $ilSetting->set(
'loginname_change_blocking_time', (
int)$save_blocking_time_in_seconds);
 
 1843                                $ilSetting->set(
'user_adm_alpha_nav', (
int)$this->form->getInput(
'user_adm_alpha_nav'));                        
 
 1844                                $ilSetting->set(
'user_reactivate_code', (
int)$this->form->getInput(
'user_reactivate_code'));
 
 1846                                $ilSetting->set(
'user_delete_own_account', (
int)$this->form->getInput(
'user_own_account'));
 
 1847                                $ilSetting->set(
'user_delete_own_account_email', $this->form->getInput(
'user_own_account_email'));
 
 1849                                $ilSetting->set(
"passwd_auto_generate", $this->form->getInput(
"passwd_auto_generate")); 
 
 1850                                $ilSetting->set(
"password_assistance", $this->form->getInput(
"password_assistance"));   
 
 1854                                        (
int)$this->form->getInput(
'session_handling_type'));                   
 
 1859                                                $this->form->getInput(
'session_reminder_enabled'));     
 
 1863                                        require_once 
'Services/Authentication/classes/class.ilSessionControl.php';
 
 1865                                                $ilSetting->get(
'session_allow_client_maintenance',
 
 1870                                                include_once 
"Services/Authentication/classes/class.ilSessionStatistics.php";
 
 1874                                                        (
int)$this->form->getInput(
'session_max_count'));
 
 1876                                                        (
int)$this->form->getInput(
'session_min_idle'));
 
 1878                                                        (
int)$this->form->getInput(
'session_max_idle'));
 
 1879                                                $ilSetting->set(
'session_max_idle_after_first_request',
 
 1880                                                        (
int)$this->form->getInput(
'session_max_idle_after_first_request'));
 
 1896                $this->form->setValuesByPost();         
 
 1897                $this->tpl->setContent($this->form->getHTML());
 
 1910                $this->tabs_gui->setTabActive(
'settings');
 
 1911                $this->tabs_gui->setSubTabActive(
'general_settings');
 
 1913                include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
 
 1915                $this->form->setFormAction($this->ctrl->getFormAction($this, 
'saveGeneralSettings'));
 
 1917                $this->form->setTitle($this->lng->txt(
'general_settings'));
 
 1919                $lua = 
new ilCheckboxInputGUI($this->lng->txt(
'enable_local_user_administration'),
'lua');
 
 1920                $lua->setInfo($this->lng->txt(
'enable_local_user_administration_info'));
 
 1922                $this->form->addItem($lua);
 
 1925                $lrua->setInfo($this->lng->txt(
'restrict_user_access_info'));
 
 1927                $this->form->addItem($lrua);
 
 1930                $alph = 
new ilCheckboxInputGUI($this->lng->txt(
'user_adm_enable_alpha_nav'), 
'user_adm_alpha_nav');
 
 1933                $this->form->addItem($alph);
 
 1937                $code->setInfo($this->lng->txt(
'user_account_code_setting_info'));
 
 1938                $this->form->addItem(
$code);            
 
 1941                $own = 
new ilCheckboxInputGUI($this->lng->txt(
"user_allow_delete_own_account"), 
"user_own_account");
 
 1942                $this->form->addItem($own);             
 
 1943                $own_email = 
new ilEMailInputGUI($this->lng->txt(
"user_delete_own_account_notification_email"), 
"user_own_account_email");
 
 1944                $own->addSubItem($own_email);
 
 1956                $cb = 
new ilCheckboxInputGUI($this->lng->txt(
"session_reminder"), 
"session_reminder_enabled");
 
 1959                $cb->setInfo($this->lng->txt(
"session_reminder_info").
"<br />".
 
 1960                        sprintf($this->lng->txt(
'session_reminder_session_duration'), $time));          
 
 1961                $fixed->addSubItem($cb);
 
 1964                $ssettings->addOption($fixed);
 
 1970                require_once(
'Services/Authentication/classes/class.ilSessionControl.php');             
 
 1974                $sub_ti = 
new ilTextInputGUI($this->lng->txt(
'session_max_count'), 
'session_max_count');
 
 1975                $sub_ti->setMaxLength(5);
 
 1976                $sub_ti->setSize(5);
 
 1977                $sub_ti->setInfo($this->lng->txt(
'session_max_count_info'));            
 
 1979                        $sub_ti->setDisabled(
true);
 
 1980                $ldsh->addSubItem($sub_ti);
 
 1985                $sub_ti = 
new ilTextInputGUI($this->lng->txt(
'session_min_idle'), 
'session_min_idle');
 
 1986                $sub_ti->setMaxLength(5);
 
 1987                $sub_ti->setSize(5);
 
 1988                $sub_ti->setInfo($this->lng->txt(
'session_min_idle_info'));             
 
 1990                        $sub_ti->setDisabled(
true);
 
 1991                $ldsh->addSubItem($sub_ti);
 
 1996                $sub_ti = 
new ilTextInputGUI($this->lng->txt(
'session_max_idle'), 
'session_max_idle');
 
 1997                $sub_ti->setMaxLength(5);
 
 1998                $sub_ti->setSize(5);
 
 1999                $sub_ti->setInfo($this->lng->txt(
'session_max_idle_info'));             
 
 2001                        $sub_ti->setDisabled(
true);
 
 2002                $ldsh->addSubItem($sub_ti);
 
 2007                        $this->lng->txt(
'session_max_idle_after_first_request'),
 
 2008                        'session_max_idle_after_first_request' 
 2010                $sub_ti->setMaxLength(5);
 
 2011                $sub_ti->setSize(5);
 
 2012                $sub_ti->setInfo($this->lng->txt(
'session_max_idle_after_first_request_info')); 
 
 2014                        $sub_ti->setDisabled(
true);
 
 2015                $ldsh->addSubItem($sub_ti);
 
 2018                $ssettings->addOption($ldsh);
 
 2025                        $this->form->addItem($ssettings);
 
 2032                        $ti->setValue($this->lng->txt(
'session_config_maintenance_disabled'));
 
 2033                        $ssettings->setDisabled(
true);
 
 2034                        $ti->addSubItem($ssettings);
 
 2035                        $this->form->addItem($ti);
 
 2041                $this->lng->loadLanguageModule(
'ps');           
 
 2044                $pass->setTitle($this->lng->txt(
'ps_password_settings'));
 
 2045                $this->form->addItem(
$pass);
 
 2048                $cb = 
new ilCheckboxInputGUI($this->lng->txt(
"passwd_generation_pre"), 
"passwd_auto_generate");
 
 2049                $cb->setChecked(
$ilSetting->get(
"passwd_auto_generate"));               
 
 2050                $cb->setInfo($this->lng->txt(
"passwd_generation_info"));
 
 2051                $this->form->addItem($cb);
 
 2053                $check = 
new ilCheckboxInputGUI($this->lng->txt(
'ps_password_change_on_first_login_enabled'),
'password_change_on_first_login_enabled');
 
 2054                $check->setInfo($this->lng->txt(
'ps_password_change_on_first_login_enabled_info'));
 
 2055                $this->form->addItem($check);
 
 2057                include_once(
'./Services/PrivacySecurity/classes/class.ilSecuritySettings.php');
 
 2059                $check = 
new ilCheckboxInputGUI($this->lng->txt(
'ps_password_must_not_contain_loginame'),
'password_must_not_contain_loginame');
 
 2060                $check->setInfo($this->lng->txt(
'ps_password_must_not_contain_loginame_info'));
 
 2061                $this->form->addItem($check);
 
 2063                $check = 
new ilCheckboxInputGUI($this->lng->txt(
'ps_password_chars_and_numbers_enabled'),
'password_chars_and_numbers_enabled');                 
 
 2065                $check->setInfo($this->lng->txt(
'ps_password_chars_and_numbers_enabled_info'));
 
 2066                $this->form->addItem($check);
 
 2068                $check = 
new ilCheckboxInputGUI($this->lng->txt(
'ps_password_special_chars_enabled'),
'password_special_chars_enabled');
 
 2070                $check->setInfo($this->lng->txt(
'ps_password_special_chars_enabled_info'));
 
 2071                $this->form->addItem($check);
 
 2074                $text->setInfo($this->lng->txt(
'ps_password_min_length_info'));
 
 2076                $text->setMaxLength(2);
 
 2077                $this->form->addItem(
$text);
 
 2080                $text->setInfo($this->lng->txt(
'ps_password_max_length_info'));
 
 2082                $text->setMaxLength(3);
 
 2083                $this->form->addItem(
$text);
 
 2085                $text = 
new ilNumberInputGUI($this->lng->txt(
'ps_password_uppercase_chars_num'), 
'password_ucase_chars_num');
 
 2086                $text->setInfo($this->lng->txt(
'ps_password_uppercase_chars_num_info'));
 
 2087                $text->setMinValue(0);
 
 2089                $text->setMaxLength(3);
 
 2090                $this->form->addItem(
$text);
 
 2092                $text = 
new ilNumberInputGUI($this->lng->txt(
'ps_password_lowercase_chars_num'), 
'password_lowercase_chars_num');
 
 2093                $text->setInfo($this->lng->txt(
'ps_password_lowercase_chars_num_info'));
 
 2094                $text->setMinValue(0);
 
 2096                $text->setMaxLength(3);
 
 2097                $this->form->addItem(
$text);
 
 2100                $text->setInfo($this->lng->txt(
'ps_password_max_age_info'));
 
 2102                $text->setMaxLength(3);
 
 2103                $this->form->addItem(
$text);
 
 2106                $cb = 
new ilCheckboxInputGUI($this->lng->txt(
"enable_password_assistance"), 
"password_assistance");             
 
 2107                $cb->setInfo($this->lng->txt(
"password_assistance_info"));
 
 2108                $this->form->addItem($cb);
 
 2111                $pass->setTitle($this->lng->txt(
'ps_security_protection'));
 
 2112                $this->form->addItem(
$pass);
 
 2115                $text->setInfo($this->lng->txt(
'ps_login_max_attempts_info'));
 
 2117                $text->setMaxLength(2);
 
 2118                $this->form->addItem(
$text);            
 
 2121                $objCb = 
new ilCheckboxInputGUI($this->lng->txt(
'ps_prevent_simultaneous_logins'), 
'ps_prevent_simultaneous_logins');           
 
 2122                $objCb->setValue(1);
 
 2123                $objCb->setInfo($this->lng->txt(
'ps_prevent_simultaneous_logins_info'));
 
 2124                $this->form->addItem($objCb);
 
 2130                $log->setTitle($this->lng->txt(
'loginname_settings'));
 
 2131                $this->form->addItem(
$log);
 
 2133                $chbChangeLogin = 
new ilCheckboxInputGUI($this->lng->txt(
'allow_change_loginname'), 
'allow_change_loginname');
 
 2134                $chbChangeLogin->setValue(1);
 
 2135                $this->form->addItem($chbChangeLogin);          
 
 2136                $chbCreateHistory = 
new ilCheckboxInputGUI($this->lng->txt(
'history_loginname'), 
'create_history_loginname');
 
 2137                $chbCreateHistory->setInfo($this->lng->txt(
'loginname_history_info'));
 
 2138                $chbCreateHistory->setValue(1);
 
 2140                $chbChangeLogin->addSubItem($chbCreateHistory); 
 
 2141                $chbReuseLoginnames = 
new ilCheckboxInputGUI($this->lng->txt(
'reuse_of_loginnames_contained_in_history'), 
'reuse_of_loginnames');
 
 2142                $chbReuseLoginnames->setValue(1);
 
 2143                $chbReuseLoginnames->setInfo($this->lng->txt(
'reuse_of_loginnames_contained_in_history_info'));
 
 2145                $chbChangeLogin->addSubItem($chbReuseLoginnames);
 
 2146                $chbChangeBlockingTime = 
new ilNumberInputGUI($this->lng->txt(
'loginname_change_blocking_time'), 
'loginname_change_blocking_time');
 
 2147                $chbChangeBlockingTime->allowDecimals(
true);
 
 2148                $chbChangeBlockingTime->setSuffix($this->lng->txt(
'days'));
 
 2149                $chbChangeBlockingTime->setInfo($this->lng->txt(
'loginname_change_blocking_time_info'));
 
 2150                $chbChangeBlockingTime->setSize(10);
 
 2151                $chbChangeBlockingTime->setMaxLength(10);
 
 2152                $chbChangeLogin->addSubItem($chbChangeBlockingTime);            
 
 2154                $this->form->addCommandButton(
'saveGeneralSettings', $this->lng->txt(
'save'));
 
 2174                include_once 
'Services/Search/classes/class.ilUserSearchOptions.php';
 
 2175                $lng->loadLanguageModule(
"administration");
 
 2176                $lng->loadLanguageModule(
"mail");
 
 2178                $ilTabs->activateTab(
'settings');
 
 2179                $ilTabs->activateSubTab(
'standard_fields');
 
 2181                include_once(
"./Services/User/classes/class.ilUserFieldSettingsTableGUI.php");
 
 2183                if($this->confirm_change) 
$tab->setConfirmChange();
 
 2194                include_once 
'Services/Search/classes/class.ilUserSearchOptions.php';
 
 2195                include_once 
'Services/PrivacySecurity/classes/class.ilPrivacySettings.php';
 
 2200                include_once(
"./Services/User/classes/class.ilUserProfile.php");
 
 2202                $up->skipField(
"username");
 
 2203                $field_properties = $up->getStandardFields();
 
 2204                $profile_fields = array_keys($field_properties);
 
 2207                foreach ($profile_fields as $field)
 
 2209                        if (    
$_POST[
"chb"][
"required_".$field] &&
 
 2210                                        !(
int)
$_POST[
'chb'][
'visib_reg_' . $field]
 
 2221                        $this->confirm_change = 1;
 
 2227                $fixed_required_fields = array(
 
 2234                        "hits_per_page" => 0,
 
 2236                        "hide_own_online_status" => 0
 
 2241                if ($privacy->enabledCourseExport() == 
true && 
 
 2242                        $privacy->courseConfirmationRequired() == 
true && 
 
 2245                        foreach ($profile_fields as $field)
 
 2247                                if (! 
$ilias->getSetting(
"usr_settings_course_export_" . $field) && 
$_POST[
"chb"][
"course_export_" . $field] == 
"1")
 
 2249                                        #ilUtil::sendQuestion($this->lng->txt('confirm_message_course_export')); 
 2250                                        #$this->confirm_change = 1; 
 2251                                        #$this->settingsObject(); 
 2257                if($action == 
'save')
 
 2259                        include_once(
'Services/Membership/classes/class.ilMemberAgreement.php');
 
 2263                foreach ($profile_fields as $field)
 
 2271                        if (!
$_POST[
"chb"][
"visible_".$field] && !$field_properties[$field][
"visible_hide"])
 
 2273                                $ilias->setSetting(
"usr_settings_hide_".$field, 
"1");
 
 2277                                $ilias->deleteSetting(
"usr_settings_hide_".$field);
 
 2280                        if (!
$_POST[
"chb"][
"changeable_" . $field] && !$field_properties[$field][
"changeable_hide"])
 
 2282                                $ilias->setSetting(
"usr_settings_disable_".$field, 
"1");
 
 2286                                $ilias->deleteSetting(
"usr_settings_disable_".$field);
 
 2290                        if ((
int)
$_POST[
'chb'][
'visib_reg_' . $field] && !$field_properties[$field][
"visib_reg_hide"])
 
 2292                                $ilSetting->set(
'usr_settings_visib_reg_'.$field, 
'1');
 
 2296                                $ilSetting->set(
'usr_settings_visib_reg_'.$field, 
'0');
 
 2299                        if ((
int)
$_POST[
'chb'][
'visib_lua_' . $field])
 
 2302                                $ilSetting->set(
'usr_settings_visib_lua_'.$field, 
'1');
 
 2306                                $ilSetting->set(
'usr_settings_visib_lua_'.$field, 
'0');
 
 2309                        if ((
int)
$_POST[
'chb'][
'changeable_lua_' . $field])
 
 2312                                $ilSetting->set(
'usr_settings_changeable_lua_'.$field, 
'1');
 
 2316                                $ilSetting->set(
'usr_settings_changeable_lua_'.$field, 
'0');
 
 2319                        if (
$_POST[
"chb"][
"export_" . $field] && !$field_properties[$field][
"export_hide"])
 
 2321                                $ilias->setSetting(
"usr_settings_export_".$field, 
"1");
 
 2325                                $ilias->deleteSetting(
"usr_settings_export_".$field);
 
 2329                        if (
$_POST[
"chb"][
"course_export_" . $field] && !$field_properties[$field][
"course_export_hide"])
 
 2331                                $ilias->setSetting(
"usr_settings_course_export_".$field, 
"1");
 
 2335                                $ilias->deleteSetting(
"usr_settings_course_export_".$field);
 
 2339                        if (
$_POST[
"chb"][
"group_export_" . $field] && !$field_properties[$field][
"group_export_hide"])
 
 2341                                $ilias->setSetting(
"usr_settings_group_export_".$field, 
"1");
 
 2345                                $ilias->deleteSetting(
"usr_settings_group_export_".$field);
 
 2348                        $is_fixed = array_key_exists($field, $fixed_required_fields);
 
 2349                        if ($is_fixed && $fixed_required_fields[$field] || ! $is_fixed && 
$_POST[
"chb"][
"required_".$field])
 
 2351                                $ilias->setSetting(
"require_".$field, 
"1");
 
 2355                                $ilias->deleteSetting(
"require_" . $field);
 
 2359                if (
$_POST[
"select"][
"default_hits_per_page"])
 
 2361                        $ilias->setSetting(
"hits_per_page",
$_POST[
"select"][
"default_hits_per_page"]);
 
 2369                if (
$_POST[
"chb"][
"export_preferences"])
 
 2371                        $ilias->setSetting(
"usr_settings_export_preferences",
$_POST[
"chb"][
"export_preferences"]);
 
 2373                        $ilias->deleteSetting(
"usr_settings_export_preferences");
 
 2376                $ilias->setSetting(
'mail_incoming_mail', (
int)
$_POST[
'select'][
'default_mail_incoming_mail']);
 
 2388                $action[-1] = $this->lng->txt(
'all_users');
 
 2389                $action[1] = $this->lng->txt(
'usr_active_only');
 
 2390                $action[0] = $this->lng->txt(
'usr_inactive_only');
 
 2391                $action[2] = $this->lng->txt(
'usr_limited_access_only');
 
 2392                $action[3] = $this->lng->txt(
'usr_without_courses');
 
 2393                $action[4] = $this->lng->txt(
'usr_filter_lastlogin');
 
 2394                $action[5] = $this->lng->txt(
"usr_filter_coursemember");
 
 2395                $action[6] = $this->lng->txt(
"usr_filter_groupmember");
 
 2396                $action[7] = $this->lng->txt(
"usr_filter_role");
 
 2409                if(!isset(
$_POST[
"file"]))
 
 2411                        $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->ilias->error_obj->MESSAGE);
 
 2414                if (count(
$_POST[
"file"]) > 1)
 
 2416                        $this->
ilias->raiseError($this->lng->txt(
"select_max_one_item"),$this->ilias->error_obj->MESSAGE);
 
 2421                $export_dir = $this->
object->getExportDirectory();
 
 2430                if(!isset(
$_POST[
"file"]))
 
 2432                        $this->
ilias->raiseError($this->lng->txt(
"no_checkbox"),$this->ilias->error_obj->MESSAGE);
 
 2436                include_once(
"./Services/Utilities/classes/class.ilConfirmationGUI.php");
 
 2438                $cgui->setFormAction($this->ctrl->getFormAction($this));
 
 2439                $cgui->setHeaderText($this->lng->txt(
"info_delete_sure"));
 
 2440                $cgui->setCancel($this->lng->txt(
"cancel"), 
"cancelDeleteExportFile");
 
 2441                $cgui->setConfirm($this->lng->txt(
"confirm"), 
"deleteExportFile");              
 
 2449                $this->tpl->setContent($cgui->getHTML());
 
 2458                $this->ctrl->redirectByClass(
"ilobjuserfoldergui", 
"export");
 
 2467                $export_dir = $this->
object->getExportDirectory();
 
 2472                        $exp_file = $export_dir.
"/".
$file;
 
 2473                        if (@is_file($exp_file))
 
 2478                $this->ctrl->redirectByClass(
"ilobjuserfoldergui", 
"export");
 
 2495                if (
$_POST[
"cmd"][
"export"])
 
 2497                        $this->
object->buildExportFile(
$_POST[
"export_type"]);
 
 2498                        $this->ctrl->redirectByClass(
"ilobjuserfoldergui", 
"export");
 
 2502                $this->tpl->addBlockfile(
'ADM_CONTENT',
'adm_content',
'tpl.usr_export.html',
'Services/User');
 
 2504                $export_types = array(
 
 2505                        "userfolder_export_excel_x86",
 
 2506                        "userfolder_export_csv",
 
 2507                        "userfolder_export_xml" 
 2511                include_once(
"./Services/Table/classes/class.ilTableGUI.php");
 
 2515                $this->tpl->addBlockfile(
"EXPORT_FILES", 
"export_files", 
"tpl.table.html");
 
 2518                $this->tpl->addBlockfile(
"TBL_CONTENT", 
"tbl_content", 
"tpl.usr_export_file_row.html", 
"Services/User");
 
 2522                $tbl->setTitle($this->lng->txt(
"userfolder_export_files"));
 
 2524                $tbl->setHeaderNames(array(
"", $this->lng->txt(
"userfolder_export_file"),
 
 2525                        $this->lng->txt(
"userfolder_export_file_size"), $this->lng->txt(
"date") ));
 
 2526                $tbl->setHeaderVars(array(), 
$ilCtrl->getParameterArray($this, 
"export"));
 
 2528                $tbl->enabled[
"sort"] = 
false;
 
 2529                $tbl->setColumnWidth(array(
"1%", 
"49%", 
"25%", 
"25%"));
 
 2533                $tbl->setOrderDirection(
$_GET[
"sort_order"]);
 
 2536                $tbl->setMaxCount($this->maxcount);             
 
 2539                $this->tpl->setVariable(
"COLUMN_COUNTS", 4);
 
 2543                $this->tpl->setVariable(
"ALT_ARROW", $this->lng->txt(
"actions"));
 
 2544                $this->tpl->setCurrentBlock(
"tbl_action_btn");
 
 2545                $this->tpl->setVariable(
"BTN_NAME", 
"confirmDeleteExportFile");
 
 2546                $this->tpl->setVariable(
"BTN_VALUE", $this->lng->txt(
"delete"));
 
 2547                $this->tpl->parseCurrentBlock();
 
 2549                $this->tpl->setCurrentBlock(
"tbl_action_btn");
 
 2550                $this->tpl->setVariable(
"BTN_NAME", 
"downloadExportFile");
 
 2551                $this->tpl->setVariable(
"BTN_VALUE", $this->lng->txt(
"download"));
 
 2552                $this->tpl->parseCurrentBlock();
 
 2555                $tbl->setFooter(
"tblfooter",$this->lng->txt(
"previous"),$this->lng->txt(
"next"));
 
 2558                $export_files = $this->
object->getExportFiles();
 
 2560                $tbl->setMaxCount(count($export_files));
 
 2561                $export_files = array_slice($export_files, 
$_GET[
"offset"], 
$_GET[
"limit"]);
 
 2565                if(count($export_files) > 0)
 
 2568                        foreach($export_files as $exp_file)
 
 2570                                $this->tpl->setCurrentBlock(
"tbl_content");
 
 2571                                $this->tpl->setVariable(
"TXT_FILENAME", $exp_file[
"filename"]);
 
 2574                                $this->tpl->setVariable(
"CSS_ROW", $css_row);
 
 2576                                $this->tpl->setVariable(
"TXT_SIZE", $exp_file[
"filesize"]);
 
 2577                                $this->tpl->setVariable(
"CHECKBOX_ID", $exp_file[
"filename"]);
 
 2579                                $file_arr = explode(
"__", $exp_file[
"filename"]);
 
 2582                                $this->tpl->parseCurrentBlock();
 
 2585                        $this->tpl->setCurrentBlock(
"selectall");
 
 2586                        $this->tpl->setVariable(
"SELECT_ALL", $this->lng->txt(
"select_all"));
 
 2587                        $this->tpl->setVariable(
"CSS_ROW", $css_row);
 
 2588                        $this->tpl->parseCurrentBlock();
 
 2601                $this->tpl->parseCurrentBlock();
 
 2604                foreach ($export_types as $export_type)
 
 2606                        $this->tpl->setCurrentBlock(
"option");
 
 2607                        $this->tpl->setVariable(
"OPTION_VALUE", $export_type);
 
 2608                        $this->tpl->setVariable(
"OPTION_TEXT", $this->lng->txt($export_type));
 
 2609                        $this->tpl->parseCurrentBlock();
 
 2612                $this->tpl->setVariable(
"EXPORT_BUTTON", $this->lng->txt(
"create_export_file"));
 
 2613                $this->tpl->setVariable(
"FORMACTION", $this->ctrl->getFormAction($this));
 
 2620                $lng->loadLanguageModule(
"meta");
 
 2621                $lng->loadLanguageModule(
"mail");
 
 2623                include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
 
 2625                $form->setFormAction(
$ilCtrl->getFormAction($this));
 
 2628                $form->setTitle(
$lng->txt(
"user_new_account_mail"));
 
 2629                $form->setDescription(
$lng->txt(
"user_new_account_mail_desc"));
 
 2631                $langs = 
$lng->getInstalledLanguages();
 
 2632                foreach($langs as $lang_key)
 
 2634                        $amail = $this->
object->_lookupNewAccountMail($lang_key);
 
 2636                        $title = 
$lng->txt(
"meta_l_".$lang_key);
 
 2637                        if ($lang_key == 
$lng->getDefaultLanguage())
 
 2639                                $title .= 
" (".$lng->txt(
"default").
")";
 
 2648                        $subj->setValue($amail[
"subject"]);
 
 2649                        $form->addItem($subj);
 
 2651                        $salg = 
new ilTextInputGUI(
$lng->txt(
"mail_salutation_general"), 
"sal_g_".$lang_key);
 
 2653                        $salg->setValue($amail[
"sal_g"]);
 
 2654                        $form->addItem($salg);
 
 2658                        $salf->setValue($amail[
"sal_f"]);
 
 2659                        $form->addItem($salf);
 
 2663                        $salm->setValue($amail[
"sal_m"]);
 
 2664                        $form->addItem($salm);
 
 2668                        $body->setValue($amail[
"body"]);
 
 2670                        $body->setCols(100);
 
 2671                        $form->addItem($body);
 
 2674                        $att->setAllowDeletion(
true);
 
 2675                        if($amail[
"att_file"])
 
 2677                                $att->setValue($amail[
"att_file"]);
 
 2679                        $form->addItem($att);
 
 2682                $form->addCommandButton(
"saveNewAccountMail", 
$lng->txt(
"save"));
 
 2683                $form->addCommandButton(
"cancelNewAccountMail", 
$lng->txt(
"cancel"));
 
 2696                $this->tabs_gui->setTabActive(
'settings');
 
 2697                $this->tabs_gui->setSubTabActive(
'user_new_account_mail');
 
 2701                $ftpl = 
new ilTemplate(
'tpl.usrf_new_account_mail.html', 
true, 
true, 
'Services/User');
 
 2702                $ftpl->setVariable(
"FORM", $form->getHTML());
 
 2706                $ftpl->setVariable(
"TXT_USE_PLACEHOLDERS", 
$lng->txt(
"mail_nacc_use_placeholder"));
 
 2707                $ftpl->setVariable(
"TXT_MAIL_SALUTATION", 
$lng->txt(
"mail_nacc_salutation"));
 
 2708                $ftpl->setVariable(
"TXT_FIRST_NAME", 
$lng->txt(
"firstname"));
 
 2709                $ftpl->setVariable(
"TXT_LAST_NAME", 
$lng->txt(
"lastname"));
 
 2710                $ftpl->setVariable(
"TXT_EMAIL", 
$lng->txt(
"email"));
 
 2711                $ftpl->setVariable(
"TXT_LOGIN", 
$lng->txt(
"mail_nacc_login"));
 
 2712                $ftpl->setVariable(
"TXT_PASSWORD", 
$lng->txt(
"password"));
 
 2713                $ftpl->setVariable(
"TXT_PASSWORD_BLOCK", 
$lng->txt(
"mail_nacc_pw_block"));
 
 2714                $ftpl->setVariable(
"TXT_NOPASSWORD_BLOCK", 
$lng->txt(
"mail_nacc_no_pw_block"));
 
 2715                $ftpl->setVariable(
"TXT_ADMIN_MAIL", 
$lng->txt(
"mail_nacc_admin_mail"));
 
 2716                $ftpl->setVariable(
"TXT_ILIAS_URL", 
$lng->txt(
"mail_nacc_ilias_url"));
 
 2717                $ftpl->setVariable(
"TXT_CLIENT_NAME", 
$lng->txt(
"mail_nacc_client_name"));
 
 2718                $ftpl->setVariable(
"TXT_TARGET", 
$lng->txt(
"mail_nacc_target"));
 
 2719                $ftpl->setVariable(
"TXT_TARGET_TITLE", 
$lng->txt(
"mail_nacc_target_title"));
 
 2720                $ftpl->setVariable(
"TXT_TARGET_TYPE", 
$lng->txt(
"mail_nacc_target_type"));
 
 2721                $ftpl->setVariable(
"TXT_TARGET_BLOCK", 
$lng->txt(
"mail_nacc_target_block"));    
 
 2722                $ftpl->setVariable(
"TXT_IF_TIMELIMIT", 
$lng->txt(
"mail_nacc_if_timelimit"));    
 
 2723                $ftpl->setVariable(
"TXT_TIMELIMIT", 
$lng->txt(
"mail_nacc_timelimit"));  
 
 2725                $this->tpl->setContent($ftpl->get());
 
 2730                $this->ctrl->redirect($this, 
"settings");
 
 2737                $langs = 
$lng->getInstalledLanguages();
 
 2738                foreach($langs as $lang_key)
 
 2740                        $this->
object->_writeNewAccountMail($lang_key,
 
 2747                        if($_FILES[
"att_".$lang_key][
"tmp_name"])
 
 2749                                $this->
object->_updateAccountMailAttachment($lang_key, 
 
 2750                                        $_FILES[
"att_".$lang_key][
"tmp_name"],
 
 2751                                        $_FILES[
"att_".$lang_key][
"name"]);                             
 
 2754                        if (
$_POST[
"att_".$lang_key.
"_delete"])
 
 2756                                $this->
object->_deleteAccountMailAttachment($lang_key);
 
 2761                $this->ctrl->redirect($this, 
"newAccountMail");
 
 2776                include_once 
'Services/Tracking/classes/class.ilObjUserTracking.php';
 
 2780                if ($rbacsystem->checkAccess(
"visible,read",$this->object->getRefId()))
 
 2782                        $tabs_gui->addTarget(
"usrf",
 
 2783                                $this->ctrl->getLinkTarget($this, 
"view"), array(
"view",
"delete",
"resetFilter", 
"userAction", 
""), 
"", 
"");
 
 2785                        $tabs_gui->addTarget(
 
 2786                                "search_user_extended",
 
 2787                                $this->ctrl->getLinkTargetByClass(
'ilRepositorySearchGUI',
''),
 
 2789                                "ilrepositorysearchgui",
 
 2794                if ($rbacsystem->checkAccess(
"write",$this->object->getRefId()))
 
 2796                        $tabs_gui->addTarget(
"settings",
 
 2797                                $this->ctrl->getLinkTarget($this, 
"generalSettings"),array(
'settings',
'generalSettings',
'listUserDefinedField',
'newAccountMail'));
 
 2799                        $tabs_gui->addTarget(
"export",
 
 2800                                $this->ctrl->getLinkTarget($this, 
"export"), 
"export", 
"", 
"");
 
 2812                if ($rbacsystem->checkAccess(
'edit_permission',$this->object->getRefId()))
 
 2814                        $tabs_gui->addTarget(
"perm_settings",
 
 2815                                                                 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'), 
"perm"), 
 
 2816                                                                 array(
"perm",
"info",
"owner"), 
'ilpermissiongui');
 
 2831                                $this->tabs_gui->addSubTabTarget(
 
 2833                                        $this->ctrl->getLinkTarget($this, 
'generalSettings'), 
'generalSettings', get_class($this));                                                                                              
 
 2834                                $this->tabs_gui->addSubTabTarget(
"standard_fields",
 
 2835                                                                                                 $this->ctrl->getLinkTarget($this,
'settings'),
 
 2836                                                                                                 array(
"settings", 
"saveGlobalUserSettings"), get_class($this));
 
 2837                                $this->tabs_gui->addSubTabTarget(
"user_defined_fields",
 
 2838                                                                                                 $this->ctrl->getLinkTargetByClass(
"ilcustomuserfieldsgui", 
"listUserDefinedFields"),
 
 2839                                                                                                 "listUserDefinedFields",get_class($this));
 
 2840                                $this->tabs_gui->addSubTabTarget(
"user_new_account_mail",
 
 2841                                                                                                 $this->ctrl->getLinkTarget($this,
'newAccountMail'),
 
 2842                                                                                                 "newAccountMail",get_class($this));                            
 
 2843                                #$this->tabs_gui->addSubTab("account_codes", $this->lng->txt("user_account_codes"),
 
 2844                                #                                                        $this->ctrl->getLinkTargetByClass("ilaccountcodesgui"));                                                                                                
 
 2853                $show_blocking_time_in_days = (int)
$ilSetting->get(
'loginname_change_blocking_time') / 86400;
 
 2856                $this->loginSettingsForm->setValuesByArray(array(
 
 2857                        'allow_change_loginname' => (
bool)
$ilSetting->get(
'allow_change_loginname'),
 
 2858                        'create_history_loginname' => (
bool)
$ilSetting->get(
'create_history_loginname'),
 
 2859                        'reuse_of_loginnames' => (
bool)
$ilSetting->get(
'reuse_of_loginnames'),
 
 2860                        'loginname_change_blocking_time' => (
float)$show_blocking_time_in_days
 
 2863                $this->tpl->setVariable(
'ADM_CONTENT', $this->loginSettingsForm->getHTML());
 
 2869                $this->tabs_gui->setTabActive(
'settings');
 
 2870                $this->tabs_gui->setSubTabActive(
'loginname_settings');
 
 2872                include_once(
"./Services/Form/classes/class.ilPropertyFormGUI.php");
 
 2874                $this->loginSettingsForm->
setFormAction($this->ctrl->getFormAction($this, 
'saveLoginnameSettings'));
 
 2875                $this->loginSettingsForm->setTitle($this->lng->txt(
'loginname_settings'));
 
 2877                $chbChangeLogin = 
new ilCheckboxInputGUI($this->lng->txt(
'allow_change_loginname'), 
'allow_change_loginname');
 
 2878                $chbChangeLogin->setValue(1);
 
 2879                $this->loginSettingsForm->addItem($chbChangeLogin);             
 
 2880                        $chbCreateHistory = 
new ilCheckboxInputGUI($this->lng->txt(
'history_loginname'), 
'create_history_loginname');
 
 2881                        $chbCreateHistory->setInfo($this->lng->txt(
'loginname_history_info'));
 
 2882                        $chbCreateHistory->setValue(1);
 
 2883                $chbChangeLogin->addSubItem($chbCreateHistory); 
 
 2884                        $chbReuseLoginnames = 
new ilCheckboxInputGUI($this->lng->txt(
'reuse_of_loginnames_contained_in_history'), 
'reuse_of_loginnames');
 
 2885                        $chbReuseLoginnames->setValue(1);
 
 2886                        $chbReuseLoginnames->setInfo($this->lng->txt(
'reuse_of_loginnames_contained_in_history_info'));
 
 2887                $chbChangeLogin->addSubItem($chbReuseLoginnames);
 
 2888                        $chbChangeBlockingTime = 
new ilNumberInputGUI($this->lng->txt(
'loginname_change_blocking_time'), 
'loginname_change_blocking_time');
 
 2889                        $chbChangeBlockingTime->allowDecimals(
true);
 
 2890                        $chbChangeBlockingTime->setSuffix($this->lng->txt(
'days'));
 
 2891                        $chbChangeBlockingTime->setInfo($this->lng->txt(
'loginname_change_blocking_time_info'));
 
 2892                        $chbChangeBlockingTime->setSize(10);
 
 2893                        $chbChangeBlockingTime->setMaxLength(10);
 
 2894                $chbChangeLogin->addSubItem($chbChangeBlockingTime);            
 
 2896                $this->loginSettingsForm->addCommandButton(
'saveLoginnameSettings', $this->lng->txt(
'save'));
 
 2904                if($this->loginSettingsForm->checkInput())
 
 2908                        if(!strlen($this->loginSettingsForm->getInput(
'loginname_change_blocking_time')))
 
 2911                                $this->loginSettingsForm->getItemByPostVar(
'loginname_change_blocking_time')
 
 2912                                                                                ->setAlert($this->lng->txt(
'loginname_change_blocking_time_invalidity_info'));
 
 2917                                $save_blocking_time_in_seconds = (int)$this->loginSettingsForm->getInput(
'loginname_change_blocking_time') * 86400;
 
 2919                                $ilSetting->set(
'allow_change_loginname', (
int)$this->loginSettingsForm->getInput(
'allow_change_loginname'));
 
 2920                                $ilSetting->set(
'create_history_loginname', (
int)$this->loginSettingsForm->getInput(
'create_history_loginname'));
 
 2921                                $ilSetting->set(
'reuse_of_loginnames', (
int)$this->loginSettingsForm->getInput(
'reuse_of_loginnames'));
 
 2922                                $ilSetting->set(
'loginname_change_blocking_time', (
int)$save_blocking_time_in_seconds);
 
 2935                $this->loginSettingsForm->setValuesByPost();            
 
 2937                $this->tpl->setVariable(
'ADM_CONTENT', $this->loginSettingsForm->getHTML());
 
 2949                if ($ilAccess->checkAccess(
"read", 
"", $a_target))
 
 2951                        ilUtil::redirect(
"ilias.php?baseClass=ilAdministrationGUI&ref_id=".$a_target.
"&jmpToUser=".$a_user);
 
 2956                        if ($ilAccess->checkAccess(
"read", 
"", ROOT_FOLDER_ID))
 
 2975                        $ilCtrl->setParameterByClass(
"ilobjusergui", 
"obj_id", (
int) 
$_GET[
"jmpToUser"]);
 
 2976                        $ilCtrl->redirectByClass(
"ilobjusergui", 
"view");
 
 2985                if(!count((array) $a_usr_ids))
 
 2991                $_POST[
'id'] = $a_usr_ids;
 
 2994                if(stristr($a_cmd, 
"export"))
 
 2996                        $cmd = $a_cmd.
"Object";
 
 2997                        return $this->
$cmd();
 
 3000                $_POST[
'selectedAction'] = $a_cmd;              
 
 3012                                'activate' => $this->lng->txt(
'activate'),
 
 3013                                'deactivate' => $this->lng->txt(
'deactivate'),
 
 3014                                'accessRestrict' => $this->lng->txt(
'accessRestrict'),
 
 3015                                'accessFree' => $this->lng->txt(
'accessFree')
 
 3018                        if ($rbacsystem->checkAccess(
'delete', $this->object->getRefId()))
 
 3020                                $cmds[
"delete"] = $this->lng->txt(
"delete");
 
 3027                                'activateUsers' => $this->lng->txt(
'activate'),
 
 3028                                'deactivateUsers' => $this->lng->txt(
'deactivate'),
 
 3029                                'restrictAccess' => $this->lng->txt(
'accessRestrict'),
 
 3030                                'freeAccess' => $this->lng->txt(
'accessFree')
 
 3033                        if ($rbacsystem->checkAccess(
'delete', $this->object->getRefId()))
 
 3035                                $cmds[
"deleteUsers"] = $this->lng->txt(
"delete");                               
 
 3040                $export_types = array(
"userfolder_export_excel_x86", 
"userfolder_export_csv", 
"userfolder_export_xml");         
 
 3041                foreach ($export_types as $type)
 
 3043                        $cmd = explode(
"_", $type);
 
 3045                        $cmds[
'usrExport'.ucfirst(
$cmd)] = $this->lng->txt(
'export').
' - '.
 
 3046                                $this->lng->txt($type);
 
 3050                include_once 
"Services/Mail/classes/class.ilMail.php";
 
 3052                if($rbacsystem->checkAccess(
'internal_mail', $mail->getMailObjectReferenceId()))
 
 3054                        $cmds[
"mail"] = $this->lng->txt(
"send_mail");
 
 3068                $this->
object->buildExportFile(
"userfolder_export_excel_x86", $user_ids);               
 
 3069                $this->ctrl->redirectByClass(
"ilobjuserfoldergui", 
"export");
 
 3080                $this->
object->buildExportFile(
"userfolder_export_csv", $user_ids);             
 
 3081                $this->ctrl->redirectByClass(
"ilobjuserfoldergui", 
"export");
 
 3092                $this->
object->buildExportFile(
"userfolder_export_xml", $user_ids);             
 
 3093                $this->ctrl->redirectByClass(
"ilobjuserfoldergui", 
"export");
 
 3108                include_once 
"Services/Contact/classes/class.ilMailingLists.php";
 
 3110                $list->deleteTemporaryLists();
 
 3113                include_once 
"Services/Contact/classes/class.ilMailingList.php";
 
 3116                $list->setTitle(
"-TEMPORARY SYSTEM LIST-");
 
 3117                $list->setDescription(
"-USER ACCOUNTS MAIL-");
 
 3118                $list->setCreateDate(date(
"Y-m-d H:i:s"));              
 
 3120                $list_id = $list->getId();                              
 
 3123                foreach($user_ids as $user_id)
 
 3125                        $list->assignUser($user_id);
 
 3128                include_once 
"Services/Mail/classes/class.ilFormatMail.php";
 
 3130                $mail_data = $umail->getSavedData();            
 
 3132                if(!is_array($mail_data))
 
 3134                        $mail_data = array(
"user_id" => 
$ilUser->getId());
 
 3140                $umail->savePostData(
 
 3141                        $mail_data[
'user_id'],
 
 3142                        $mail_data[
'attachments'],
 
 3144                        $mail_data[
'rcp_cc'],
 
 3145                        $mail_data[
'rcp_bcc'],
 
 3146                        $mail_data[
'm_type'],
 
 3147                        $mail_data[
'm_email'],
 
 3148                        $mail_data[
'm_subject'],
 
 3149                        $mail_data[
'm_message'],
 
 3150                        $mail_data[
'use_placeholders'],
 
 3151                        $mail_data[
'tpl_ctx_id'],
 
 3152                        $mail_data[
'tpl_ctx_params']
 
 3155                require_once 
'Services/Mail/classes/class.ilMailFormCall.php';
 
 3162                                        'type' => 
'search_res' 
 3174                                include_once(
'./Services/PrivacySecurity/classes/class.ilSecuritySettings.php');
 
 3184                                        'ps_password_min_length' => (
int)$security->getPasswordMinLength(),
 
 3185                                        'ps_password_max_length' => (
int)$security->getPasswordMaxLength(),
 
 3186                                        'ps_password_uppercase_chars_num' => (
int)$security->getPasswordNumberOfUppercaseChars(),
 
 3187                                        'ps_password_lowercase_chars_num' => (
int)$security->getPasswordNumberOfLowercaseChars(),
 
 3188                                        'ps_password_max_age' => (
int)$security->getPasswordMaxAge()
 
 3190                                $fields[
'ps_password_settings'] = array(
null, 
null, $subitems);
 
 3193                                        'ps_login_max_attempts' => (
int)$security->getLoginMaxAttempts(),
 
 3196                                $fields[
'ps_security_protection'] = array(
null, 
null, $subitems);
 
 3198                                return array(array(
"generalSettings", $fields));        
 
const USER_FOLDER_ID
Class ilObjUserFolder.
const IL_UPDATE_ON_CONFLICT
const IL_IGNORE_ON_CONFLICT
GUI class for account codes.
Confirmation screen class.
Class ilCustomUserFieldsGUI.
static formatDate(ilDateTime $date)
Format a date @access public.
@classDescription Date and time handling
Class Mail this class handles base functions for mail handling.
static _reset()
Reset all.
This class represents a non editable value in a property form.
_getAssignUsersStatus($a_role_id)
Class ilObjUserFolderGUI.
addUserObject()
Add new user;.
deactivateUsersObject()
Deactivate users.
importCancelledObject()
import cancelled
getTabs(&$tabs_gui)
get tabs @access public
resetFilterObject()
Reset filter (note: this function existed before data table filter has been introduced.
saveGeneralSettingsObject()
Save user account settings.
addUserAutoCompleteObject()
Show auto complete results.
confirmdeactivateObject()
Set the selected users inactive.
cancelNewAccountMailObject()
cancelSearchActionObject()
deleteUsersObject()
Delete users.
restrictAccessObject()
Restrict access.
newAccountMailObject()
new account mail administration
showPossibleSubObjects()
show possible subobjects (pulldown menu) overwritten to prevent displaying of role templates in local...
__getDateSelect($a_type, $a_varname, $a_selected)
initUserImportForm()
Init user import form.
& executeCommand()
execute command
activateUsersObject()
Activate users.
confirmdeleteObject()
confirm delete Object
initFormGeneralSettings()
init general settings form
getUserMultiCommands($a_search_form=false)
setAccessRestrictionObject($a_form=null, $a_from_search=false)
viewObject($reset_filter=FALSE)
list users
importUserFormObject()
display form for user import
confirmaccessFreeObject()
importUserRoleAssignmentObject()
display form for user import
exportObject()
Global user settings.
jumpToUserObject()
Jump to edit screen for user.
__buildUserFilterSelect()
build select form to distinguish between active and non-active users
importUsersObject()
import users
showLoginnameSettingsObject()
initAccessRestrictionForm($a_from_search=false)
applyFilterObject()
Apply filter.
getActionUserIds()
Get selected items for table action.
updateAppliedUsersObject()
cancelDeleteExportFileObject()
cancel deletion of export files
searchResultHandler($a_usr_ids, $a_cmd)
Handles multi command from repository search gui.
downloadExportFileObject()
Download selected export files.
confirmDeleteExportFileObject()
confirmation screen for export file deletion
getAdminTabs(&$tabs_gui)
administration tabs show only permissions and trash folder
saveNewAccountMailObject()
settingsObject()
Global user settings.
saveGlobalUserSettingsObject($action="")
cancelUserFolderActionObject()
static _goto($a_user)
goto target group
getImportDir()
get user import directory name
saveLoginnameSettingsObject()
showActionConfirmation($action, $a_from_search=false)
display activation confirmation screen
showActions($with_subobjects=false)
show possible action (form buttons)
setSubTabs($a_tab)
set sub tabs
__setTableGUIBasicData(&$tbl, &$result_set, $from="")
standard implementation for tables use 'from' variable use different initial setting of table
ilObjUserFolderGUI($a_data, $a_id, $a_call_by_reference, $a_prepare_output=true)
Constructor @access public.
deleteExportFileObject()
delete export files
generalSettingsObject()
Show user account general settings.
__showAppliedUsersTable($a_result_set)
confirmaccessRestrictObject()
confirmactivateObject()
Set the selected users active.
chooseLetterObject()
Choose first letter.
freeAccessObject()
Free access.
addToExternalSettingsForm($a_form_id)
_lookupNewAccountMail($a_lang)
static _enabledLearningProgress()
check wether learing progress is enabled or not
static _enabledUserRelatedData()
check wether user related tracking is enabled or not
static getFirstLettersOfLastnames()
Get first letters of all lastnames.
getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
Class ilObjectGUI Basic methods of all Output classes.
ilObjectGUI($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
Constructor @access public.
viewObject()
list childs of current object
prepareOutput()
prepare output
static _gotoRepositoryRoot($a_raise_error=false)
Goto repository root.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
static _getIcon($a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
Get icon for repository item.
static _lookupType($a_id, $a_reference=false)
lookup object type
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static _getInstance()
Get instance of ilPrivacySettings.
This class represents an option in a radio group.
static _getInstance()
Get instance of ilSecuritySettings.
const DEFAULT_MAX_IDLE_AFTER_FIRST_REQUEST
const DEFAULT_ALLOW_CLIENT_MAINTENANCE
const DEFAULT_MAX_COUNT
default value for settings that have not been defined in setup or administration yet
static updateLimitLog($a_new_value)
Log max session setting.
const SESSION_HANDLING_LOAD_DEPENDENT
const SESSION_HANDLING_FIXED
static getSessionExpireValue()
Returns the session expiration value.
special template class to simplify handling of ITX/PEAR
This class represents a text area property in a property form.
This class represents a text property in a property form.
static getInstance()
Singelton get instance.
Auto completion class for user lists.
Learning progress account list for user administration.
static _isSearchable($a_key)
static _saveStatus($a_key, $a_enabled)
TableGUI class for user administration.
static getDataDir()
get data directory (outside webspace)
static moveUploadedFile($a_file, $a_name, $a_target, $a_raise_errors=true, $a_mode="move_uploaded")
move uploaded file
static delDir($a_dir, $a_clean_only=false)
removes a dir and all its content (subdirs and files) recursively
static formCheckbox($checked, $varname, $value, $disabled=false)
??? @access public
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static redirect($a_script)
http redirect to other script
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows)
static getDir($a_dir, $a_rec=false, $a_sub_dir="")
get directory
static unzip($a_file, $overwrite=false, $a_flat=false)
unzip file
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static makeDirParents($a_dir)
Create a new directory and all parent directories.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static formSelect($selected, $varname, $options, $multiple=false, $direct_text=false, $size="0", $style_class="", $attribs="", $disabled=false)
Builds a select form field with options and shows the selected option first.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static makeDir($a_dir)
creates a new directory and inherits all filesystem permissions of the parent directory You may pass ...
redirection script todo: (a better solution should control the processing via a xml file)
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']