ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f870
ilInitialisation Class Reference

ILIAS Initialisation Utility Class perform basic setup: init database handler, load configuration file, init user authentification & error handler, load object type definitions. More...

+ Collaboration diagram for ilInitialisation:

Public Member Functions

 removeUnsafeCharacters ()
 Remove unsafe characters from GET. More...
 
 requireCommonIncludes ()
 get common include code files More...
 
 initIliasIniFile ()
 This method provides a global instance of class ilIniFile for the ilias.ini.php file in variable $ilIliasIniFile. More...
 
 determineClient ()
 This method determines the current client and sets the constant CLIENT_ID. More...
 
 initClientIniFile ()
 This method provides a global instance of class ilIniFile for the client.ini.php file in variable $ilClientIniFile. More...
 
 initDatabase ()
 initialise database object $ilDB More...
 
 initEventHandling ()
 initialise event handler ilAppEventHandler More...
 
 initILIAS ($context="web")
 ilias initialisation More...
 
 initLog ()
 
 persistCMIData ()
 

Static Public Member Functions

static setSessionHandler ()
 set session handler to db More...
 
static goToPublicSection ($a_auth_stat="")
 go to public section More...
 
static initILIAS ()
 ilias initialisation More...
 
static authenticate ()
 Try authentication. More...
 

Static Protected Member Functions

static removeUnsafeCharacters ()
 Remove unsafe characters from GET. More...
 
static requireCommonIncludes ()
 get common include code files More...
 
static includePhp5Compliance ()
 This is a hack for authentication. More...
 
static initIliasIniFile ()
 This method provides a global instance of class ilIniFile for the ilias.ini.php file in variable $ilIliasIniFile. More...
 
static buildHTTPPath ()
 builds http path More...
 
static determineClient ()
 This method determines the current client and sets the constant CLIENT_ID. More...
 
static initClientIniFile ()
 This method provides a global instance of class ilIniFile for the client.ini.php file in variable $ilClientIniFile. More...
 
static handleMaintenanceMode ()
 handle maintenance mode More...
 
static initDatabase ()
 initialise database object $ilDB More...
 
static setCookieParams ()
 set session cookie params for path, domain, etc. More...
 
static initSettings ()
 initialise $ilSettings object and define constants More...
 
static initStyle ()
 provide $styleDefinition object More...
 
static initLocale ()
 Init Locale. More...
 
static goToLogin ($a_auth_stat="")
 go to login More...
 
static initLanguage ()
 $lng initialisation More...
 
static initAccessHandling ()
 $ilAccess and $rbac... initialisation More...
 
static initLog ()
 Init log instance. More...
 
static initGlobal ($a_name, $a_class, $a_source_file=null)
 Initialize global instance. More...
 
static abortAndDie ($a_message)
 Exit. More...
 
static handleDevMode ()
 Prepare developer tools
More...
 
static initCore ()
 Init core objects (level 0) More...
 
static initClient ()
 Init client-based objects (level 1) More...
 
static initUser ()
 Init user / authentification (level 2) More...
 
static getCurrentCmd ()
 Extract current cmd from request. More...
 
static blockedAuthentication ($a_current_script)
 Block authentication based on current request. More...
 
static showingLoginForm ($a_current_script)
 Is current view the login form? More...
 
static translateMessage ($a_message_id, array $a_message_static=null)
 Translate message if possible. More...
 
static redirect ($a_target, $a_message_id, $a_message_static)
 Redirects to target url if context supports it. More...
 

Static Protected Attributes

static $already_initialized
 

Detailed Description

ILIAS Initialisation Utility Class perform basic setup: init database handler, load configuration file, init user authentification & error handler, load object type definitions.

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Sascha Hofmann shofm.nosp@m.ann@.nosp@m.datab.nosp@m.ay.d.nosp@m.e
Version
$Id$
Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Sascha Hofmann shofm.nosp@m.ann@.nosp@m.datab.nosp@m.ay.d.nosp@m.e
Uwe Kohnle kohnl.nosp@m.e@in.nosp@m.terne.nosp@m.tleh.nosp@m.rer-g.nosp@m.mbh..nosp@m.de
Version
Id
class.ilInitialisation.php 26932 2010-12-09 16:26:46Z mjansen

Definition at line 27 of file class.ilInitialisation.php.

Member Function Documentation

◆ abortAndDie()

static ilInitialisation::abortAndDie (   $a_message)
staticprotected

Exit.

Parameters
string$a_message

Definition at line 874 of file class.ilInitialisation.php.

875 {
876 if(is_object($GLOBALS['ilLog']))
877 {
878 $GLOBALS['ilLog']->write("Fatal Error: ilInitialisation - ".$a_message);
879 }
880 die($a_message);
881 }
$GLOBALS['ct_recipient']

References $GLOBALS.

Referenced by determineClient(), goToPublicSection(), handleMaintenanceMode(), initClientIniFile(), initLog(), initSettings(), redirect(), and setSessionHandler().

+ Here is the caller graph for this function:

◆ authenticate()

static ilInitialisation::authenticate ( )
static

Try authentication.

This will basically validate the current session

Definition at line 1157 of file class.ilInitialisation.php.

1158 {
1159 global $ilAuth, $ilias, $ilErr;
1160
1161 $current_script = substr(strrchr($_SERVER["PHP_SELF"], "/"), 1);
1162
1163 if(self::blockedAuthentication($current_script))
1164 {
1165 return;
1166 }
1167
1168 $oldSid = session_id();
1169
1170 $ilAuth->start();
1171 $ilias->setAuthError($ilErr->getLastError());
1172
1173 if(IS_PAYMENT_ENABLED)
1174 {
1175 // cart is "attached" to session, has to be updated
1176 $newSid = session_id();
1177 if($oldSid != $newSid)
1178 {
1179 include_once './Services/Payment/classes/class.ilPaymentShoppingCart.php';
1180 ilPaymentShoppingCart::_migrateShoppingCart($oldSid, $newSid);
1181 }
1182 }
1183
1184 if($ilAuth->getAuth() && $ilAuth->getStatus() == '')
1185 {
1186 self::initUserAccount();
1187
1188 self::handleAuthenticationSuccess();
1189 }
1190 else
1191 {
1192 if (!self::showingLoginForm($current_script))
1193 {
1194 // :TODO: should be moved to context?!
1195 $mandatory_auth = ($current_script != "shib_login.php"
1196 && $current_script != "shib_logout.php"
1197 && $current_script != "error.php"
1198 && $current_script != "chat.php"
1199 && $current_script != "index.php"); // #10316
1200
1201 if($mandatory_auth)
1202 {
1203 self::handleAuthenticationFail();
1204 }
1205 }
1206 }
1207 }

References $ilErr.

Referenced by ilWebAccessChecker\checkAccess(), and initILIAS().

+ Here is the caller graph for this function:

◆ blockedAuthentication()

static ilInitialisation::blockedAuthentication (   $a_current_script)
staticprotected

Block authentication based on current request.

Returns
boolean

Definition at line 1365 of file class.ilInitialisation.php.

1366 {
1367 if($a_current_script == "register.php" ||
1368 $a_current_script == "pwassist.php" ||
1369 $a_current_script == "confirmReg.php" ||
1370 $a_current_script == "il_securimage_play.php" ||
1371 $a_current_script == "il_securimage_show.php")
1372 {
1373 return true;
1374 }
1375
1376 if($_REQUEST["baseClass"] == "ilStartUpGUI")
1377 {
1378 $cmd_class = $_REQUEST["cmdClass"];
1379
1380 if($cmd_class == "ilaccountregistrationgui" ||
1381 $cmd_class == "ilpasswordassistancegui")
1382 {
1383 return true;
1384 }
1385
1387 if($cmd == "showTermsOfService" || $cmd == "showClientList" ||
1388 $cmd == 'showAccountMigration' || $cmd == 'migrateAccount' ||
1389 $cmd == 'processCode')
1390 {
1391 return true;
1392 }
1393 }
1394
1395 // #12884
1396 if(($a_current_script == "goto.php" && $_GET["target"] == "impr_0") ||
1397 $_GET["baseClass"] == "ilImprintGUI")
1398 {
1399 return true;
1400 }
1401
1402 return false;
1403 }
$_GET["client_id"]
static getCurrentCmd()
Extract current cmd from request.
$cmd
Definition: sahs_server.php:35
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
Definition: index.php:7

References $_GET, $_REQUEST, $cmd, and getCurrentCmd().

+ Here is the call graph for this function:

◆ buildHTTPPath()

static ilInitialisation::buildHTTPPath ( )
staticprotected

builds http path

Definition at line 185 of file class.ilInitialisation.php.

186 {
187 include_once './Services/Http/classes/class.ilHTTPS.php';
188 $https = new ilHTTPS();
189
190 if($https->isDetected())
191 {
192 $protocol = 'https://';
193 }
194 else
195 {
196 $protocol = 'http://';
197 }
198 $host = $_SERVER['HTTP_HOST'];
199
200 $rq_uri = strip_tags($_SERVER['REQUEST_URI']);
201
202 // security fix: this failed, if the URI contained "?" and following "/"
203 // -> we remove everything after "?"
204 if (is_int($pos = strpos($rq_uri, "?")))
205 {
206 $rq_uri = substr($rq_uri, 0, $pos);
207 }
208
209 if(!defined('ILIAS_MODULE'))
210 {
211 $path = pathinfo($rq_uri);
212 if(!$path['extension'])
213 {
214 $uri = $rq_uri;
215 }
216 else
217 {
218 $uri = dirname($rq_uri);
219 }
220 }
221 else
222 {
223 // if in module remove module name from HTTP_PATH
224 $path = dirname($rq_uri);
225
226 // dirname cuts the last directory from a directory path e.g content/classes return content
227
229
230 $dirs = explode('/',$module);
231 $uri = $path;
232 foreach($dirs as $dir)
233 {
234 $uri = dirname($uri);
235 }
236 }
237
238 return define('ILIAS_HTTP_PATH',ilUtil::removeTrailingPathSeparators($protocol.$host.$uri));
239 }
HTTPS.
static removeTrailingPathSeparators($path)
const ILIAS_MODULE
Definition: payment.php:15
$path
Definition: index.php:22
global $https
Definition: imgupload.php:15
$dirs

References $dirs, $https, $path, ILIAS_MODULE, and ilUtil\removeTrailingPathSeparators().

Referenced by initSettings().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ determineClient() [1/2]

static ilInitialisation::determineClient ( )
staticprotected

This method determines the current client and sets the constant CLIENT_ID.

Definition at line 245 of file class.ilInitialisation.php.

246 {
247 global $ilIliasIniFile;
248
249 // check whether ini file object exists
250 if (!is_object($ilIliasIniFile))
251 {
252 self::abortAndDie("Fatal Error: ilInitialisation::determineClient called without initialisation of ILIAS ini file object.");
253 }
254
255 // set to default client if empty
256 if ($_GET["client_id"] != "")
257 {
258 $_GET["client_id"] = ilUtil::stripSlashes($_GET["client_id"]);
259 if (!defined("IL_PHPUNIT_TEST"))
260 {
261 ilUtil::setCookie("ilClientId", $_GET["client_id"]);
262 }
263 }
264 else if (!$_COOKIE["ilClientId"])
265 {
266 // to do: ilias ini raus nehmen
267 $client_id = $ilIliasIniFile->readVariable("clients","default");
268 ilUtil::setCookie("ilClientId", $client_id);
269 }
270 if (!defined("IL_PHPUNIT_TEST"))
271 {
272 define ("CLIENT_ID", $_COOKIE["ilClientId"]);
273 }
274 else
275 {
276 define ("CLIENT_ID", $_GET["client_id"]);
277 }
278 }
static abortAndDie($a_message)
Exit.
static setCookie($a_cookie_name, $a_cookie_value='', $a_also_set_super_global=true, $a_set_cookie_invalid=false)
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
$_COOKIE["ilClientId"]
Definition: cron.php:11
$client_id
global $ilIliasIniFile

References $_COOKIE, $_GET, $client_id, $ilIliasIniFile, abortAndDie(), ilUtil\setCookie(), and ilUtil\stripSlashes().

Referenced by initClient(), and initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ determineClient() [2/2]

ilInitialisation::determineClient ( )

This method determines the current client and sets the constant CLIENT_ID.

Definition at line 125 of file class.ilInitialisation.php.

126 {
127 global $ilIliasIniFile;
128
129 // check whether ini file object exists
130 if (!is_object($ilIliasIniFile))
131 {
132 die ("Fatal Error: ilInitialisation::determineClient called without initialisation of ILIAS ini file object.");
133 }
134 if ($_GET["client_id"] != "") define ("CLIENT_ID", $_GET["client_id"]);
135 else define ("CLIENT_ID", $ilIliasIniFile->readVariable("clients","default"));
136 }

References $_GET, and $ilIliasIniFile.

◆ getCurrentCmd()

static ilInitialisation::getCurrentCmd ( )
staticprotected

Extract current cmd from request.

Returns
string

Definition at line 1347 of file class.ilInitialisation.php.

1348 {
1349 $cmd = $_REQUEST["cmd"];
1350 if(is_array($cmd))
1351 {
1352 return array_shift(array_keys($cmd));
1353 }
1354 else
1355 {
1356 return $cmd;
1357 }
1358 }

References $_REQUEST, and $cmd.

Referenced by blockedAuthentication().

+ Here is the caller graph for this function:

◆ goToLogin()

static ilInitialisation::goToLogin (   $a_auth_stat = "")
staticprotected

go to login

Parameters
int$a_auth_stat

Definition at line 716 of file class.ilInitialisation.php.

717 {
718 global $ilAuth;
719
720 // close current session
721 if($a_auth_stat == AUTH_EXPIRED ||
722 $a_auth_stat == AUTH_IDLED)
723 {
725 }
726 else
727 {
729 }
730 $ilAuth->logout();
731 session_unset();
732 session_destroy();
733
734 $add = "";
735 if ($_GET["soap_pw"] != "")
736 {
737 $add = "&soap_pw=".$_GET["soap_pw"]."&ext_uid=".$_GET["ext_uid"];
738 }
739
740 $script = "login.php?target=".$_GET["target"]."&client_id=".$_COOKIE["ilClientId"].
741 "&auth_stat=".$a_auth_stat.$add;
742
743 self::redirect($script, "init_error_authentication_fail",
744 array("en" => "Authentication failed.",
745 "de" => "Authentifizierung fehlgeschlagen."));
746 }
const AUTH_EXPIRED
Returned if session has expired.
Definition: Auth.php:34
const AUTH_IDLED
Returned if session exceeds idle time.
Definition: Auth.php:30
static redirect($a_target, $a_message_id, $a_message_static)
Redirects to target url if context supports it.
static setClosingContext($a_context)
set closing context (for statistics)
const SESSION_CLOSE_LOGIN
const SESSION_CLOSE_EXPIRE

References $_COOKIE, $_GET, AUTH_EXPIRED, AUTH_IDLED, redirect(), ilSession\SESSION_CLOSE_EXPIRE, ilSession\SESSION_CLOSE_LOGIN, and ilSession\setClosingContext().

+ Here is the call graph for this function:

◆ goToPublicSection()

static ilInitialisation::goToPublicSection (   $a_auth_stat = "")
static

go to public section

Parameters
int$a_auth_stat

Definition at line 636 of file class.ilInitialisation.php.

637 {
638 global $ilAuth;
639
640 if (ANONYMOUS_USER_ID == "")
641 {
642 self::abortAndDie("Public Section enabled, but no Anonymous user found.");
643 }
644
645 // logout and end previous session
646 if($a_auth_stat == AUTH_EXPIRED ||
647 $a_auth_stat == AUTH_IDLED)
648 {
650 }
651 else
652 {
654 }
655 $ilAuth->logout();
656 session_unset();
657 session_destroy();
658
659 // new session and login as anonymous
661 session_start();
662 $_POST["username"] = "anonymous";
663 $_POST["password"] = "anonymous";
665
666 // authenticate (anonymous)
667 $oldSid = session_id();
668 $ilAuth->start();
669 if (IS_PAYMENT_ENABLED)
670 {
671 $newSid = session_id();
672 if($oldSid != $newSid)
673 {
674 include_once './Services/Payment/classes/class.ilPaymentShoppingCart.php';
675 ilPaymentShoppingCart::_migrateShoppingCart($oldSid, $newSid);
676 }
677 }
678
679 if (!$ilAuth->getAuth())
680 {
681 self::abortAndDie("ANONYMOUS user with the object_id ".ANONYMOUS_USER_ID." not found!");
682 }
683
684 self::initUserAccount();
685
686 $mess_id = "init_error_authentication_fail";
687 $mess = array("en" => "Authentication failed.",
688 "de" => "Authentifizierung fehlgeschlagen.");
689
690 // if target given, try to go there
691 if ($_GET["target"] != "")
692 {
693 // when we are already "inside" goto.php no redirect is needed
694 $current_script = substr(strrchr($_SERVER["PHP_SELF"], "/"), 1);
695 if($current_script == "goto.php")
696 {
697 return;
698 }
699
700 // goto will check if target is accessible or redirect to login
701 self::redirect("goto.php?target=".$_GET["target"], $mess_id, $mess);
702 }
703
704 // we do not know if ref_id of request is accesible, so redirecting to root
705 $_GET["ref_id"] = ROOT_FOLDER_ID;
706 $_GET["cmd"] = "frameset";
707 self::redirect("ilias.php?baseClass=ilrepositorygui&reloadpublic=1&cmd=".
708 $_GET["cmd"]."&ref_id=".$_GET["ref_id"], $mess_id, $mess);
709 }
_initAuth()
initialises $ilAuth
static setSessionHandler()
set session handler to db
const SESSION_CLOSE_PUBLIC
$_POST['username']
Definition: cron.php:12

References $_GET, $_POST, ilAuthUtils\_initAuth(), abortAndDie(), AUTH_EXPIRED, AUTH_IDLED, redirect(), ilSession\SESSION_CLOSE_EXPIRE, ilSession\SESSION_CLOSE_PUBLIC, ilSession\setClosingContext(), and setSessionHandler().

Referenced by ilStartUpGUI\processIndexPHP().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ handleDevMode()

static ilInitialisation::handleDevMode ( )
staticprotected

Prepare developer tools

Definition at line 886 of file class.ilInitialisation.php.

887 {
888 if(defined(SHOWNOTICES) && SHOWNOTICES)
889 {
890 // no further differentiating of php version regarding to 5.4 neccessary
891 // when the error reporting is set to E_ALL anyway
892
893 // remove notices from error reporting
894 if (version_compare(PHP_VERSION, '5.3.0', '>='))
895 {
896 error_reporting(E_ALL);
897 }
898 else
899 {
900 error_reporting(E_ALL);
901 }
902 }
903
904 include_once "include/inc.debug.php";
905 }

Referenced by initClient().

+ Here is the caller graph for this function:

◆ handleMaintenanceMode()

static ilInitialisation::handleMaintenanceMode ( )
staticprotected

handle maintenance mode

Definition at line 376 of file class.ilInitialisation.php.

377 {
378 global $ilClientIniFile;
379
380 if (!$ilClientIniFile->readVariable("client","access"))
381 {
382 $mess = array("en" => "The server is not available due to maintenance.".
383 " We apologise for any inconvenience.",
384 "de" => "Der Server ist aufgrund von Wartungsarbeiten nicht verfügbar.".
385 " Wir bitten um Verständnis.");
386 $mess_id = "init_error_maintenance";
387
388 if (ilContext::hasHTML() && is_file("./maintenance.html"))
389 {
390 self::redirect("./maintenance.html", $mess_id, $mess);
391 }
392 else
393 {
394 $mess = self::translateMessage($mess_id, $mess);
395 self::abortAndDie($mess);
396 }
397 }
398 }
static hasHTML()
Has HTML output.
static translateMessage($a_message_id, array $a_message_static=null)
Translate message if possible.

References abortAndDie(), ilContext\hasHTML(), redirect(), and translateMessage().

Referenced by initClient().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ includePhp5Compliance()

static ilInitialisation::includePhp5Compliance ( )
staticprotected

This is a hack for authentication.

Since the phpCAS lib ships with its own compliance functions.

Definition at line 93 of file class.ilInitialisation.php.

94 {
95 // php5 downward complaince to php 4 dom xml and clone method
96 if (version_compare(PHP_VERSION,'5','>='))
97 {
98 include_once 'Services/Authentication/classes/class.ilAuthFactory.php';
100 {
101 require_once("include/inc.xml5compliance.php");
102 }
103 require_once("include/inc.xsl5compliance.php");
104 }
105 }

References ilAuthFactory\CONTEXT_CAS, and ilAuthFactory\getContext().

Referenced by initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initAccessHandling()

static ilInitialisation::initAccessHandling ( )
staticprotected

$ilAccess and $rbac... initialisation

Definition at line 812 of file class.ilInitialisation.php.

813 {
814 self::initGlobal("rbacreview", "ilRbacReview",
815 "./Services/AccessControl/classes/class.ilRbacReview.php");
816
817 require_once "./Services/AccessControl/classes/class.ilRbacSystem.php";
818 $rbacsystem = ilRbacSystem::getInstance();
819 self::initGlobal("rbacsystem", $rbacsystem);
820
821 self::initGlobal("rbacadmin", "ilRbacAdmin",
822 "./Services/AccessControl/classes/class.ilRbacAdmin.php");
823
824 self::initGlobal("ilAccess", "ilAccessHandler",
825 "./Services/AccessControl/classes/class.ilAccessHandler.php");
826
827 require_once "./Services/AccessControl/classes/class.ilConditionHandler.php";
828 }
static initGlobal($a_name, $a_class, $a_source_file=null)
Initialize global instance.

References ilRbacSystem\getInstance(), and initGlobal().

Referenced by initUser().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initClient()

static ilInitialisation::initClient ( )
staticprotected

Init client-based objects (level 1)

Definition at line 1012 of file class.ilInitialisation.php.

1013 {
1014 global $https, $ilias;
1015
1017
1019
1020
1021 // --- needs client ini
1022
1023 $ilias->client_id = CLIENT_ID;
1024
1025 if (DEVMODE)
1026 {
1028 }
1029
1030 self::initLog();
1031
1033
1035
1036
1037 // --- needs database
1038
1039 self::initGlobal("ilAppEventHandler", "ilAppEventHandler",
1040 "./Services/EventHandling/classes/class.ilAppEventHandler.php");
1041
1042 // there are rare cases where initILIAS is called twice for a request
1043 // example goto.php is called and includes ilias.php later
1044 // we must prevent that ilPluginAdmin is initialized twice in
1045 // this case, since this won't get the values out of plugin.php the
1046 // second time properly
1047 if (!is_object($GLOBALS["ilPluginAdmin"]))
1048 {
1049 self::initGlobal("ilPluginAdmin", "ilPluginAdmin",
1050 "./Services/Component/classes/class.ilPluginAdmin.php");
1051 }
1052
1054
1056
1057
1058 // --- needs settings
1059
1061
1063 {
1064 // $https
1065 self::initGlobal("https", "ilHTTPS", "./Services/Http/classes/class.ilHTTPS.php");
1066 $https->enableSecureCookies();
1067 $https->checkPort();
1068 }
1069
1070
1071 // --- object handling
1072
1073 self::initGlobal("ilObjDataCache", "ilObjectDataCache",
1074 "./Services/Object/classes/class.ilObjectDataCache.php");
1075
1076 // needed in ilObjectDefinition
1077 require_once "./Services/Xml/classes/class.ilSaxParser.php";
1078
1079 self::initGlobal("objDefinition", "ilObjectDefinition",
1080 "./Services/Object/classes/class.ilObjectDefinition.php");
1081
1082 // $tree
1083 require_once "./Services/Tree/classes/class.ilTree.php";
1084 $tree = new ilTree(ROOT_FOLDER_ID);
1085 self::initGlobal("tree", $tree);
1086 unset($tree);
1087
1088 self::initGlobal("ilCtrl", "ilCtrl",
1089 "./Services/UICore/classes/class.ilCtrl.php");
1090
1092 }
static usesHTTP()
Uses HTTP aka browser.
static initDatabase()
initialise database object $ilDB
static initLocale()
Init Locale.
static initClientIniFile()
This method provides a global instance of class ilIniFile for the client.ini.php file in variable $il...
static determineClient()
This method determines the current client and sets the constant CLIENT_ID.
static initLog()
Init log instance.
static handleDevMode()
Prepare developer tools
static setCookieParams()
set session cookie params for path, domain, etc.
static initSettings()
initialise $ilSettings object and define constants
static handleMaintenanceMode()
handle maintenance mode
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...

References $GLOBALS, $https, determineClient(), handleDevMode(), handleMaintenanceMode(), initClientIniFile(), initDatabase(), initGlobal(), initLocale(), initLog(), initSettings(), setCookieParams(), setSessionHandler(), and ilContext\usesHTTP().

Referenced by initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initClientIniFile() [1/2]

static ilInitialisation::initClientIniFile ( )
staticprotected

This method provides a global instance of class ilIniFile for the client.ini.php file in variable $ilClientIniFile.

It initializes a lot of constants accordingly to the settings in the client.ini.php file.

Preconditions: ILIAS_WEB_DIR and CLIENT_ID must be set.

Returns
boolean true, if no error occured with client init file otherwise false

Definition at line 292 of file class.ilInitialisation.php.

293 {
294 global $ilIliasIniFile;
295
296 // check whether ILIAS_WEB_DIR is set.
297 if (ILIAS_WEB_DIR == "")
298 {
299 self::abortAndDie("Fatal Error: ilInitialisation::initClientIniFile called without ILIAS_WEB_DIR.");
300 }
301
302 // check whether CLIENT_ID is set.
303 if (CLIENT_ID == "")
304 {
305 self::abortAndDie("Fatal Error: ilInitialisation::initClientIniFile called without CLIENT_ID.");
306 }
307
308 $ini_file = "./".ILIAS_WEB_DIR."/".CLIENT_ID."/client.ini.php";
309
310 // get settings from ini file
311 require_once("./Services/Init/classes/class.ilIniFile.php");
312 $ilClientIniFile = new ilIniFile($ini_file);
313 $ilClientIniFile->read();
314
315 // invalid client id / client ini
316 if ($ilClientIniFile->ERROR != "")
317 {
318 $c = $_COOKIE["ilClientId"];
319 $default_client = $ilIliasIniFile->readVariable("clients","default");
320 ilUtil::setCookie("ilClientId", $default_client);
321 if (CLIENT_ID != "" && CLIENT_ID != $default_client)
322 {
323 $mess = array("en" => "Client does not exist.",
324 "de" => "Mandant ist ungültig.");
325 self::redirect("index.php?client_id=".$default_client, null, $mess);
326 }
327 else
328 {
329 self::abortAndDie("Fatal Error: ilInitialisation::initClientIniFile initializing client ini file abborted with: ". $ilClientIniFile->ERROR);
330 }
331 }
332
333 self::initGlobal("ilClientIniFile", $ilClientIniFile);
334
335 // set constants
336 define ("SESSION_REMINDER_LEADTIME", 30);
337 define ("DEBUG",$ilClientIniFile->readVariable("system","DEBUG"));
338 define ("DEVMODE",$ilClientIniFile->readVariable("system","DEVMODE"));
339 define ("SHOWNOTICES",$ilClientIniFile->readVariable("system","SHOWNOTICES"));
340 define ("ROOT_FOLDER_ID",$ilClientIniFile->readVariable('system','ROOT_FOLDER_ID'));
341 define ("SYSTEM_FOLDER_ID",$ilClientIniFile->readVariable('system','SYSTEM_FOLDER_ID'));
342 define ("ROLE_FOLDER_ID",$ilClientIniFile->readVariable('system','ROLE_FOLDER_ID'));
343 define ("MAIL_SETTINGS_ID",$ilClientIniFile->readVariable('system','MAIL_SETTINGS_ID'));
344
345 // this is for the online help installation, which sets OH_REF_ID to the
346 // ref id of the online module
347 define ("OH_REF_ID",$ilClientIniFile->readVariable("system","OH_REF_ID"));
348
349 define ("SYSTEM_MAIL_ADDRESS",$ilClientIniFile->readVariable('system','MAIL_SENT_ADDRESS')); // Change SS
350 define ("MAIL_REPLY_WARNING",$ilClientIniFile->readVariable('system','MAIL_REPLY_WARNING')); // Change SS
351
352 // see ilObject::TITLE_LENGTH, ilObject::DESC_LENGTH
353 // define ("MAXLENGTH_OBJ_TITLE",125);#$ilClientIniFile->readVariable('system','MAXLENGTH_OBJ_TITLE'));
354 // define ("MAXLENGTH_OBJ_DESC",$ilClientIniFile->readVariable('system','MAXLENGTH_OBJ_DESC'));
355
356 define ("CLIENT_DATA_DIR",ILIAS_DATA_DIR."/".CLIENT_ID);
357 define ("CLIENT_WEB_DIR",ILIAS_ABSOLUTE_PATH."/".ILIAS_WEB_DIR."/".CLIENT_ID);
358 define ("CLIENT_NAME",$ilClientIniFile->readVariable('client','name')); // Change SS
359
360 $val = $ilClientIniFile->readVariable("db","type");
361 if ($val == "")
362 {
363 define ("IL_DB_TYPE", "mysql");
364 }
365 else
366 {
367 define ("IL_DB_TYPE", $val);
368 }
369
370 return true;
371 }
INIFile Parser.
const ILIAS_WEB_DIR
const ILIAS_ABSOLUTE_PATH

References $_COOKIE, $ilIliasIniFile, abortAndDie(), ILIAS_ABSOLUTE_PATH, ILIAS_WEB_DIR, initGlobal(), redirect(), and ilUtil\setCookie().

Referenced by initClient(), and initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initClientIniFile() [2/2]

ilInitialisation::initClientIniFile ( )

This method provides a global instance of class ilIniFile for the client.ini.php file in variable $ilClientIniFile.

It initializes a lot of constants accordingly to the settings in the client.ini.php file.

Preconditions: ILIAS_WEB_DIR and CLIENT_ID must be set.

Returns
boolean true, if no error occured with client init file otherwise false

Definition at line 150 of file class.ilInitialisation.php.

151 {
152 global $ilClientIniFile;
153
154 // check whether ILIAS_WEB_DIR is set.
155 if (ILIAS_WEB_DIR == "")
156 {
157 die ("Fatal Error: ilInitialisation::initClientIniFile called without ILIAS_WEB_DIR.");
158 }
159
160 // check whether CLIENT_ID is set.
161 if (CLIENT_ID == "")
162 {
163 die ("Fatal Error: ilInitialisation::initClientIniFile called without CLIENT_ID.");
164 }
165
166 $ini_file = "./".ILIAS_WEB_DIR."/".CLIENT_ID."/client.ini.php";
167
168 // get settings from ini file
169 require_once("./Services/Init/classes/class.ilIniFile.php");
170 $ilClientIniFile = new ilIniFile($ini_file);
171 $GLOBALS['ilClientIniFile'] =& $ilClientIniFile;
172 $ilClientIniFile->read();
173
174 // if no ini-file found switch to setup routine
175 if ($ilClientIniFile->ERROR != "")
176 {
177 throw new ilException('No Client INI File!! (ClientID "'.CLIENT_ID.'" / '.$ilClientIniFile->ERROR.')');
178 return false;
179 }
180
181 // set constants
182 define ("CLIENT_DATA_DIR",ILIAS_DATA_DIR."/".CLIENT_ID);
183 define ("CLIENT_WEB_DIR",ILIAS_ABSOLUTE_PATH."/".ILIAS_WEB_DIR."/".CLIENT_ID);
184 define ("CLIENT_NAME",$ilClientIniFile->readVariable('client','name')); // Change SS
185
186 define ("ROOT_FOLDER_ID",$ilClientIniFile->readVariable('system','ROOT_FOLDER_ID'));
187
188 $val = $ilClientIniFile->readVariable("db","type");
189 if ($val == "")
190 {
191 define ("IL_DB_TYPE", "mysql");
192 }
193 else
194 {
195 define ("IL_DB_TYPE", $val);
196 }
197 return true;
198 }
Base class for ILIAS Exception handling.

References $GLOBALS, ILIAS_ABSOLUTE_PATH, and ILIAS_WEB_DIR.

◆ initCore()

static ilInitialisation::initCore ( )
staticprotected

Init core objects (level 0)

Definition at line 959 of file class.ilInitialisation.php.

960 {
961 global $ilErr;
962
963 // remove notices from error reporting
964 if (version_compare(PHP_VERSION, '5.4.0', '>='))
965 {
966 // Prior to PHP 5.4.0 E_ALL does not include E_STRICT.
967 // With PHP 5.4.0 and above E_ALL >DOES< include E_STRICT.
968
969 error_reporting(((ini_get("error_reporting") & ~E_NOTICE) & ~E_DEPRECATED) & ~E_STRICT);
970 }
971 elseif (version_compare(PHP_VERSION, '5.3.0', '>='))
972 {
973 error_reporting((ini_get("error_reporting") & ~E_NOTICE) & ~E_DEPRECATED);
974 }
975 else
976 {
977 error_reporting(ini_get('error_reporting') & ~E_NOTICE);
978 }
979 // breaks CAS: must be included after CAS context isset in AuthUtils
980 //self::includePhp5Compliance();
981
983
984
985 // error handler
986 self::initGlobal("ilErr", "ilErrorHandling",
987 "./Services/Init/classes/class.ilErrorHandling.php");
988 $ilErr->setErrorHandling(PEAR_ERROR_CALLBACK, array($ilErr, 'errorHandler'));
989
990 // :TODO: obsolete?
991 PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, array($ilErr, "errorHandler"));
992
993 // workaround: load old post variables if error handler 'message' was called
994 include_once "Services/Authentication/classes/class.ilSession.php";
995 if (ilSession::get("message"))
996 {
997 $_POST = ilSession::get("post_vars");
998 }
999
1001
1003
1004
1005 // deprecated
1006 self::initGlobal("ilias", "ILIAS", "./Services/Init/classes/class.ilias.php");
1007 }
const PEAR_ERROR_CALLBACK
Definition: PEAR.php:35
setErrorHandling($mode=null, $options=null)
Sets how errors generated by this object should be handled.
Definition: PEAR.php:335
static removeUnsafeCharacters()
Remove unsafe characters from GET.
static requireCommonIncludes()
get common include code files
static initIliasIniFile()
This method provides a global instance of class ilIniFile for the ilias.ini.php file in variable $ilI...
static get($a_var)
Get a value.

References $_POST, $ilErr, ilSession\get(), initGlobal(), initIliasIniFile(), PEAR_ERROR_CALLBACK, removeUnsafeCharacters(), requireCommonIncludes(), and PEAR\setErrorHandling().

Referenced by initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initDatabase() [1/2]

static ilInitialisation::initDatabase ( )
staticprotected

initialise database object $ilDB

Definition at line 404 of file class.ilInitialisation.php.

405 {
406 // build dsn of database connection and connect
407 require_once("./Services/Database/classes/class.ilDBWrapperFactory.php");
409 $ilDB->initFromIniFile();
410 $ilDB->connect();
411
412 self::initGlobal("ilDB", $ilDB);
413 }
static getWrapper($a_type, $a_inactive_mysqli=null)
global $ilDB

References $ilDB, ilDBWrapperFactory\getWrapper(), and initGlobal().

Referenced by initClient(), and initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initDatabase() [2/2]

ilInitialisation::initDatabase ( )

initialise database object $ilDB

Definition at line 204 of file class.ilInitialisation.php.

205 {
206 global $ilDB, $ilClientIniFile;
207
208 // build dsn of database connection and connect
209 require_once("./Services/Database/classes/class.ilDBWrapperFactory.php");
211 $ilDB->initFromIniFile();
212 $ilDB->connect();
213 $GLOBALS['ilDB'] = $ilDB;
214
215 }

References $GLOBALS, $ilDB, and ilDBWrapperFactory\getWrapper().

+ Here is the call graph for this function:

◆ initEventHandling()

ilInitialisation::initEventHandling ( )

initialise event handler ilAppEventHandler

Definition at line 220 of file class.ilInitialisation.php.

221 {
222 global $ilAppEventHandler;
223
224 // build dsn of database connection and connect
225 require_once("./Services/EventHandling/classes/class.ilAppEventHandler.php");
226 $ilAppEventHandler = new ilAppEventHandler();
227 $GLOBALS['ilAppEventHandler'] =& $ilAppEventHandler;
228 }
Global event handler.

References $GLOBALS.

◆ initGlobal()

static ilInitialisation::initGlobal (   $a_name,
  $a_class,
  $a_source_file = null 
)
staticprotected

Initialize global instance.

Parameters
string$a_name
string$a_class
string$a_source_file

Definition at line 856 of file class.ilInitialisation.php.

857 {
858 if($a_source_file)
859 {
860 include_once $a_source_file;
861 $GLOBALS[$a_name] = new $a_class;
862 }
863 else
864 {
865 $GLOBALS[$a_name] = $a_class;
866 }
867 }

References $GLOBALS.

Referenced by initAccessHandling(), initClient(), initClientIniFile(), initCore(), initDatabase(), initIliasIniFile(), initLanguage(), initLog(), initSettings(), initStyle(), initUser(), and requireCommonIncludes().

+ Here is the caller graph for this function:

◆ initILIAS() [1/2]

ilInitialisation::initILIAS (   $context = "web")

ilias initialisation

Parameters
string$contextthis is used for circumvent redirects to the login page if called e.g. by soap

Definition at line 235 of file class.ilInitialisation.php.

236 {
237 global $ilDB, $ilUser, $ilLog, $ilErr, $ilClientIniFile, $ilIliasIniFile,
238 $ilSetting, $ilias, $https, $ilObjDataCache,
239 $ilLog, $objDefinition, $lng, $ilCtrl, $ilBrowser, $ilHelp,
240 $ilTabs, $ilMainMenu, $rbacsystem, $ilNavigationHistory;
241
242 // remove unsafe characters
243 $this->removeUnsafeCharacters();
244
245 // error reporting
246 // remove notices from error reporting
247 if (version_compare(PHP_VERSION, '5.3.0', '>='))
248 {
249 error_reporting((ini_get("error_reporting") & ~E_NOTICE) & ~E_DEPRECATED);
250 }
251 else
252 {
253 error_reporting(ini_get('error_reporting') & ~E_NOTICE);
254 }
255
256 $ilUser = new ilObjUserMin();
257 $GLOBALS['ilUser'] =& $ilUser;
258
259
260 // include common code files
261 $this->requireCommonIncludes();
262 global $ilBench;
263 // $ilIliasIniFile initialisation
264 $this->initIliasIniFile();
265
266
267 // CLIENT_ID determination
268 $this->determineClient();
269
270 // $ilAppEventHandler initialisation
271 //$this->initEventHandling();
272
273
274 // $ilClientIniFile initialisation
275 if (!$this->initClientIniFile())
276 {
277 die("no client");
278 }
279
280 // $ilDB initialisation
281 $this->initDatabase();
282 $this->initLog();
283
284 // settings
285 $ilSetting = new ilSetting();
286 $GLOBALS['ilSetting'] = & $ilSetting;
287
288 // init tree
289 require_once "./Services/Tree/classes/class.ilTree.php";
290 $tree = new ilTree(ROOT_FOLDER_ID);
291 $GLOBALS['tree'] =& $tree;
292
293
294 if ((string) $_GET['do'] == "unload") {
295 include_once './Modules/Scorm2004/classes/class.ilSCORM2004StoreData.php';
296 ilSCORM2004StoreData::scormPlayerUnload(null, (int)$_GET['package_id']);
297 }
298 else $this->persistCMIData();
299 }
scormPlayerUnload($userId=null, $packageId, $time_from_lms)
ILIAS Setting Class.
global $ilBench
Definition: ilias.php:18
global $ilCtrl
Definition: ilias.php:18
global $lng
Definition: privfeed.php:40
global $ilSetting
Definition: privfeed.php:40
global $ilUser
Definition: imgupload.php:15

References $_GET, $GLOBALS, $https, $ilBench, $ilCtrl, $ilDB, $ilErr, $ilIliasIniFile, $ilLog, $ilSetting, $ilUser, $lng, determineClient(), initClientIniFile(), initDatabase(), initIliasIniFile(), initLog(), persistCMIData(), removeUnsafeCharacters(), requireCommonIncludes(), and ilSCORM2004StoreData\scormPlayerUnload().

+ Here is the call graph for this function:

◆ initILIAS() [2/2]

static ilInitialisation::initILIAS ( )
static

ilias initialisation

Definition at line 912 of file class.ilInitialisation.php.

913 {
914 if (self::$already_initialized)
915 {
916 return;
917 }
918
919 self::$already_initialized = true;
920
921 global $tree;
922
924
926 {
928
929 if (ilContext::hasUser())
930 {
932
934 {
936 }
937 }
938
939 // init after Auth otherwise breaks CAS
941
942 // language may depend on user setting
944 $tree->initLangCode();
945
947 {
948 include_once('./Services/WebServices/ECS/classes/class.ilECSTaskScheduler.php');
950
951 self::initHTML();
952 }
953 }
954 }
static doAuthentication()
Try authentication.
static hasUser()
Based on user authentication?
static initClient()
Init client.
static start()
Start task scheduler for each server instance.
static initClient()
Init client-based objects (level 1)
static initCore()
Init core objects (level 0)
static includePhp5Compliance()
This is a hack for authentication.
static initLanguage()
$lng initialisation
static authenticate()
Try authentication.
static initUser()
Init user / authentification (level 2)

References authenticate(), ilContext\doAuthentication(), ilContext\hasHTML(), ilContext\hasUser(), includePhp5Compliance(), ilContext\initClient(), initClient(), initCore(), initLanguage(), initUser(), and ilECSTaskScheduler\start().

Referenced by ilSoapAdministration\getClientInfoXML(), ilSoapAdministration\getInstallationInfoXML(), ilCalendarRemoteAccessHandler\initIlias(), and ilSoapAdministration\initIlias().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initIliasIniFile() [1/2]

static ilInitialisation::initIliasIniFile ( )
staticprotected

This method provides a global instance of class ilIniFile for the ilias.ini.php file in variable $ilIliasIniFile.

It initializes a lot of constants accordingly to the settings in the ilias.ini.php file.

Definition at line 114 of file class.ilInitialisation.php.

115 {
116 require_once("./Services/Init/classes/class.ilIniFile.php");
117 $ilIliasIniFile = new ilIniFile("./ilias.ini.php");
118 $ilIliasIniFile->read();
119 self::initGlobal('ilIliasIniFile', $ilIliasIniFile);
120
121 // initialize constants
122 define("ILIAS_DATA_DIR",$ilIliasIniFile->readVariable("clients","datadir"));
123 define("ILIAS_WEB_DIR",$ilIliasIniFile->readVariable("clients","path"));
124 define("ILIAS_ABSOLUTE_PATH",$ilIliasIniFile->readVariable('server','absolute_path'));
125
126 // logging
127 define ("ILIAS_LOG_DIR",$ilIliasIniFile->readVariable("log","path"));
128 define ("ILIAS_LOG_FILE",$ilIliasIniFile->readVariable("log","file"));
129 define ("ILIAS_LOG_ENABLED",$ilIliasIniFile->readVariable("log","enabled"));
130 define ("ILIAS_LOG_LEVEL",$ilIliasIniFile->readVariable("log","level"));
131 define ("SLOW_REQUEST_TIME",$ilIliasIniFile->readVariable("log","slow_request_time"));
132
133 // read path + command for third party tools from ilias.ini
134 define ("PATH_TO_CONVERT",$ilIliasIniFile->readVariable("tools","convert"));
135 define ("PATH_TO_FFMPEG",$ilIliasIniFile->readVariable("tools","ffmpeg"));
136 define ("PATH_TO_ZIP",$ilIliasIniFile->readVariable("tools","zip"));
137 define ("PATH_TO_MKISOFS",$ilIliasIniFile->readVariable("tools","mkisofs"));
138 define ("PATH_TO_UNZIP",$ilIliasIniFile->readVariable("tools","unzip"));
139 define ("PATH_TO_GHOSTSCRIPT",$ilIliasIniFile->readVariable("tools","ghostscript"));
140 define ("PATH_TO_JAVA",$ilIliasIniFile->readVariable("tools","java"));
141 define ("PATH_TO_HTMLDOC",$ilIliasIniFile->readVariable("tools","htmldoc"));
142 define ("URL_TO_LATEX",$ilIliasIniFile->readVariable("tools","latex"));
143 define ("PATH_TO_FOP",$ilIliasIniFile->readVariable("tools","fop"));
144
145 // read virus scanner settings
146 switch ($ilIliasIniFile->readVariable("tools", "vscantype"))
147 {
148 case "sophos":
149 define("IL_VIRUS_SCANNER", "Sophos");
150 define("IL_VIRUS_SCAN_COMMAND", $ilIliasIniFile->readVariable("tools", "scancommand"));
151 define("IL_VIRUS_CLEAN_COMMAND", $ilIliasIniFile->readVariable("tools", "cleancommand"));
152 break;
153
154 case "antivir":
155 define("IL_VIRUS_SCANNER", "AntiVir");
156 define("IL_VIRUS_SCAN_COMMAND", $ilIliasIniFile->readVariable("tools", "scancommand"));
157 define("IL_VIRUS_CLEAN_COMMAND", $ilIliasIniFile->readVariable("tools", "cleancommand"));
158 break;
159
160 case "clamav":
161 define("IL_VIRUS_SCANNER", "ClamAV");
162 define("IL_VIRUS_SCAN_COMMAND", $ilIliasIniFile->readVariable("tools", "scancommand"));
163 define("IL_VIRUS_CLEAN_COMMAND", $ilIliasIniFile->readVariable("tools", "cleancommand"));
164 break;
165
166 default:
167 define("IL_VIRUS_SCANNER", "None");
168 break;
169 }
170
171 $tz = $ilIliasIniFile->readVariable("server","timezone");
172 if ($tz != "")
173 {
174 if (function_exists('date_default_timezone_set'))
175 {
176 date_default_timezone_set($tz);
177 }
178 }
179 define ("IL_TIMEZONE", $ilIliasIniFile->readVariable("server","timezone"));
180 }

References $ilIliasIniFile, and initGlobal().

Referenced by initCore(), and initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initIliasIniFile() [2/2]

ilInitialisation::initIliasIniFile ( )

This method provides a global instance of class ilIniFile for the ilias.ini.php file in variable $ilIliasIniFile.

It initializes a lot of constants accordingly to the settings in the ilias.ini.php file.

Definition at line 88 of file class.ilInitialisation.php.

89 {
90 global $ilIliasIniFile;
91
92 require_once("./Services/Init/classes/class.ilIniFile.php");
93 $ilIliasIniFile = new ilIniFile("./ilias.ini.php");
94 $GLOBALS['ilIliasIniFile'] =& $ilIliasIniFile;
95 $ilIliasIniFile->read();
96
97 // initialize constants
98 define("ILIAS_DATA_DIR",$ilIliasIniFile->readVariable("clients","datadir"));
99 define("ILIAS_WEB_DIR",$ilIliasIniFile->readVariable("clients","path"));
100 define("ILIAS_ABSOLUTE_PATH",$ilIliasIniFile->readVariable('server','absolute_path'));
101
102 // logging
103 define ("ILIAS_LOG_DIR",$ilIliasIniFile->readVariable("log","path"));
104 define ("ILIAS_LOG_FILE",$ilIliasIniFile->readVariable("log","file"));
105 define ("ILIAS_LOG_ENABLED",$ilIliasIniFile->readVariable("log","enabled"));
106 define ("ILIAS_LOG_LEVEL",$ilIliasIniFile->readVariable("log","level"));
107
108
109 $tz = $ilIliasIniFile->readVariable("server","timezone");
110 if ($tz != "")
111 {
112 if (function_exists('date_default_timezone_set'))
113 {
114 date_default_timezone_set($tz);
115 }
116 }
117 define ("IL_TIMEZONE", $ilIliasIniFile->readVariable("server","timezone"));
118 }

References $GLOBALS, and $ilIliasIniFile.

◆ initLanguage()

static ilInitialisation::initLanguage ( )
staticprotected

$lng initialisation

Definition at line 751 of file class.ilInitialisation.php.

752 {
753 global $ilUser, $ilSetting, $rbacsystem;
754
755 if (!ilSession::get("lang"))
756 {
757 if ($_GET['lang'])
758 {
759 $_GET['lang'] = $_GET['lang'];
760 }
761 else
762 {
763 if (is_object($ilUser))
764 {
765 $_GET['lang'] = $ilUser->getPref('language');
766 }
767 }
768 }
769
770 if (isset($_POST['change_lang_to']) && $_POST['change_lang_to'] != "")
771 {
772 $_GET['lang'] = ilUtil::stripSlashes($_POST['change_lang_to']);
773 }
774
775 // prefer personal setting when coming from login screen
776 // Added check for ilUser->getId > 0 because it is 0 when the language is changed and the terms of service should be displayes (Helmut Schottm��ller, 2006-10-14)
777 if (is_object($ilUser) && $ilUser->getId() != ANONYMOUS_USER_ID && $ilUser->getId() > 0)
778 {
779 ilSession::set('lang', $ilUser->getPref('language'));
780 }
781
782 ilSession::set('lang', (isset($_GET['lang']) && $_GET['lang']) ? $_GET['lang'] : ilSession::get('lang'));
783
784 // check whether lang selection is valid
785 require_once "./Services/Language/classes/class.ilLanguage.php";
787 if (!in_array(ilSession::get('lang'), $langs))
788 {
789 if (is_object($ilSetting) && $ilSetting->get('language') != '')
790 {
791 ilSession::set('lang', $ilSetting->get('language'));
792 }
793 else
794 {
795 ilSession::set('lang', $langs[0]);
796 }
797 }
798 $_GET['lang'] = ilSession::get('lang');
799
800 $lng = new ilLanguage(ilSession::get('lang'));
801 self::initGlobal('lng', $lng);
802
803 if(is_object($rbacsystem))
804 {
805 $rbacsystem->initMemberView();
806 }
807 }
language handling
static set($a_var, $a_val)
Set a value.

References $_GET, $_POST, $ilSetting, $ilUser, $lng, ilSession\get(), ilLanguage\getInstalledLanguages(), initGlobal(), ilSession\set(), and ilUtil\stripSlashes().

Referenced by initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initLocale()

static ilInitialisation::initLocale ( )
staticprotected

Init Locale.

Definition at line 604 of file class.ilInitialisation.php.

605 {
606 global $ilSetting;
607
608 if (trim($ilSetting->get("locale") != ""))
609 {
610 $larr = explode(",", trim($ilSetting->get("locale")));
611 $ls = array();
612 $first = $larr[0];
613 foreach ($larr as $l)
614 {
615 if (trim($l) != "")
616 {
617 $ls[] = $l;
618 }
619 }
620 if (count($ls) > 0)
621 {
622 setlocale(LC_ALL, $ls);
623 if (class_exists("Collator"))
624 {
625 $GLOBALS["ilCollator"] = new Collator($first);
626 }
627 }
628 }
629 }

References $GLOBALS, and $ilSetting.

Referenced by initClient().

+ Here is the caller graph for this function:

◆ initLog() [1/2]

static ilInitialisation::initLog ( )
staticprotected

Init log instance.

Definition at line 833 of file class.ilInitialisation.php.

834 {
835 require_once "./Services/Logging/classes/class.ilLog.php";
836 try
837 {
838 $log = new ilLog(ILIAS_LOG_DIR,ILIAS_LOG_FILE,CLIENT_ID,ILIAS_LOG_ENABLED,ILIAS_LOG_LEVEL);
839 }
840 catch(ilLogException $e)
841 {
842 self::abortAndDie($e->getMessage());
843 }
844 self::initGlobal("ilLog", $log);
845 // deprecated
846 self::initGlobal("log", $log);
847 }
ILIAS Log exception class.
logging
Definition: class.ilLog.php:19

References $log, abortAndDie(), and initGlobal().

Referenced by initClient(), and initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initLog() [2/2]

ilInitialisation::initLog ( )

Definition at line 300 of file class.ilInitialisation.php.

300 {
301 global $ilLog;
302 $log = new ilLog(ILIAS_LOG_DIR,ILIAS_LOG_FILE,CLIENT_ID,ILIAS_LOG_ENABLED,ILIAS_LOG_LEVEL);
303 $GLOBALS['log'] = $log;
304 $ilLog = $log;
305 $GLOBALS['ilLog'] = $ilLog;
306 }

References $GLOBALS, $ilLog, and $log.

◆ initSettings()

static ilInitialisation::initSettings ( )
staticprotected

initialise $ilSettings object and define constants

Used in Soap

Definition at line 504 of file class.ilInitialisation.php.

505 {
506 global $ilSetting;
507
508 self::initGlobal("ilSetting", "ilSetting",
509 "Services/Administration/classes/class.ilSetting.php");
510
511 // check correct setup
512 if (!$ilSetting->get("setup_ok"))
513 {
514 self::abortAndDie("Setup is not completed. Please run setup routine again.");
515 }
516
517 // set anonymous user & role id and system role id
518 define ("ANONYMOUS_USER_ID", $ilSetting->get("anonymous_user_id"));
519 define ("ANONYMOUS_ROLE_ID", $ilSetting->get("anonymous_role_id"));
520 define ("SYSTEM_USER_ID", $ilSetting->get("system_user_id"));
521 define ("SYSTEM_ROLE_ID", $ilSetting->get("system_role_id"));
522 define ("USER_FOLDER_ID", 7);
523
524 // recovery folder
525 define ("RECOVERY_FOLDER_ID", $ilSetting->get("recovery_folder_id"));
526
527 // installation id
528 define ("IL_INST_ID", $ilSetting->get("inst_id",0));
529
530 // define default suffix replacements
531 define ("SUFFIX_REPL_DEFAULT", "php,php3,php4,inc,lang,phtml,htaccess");
532 define ("SUFFIX_REPL_ADDITIONAL", $ilSetting->get("suffix_repl_additional"));
533
535 {
537 }
538
539 // payment setting
540 require_once('Services/Payment/classes/class.ilPaymentSettings.php');
541 define('IS_PAYMENT_ENABLED', ilPaymentSettings::_isPaymentEnabled());
542 }
static buildHTTPPath()
builds http path

References $ilSetting, ilPaymentSettings\_isPaymentEnabled(), abortAndDie(), buildHTTPPath(), initGlobal(), and ilContext\usesHTTP().

Referenced by initClient().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initStyle()

static ilInitialisation::initStyle ( )
staticprotected

provide $styleDefinition object

Definition at line 547 of file class.ilInitialisation.php.

548 {
549 global $styleDefinition, $ilPluginAdmin;
550
551 // load style definitions
552 self::initGlobal("styleDefinition", "ilStyleDefinition",
553 "./Services/Style/classes/class.ilStyleDefinition.php");
554
555 // add user interface hook for style initialisation
556 $pl_names = $ilPluginAdmin->getActivePluginsForSlot(IL_COMP_SERVICE, "UIComponent", "uihk");
557 foreach ($pl_names as $pl)
558 {
559 $ui_plugin = ilPluginAdmin::getPluginObject(IL_COMP_SERVICE, "UIComponent", "uihk", $pl);
560 $gui_class = $ui_plugin->getUIClassInstance();
561 $gui_class->modifyGUI("Services/Init", "init_style", array("styleDefinition" => $styleDefinition));
562 }
563
564 $styleDefinition->startParsing();
565 }
const IL_COMP_SERVICE
static getPluginObject($a_ctype, $a_cname, $a_slot_id, $a_pname)
Get Plugin Object.

References ilPluginAdmin\getPluginObject(), IL_COMP_SERVICE, and initGlobal().

+ Here is the call graph for this function:

◆ initUser()

static ilInitialisation::initUser ( )
staticprotected

Init user / authentification (level 2)

Definition at line 1097 of file class.ilInitialisation.php.

1098 {
1099 global $ilias, $ilAuth, $ilUser;
1100
1102 {
1103 // allow login by submitting user data
1104 // in query string when DEVMODE is enabled
1105 if( DEVMODE
1106 && isset($_GET['username']) && strlen($_GET['username'])
1107 && isset($_GET['password']) && strlen($_GET['password'])
1108 ){
1109 $_POST['username'] = $_GET['username'];
1110 $_POST['password'] = $_GET['password'];
1111 }
1112 }
1113
1114 // $ilAuth
1115 require_once "Auth/Auth.php";
1116 require_once "./Services/AuthShibboleth/classes/class.ilShibboleth.php";
1117 include_once("./Services/Authentication/classes/class.ilAuthUtils.php");
1119 $ilias->auth = $ilAuth;
1120
1121 // $ilUser
1122 self::initGlobal("ilUser", "ilObjUser",
1123 "./Services/User/classes/class.ilObjUser.php");
1124 $ilias->account =& $ilUser;
1125
1127
1128
1129 // force login
1130 if ((isset($_GET["cmd"]) && $_GET["cmd"] == "force_login"))
1131 {
1132 $ilAuth->logout();
1133
1134 // we need to do this for the session statistics
1135 // could we use session_destroy() instead?
1136 // [this is done after every $ilAuth->logout() call elsewhere]
1138
1139 // :TODO: keep session because of cart content?
1140 if(!isset($_GET['forceShoppingCartRedirect']))
1141 {
1142 $_SESSION = array();
1143 }
1144 else
1145 {
1146 ilSession::set("AccountId", "");
1147 }
1148 }
1149
1150 }
static initAccessHandling()
$ilAccess and $rbac... initialisation
static _destroy($a_session_id, $a_closing_context=null, $a_expired_at=null)
Destroy session.
< a tabindex="-1" style="border-style: none;" href="#" title="Refresh Image" onclick="document.getElementById('siimage').src = './securimage_show.php?sid=' + Math.random(); this.blur(); return false">< img src="./images/refresh.png" alt="Reload Image" height="32" width="32" onclick="this.blur()" align="bottom" border="0"/></a >< br/>< strong > Enter Code *if($_SERVER['REQUEST_METHOD']=='POST' &&@ $_POST['do']=='contact') $_SESSION['ctform']['success']

References $_GET, $_POST, $_SESSION, $ilUser, ilSession\_destroy(), ilAuthUtils\_initAuth(), initAccessHandling(), initGlobal(), ilSession\SESSION_CLOSE_LOGIN, ilSession\set(), and ilContext\usesHTTP().

Referenced by initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ persistCMIData()

ilInitialisation::persistCMIData ( )

Definition at line 308 of file class.ilInitialisation.php.

309 {
310 global $ilLog, $ilDB, $ilUser;
311 $packageId=(int)$_GET['package_id'];
312 $lm_set = $ilDB->queryF('SELECT default_lesson_mode, interactions, objectives, comments FROM sahs_lm WHERE id = %s',
313 array('integer'),array($packageId));
314
315 while($lm_rec = $ilDB->fetchAssoc($lm_set))
316 {
317 $defaultLessonMode=($lm_rec["default_lesson_mode"]);
318 $interactions=(ilUtil::yn2tf($lm_rec["interactions"]));
319 $objectives=(ilUtil::yn2tf($lm_rec["objectives"]));
320 $comments=(ilUtil::yn2tf($lm_rec["comments"]));
321 }
322 $data = file_get_contents('php://input');
323 $ilUser->setId($data->p);
324
325 include_once './Modules/Scorm2004/classes/class.ilSCORM2004StoreData.php';
327 $defaultLessonMode, $comments,
328 $interactions, $objectives,$data);
329 }
persistCMIData($userId=null, $packageId, $defaultLessonMode, $comments, $interactions, $objectives, $time_from_lms, $data=null)
static yn2tf($a_yn)
convert "y"/"n" to true/false
$packageId
$lm_set

References $_GET, $data, $ilDB, $ilLog, $ilUser, $lm_set, $packageId, ilSCORM2004StoreData\persistCMIData(), and ilUtil\yn2tf().

Referenced by initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ redirect()

static ilInitialisation::redirect (   $a_target,
  $a_message_id,
  $a_message_static 
)
staticprotected

Redirects to target url if context supports it.

Parameters
string$a_target
string$a_message_id
array$a_message_details

Definition at line 1494 of file class.ilInitialisation.php.

1495 {
1496 // #12739
1497 if(defined("ILIAS_HTTP_PATH") &&
1498 !stristr($a_target, ILIAS_HTTP_PATH))
1499 {
1500 $a_target = ILIAS_HTTP_PATH."/".$a_target;
1501 }
1502
1504 {
1505 ilUtil::redirect($a_target);
1506 }
1507 else
1508 {
1509 $message = self::translateMessage($a_message_id, $a_message_static);
1510
1511 // user-directed linked message
1513 {
1514 $link = self::translateMessage("init_error_redirect_click",
1515 array("en" => 'Please click to continue.',
1516 "de" => 'Bitte klicken um fortzufahren.'));
1517 $mess = $message.
1518 '<br /><a href="'.$a_target.'">'.$link.'</a>';
1519 }
1520 // plain text
1521 else
1522 {
1523 // not much we can do here
1524 $mess = $message;
1525
1526 if(!trim($mess))
1527 {
1528 $mess = self::translateMessage("init_error_redirect_info",
1529 array("en" => 'Redirect not supported by context.',
1530 "de" => 'Weiterleitungen werden durch Kontext nicht unterstützt.')).
1531 ' ('.$a_target.')';
1532 }
1533 }
1534
1535 self::abortAndDie($mess);
1536 }
1537 }
static supportsRedirects()
Are redirects supported?
static redirect($a_script)
http redirect to other script

References abortAndDie(), ilContext\hasHTML(), ilUtil\redirect(), ilContext\supportsRedirects(), translateMessage(), and ilContext\usesHTTP().

Referenced by goToLogin(), goToPublicSection(), handleMaintenanceMode(), and initClientIniFile().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ removeUnsafeCharacters() [1/2]

static ilInitialisation::removeUnsafeCharacters ( )
staticprotected

Remove unsafe characters from GET.

Definition at line 32 of file class.ilInitialisation.php.

33 {
34 // Remove unsafe characters from GET parameters.
35 // We do not need this characters in any case, so it is
36 // feasible to filter them everytime. POST parameters
37 // need attention through ilUtil::stripSlashes() and similar functions)
38 if (is_array($_GET))
39 {
40 foreach($_GET as $k => $v)
41 {
42 // \r\n used for IMAP MX Injection
43 // ' used for SQL Injection
44 $_GET[$k] = str_replace(array("\x00", "\n", "\r", "\\", "'", '"', "\x1a"), "", $v);
45
46 // this one is for XSS of any kind
47 $_GET[$k] = strip_tags($_GET[$k]);
48 }
49 }
50 }

References $_GET.

Referenced by initCore(), and initILIAS().

+ Here is the caller graph for this function:

◆ removeUnsafeCharacters() [2/2]

ilInitialisation::removeUnsafeCharacters ( )

Remove unsafe characters from GET.

Definition at line 25 of file class.ilInitialisation.php.

26 {
27 // Remove unsafe characters from GET parameters.
28 // We do not need this characters in any case, so it is
29 // feasible to filter them everytime. POST parameters
30 // need attention through ilUtil::stripSlashes() and similar functions)
31 if (is_array($_GET))
32 {
33 foreach($_GET as $k => $v)
34 {
35 // \r\n used for IMAP MX Injection
36 // ' used for SQL Injection
37 $_GET[$k] = str_replace(array("\x00", "\n", "\r", "\\", "'", '"', "\x1a"), "", $v);
38
39 // this one is for XSS of any kind
40 $_GET[$k] = strip_tags($_GET[$k]);
41 }
42 }
43 }

References $_GET.

◆ requireCommonIncludes() [1/2]

static ilInitialisation::requireCommonIncludes ( )
staticprotected

get common include code files

Definition at line 55 of file class.ilInitialisation.php.

56 {
57 // pear
58 require_once("include/inc.get_pear.php");
59 require_once("include/inc.check_pear.php");
60 require_once "PEAR.php";
61
62 // ilTemplate
64 {
65 // HTML_Template_IT support
66 @include_once "HTML/Template/ITX.php"; // new implementation
67 if (class_exists("HTML_Template_ITX"))
68 {
69 include_once "./Services/UICore/classes/class.ilTemplateHTMLITX.php";
70 }
71 else
72 {
73 include_once "HTML/ITX.php"; // old implementation
74 include_once "./Services/UICore/classes/class.ilTemplateITX.php";
75 }
76 require_once "./Services/UICore/classes/class.ilTemplate.php";
77 }
78
79 // really always required?
80 require_once "./Services/Utilities/classes/class.ilUtil.php";
81 require_once "./Services/Utilities/classes/class.ilFormat.php";
82 require_once "./Services/Calendar/classes/class.ilDatePresentation.php";
83 require_once "include/inc.ilias_version.php";
84
85 self::initGlobal("ilBench", "ilBenchmark", "./Services/Utilities/classes/class.ilBenchmark.php");
86 }
static usesTemplate()
Uses template engine.

References initGlobal(), and ilContext\usesTemplate().

Referenced by initCore(), and initILIAS().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ requireCommonIncludes() [2/2]

ilInitialisation::requireCommonIncludes ( )

get common include code files

Definition at line 48 of file class.ilInitialisation.php.

49 {
50 global $ilBench;
51
52 // get pear
53 require_once("include/inc.get_pear.php");
54 require_once("include/inc.check_pear.php");
55
56 //include class.util first to start StopWatch
57 require_once "./Services/Utilities/classes/class.ilUtil.php";
58 require_once "./Services/Utilities/classes/class.ilBenchmark.php";
59 $ilBench = new ilBenchmark();
60 $GLOBALS['ilBench'] = $ilBench;
61
62 // Major PEAR Includes
63 require_once "PEAR.php";
64 //require_once "DB.php";
65 // require_once "Auth/Auth.php";
66
67
68
69 //include classes and function libraries
70 require_once "./Services/Database/classes/class.ilDB.php";
71 // require_once "classes/class.ilias.php";
72 // require_once './Services/User/classes/class.ilObjUser.php';
73 require_once "./Services/Logging/classes/class.ilLog.php";
74// require_once "classes/class.ilObjectDataCache.php";
75 require_once "./Services/Init/classes/class.ilErrorHandling.php";
76
77 require_once "./Services/Administration/classes/class.ilSetting.php";
78 }
performance measurement class

References $GLOBALS, and $ilBench.

◆ setCookieParams()

static ilInitialisation::setCookieParams ( )
staticprotected

set session cookie params for path, domain, etc.

Definition at line 444 of file class.ilInitialisation.php.

445 {
446 global $ilSetting;
447
448 include_once 'Services/Authentication/classes/class.ilAuthFactory.php';
450 {
451 $cookie_path = '/';
452 }
453 elseif ($GLOBALS['COOKIE_PATH'])
454 {
455 // use a predefined cookie path from WebAccessChecker
456 $cookie_path = $GLOBALS['COOKIE_PATH'];
457 }
458 else
459 {
460 $cookie_path = dirname( $_SERVER['PHP_SELF'] );
461 }
462
463 /* if ilias is called directly within the docroot $cookie_path
464 is set to '/' expecting on servers running under windows..
465 here it is set to '\'.
466 in both cases a further '/' won't be appended due to the following regex
467 */
468 $cookie_path .= (!preg_match("/[\/|\\\\]$/", $cookie_path)) ? "/" : "";
469
470 if($cookie_path == "\\") $cookie_path = '/';
471
472 include_once './Services/Http/classes/class.ilHTTPS.php';
473 $cookie_secure = !$ilSetting->get('https', 0) && ilHTTPS::getInstance()->isDetected();
474
475 define('IL_COOKIE_EXPIRE',0);
476 define('IL_COOKIE_PATH',$cookie_path);
477 define('IL_COOKIE_DOMAIN','');
478 define('IL_COOKIE_SECURE', $cookie_secure); // Default Value
479
480 // session_set_cookie_params() supports 5th parameter
481 // only for php version 5.2.0 and above
482 if( version_compare(PHP_VERSION, '5.2.0', '>=') )
483 {
484 // PHP version >= 5.2.0
485 define('IL_COOKIE_HTTPONLY',true); // Default Value
486 session_set_cookie_params(
487 IL_COOKIE_EXPIRE, IL_COOKIE_PATH, IL_COOKIE_DOMAIN, IL_COOKIE_SECURE, IL_COOKIE_HTTPONLY
488 );
489 }
490 else
491 {
492 // PHP version < 5.2.0
493 session_set_cookie_params(
494 IL_COOKIE_EXPIRE, IL_COOKIE_PATH, IL_COOKIE_DOMAIN, IL_COOKIE_SECURE
495 );
496 }
497 }
static getInstance()
Get https instance.
const IL_COOKIE_PATH
Definition: index.php:6

References $GLOBALS, $ilSetting, ilAuthFactory\CONTEXT_HTTP, ilAuthFactory\getContext(), ilHTTPS\getInstance(), and IL_COOKIE_PATH.

Referenced by initClient().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setSessionHandler()

static ilInitialisation::setSessionHandler ( )
static

set session handler to db

Used in Soap/CAS

Definition at line 420 of file class.ilInitialisation.php.

421 {
422 if(ini_get('session.save_handler') != 'user')
423 {
424 ini_set("session.save_handler", "user");
425 }
426
427 require_once "Services/Authentication/classes/class.ilSessionDBHandler.php";
428 $db_session_handler = new ilSessionDBHandler();
429 if (!$db_session_handler->setSaveHandler())
430 {
431 self::abortAndDie("Please turn off Safe mode OR set session.save_handler to \"user\" in your php.ini");
432 }
433
434 // Do not accept external session ids
435 if (!ilSession::_exists(session_id()) && !defined('IL_PHPUNIT_TEST'))
436 {
437 session_regenerate_id();
438 }
439 }
Database Session Handling.
static _exists($a_session_id)
Check whether session exists.

References ilSession\_exists(), and abortAndDie().

Referenced by goToPublicSection(), initClient(), and CASClient\renameSession().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showingLoginForm()

static ilInitialisation::showingLoginForm (   $a_current_script)
staticprotected

Is current view the login form?

Returns
boolean

Definition at line 1410 of file class.ilInitialisation.php.

1411 {
1412 if($a_current_script == "login.php")
1413 {
1414 return true;
1415 }
1416
1417 if($_REQUEST["baseClass"] == "ilStartUpGUI" &&
1418 self::getCurrentCmd() == "showLogin")
1419 {
1420 return true;
1421 }
1422
1423 return false;
1424 }

References $_REQUEST.

◆ translateMessage()

static ilInitialisation::translateMessage (   $a_message_id,
array  $a_message_static = null 
)
staticprotected

Translate message if possible.

Parameters
string$a_message_id
array$a_message_static
Returns
string

Definition at line 1433 of file class.ilInitialisation.php.

1434 {
1435 global $ilDB, $lng, $ilSetting, $ilClientIniFile, $ilUser;
1436
1437 // current language
1438 if(!$lng)
1439 {
1440 $lang = "en";
1441 if($ilUser)
1442 {
1443 $lang = $ilUser->getLanguage();
1444 }
1445 else if($_REQUEST["lang"])
1446 {
1447 $lang = (string)$_REQUEST["lang"];
1448 }
1449 else if($ilSetting)
1450 {
1451 $lang = $ilSetting->get("language");
1452 }
1453 else if($ilClientIniFile)
1454 {
1455 $lang = $ilClientIniFile->readVariable("language", "default");
1456 }
1457 }
1458 else
1459 {
1460 $lang = $lng->getLangKey();
1461 }
1462
1463 $message = "";
1464 if($ilDB && $a_message_id)
1465 {
1466 if(!$lng)
1467 {
1468 require_once "./Services/Language/classes/class.ilLanguage.php";
1469 $lng = new ilLanguage($lang);
1470 }
1471
1472 $lng->loadLanguageModule("init");
1473 $message = $lng->txt($a_message_id);
1474 }
1475 else if(is_array($a_message_static))
1476 {
1477 if(!isset($a_message_static[$lang]))
1478 {
1479 $lang = "en";
1480 }
1481 $message = $a_message_static[$lang];
1482 }
1483
1484 return utf8_decode($message);
1485 }

References $_REQUEST, $ilDB, $ilSetting, $ilUser, $lang, and $lng.

Referenced by handleMaintenanceMode(), and redirect().

+ Here is the caller graph for this function:

Field Documentation

◆ $already_initialized

ilInitialisation::$already_initialized
staticprotected

Definition at line 907 of file class.ilInitialisation.php.


The documentation for this class was generated from the following files: