X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=initialize.php;h=5dcd6fffde274cb27359f164c10df1a6055a9c11;hb=585ffedd49344ba7f2cd4873f76f6ac71360a55c;hp=1a508e94306cf5e76a78cead318e9f818c9a0899;hpb=c761179e3999b6a2d8217369b647c69ad9603f38;p=timetracker.git diff --git a/initialize.php b/initialize.php index 1a508e94..5dcd6fff 100644 --- a/initialize.php +++ b/initialize.php @@ -74,7 +74,6 @@ $smarty = new Smarty; $smarty->use_sub_dirs = false; $smarty->template_dir = TEMPLATE_DIR; $smarty->compile_dir = TEMPLATE_DIR.'_c'; -$GLOBALS['SMARTY'] = &$smarty; // Note: these 3 settings below used to be in .htaccess file. Moved them here to eliminate "error 500" problems // with some shared hostings that do not have AllowOverride Options or AllowOverride All in their apache configurations. @@ -84,6 +83,12 @@ session_cache_expire(1); $phpsessid_ttl = defined('PHPSESSID_TTL') ? PHPSESSID_TTL : 60*60*24; // Set lifetime for garbage collection. ini_set('session.gc_maxlifetime', $phpsessid_ttl); +// Set PHP session path, if defined to avoid garbage collection interference from other scripts. +if (defined('PHP_SESSION_PATH')) { + ini_set('session.save_path', PHP_SESSION_PATH); + ini_set('session.gc_probability', 1); +} + // Set session cookie lifetime. session_set_cookie_params($phpsessid_ttl); if (isset($_COOKIE['tt_PHPSESSID'])) { @@ -120,10 +125,12 @@ define('TYPE_ALL', 0); // Time record can be specified with either duration or s define('TYPE_START_FINISH', 1); // Time record has start and finish times. define('TYPE_DURATION', 2); // Time record has only duration, no start and finish times. -// Definitions for uncompleted time entry indicators. -define('UNCOMPLETED_INDICATORS_NONE', 0); // Do not show indicators. -define('UNCOMPLETED_INDICATORS', 1); // Show indicators. - +// TODO: redesign of user rights and roles is currently ongoing. +// As we run our of bits for sure at some point, rights should be strings instead, +// for example: "data_entry". +// Also, we need rights editor page and team-customized roles. +// Move this stuff from here to ttUser class. +// // User access rights - bits that collectively define an access mask to the system (a role). // We'll have some bits here (1,2, etc...) reserved for future use. define('right_data_entry', 4); // Right to enter work hours and expenses. @@ -191,9 +198,13 @@ if (!$lang) { // Load i18n file. $i18n->load($lang); -$GLOBALS['I18N'] = &$i18n; -$GLOBALS['USER'] = &$user; +// Temporary code to assign role_id to users who don't yet have it. +if ($user->login && !$user->role_id) { + $user->migrateLegacyRole(); // Note: this requires initialized $i18n. + // Recycle User object, now with proper role_id. + $user = new ttUser(null, $auth->getUserId()); +} // Assign things for smarty to use in template files. $smarty->assign('i18n', $i18n->keys);