X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=gosa-core%2Fhtml%2Flogout.php;h=a29726d59babb7ad83e91a7c6978333066f6f633;hb=7b85e027ce5de44c9a81feafd7eb601bf987a8c3;hp=b6d4b5531d8ee8e2e51a12d743077de670f73d2c;hpb=dc068f92a2a30deec9e67196b1b212f1ee66bbf2;p=gosa.git diff --git a/gosa-core/html/logout.php b/gosa-core/html/logout.php index b6d4b5531..a29726d59 100644 --- a/gosa-core/html/logout.php +++ b/gosa-core/html/logout.php @@ -1,21 +1,23 @@ dn); @@ -41,45 +44,55 @@ if(isset($_SESSION['ui'])){ new log("security","logout","",array(),"User \"".$ui->username."\" logged out") ; } +/* Language setup */ +if ((!isset($config)) || $config->get_cfg_value("language") == ""){ + $lang= get_browser_language(); +} else { + $lang= $config->get_cfg_value("language"); +} + +putenv("LANGUAGE="); +putenv("LANG=$lang"); +setlocale(LC_ALL, $lang); +$GLOBALS['t_language']= $lang; +$GLOBALS['t_gettext_message_dir'] = $BASE_DIR.'/locale/'; + +/* Set the text domain as 'messages' */ +$domain = 'messages'; +bindtextdomain($domain, LOCALE_DIR); +textdomain($domain); + +/* Create smarty & Set template compile directory */ +$smarty= new smarty(); +if (isset($config)){ + $smarty->compile_dir= $config->get_cfg_value("compile", '/var/spool/gosa/'); +} else { + $smarty->compile_dir= '/var/spool/gosa/'; +} + /* If GET request is posted, the logout was forced by pressing the link */ if (isset($_GET['request'])){ /* destroy old session */ - @session_unset (); - @session_destroy (); + session::destroy (); - /* Go back to the base via header */ + /* If we're not using htaccess authentication, just redirect... */ + if (isset($config) && $config->get_cfg_value("htaccessAuthentication") == "true"){ + + /* Else notice that the user has to close the browser... */ + $smarty->assign("iePngWorkaround", FALSE); + $smarty->assign("usePrototype", "false"); + $smarty->display (get_template_path('headers.tpl')); + $smarty->display (get_template_path('logout-close.tpl')); + exit; + } + header ("Location: index.php"); exit(); }else{ // The logout wasn't forced, so the session is invalid - /* Language setup */ - if ((!isset($config))||(empty($config->data['MAIN']['LANG']))){ - $lang= get_browser_language(); - } else { - $lang= $config->data['MAIN']['LANG']; - } - - $lang.=".UTF-8"; - putenv("LANGUAGE="); - putenv("LANG=$lang"); - setlocale(LC_ALL, $lang); - $GLOBALS['t_language']= $lang; - $GLOBALS['t_gettext_message_dir'] = $BASE_DIR.'/locale/'; - - /* Set the text domain as 'messages' */ - $domain = 'messages'; - bindtextdomain($domain, "$BASE_DIR/locale"); - textdomain($domain); - - /* Create smarty & Set template compile directory */ - $smarty= new smarty(); - if (isset ($config->data['MAIN']['COMPILE'])){ - $smarty->compile_dir= $config->data['MAIN']['COMPILE']; - } else { - $smarty->compile_dir= '/var/spool/gosa/'; - } + $smarty->assign("usePrototype", "false"); $smarty->display (get_template_path('headers.tpl')); $smarty->display (get_template_path('logout.tpl')); exit;