-/* SquirrelMail required files. */
-require_once(SM_PATH . 'include/validate.php');
-require_once(SM_PATH . 'functions/prefs.php');
+/* check if we're already logged out (e.g. when this page is reloaded),
+ * so we can skip to the output and not give error messages */
+if( ! isset($_SESSION) || empty($_SESSION['user_is_logged_in']) ) {
+ $loggedin = false;
+} else {
+ $loggedin = true;
+}
+
+if($loggedin) {
+ require_once(SM_PATH . 'include/validate.php');
+ require_once(SM_PATH . 'functions/prefs.php');
+} else {
+ // this comes in through validate.php usually
+ require_once(SM_PATH . 'config/config.php');
+ require_once(SM_PATH . 'functions/i18n.php');
+ require_once(SM_PATH . 'functions/page_header.php');
+ if (@file_exists($theme[$theme_default]['PATH'])) {
+ @include ($theme[$theme_default]['PATH']);
+ }
+}