dn); /* Write something to log */ new log("security","logout","",array(),"User \"".$ui->username."\" logged out") ; } /* Language setup */ if ((!isset($config)) || $config->get_cfg_value("core","language") == ""){ $lang= get_browser_language(); } else { $lang= $config->get_cfg_value("core","language"); } // Try to keep track of logouts, this will fail if our session has already expired. // Nothing will be logged if config isn't present anymore. stats::log('global', 'global', array(), $action = 'logout', $amount = 1, 0); 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("core","templateCompileDirectory"); } else { $smarty->compile_dir= '/var/spool/gosa/'; } if(!is_writeable($smarty->compile_dir)){ header('location: index.php'); exit(); } $smarty->assign ("title","GOsa"); /* If GET request is posted, the logout was forced by pressing the link */ if (isset($_POST['forcedlogout']) || isset($_GET['forcedlogout'])){ /* destroy old session */ session::destroy (); /* If we're not using htaccess authentication, just redirect... */ if (isset($config) && $config->get_cfg_value("core","htaccessAuthentication") == "true"){ /* Else notice that the user has to close the browser... */ $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 $smarty->display (get_template_path('headers.tpl')); $smarty->display (get_template_path('logout.tpl')); exit; } // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler: ?>