4require_once
'Services/TermsOfService/classes/class.ilTermsOfServiceHelper.php';
33 $this->lng->loadLanguageModule(
'auth');
36 $ilCtrl->saveParameter($this, array(
"rep_ref_id",
"lang",
"target",
"client_id"));
45 $cmd = $this->ctrl->getCmd(
"processIndexPHP",array(
'processIndexPHP',
'showLoginPage'));
46 $next_class = $this->ctrl->getNextClass($this);
50 case 'ilLoginPageGUI':
53 case "ilaccountregistrationgui":
54 require_once(
"Services/Registration/classes/class.ilAccountRegistrationGUI.php");
57 case "ilpasswordassistancegui":
58 require_once(
"Services/Init/classes/class.ilPasswordAssistanceGUI.php");
81 $this->ctrl->setCmdClass(
"ilaccountregistrationgui");
82 $this->ctrl->setCmd(
"");
92 $this->ctrl->setCmdClass(
"ilpasswordassistancegui");
93 $this->ctrl->setCmd(
"");
100 protected function showLoginPageOrStartupPage()
105 $auth_session =
$GLOBALS[
'DIC'][
'ilAuthSession'];
107 $force_login =
false;
109 !is_array($_REQUEST[
'cmd']) &&
110 strcmp($_REQUEST[
'cmd'],
'force_login') === 0
118 $this->logger->debug(
'Force login');
119 if($auth_session->isValid())
121 $this->logger->debug(
'Valid session -> logout current user');
123 $auth_session->logout();
125 $GLOBALS[
'ilAppEventHandler']->raise(
126 'Services/Authentication',
133 $this->logger->debug(
'Show login page');
140 if($auth_session->isValid())
142 $this->logger->debug(
'Valid session -> redirect to starting page');
143 return ilInitialisation::redirectToStartingPage();
145 $this->logger->debug(
'No valid session -> show login');
158 $this->
getLogger()->debug(
'Showing login page');
161 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendCredentialsApache.php';
163 $frontend->tryAuthenticationOnLoginPage();
166 self::initStartUpTemplate(
"tpl.login.html");
170 $page_editor_html = $this->
showLoginForm($page_editor_html, $form);
174 $page_editor_html = $this->showTermsOfServiceLink($page_editor_html);
179 $tpl->setVariable(
"PAGETITLE",
"- ".$this->lng->txt(
"startpage"));
180 $tpl->setVariable(
"ILIAS_RELEASE",
$ilSetting->get(
"ilias_version"));
182 $this->ctrl->setTargetScript(
"ilias.php");
185 if(
$GLOBALS[
'DIC'][
'ilAuthSession']->isExpired())
191 if(strlen($page_editor_html))
193 $tpl->setVariable(
'LPE',$page_editor_html);
196 $tpl->fillWindowTitle();
197 $tpl->fillCssFiles();
198 $tpl->fillJavaScriptFiles();
199 $tpl->show(
"DEFAULT",
false);
212 $this->
getLogger()->warning(
'Using deprecated startup method');
215 $status = $ilAuth->getStatus();
216 if ($status ==
"" && isset(
$_GET[
"auth_stat"]))
218 $status =
$_GET[
"auth_stat"];
221 if($ilAuth->getAuth() && !$status)
224 if (
$_GET[
"rep_ref_id"] !=
"")
228 include_once
'./Services/Init/classes/class.ilInitialisation.php';
229 ilInitialisation::redirectToStartingPage();
236 if (empty(
$_GET[
'cookies']))
238 $additional_params =
'';
241 "&ext_uid=".
$_GET[
"ext_uid"].
"&cookies=nocookies&client_id=".
242 rawurlencode(CLIENT_ID).
"&lang=".
$lng->getLangKey().$additional_params);
251 unset(
$_GET[
'cookies']);
256 require_once
"./Services/AuthShibboleth/classes/class.ilShibbolethWAYF.php";
261 if (isset($WAYF) && $WAYF->is_selection())
263 if ($WAYF->is_valid_selection())
266 $WAYF->setSAMLCookie();
276 if (isset(
$_GET[
'reg_confirmation_msg']) && strlen(trim(
$_GET[
'reg_confirmation_msg'])))
278 $lng->loadLanguageModule(
'registration');
279 if(
$_GET[
'reg_confirmation_msg'] ==
'reg_account_confirmation_successful')
288 else if(isset(
$_GET[
'reached_session_limit']) &&
$_GET[
'reached_session_limit'])
292 else if(isset(
$_GET[
'accdel']) &&
$_GET[
'accdel'])
294 $lng->loadLanguageModule(
'user');
295 $failure =
$lng->txt(
"user_account_deleted_confirmation");
336 $lng->loadLanguageModule(
'cptch');
364 $username = $ilAuth->getExceededUserName();
389 case AUTH_WRONG_LOGIN:
392 $auth_error = $ilias->getAuthError();
393 if (is_object($auth_error))
395 $add =
"<br>".$auth_error->getMessage();
404 $lng->loadLanguageModule(
"auth");
412 self::initStartUpTemplate(
"tpl.login.html");
431 $page_editor_html = $this->showTermsOfServiceLink($page_editor_html);
435 $tpl->setVariable(
"PAGETITLE",
"- ".
$lng->txt(
"startpage"));
436 $tpl->setVariable(
"ILIAS_RELEASE",
$ilSetting->get(
"ilias_version"));
438 $this->ctrl->setTargetScript(
"ilias.php");
442 if (isset(
$_GET[
'cookies']) &&
$_GET[
'cookies'] ==
'nocookies')
447 if(strlen($page_editor_html))
449 $tpl->setVariable(
'LPE',$page_editor_html);
452 $tpl->fillWindowTitle();
453 $tpl->fillCssFiles();
454 $tpl->fillJavaScriptFiles();
456 $tpl->show(
"DEFAULT",
false);
463 self::initStartUpTemplate(
"tpl.login_reactivate_code.html");
472 $tpl->setVariable(
"FORM", $a_form->getHTML());
473 $tpl->show(
"DEFAULT",
false);
480 $lng->loadLanguageModule(
"auth");
482 include_once
'Services/Form/classes/class.ilPropertyFormGUI.php';
485 $form->setFormAction(
$ilCtrl->getFormAction($this,
'showcodeform'));
486 $form->setTitle(
$lng->txt(
'auth_account_code_title'));
489 $count->setRequired(
true);
490 $count->setInfo(
$lng->txt(
'auth_account_code_info'));
491 $form->addItem($count);
495 $uname->setValue($a_username);
496 $form->addItem($uname);
498 $form->addCommandButton(
'processCode',
$lng->txt(
'send'));
517 if($uname && $form->checkInput())
519 $code = $form->getInput(
"code");
521 include_once
"Services/User/classes/class.ilAccountCode.php";
532 $invalid_code =
false;
535 if($valid_until ===
"0")
537 $user->setTimeLimitUnlimited(
true);
541 if(is_numeric($valid_until))
543 $valid_until = strtotime(
"+".$valid_until.
"days");
547 $valid_until = explode(
"-", $valid_until);
548 $valid_until = mktime(23, 59, 59, $valid_until[1],
549 $valid_until[2], $valid_until[0]);
550 if($valid_until < time())
552 $invalid_code =
true;
558 $user->setTimeLimitUnlimited(
false);
559 $user->setTimeLimitUntil($valid_until);
565 $user->setActive(
true);
577 $ilCtrl->setParameter($this,
"cu", 1);
578 $GLOBALS[
'DIC']->language()->loadLanguageModule(
'auth');
580 $ilCtrl->redirect($this,
"showLoginPage");
584 $lng->loadLanguageModule(
"user");
585 $field = $form->getItemByPostVar(
"code");
586 $field->setAlert(
$lng->txt(
"user_account_code_not_valid"));
589 $form->setValuesByPost();
600 include_once
'Services/Form/classes/class.ilPropertyFormGUI.php';
602 $form->setFormAction($this->ctrl->getFormAction($this,
''));
603 $form->setName(
"formlogin");
604 $form->setShowTopButtons(
false);
605 $form->setTitle($this->lng->txt(
"login_to_ilias"));
607 include_once
'./Services/Authentication/classes/class.ilAuthModeDetermination.php';
612 $visible_auth_methods = array();
616 if(isset($option[
'hide_in_ui']) && $option[
'hide_in_ui'])
622 $radg->addOption($op1);
623 if (isset($option[
'checked']))
625 $radg->setValue($key);
627 $visible_auth_methods[] = $op1;
630 if(count($visible_auth_methods) == 1)
632 $first_auth_method = current($visible_auth_methods);
634 $hidden_auth_method->setValue($first_auth_method->getValue());
635 $form->addItem($hidden_auth_method);
639 $form->addItem($radg);
643 $ti =
new ilTextInputGUI($this->lng->txt(
"username"),
"username");
645 $ti->setRequired(
true);
649 $pi->setUseStripSlashes(
false);
650 $pi->setRetype(
false);
651 $pi->setSkipSyntaxCheck(
true);
653 $pi->setDisableHtmlAutoComplete(
false);
654 $pi->setRequired(
true);
657 require_once
'Services/Captcha/classes/class.ilCaptchaUtil.php';
658 if(ilCaptchaUtil::isActiveForLogin())
660 require_once
'Services/Captcha/classes/class.ilCaptchaInputGUI.php';
661 $captcha =
new ilCaptchaInputGUI($this->lng->txt(
'captcha_code'),
'captcha_code');
662 $captcha->setRequired(
true);
663 $form->addItem($captcha);
666 $form->addCommandButton(
"doStandardAuthentication", $this->lng->txt(
"log_in"));
676 $this->
getLogger()->debug(
'Trying shibboleth authentication');
678 include_once
'./Services/AuthShibboleth/classes/class.ilAuthFrontendCredentialsShibboleth.php';
680 $credentials->initFromRequest();
682 include_once
'./Services/Authentication/classes/Provider/class.ilAuthProviderFactory.php';
686 include_once
'./Services/Authentication/classes/class.ilAuthStatus.php';
689 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendFactory.php';
692 $frontend = $frontend_factory->getFrontend(
699 $frontend->authenticate();
701 switch($status->getStatus())
705 include_once
'./Services/Init/classes/class.ilInitialisation.php';
706 ilInitialisation::redirectToStartingPage();
710 return $GLOBALS[
'ilCtrl']->redirect($this,
'showAccountMigration');
714 $GLOBALS[
'ilCtrl']->redirect($this,
'showLoginPage');
730 $this->
getLogger()->debug(
'Trying cas authentication');
732 include_once
'./Services/CAS/classes/class.ilAuthFrontendCredentialsCAS.php';
735 include_once
'./Services/Authentication/classes/Provider/class.ilAuthProviderFactory.php';
739 include_once
'./Services/Authentication/classes/class.ilAuthStatus.php';
742 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendFactory.php';
745 $frontend = $frontend_factory->getFrontend(
752 $frontend->authenticate();
753 switch($status->getStatus()) {
755 $this->
getLogger()->debug(
'Authentication successful.');
756 ilInitialisation::redirectToStartingPage();
773 $this->
getLogger()->debug(
'Trying apache authentication');
775 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendCredentialsApache.php';
777 $credentials->initFromRequest();
779 include_once
'./Services/Authentication/classes/Provider/class.ilAuthProviderFactory.php';
783 include_once
'./Services/Authentication/classes/class.ilAuthStatus.php';
786 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendFactory.php';
789 $frontend = $frontend_factory->getFrontend(
796 $frontend->authenticate();
798 switch($status->getStatus())
802 if($credentials->hasValidTargetUrl())
808 require_once
'./Services/Init/classes/class.ilInitialisation.php';
809 ilInitialisation::redirectToStartingPage();
814 return $GLOBALS[
'ilCtrl']->redirect($this,
'showAccountMigration');
820 $GLOBALS[
'ilCtrl']->getLinkTarget($this,
'showLoginPage',
'',
false,
false),
838 if($form->checkInput())
840 $this->
getLogger()->debug(
'Trying to authenticate user.');
842 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendCredentials.php';
844 $credentials->setUsername($form->getInput(
'username'));
845 $credentials->setPassword($form->getInput(
'password'));
846 $credentials->setCaptchaCode($form->getInput(
'captcha_code'));
849 include_once
'./Services/Authentication/classes/class.ilAuthModeDetermination.php';
853 $credentials->setAuthMode($form->getInput(
'auth_mode'));
856 include_once
'./Services/Authentication/classes/Provider/class.ilAuthProviderFactory.php';
858 $providers = $provider_factory->getProviders($credentials);
860 include_once
'./Services/Authentication/classes/class.ilAuthStatus.php';
863 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendFactory.php';
866 $frontend = $frontend_factory->getFrontend(
873 $frontend->authenticate();
875 switch($status->getStatus())
879 include_once
'./Services/Init/classes/class.ilInitialisation.php';
880 ilInitialisation::redirectToStartingPage();
887 return $GLOBALS[
'ilCtrl']->redirect($this,
'showAccountMigration');
935 return $page_editor_html;
947 if(strlen($page_editor_html))
950 return $page_editor_html;
953 $loginSettings =
new ilSetting(
"login_settings");
954 $information = $loginSettings->get(
"login_message_".
$lng->getLangKey());
956 if(strlen(trim($information)))
958 $tpl->setVariable(
"TXT_LOGIN_INFORMATION", $information);
960 return $page_editor_html;
977 $tpl =
new ilTemplate(
'tpl.login_form_cas.html',
true,
true,
'Services/Init');
978 $tpl->setVariable(
"TXT_CAS_LOGIN",
$lng->txt(
"login_to_ilias_via_cas"));
980 $tpl->setVariable(
"TXT_CAS_LOGIN_INSTRUCTIONS",
$ilSetting->get(
"cas_login_instructions"));
981 $this->ctrl->setParameter($this,
"forceCASLogin",
"1");
982 $tpl->setVariable(
"TARGET_CAS_LOGIN",$this->ctrl->getLinkTarget($this,
"doCasAuthentication"));
983 $this->ctrl->setParameter($this,
"forceCASLogin",
"");
989 '[list-cas-login-form]',
993 return $page_editor_html;
1010 $tpl =
new ilTemplate(
'tpl.login_form_shibboleth.html',
true,
true,
'Services/Init');
1012 $tpl->setVariable(
'SHIB_FORMACTION',
'./shib_login.php');
1014 if (
$ilSetting->get(
"shib_hos_type") ==
'external_wayf') {
1015 $tpl->setCurrentBlock(
"shibboleth_login");
1016 $tpl->setVariable(
"TXT_SHIB_LOGIN",
$lng->txt(
"login_to_ilias_via_shibboleth"));
1017 $tpl->setVariable(
"IL_TARGET",
$_GET[
"target"]);
1018 $tpl->setVariable(
"TXT_SHIB_FEDERATION_NAME",
$ilSetting->get(
"shib_federation_name"));
1019 $tpl->setVariable(
"TXT_SHIB_LOGIN_BUTTON",
$ilSetting->get(
"shib_login_button"));
1020 $tpl->setVariable(
"TXT_SHIB_LOGIN_INSTRUCTIONS",
sprintf(
$lng->txt(
"shib_general_login_instructions"),
$ilSetting->get(
"shib_federation_name")) .
' <a href="mailto:' .
$ilSetting->get(
"admin_email") .
'">ILIAS ' .
$lng->txt(
"administrator") .
'</a>.');
1021 $tpl->setVariable(
"TXT_SHIB_CUSTOM_LOGIN_INSTRUCTIONS",
$ilSetting->get(
"shib_login_instructions"));
1022 $tpl->parseCurrentBlock();
1023 } elseif (
$ilSetting->get(
"shib_hos_type") ==
'embedded_wayf') {
1024 $tpl->setCurrentBlock(
"shibboleth_custom_login");
1025 $customInstructions = stripslashes(
$ilSetting->get(
"shib_login_instructions"));
1026 $tpl->setVariable(
"TXT_SHIB_CUSTOM_LOGIN_INSTRUCTIONS", $customInstructions);
1027 $tpl->parseCurrentBlock();
1029 $tpl->setCurrentBlock(
"shibboleth_wayf_login");
1030 $tpl->setVariable(
"TXT_SHIB_LOGIN",
$lng->txt(
"login_to_ilias_via_shibboleth"));
1031 $tpl->setVariable(
"TXT_SHIB_FEDERATION_NAME",
$ilSetting->get(
"shib_federation_name"));
1032 $tpl->setVariable(
"TXT_SELECT_HOME_ORGANIZATION",
sprintf(
$lng->txt(
"shib_select_home_organization"),
$ilSetting->get(
"shib_federation_name")));
1033 $tpl->setVariable(
"TXT_CONTINUE",
$lng->txt(
"btn_next"));
1034 $tpl->setVariable(
"TXT_SHIB_HOME_ORGANIZATION",
$lng->txt(
"shib_home_organization"));
1035 $tpl->setVariable(
"TXT_SHIB_LOGIN_INSTRUCTIONS",
$lng->txt(
"shib_general_wayf_login_instructions") .
' <a href="mailto:' .
$ilSetting->get(
"admin_email") .
'">ILIAS ' .
$lng->txt(
"administrator") .
'</a>.');
1036 $tpl->setVariable(
"TXT_SHIB_CUSTOM_LOGIN_INSTRUCTIONS",
$ilSetting->get(
"shib_login_instructions"));
1038 require_once
"./Services/AuthShibboleth/classes/class.ilShibbolethWAYF.php";
1041 $tpl->setVariable(
"TXT_SHIB_INVALID_SELECTION", $WAYF->showNotice());
1042 $tpl->setVariable(
"SHIB_IDP_LIST", $WAYF->generateSelection());
1043 $tpl->setVariable(
"ILW_TARGET",
$_GET[
"target"]);
1044 $tpl->parseCurrentBlock();
1050 return $page_editor_html;
1065 if(!strlen($page_editor_html))
1067 $tpl->setVariable($fallback_tplvar,$element_html);
1068 return $page_editor_html;
1071 if(!stristr($page_editor_html, $placeholder))
1073 $tpl->setVariable($fallback_tplvar,$element_html);
1074 return $page_editor_html;
1076 return str_replace($placeholder, $element_html, $page_editor_html);
1087 include_once
'./Services/Authentication/classes/class.ilAuthLoginPageEditorSettings.php';
1089 $active_lang = $lpe->getIliasEditorLanguage(
$lng->getLangKey());
1097 include_once
'./Services/COPage/classes/class.ilPageUtil.php';
1103 include_once
'./Services/Authentication/classes/class.ilLoginPage.php';
1104 include_once
'./Services/Authentication/classes/class.ilLoginPageGUI.php';
1106 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1108 $tpl->setCurrentBlock(
"SyntaxStyle");
1110 $tpl->parseCurrentBlock();
1115 include_once(
"./Services/Style/Content/classes/class.ilObjStyleSheet.php");
1116 $page_gui->setStyleId(0,
'auth');
1118 $page_gui->setPresentationTitle(
"");
1119 $page_gui->setTemplateOutput(
false);
1120 $page_gui->setHeader(
"");
1121 $ret = $page_gui->showPage();
1138 $rtpl =
new ilTemplate(
'tpl.login_registration_links.html',
true,
true,
'Services/Init');
1141 include_once
'Services/Registration/classes/class.ilRegistrationSettings.php';
1144 $rtpl->setCurrentBlock(
"new_registration");
1145 $rtpl->setVariable(
"REGISTER",
$lng->txt(
"registration"));
1146 $rtpl->setVariable(
"CMD_REGISTER",
1147 $this->ctrl->getLinkTargetByClass(
"ilaccountregistrationgui",
""));
1148 $rtpl->parseCurrentBlock();
1153 $rtpl->setCurrentBlock(
"password_assistance");
1154 $rtpl->setVariable(
"FORGOT_PASSWORD",
$lng->txt(
"forgot_password"));
1155 $rtpl->setVariable(
"FORGOT_USERNAME",
$lng->txt(
"forgot_username"));
1156 $rtpl->setVariable(
"CMD_FORGOT_PASSWORD",
1157 $this->ctrl->getLinkTargetByClass(
"ilpasswordassistancegui",
""));
1158 $rtpl->setVariable(
"CMD_FORGOT_USERNAME",
1159 $this->ctrl->getLinkTargetByClass(
"ilpasswordassistancegui",
"showUsernameAssistanceForm"));
1160 $rtpl->setVariable(
"LANG_ID",
$lng->getLangKey());
1161 $rtpl->parseCurrentBlock();
1165 $ilAccess->checkAccessOfUser(ANONYMOUS_USER_ID,
"read",
"", ROOT_FOLDER_ID))
1167 $rtpl->setCurrentBlock(
"homelink");
1168 $rtpl->setVariable(
"CLIENT_ID",
"?client_id=".
$_COOKIE[
"ilClientId"].
"&lang=".
$lng->getLangKey());
1169 $rtpl->setVariable(
"TXT_HOME",
$lng->txt(
"home"));
1170 $rtpl->parseCurrentBlock();
1175 $rtpl->setCurrentBlock(
"client_list");
1176 $rtpl->setVariable(
"TXT_CLIENT_LIST",
$lng->txt(
"to_client_list"));
1177 $rtpl->setVariable(
"CMD_CLIENT_LIST",$this->ctrl->getLinkTarget($this,
"showClientList"));
1178 $rtpl->parseCurrentBlock();
1185 '[list-registration-link]',
1186 'REG_PWD_CLIENT_LINKS'
1195 protected function showTermsOfServiceLink($page_editor_html)
1203 require_once
'Services/TermsOfService/classes/class.ilTermsOfServiceSignableDocumentFactory.php';
1207 $utpl =
new ilTemplate(
'tpl.login_terms_of_service_link.html',
true,
true,
'Services/Init');
1208 $utpl->setVariable(
'TXT_TERMS_OF_SERVICE',
$lng->txt(
'usr_agreement'));
1209 $utpl->setVariable(
'LINK_TERMS_OF_SERVICE', $this->ctrl->getLinkTarget($this,
'showTermsOfService'));
1215 '[list-user-agreement]',
1224 '[list-user-agreement]',
1238 '[list-language-selection] ',
1239 '[list-registration-link]',
1240 '[list-user-agreement]',
1241 '[list-login-form]',
1242 '[list-cas-login-form]',
1243 '[list-shibboleth-login-form]'
1245 array(
'',
'',
'',
'',
'',
'',
''),
1254 public function showAccountMigration($a_message =
'')
1262 $lng->loadLanguageModule(
'auth');
1263 self::initStartUpTemplate(
'tpl.login_account_migration.html');
1265 include_once
'Services/Form/classes/class.ilPropertyFormGUI.php';
1267 $form->setFormAction($this->ctrl->getFormAction($this,
'migrateAccount'));
1269 $form->setTitle(
$lng->txt(
'auth_account_migration'));
1270 $form->addCommandButton(
'migrateAccount',
$lng->txt(
'save'));
1271 $form->addCommandButton(
'showLogin',
$lng->txt(
'cancel'));
1277 $lng->txt(
'auth_account_migration_keep'),
1278 static::ACCOUNT_MIGRATION_MIGRATE,
1279 $lng->txt(
'auth_info_migrate')
1282 $user->setRequired(
true);
1285 $user->setMaxLength(128);
1286 $keep->addSubItem($user);
1289 $pass->setRetype(
false);
1290 $pass->setRequired(
true);
1293 $pass->setMaxLength(128);
1294 $keep->addSubItem(
$pass);
1295 $rad->addOption($keep);
1298 $lng->txt(
'auth_account_migration_new'),
1299 static::ACCOUNT_MIGRATION_NEW,
1300 $lng->txt(
'auth_info_add')
1302 $rad->addOption(
$new);
1304 $form->addItem($rad);
1306 $tpl->setVariable(
'MIG_FORM',$form->getHTML());
1308 if(strlen($a_message))
1313 $tpl->show(
'DEFAULT');
1322 if(!isset(
$_POST[
'account_migration']))
1324 $this->showAccountMigration(
1325 $GLOBALS[
'DIC']->language()->txt(
'err_choose_migration_type')
1331 (
$_POST[
'account_migration'] == self::ACCOUNT_MIGRATION_MIGRATE) &&
1332 (!strlen(
$_POST[
'mig_username']) || !strlen(
$_POST[
'mig_password']))
1335 $this->showAccountMigration(
1336 $GLOBALS[
'DIC']->language()->txt(
'err_wrong_login')
1341 if((
int)
$_POST[
'account_migration'] == self::ACCOUNT_MIGRATION_MIGRATE)
1345 if((
int)
$_POST[
'account_migration'] == static::ACCOUNT_MIGRATION_NEW)
1356 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontend.php';
1358 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendCredentials.php';
1362 include_once
'./Services/Authentication/classes/Provider/class.ilAuthProviderFactory.php';
1366 $this->logger->debug(
'Using provider: ' . get_class(
$provider).
' for further processing.');
1368 include_once
'./Services/Authentication/classes/class.ilAuthStatus.php';
1371 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendFactory.php';
1374 $frontend = $frontend_factory->getFrontend(
1381 if($frontend->migrateAccountNew())
1383 include_once
'./Services/Init/classes/class.ilInitialisation.php';
1384 ilInitialisation::redirectToStartingPage();
1388 $this->ctrl->redirect($this,
'showAccountMigration');
1399 include_once
'./Services/Authentication/classes/class.ilAuthFactory.php';
1401 $this->logger->debug(
'Starting account migration for user: ' . (
string)
ilSession::get(
'mig_ext_account'));
1404 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendCredentials.php';
1406 $credentials->setUsername((
string)
$_POST[
'mig_username']);
1407 $credentials->setPassword((
string)
$_POST[
'mig_password']);
1409 include_once
'./Services/Authentication/classes/Provider/class.ilAuthProviderFactory.php';
1413 include_once
'./Services/Authentication/classes/class.ilAuthStatus.php';
1416 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendFactory.php';
1419 $frontend = $frontend_factory->getFrontend(
1426 $frontend->authenticate();
1428 switch($status->getStatus())
1431 $this->
getLogger()->debug(
'Account migration: authentication successful for ' . (
string) $_POST[
'mig_username']);
1433 $provider = $provider_factory->getProviderByAuthMode(
1438 $frontend = $frontend_factory->getFrontend(
1445 $frontend->migrateAccount(
$GLOBALS[
'DIC'][
'ilAuthSession'])
1448 include_once
'./Services/Init/classes/class.ilInitialisation.php';
1449 ilInitialisation::redirectToStartingPage();
1454 $this->ctrl->redirect($this,
'showAccountMigration');
1459 $this->
getLogger()->info(
'Account migration failed for user ' . (
string) $_POST[
'mig_username']);
1460 $this->showAccountMigration(
$GLOBALS[
'lng']->txt(
'err_wrong_login'));
1474 global
$lng,$ilClientIniFile,
$ilLog,$rbacadmin;
1476 $lng->loadLanguageModule(
'auth');
1478 if(!isset(
$_POST[
'account_migration']))
1480 $this->showAccountMigration(
$lng->txt(
'err_choose_migration_type'));
1485 $_POST[
'account_migration'] == static::ACCOUNT_MIGRATION_MIGRATE and
1486 (!strlen(
$_POST[
'mig_username']) or !strlen(
$_POST[
'mig_password'])))
1488 $this->showAccountMigration(
$lng->txt(
'err_wrong_login'));
1492 if(
$_POST[
'account_migration'] == static::ACCOUNT_MIGRATION_MIGRATE)
1496 $this->showAccountMigration(
$lng->txt(
'err_wrong_login'));
1499 include_once
'./Services/Authentication/classes/class.ilAuthFactory.php';
1500 include_once
'./Services/Database/classes/class.ilAuthContainerMDB2.php';
1503 include_once
'./Services/Authentication/classes/Frontend/class.ilAuthFrontendCredentials.php';
1505 $credentials->setUsername(
$_POST[
'mig_username']);
1506 $credentials->setPassword(
$_POST[
'mig_password']);
1509 include_once
'./Services/Authentication/classes/class.ilAuthModeDetermination.php';
1513 $credentials->setAuthMode($form->getInput(
'auth_mode'));
1516 include_once
'./Services/Authentication/classes/Provider/class.ilAuthProviderFactory.php';
1523 switch($status->getStatus())
1529 $this->showAccountMigration(
$lng->txt(
'err_wrong_login'));
1538 if(!$ilAuth->checkAuth())
1541 $this->showAccountMigration(
$lng->txt(
'err_wrong_login'));
1550 $user->setExternalAccount(
ilSession::get(
'tmp_external_account'));
1551 $user->setActive(
true);
1559 $rbacadmin->assignUser((
int) $role,$user->getId());
1566 elseif(
$_POST[
'account_migration'] == static::ACCOUNT_MIGRATION_NEW)
1574 include_once(
'Services/AuthApache/classes/class.ilAuthContainerApache.php');
1576 $container->forceCreation(
true);
1586 include_once(
'Services/LDAP/classes/class.ilAuthContainerLDAP.php');
1588 $container->forceCreation(
true);
1597 include_once
'./Services/Authentication/classes/class.ilAuthFactory.php';
1598 include_once
'./Services/Radius/classes/class.ilAuthContainerRadius.php';
1601 $container->forceCreation(
true);
1608 include_once
'./Services/Init/classes/class.ilInitialisation.php';
1609 ilInitialisation::redirectToStartingPage();
1621 $GLOBALS[
'DIC'][
'ilAuthSession']->logout();
1623 $GLOBALS[
'ilAppEventHandler']->raise(
1624 'Services/Authentication',
1636 self::initStartUpTemplate(
"tpl.logout.html");
1640 $tpl->setCurrentBlock(
"homelink");
1642 $tpl->setVariable(
"TXT_HOME",
$lng->txt(
"home"));
1643 $tpl->parseCurrentBlock();
1648 $tpl->setCurrentBlock(
"client_list");
1649 $tpl->setVariable(
"TXT_CLIENT_LIST",
$lng->txt(
"to_client_list"));
1650 $this->ctrl->setParameter($this,
"client_id",
$client_id);
1651 $tpl->setVariable(
"CMD_CLIENT_LIST",
1652 $this->ctrl->getLinkTarget($this,
"showClientList"));
1653 $tpl->parseCurrentBlock();
1654 $this->ctrl->setParameter($this,
"client_id",
"");
1657 $tpl->setVariable(
"TXT_PAGEHEADLINE",
$lng->txt(
"logout"));
1658 $tpl->setVariable(
"TXT_LOGOUT_TEXT",
$lng->txt(
"logout_text"));
1659 $tpl->setVariable(
"TXT_LOGIN",
$lng->txt(
"login_to_ilias"));
1673 $valid = $ilAuth->getValidationData();
1675 self::initStartUpTemplate(
"tpl.user_mapping_selection.html");
1679 if ($ilAuth->getSubStatus() == AUTH_WRONG_LOGIN)
1684 include_once(
'./Services/User/classes/class.ilObjUser.php');
1685 if (count($email_user) == 1)
1688 $tpl->setCurrentBlock(
"one_user");
1689 $tpl->setVariable(
"TXT_USERNAME",
$lng->txt(
"username"));
1690 $tpl->setVariable(
"VAL_USERNAME", current($email_user));
1691 $tpl->setVariable(
"USER_ID", key($email_user));
1692 $tpl->parseCurrentBlock();
1696 foreach($email_user as $key => $login)
1698 $tpl->setCurrentBlock(
"user");
1699 $tpl->setVariable(
"USR_ID", $key);
1700 $tpl->setVariable(
"VAL_USER", $login);
1701 $tpl->parseCurrentBlock();
1703 $tpl->setCurrentBlock(
"multpiple_user");
1704 $tpl->parseCurrentBlock();
1707 $tpl->setCurrentBlock(
"content");
1708 $this->ctrl->setParameter($this,
"ext_uid", urlencode(
$_GET[
"ext_uid"]));
1709 $this->ctrl->setParameter($this,
"soap_pw", urlencode(
$_GET[
"soap_pw"]));
1710 $this->ctrl->setParameter($this,
"auth_stat",
$_GET[
"auth_stat"]);
1711 $tpl->setVariable(
"FORMACTION",
1712 $this->ctrl->getFormAction($this));
1713 $tpl->setVariable(
"TXT_ILIAS_LOGIN",
$lng->txt(
"login_to_ilias"));
1714 if (count($email_user) == 1)
1716 $tpl->setVariable(
"TXT_EXPLANATION",
$lng->txt(
"ums_explanation"));
1717 $tpl->setVariable(
"TXT_EXPLANATION_2",
$lng->txt(
"ums_explanation_2"));
1721 $tpl->setVariable(
"TXT_EXPLANATION",
$lng->txt(
"ums_explanation_3"));
1722 $tpl->setVariable(
"TXT_EXPLANATION_2",
$lng->txt(
"ums_explanation_4"));
1724 $tpl->setVariable(
"TXT_CREATE_USER",
$lng->txt(
"ums_create_new_account"));
1725 $tpl->setVariable(
"TXT_PASSWORD",
$lng->txt(
"password"));
1727 $tpl->setVariable(
"TXT_SUBMIT",
$lng->txt(
"login"));
1745 $tpl =
new ilTemplate(
"tpl.main.html",
true,
true);
1746 $tpl->setAddFooter(
false);
1748 $tpl->setVariable(
"PAGETITLE",
$lng->txt(
"clientlist_clientlist"));
1752 self::initStartUpTemplate(
"tpl.client_list.html");
1755 $tpl->addBlockfile(
"CLIENT_LIST",
"client_list",
"tpl.table.html");
1758 $tpl->addBlockfile(
"TBL_CONTENT",
"tbl_content",
"tpl.obj_tbl_rows.html");
1761 require_once(
"setup/classes/class.ilClientList.php");
1762 require_once(
"setup/classes/class.ilClient.php");
1763 require_once(
"setup/classes/class.ilDBConnections.php");
1764 require_once(
"./Services/Table/classes/class.ilTableGUI.php");
1767 $list = $clientlist->getClients();
1769 if (count($list) == 0)
1771 header(
"Location: ./setup/setup.php");
1775 $hasPublicSection =
false;
1776 foreach ($list as $key =>
$client)
1780 if (
$client->checkDatabaseExists(
true) and
$client->ini->readVariable(
"client",
"access") and
$client->getSetting(
"setup_ok"))
1782 $this->ctrl->setParameter($this,
"client_id", $key);
1785 $tmp[] =
"<a href=\"".
"login.php?cmd=force_login&client_id=".urlencode($key).
"\">".
$lng->txt(
"clientlist_login_page").
"</a>";
1787 if(
$client->getSetting(
'pub_section'))
1789 $hasPublicSection =
true;
1790 $tmp[] =
"<a href=\"" .
"ilias.php?baseClass=ilRepositoryGUI&client_id=" . urlencode($key) .
"\">".$lng->txt(
"clientlist_start_page").
"</a>";
1805 if($hasPublicSection)
1807 $tbl->setTitle(
$lng->txt(
"clientlist_available_clients"));
1808 $tbl->setHeaderNames(array(
$lng->txt(
"clientlist_installation_name"),
$lng->txt(
"clientlist_login"),
$lng->txt(
"clientlist_public_access")));
1809 $tbl->setHeaderVars(array(
"name",
"index",
"login"));
1810 $tbl->setColumnWidth(array(
"50%",
"25%",
"25%"));
1814 $tbl->setTitle(
$lng->txt(
"clientlist_available_clients"));
1815 $tbl->setHeaderNames(array(
$lng->txt(
"clientlist_installation_name"),
$lng->txt(
"clientlist_login"),
''));
1816 $tbl->setHeaderVars(array(
"name",
"login",
''));
1817 $tbl->setColumnWidth(array(
"70%",
"25%",
'1px'));
1821 $tbl->setOrderColumn(
$_GET[
"sort_by"],
"name");
1822 $tbl->setOrderDirection(
$_GET[
"sort_order"]);
1829 $tbl->disable(
"icon");
1830 $tbl->disable(
"numinfo");
1831 $tbl->disable(
"sort");
1832 $tbl->disable(
"footer");
1836 $tpl->show(
"DEFAULT",
true,
true);
1848 $str =
"<p style=\"margin:15px;\">
1849 You need to enable Session Cookies in your Browser to use ILIAS.
1852 <br/>Tools -> Options -> Privacy -> Cookies
1853 <br/>Enable 'Allow sites to set cookies' and activate option 'Keep
1854 <br/>cookies' auf 'until I close Firefox'
1856 <br/><b>Mozilla/Netscape</b>
1857 <br/>Edit -> Preferences -> Privacy&Security -> Cookies
1858 <br/>Go to 'Cookie Lifetime Policy' and check option 'Accept for current
1861 <br/><b>Internet Explorer</b>
1862 <br/>Tools -> Internet Options -> Privacy -> Advanced
1863 <br/>- Check 'Override automatic cookie handling'
1864 <br/>- Check 'Always allow session cookies'
1866 $tpl->setVariable(
"CONTENT", $str);
1875 $this->showTermsOfService();
1881 protected function showTermsOfService()
1891 $back_to_login = (
'getAcceptance' != $this->ctrl->getCmd());
1893 self::initStartUpTemplate(
'tpl.view_terms_of_service.html', $back_to_login, !$back_to_login);
1894 $tpl->setVariable(
'TXT_PAGEHEADLINE',
$lng->txt(
'usr_agreement'));
1896 require_once
'Services/TermsOfService/classes/class.ilTermsOfServiceSignableDocumentFactory.php';
1898 if($document->exists())
1900 if(
'getAcceptance' == $this->ctrl->getCmd())
1902 if(isset(
$_POST[
'status']) &&
'accepted' ==
$_POST[
'status'])
1904 require_once
'Services/TermsOfService/classes/class.ilTermsOfServiceHelper.php';
1919 $tpl->setVariable(
'FORM_ACTION', $this->ctrl->getFormAction($this, $this->ctrl->getCmd()));
1921 $tpl->setVariable(
'ACCEPT_TERMS_OF_SERVICE',
$lng->txt(
'accept_usr_agreement'));
1922 $tpl->setVariable(
'TXT_SUBMIT',
$lng->txt(
'submit'));
1925 $tpl->setVariable(
'TERMS_OF_SERVICE_CONTENT', $document->getContent());
1929 include_once(
"./Modules/SystemFolder/classes/class.ilSystemSupportContacts.php");
1944 if(
$GLOBALS[
'DIC'][
'ilAuthSession']->isValid())
1946 include_once
'./Services/Init/classes/class.ilInitialisation.php';
1947 ilInitialisation::redirectToStartingPage();
1957 !isset(
$_GET[
"client_id"]) &&
1958 (
$_GET[
"cmd"] ==
"") &&
1964 if(
$GLOBALS[
'ilSetting']->
get(
'pub_section',
false)
1977 global $objDefinition, $ilPluginAdmin,
$ilUser;
1979 if (is_object($ilPluginAdmin))
1982 $pl_names = $ilPluginAdmin->getActivePluginsForSlot(
IL_COMP_SERVICE,
"UIComponent",
"uihk");
1985 foreach ($pl_names as $pl)
1988 $gui_class = $ui_plugin->getUIClassInstance();
1989 $resp = $gui_class->checkGotoHook($a_target);
1990 if ($resp[
"target"] !==
false)
1992 $a_target = $resp[
"target"];
1998 if ($a_target ==
"")
2003 $t_arr = explode(
"_", $a_target);
2011 if ($type ==
"pg" | $type ==
"st")
2016 $class = $objDefinition->getClassName($type);
2022 $location = $objDefinition->getLocation($type);
2023 $full_class =
"ilObj".$class.
"Access";
2024 include_once(
$location.
"/class.".$full_class.
".php");
2026 $ret = call_user_func(array($full_class,
"_checkGoto"), $a_target);
2030 !stristr($a_target,
"_wsp") &&
2031 $ilUser->getId() != ANONYMOUS_USER_ID &&
2032 !$objDefinition->isAdministrationObject($type) &&
2033 $objDefinition->isRBACObject($type) &&
2036 global $tree, $rbacsystem, $ilAccess;
2039 if($t_arr[0] ==
"pg")
2041 if(isset($t_arr[2]))
2060 include_once
"Services/Membership/classes/class.ilParticipants.php";
2061 $block_obj = array();
2066 foreach(
$path as $path_ref_id)
2068 $redirect_infopage =
false;
2069 $add_member_role =
false;
2075 if(!$ilAccess->doActivationCheck(
"read",
"", $path_ref_id,
$ilUser->getId(), $pobj_id, $ptype) ||
2076 !$ilAccess->doStatusCheck(
"read",
"", $path_ref_id,
$ilUser->getId(), $pobj_id, $ptype))
2081 else if($ptype ==
"crs")
2084 include_once
"Modules/Course/classes/class.ilCourseParticipant.php";
2086 if(!$participants->isAssigned())
2089 include_once
"Modules/Course/classes/class.ilObjCourse.php";
2093 $block_obj[] = $path_ref_id;
2094 $add_member_role =
true;
2098 $redirect_infopage =
true;
2102 else if($ptype ==
"grp")
2105 include_once
"Modules/Group/classes/class.ilGroupParticipants.php";
2109 include_once
"Modules/Group/classes/class.ilObjGroup.php";
2111 if($group_obj->isRegistrationEnabled())
2113 $block_obj[] = $path_ref_id;
2114 $add_member_role =
true;
2118 $redirect_infopage =
true;
2124 if($add_member_role)
2127 $rbacsystem->resetPACache(
$ilUser->getId(), $path_ref_id);
2128 if(!$rbacsystem->checkAccess(
"join", $path_ref_id))
2130 $redirect_infopage =
true;
2134 $rbacsystem->addTemporaryRole(
$ilUser->getId(),
2140 if($redirect_infopage)
2142 if($rbacsystem->checkAccess(
"visible", $path_ref_id))
2145 "&ref_id=".$path_ref_id.
"&cmd=infoScreen");
2156 if($rbacsystem->checkAccess(
"read",
$ref_id) &&
sizeof($block_obj))
2163 $_SESSION[
"pending_goto"] =
"goto.php?target=".$a_target;
2167 "&ref_id=".array_shift($block_obj));
2180 if(!isset(
$_GET[
'rh']) || !strlen(trim(
$_GET[
'rh'])))
2182 ilUtil::redirect(
'./login.php?cmd=force_login®_confirmation_msg=reg_confirmation_hash_not_passed');
2187 require_once
'Services/Registration/classes/class.ilRegistrationSettings.php';
2192 $oUser->setActive(
true);
2193 if($oRegSettings->passwordGenerationEnabled())
2196 $password = $passwd[0];
2198 $oUser->setLastPasswordChangeTS( time() );
2202 $usr_lang = $oUser->getPref(
'language');
2204 if(
$lng->getLangKey() != $usr_lang)
2209 $target = $oUser->getPref(
'reg_target');
2217 include_once(
"Services/Mail/classes/class.ilAccountMail.php");
2218 include_once
'./Services/User/classes/class.ilObjUserFolder.php';
2220 if (trim($amail[
"body"]) !=
"" && trim($amail[
"subject"]) !=
"")
2223 $acc_mail->setUser($oUser);
2224 if($oRegSettings->passwordGenerationEnabled())
2226 $acc_mail->setUserPassword($password);
2232 include_once
'Services/Mail/classes/class.ilMail.php';
2233 $mail_obj =
new ilMail(ANONYMOUS_USER_ID);
2236 $subject =
$lng->txt(
"reg_mail_subject");
2239 $body =
$lng->txt(
"reg_mail_body_salutation").
" ".$oUser->getFullname().
",\n\n".
2240 $lng->txt(
"reg_mail_body_text1").
"\n\n".
2241 $lng->txt(
"reg_mail_body_text2").
"\n".
2242 ILIAS_HTTP_PATH.
"/login.php?client_id=".CLIENT_ID.
"\n";
2243 $body .=
$lng->txt(
"login").
": ".$oUser->getLogin().
"\n";
2245 if($oRegSettings->passwordGenerationEnabled())
2247 $body.=
$lng->txt(
"passwd").
": ".$password.
"\n";
2251 $body.=
$lng->txt(
'reg_mail_body_forgot_password_info').
"\n";
2255 $body .= (
$lng->txt(
"reg_mail_body_text3").
"\n\r");
2256 $body .= $oUser->getProfileAsString(
$lng);
2257 $mail_obj->enableSoap(
false);
2258 $mail_obj->appendInstallationSignature(
true);
2259 $mail_obj->sendMail($oUser->getEmail(),
'',
'',
2262 array(), array(
'normal'));
2265 ilUtil::redirect(
'./login.php?cmd=force_login®_confirmation_msg=reg_account_confirmation_successful&lang='.$usr_lang);
2269 include_once
'Services/WebServices/SOAP/classes/class.ilSoapClient.php';
2271 $soap_client->setResponseTimeout(1);
2272 $soap_client->enableWSDL(
true);
2273 $soap_client->init();
2275 $ilLog->write(__METHOD__.
': Triggered soap call (background process) for deletion of inactive user objects with expired confirmation hash values (dual opt in) ...');
2279 'deleteExpiredDualOptInUserObjects',
2283 $exception->getCode()
2287 ilUtil::redirect(
'./login.php?cmd=force_login®_confirmation_msg='.$exception->getMessage().
"&lang=".$usr_lang);
2291 ilUtil::redirect(
'./login.php?cmd=force_login®_confirmation_msg='.$exception->getMessage().
"&lang=".$usr_lang);
2301 public static function initStartUpTemplate($a_tmpl, $a_show_back =
false, $a_show_logout =
false)
2313 include_once(
"./Services/jQuery/classes/class.iljQueryUtil.php");
2317 include_once(
"./Services/UICore/classes/class.ilUIFramework.php");
2320 $tpl->addBlockfile(
'CONTENT',
'content',
'tpl.startup_screen.html',
'Services/Init');
2326 $param =
'client_id=' .
$_COOKIE[
'ilClientId'] .
'&lang=' .
$lng->getLangKey();
2328 $tpl->setCurrentBlock(
'link_item_bl');
2329 $tpl->setVariable(
'LINK_TXT',
$lng->txt(
'login_to_ilias'));
2330 $tpl->setVariable(
'LINK_URL',
'login.php?cmd=force_login&'.$param);
2331 $tpl->parseCurrentBlock();
2334 $ilAccess->checkAccessOfUser(ANONYMOUS_USER_ID,
'read',
'', ROOT_FOLDER_ID))
2336 $tpl->setVariable(
'LINK_URL',
'index.php?'.$param);
2337 $tpl->setVariable(
'LINK_TXT',
$lng->txt(
'home'));
2338 $tpl->parseCurrentBlock();
2341 else if($a_show_logout)
2343 $tpl->setCurrentBlock(
'link_item_bl');
2344 $tpl->setVariable(
'LINK_TXT',
$lng->txt(
'logout'));
2345 $tpl->setVariable(
'LINK_URL', ILIAS_HTTP_PATH .
'/logout.php');
2346 $tpl->parseCurrentBlock();
2349 if(is_array($a_tmpl))
2351 $template_file = $a_tmpl[0];
2352 $template_dir = $a_tmpl[1];
2356 $template_file = $a_tmpl;
2357 $template_dir =
'Services/Init';
2361 include_once(
"./Modules/SystemFolder/classes/class.ilObjSystemFolder.php");
2362 $header_top_title = ilObjSystemFolder::_getHeaderTitle();
2363 if (trim($header_top_title) !=
"" &&
$tpl->blockExists(
"header_top_title"))
2365 $tpl->setCurrentBlock(
"header_top_title");
2366 $tpl->setVariable(
"TXT_HEADER_TITLE", $header_top_title);
2367 $tpl->parseCurrentBlock();
2374 $tpl->setCurrentBlock(
"lang_select");
2375 $tpl->setVariable(
"TXT_LANGSELECT",
$lng->txt(
"language"));
2376 $tpl->setVariable(
"LANG_SELECT", $selection);
2377 $tpl->parseCurrentBlock();
2380 $tpl->addBlockFile(
'STARTUP_CONTENT',
'startup_content', $template_file, $template_dir);
2389 include_once(
"./Services/MainMenu/classes/class.ilMainMenuGUI.php");
sprintf('%.4f', $callTime)
An exception for terminatinating execution or to throw for unit testing.
const AUTH_SOAP_NO_ILIAS_USER
const AUTH_USER_SIMULTANEOUS_LOGIN
const AUTH_CAPTCHA_INVALID
const AUTH_CAS_NO_ILIAS_USER
const AUTH_RADIUS_NO_ILIAS_USER
const AUTH_USER_TIME_LIMIT_EXCEEDED
const AUTH_LDAP_NO_ILIAS_USER
static isUnusedCode($code)
static getCodeValidUntil($code)
static applyRoleAssignments(ilObjUser $user, $code)
static applyAccessLimits(ilObjUser $user, $code)
Class ilAccountRegistrationGUI.
Authentication against ILIAS database.
Overwritten Pear class AuthContainerLDAP This class is overwritten to support nested groups.
Authentication against ILIAS database.
@classDescription Overwritten Pear class AuthContainerRadius This class is overwritten to support to ...
static factory(ilAuthContainerBase $deco)
The factory.
Description of class class.
Auth frontend credentials for CAS auth.
Description of class class.
Description of class class.
Factory for auth frontend classes.
const CONTEXT_STANDARD_FORM
const MIG_EXTERNAL_ACCOUNT
const MIG_TRIGGER_AUTHMODE
static getInstance()
Get singelton instance.
static _getInstance()
Get instance.
Auth status implementation.
const STATUS_CODE_ACTIVATION_REQUIRED
const STATUS_AUTHENTICATED
static getInstance()
Get status instance.
const STATUS_AUTHENTICATION_FAILED
const STATUS_ACCOUNT_MIGRATION_REQUIRED
static _getMultipleAuthModeOptions($lng)
static _hasMultipleAuthenticationMethods()
Administrates DB connections in setup.
static _isParticipant($a_ref_id, $a_usr_id)
Static function to check if a user is a participant of the container object.
static goToPublicSection()
go to public section
static _lookupContObjID($a_id)
get learning module / digibook id for lm object
static lookupId($a_lang_key)
Lookup obj_id of language @global ilDB $ilDB.
static getLogger($a_component_id)
Get component logger.
This class handles base functions for mail handling.
static getLanguageSelection($a_in_topbar=false)
static _registrationEnabled($a_obj_id)
Registration enabled? Method is in Access class, since it is needed by Access/ListGUI.
static _isActivated($a_obj_id)
Is activated.
static getSyntaxStylePath()
get syntax style path
static getContentStylePath($a_style_id)
get content style path
static _lookupNewAccountMail($a_lang)
static _verifyRegistrationHash($a_hash)
Verifies a registration hash.
static _lookupLogin($a_user_id)
lookup login
static _lookupId($a_user_str)
Lookup id by login.
static _getLocalAccountsForEmail($a_email)
check whether external account and authentication method matches with a user
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
static _lookupObjId($a_id)
static _getAllReferences($a_id)
get all reference ids of object
static _lookupType($a_id, $a_reference=false)
lookup object type
static _existsAndNotEmpty($a_parent_type, $a_id, $a_lang="-")
checks whether page exists and is not empty (may return true on some empty pages)
static getDefaultMemberRole($a_ref_id)
Password assistance facility for users who have forgotten their password or for users for whom no pas...
static getPluginObject($a_ctype, $a_cname, $a_slot_id, $a_pname)
Get Plugin Object.
This class represents an option in a radio group.
Class for user related exception handling in ILIAS.
Class for user related exception handling in ILIAS.
Class ilObjAuthSettingsGUI.
static _lookupRegistrationType()
const SESSION_CLOSE_CAPTCHA
static set($a_var, $a_val)
Set a value.
static setClosingContext($a_context)
set closing context (for statistics)
const SESSION_CLOSE_SIMUL
static get($a_var)
Get a value.
const SESSION_CLOSE_INACTIVE
processIndexPHP()
process index.php
showShibbolethLoginForm($page_editor_html)
Show shibboleth login form.
showLoginPage(ilPropertyFormGUI $form=null)
showCASLoginForm($page_editor_html)
Show cas login @global ilSetting $ilSetting.
static _checkGoto($a_target)
doStandardAuthentication()
Check form input; authenticate user.
getAcceptance()
Get terms of service.
doApacheAuthentication()
Try apache auth.
showCodeForm($a_username=null, $a_form=null)
doMigration()
Do migration of existing ILIAS database user account.
const ACCOUNT_MIGRATION_MIGRATE
purgePlaceholders($page_editor_html)
Purge page editor html from unused placeholders.
initStandardLoginForm()
Initialize the standard.
doShibbolethAuthentication()
Trying shibboleth authentication.
migrateAccount()
Migrate Account.
substituteLoginPageElements($tpl, $page_editor_html, $element_html, $placeholder, $fallback_tplvar)
Substitute login page elements.
showClientList()
show client list
static getLanguageSelection()
language selection list
const ACCOUNT_MIGRATION_NEW
jumpToPasswordAssistance()
jump to password assistance
showLogout()
show logout screen
jumpToRegistration()
jump to registration gui
showLoginForm($page_editor_html, ilPropertyFormGUI $form=null)
Show login form @global ilSetting $ilSetting.
executeCommand()
execute command
getLoginPageEditorHTML()
Get HTML of ILIAS login page editor.
initCodeForm($a_username)
showLoginInformation($page_editor_html)
Show login information.
showUserMappingSelection()
Show user selection screen, if external account could not be mapped to an ILIAS account,...
doCasAuthentication()
Try CAS auth.
showNoCookiesScreen()
show help screen, if cookies are disabled
showRegistrationLinks($page_editor_html)
Show registration, password forgotten, client slection links @global ilLanguage $lng @global ilSettin...
doMigrationNewAccount()
Create new account for migration.
migrateAccount2()
migrate account
special template class to simplify handling of ITX/PEAR
static trackAcceptance(ilObjUser $user, ilTermsOfServiceSignableDocument $document)
static getByLanguageObject(ilLanguage $lng)
This class represents a text property in a property form.
static init($a_tpl=null)
Init.
static appendUrlParameterString($a_url, $a_par, $xml_style=false)
append URL parameter string ("par1=value1&par2=value2...") to given URL string
static formCheckbox($checked, $varname, $value, $disabled=false)
??? @access public
static setCookie($a_cookie_name, $a_cookie_value='', $a_also_set_super_global=true, $a_set_cookie_invalid=false)
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
static redirect($a_script)
http redirect to other script
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static generatePasswords($a_number)
Generate a number of passwords.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static prepareFormOutput($a_str, $a_strip=false)
prepares string output for html forms @access public
static initjQuery($a_tpl=null)
Init jQuery.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']