Back out support for using SM without Frames
[squirrelmail.git] / src / redirect.php
index 5658995da244fcd51c05518da4e05da29b1e9b3a..4ffa1bae6aaf3a2db4ff8bf965c11541f1f2cbd0 100644 (file)
 * Prevents users from reposting their form data after a successful logout.
 *
 * $Id$
+* @package squirrelmail
 */
 
-/* Path for SquirrelMail required files. */
+/** Path for SquirrelMail required files. */
 define('SM_PATH','../');
 
 /* SquirrelMail required files. */
@@ -37,7 +38,7 @@ header('Pragma: no-cache');
 $location = get_location();
 
 session_set_cookie_params (0, $base_uri);
-session_start();
+sqsession_is_active();
 
 sqsession_unregister ('user_is_logged_in');
 sqsession_register ($base_uri, 'base_uri');
@@ -138,20 +139,22 @@ if ($javascript_setting != SMPREF_JS_ON){
 setPref($data_dir, $username, 'javascript_on', $js_pref);
 
 /* Compute the URL to forward the user to. */
-$redirect_url = 'webmail.php';
+$redirect_url = $location . '/webmail.php';
 
 if ( sqgetGlobalVar('session_expired_location', $session_expired_location, SQ_SESSION) ) {
     sqsession_unregister('session_expired_location');
     $compose_new_win = getPref($data_dir, $username, 'compose_new_win', 0);
     if ($compose_new_win) {
+        // do not prefix $location here because $session_expired_location is set to PHP_SELF
+        // of the last page
         $redirect_url = $session_expired_location;
     } elseif ( strpos($session_expired_location, 'webmail.php') === FALSE ) {
-        $redirect_url = 'webmail.php?right_frame='.urldecode($session_expired_location);
+        $redirect_url = $location.'/webmail.php?right_frame='.urldecode($session_expired_location);
     }
     unset($session_expired_location);
 }
 if($mailto != '') {
-    $redirect_url  = 'webmail.php?right_frame=compose.php&mailto=';
+    $redirect_url  = $location . '/webmail.php?right_frame=compose.php&mailto=';
     $redirect_url .= $mailto;
 }