This urlencode(urldecode thing breaks stuff and doesn't add real value.
[squirrelmail.git] / src / right_main.php
index 2d5d2bdb96a4adf57d75a0fb5f128cda909f6b72..dd53d45922c12d4f05f8108753375a6c9c7cac79 100644 (file)
@@ -3,7 +3,7 @@
 /**
  * right_main.php
  *
- * Copyright (c) 1999-2002 The SquirrelMail Project Team
+ * Copyright (c) 1999-2003 The SquirrelMail Project Team
  * Licensed under the GNU GPL. For full terms see the file COPYING.
  *
  * This is where the mailboxes are listed. This controls most of what
  * $Id$
  */
 
-require_once('../src/validate.php');
-require_once('../functions/imap.php');
-require_once('../functions/date.php');
-require_once('../functions/array.php');
-require_once('../functions/mime.php');
-require_once('../functions/mailbox_display.php');
-require_once('../functions/display_messages.php');
+/* Path for SquirrelMail required files. */
+define('SM_PATH','../');
+
+/* SquirrelMail required files. */
+require_once(SM_PATH . 'include/validate.php');
+require_once(SM_PATH . 'functions/imap.php');
+require_once(SM_PATH . 'functions/date.php');
+require_once(SM_PATH . 'functions/mime.php');
+require_once(SM_PATH . 'functions/mailbox_display.php');
+require_once(SM_PATH . 'functions/display_messages.php');
+require_once(SM_PATH . 'functions/html.php');
 
 /***********************************************************
  * incoming variables from URL:                            *
@@ -29,25 +33,78 @@ require_once('../functions/display_messages.php');
  *    $mailbox          Full Mailbox name                  *
  *                                                         *
  * incoming from cookie:                                   *
- *    $username         duh                                *
  *    $key              pass                               *
+ * incoming from session:                                  *
+ *    $username         duh                                *
+ *                                                         *
  ***********************************************************/
 
-$bob = getHashedFile($username, $data_dir, "username.pref");
+
+/* lets get the global vars we may need */
+$username = $_SESSION['username'];
+$key  = $_COOKIE['key'];
+$onetimepad = $_SESSION['onetimepad'];
+$base_uri = $_SESSION['base_uri'];
+$delimiter = $_SESSION['delimiter'];
+if (isset($_GET['startMessage'])) {
+    $startMessage = (int) $_GET['startMessage'];
+} elseif (isset($_POST['startMessage'])) {
+    $startMessage = (int) $_POST['startMessage'];
+}
+if (isset($_GET['mailbox'])) {
+    $mailbox = $_GET['mailbox'];
+} else if (isset($_POST['mailbox'])) {
+    $mailbox = $_POST['mailbox'];
+}
+if (isset($_GET['PG_SHOWNUM'])) {
+    $PG_SHOWNUM = (int) $_GET['PG_SHOWNUM'];
+}
+elseif (isset($_SESSION['PG_SHOWNUM'])) {
+    $PG_SHOWNUM = (int) $_SESSION['PG_SHOWNUM'];
+}
+if (isset($_GET['PG_SHOWALL'])) {
+    $PG_SHOWALL = (int) $_GET['PG_SHOWALL'];
+}
+if (isset($_GET['newsort'])) {
+    $newsort = (int) $_GET['newsort'];
+}
+if (isset($_GET['composenew'])) {
+    $composenew = $_GET['composenew'];
+} else {
+    $composenew = false;
+}
+
+if (isset($_GET['checkall'])) {
+    $checkall = (int) $_GET['checkall'];
+}
+if (isset($_GET['set_thread'])) {
+    $set_thread = (int) $_GET['set_thread'];
+}
+if (isset($_SESSION['lastTargetMailbox'])) {
+    $lastTargetMailbox =$_SESSION['lastTargetMailbox'];
+}
+
+if (isset($_GET['session'])) {
+    $session = $_GET['session'];
+}
+
+
+/* end of get globals */
+
 
 /* Open a connection on the imap port (143) */
 
 $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 0);
 
-global $PG_SHOWNUM;
 if (isset($PG_SHOWALL)) {
     if ($PG_SHOWALL) {
        $PG_SHOWNUM=999999;
        $show_num=$PG_SHOWNUM;
-       session_register('PG_SHOWNUM');
+       sqsession_register($PG_SHOWNUM, 'PG_SHOWNUM');
     }
     else {
-       session_unregister('PG_SHOWNUM');
+       sqsession_unregister('PG_SHOWNUM');
        unset($PG_SHOWNUM);
     }
 }
@@ -80,7 +137,6 @@ if ($imap_server_type == 'uw' && (strstr($mailbox, '../') ||
 }
 
 /* decide if we are thread sorting or not */
-global $allow_thread_sort;
 if ($allow_thread_sort == TRUE) {
     if (isset($set_thread)) {
         if ($set_thread == 1) {
@@ -100,53 +156,46 @@ else {
     $thread_sort_messages = 0;
 } 
 
-global $color;
-if( isset($do_hook) && $do_hook ) {
-    do_hook ("generic_header");
-}
+do_hook ('generic_header');
 
 sqimap_mailbox_select($imapConnection, $mailbox);
 
-if (isset($composenew)) {
-    $width= getPref($username, $data_dir, 'editor_size', 76);
-    if ($width < 65) {
-        $pix_width = 560;
-    } else {
-        $width = (.9*$width);
-        $pix_width = intval($width).'0';
-    }
-    $features = "toolbar=no, width=$pix_width, height=650, scrollbars=yes, resizable=yes target=_blank";
-    $location = 'compose.php?mailbox='. urlencode($mailbox).'&attachedmessages=true&session='."$session";
-    $onload= "window.open(\"$location\",\"compose_window_$session\", \"$features\");";
-    displayPageHeader($color, $mailbox, $onload);
+if ($composenew) {
+    $comp_uri = SM_PATH . 'src/compose.php?mailbox='. urlencode($mailbox).
+               "&session=$session";
+    displayPageHeader($color, $mailbox, "comp_in_new('$comp_uri');", false);
 } else {
     displayPageHeader($color, $mailbox);
 }
-echo "<br>\n";
-
 do_hook('right_main_after_header');
 if (isset($note)) {
-    echo "<CENTER><B>$note</B></CENTER><BR>\n";
+    echo html_tag( 'div', '<b>' . $note .'</b>', 'center' ) . "<br>\n";
 }
 
-if ($just_logged_in == true) {
-    $just_logged_in = false;
-
-    if (strlen(trim($motd)) > 0) {
-        echo "<br><table align=center width=\"70%\" cellpadding=0 cellspacing=3 border=0 bgcolor=\"$color[9]\">" .
-         '<tr><td>' .
-             "<table width=\"100%\" cellpadding=5 cellspacing=1 border=0 bgcolor=\"$color[4]\">" .
-             "<tr><td align=center>$motd";
-        do_hook('motd');
-        echo '</td></tr>' .
-             '</table>' .
-             '</td></tr></table>';
+if (isset($_SESSION['just_logged_in'])) {
+    $just_logged_in = $_SESSION['just_logged_in'];
+    if ($just_logged_in == true) {
+        $just_logged_in = false;
+
+        if (strlen(trim($motd)) > 0) {
+            echo html_tag( 'table',
+                        html_tag( 'tr',
+                            html_tag( 'td', 
+                                html_tag( 'table',
+                                    html_tag( 'tr',
+                                        html_tag( 'td', $motd, 'center' )
+                                    ) ,
+                                '', $color[4], 'width="100%" cellpadding="5" cellspacing="1" border="0"' )
+                             )
+                        ) ,
+                    'center', $color[9], 'width="70%" cellpadding="0" cellspacing="3" border="0"' );
+        }
     }
 }
 
 if (isset($newsort)) {
     $sort = $newsort;
-    session_register('sort');
+    sqsession_register($sort, 'sort');
 }
 
 /*********************************************************************
@@ -159,25 +208,18 @@ if (! isset($use_mailbox_cache)) {
     $use_mailbox_cache = 0;
 }
 
-/* There is a problem with registered vars in 4.1 */
-/*
-if( substr( phpversion(), 0, 3 ) == '4.1'  ) {
-    $use_mailbox_cache = FALSE;
-}
-*/
-
-if ($use_mailbox_cache && session_is_registered('msgs')) {
+if ($use_mailbox_cache && sqsession_is_registered('msgs')) {
     showMessagesForMailbox($imapConnection, $mailbox, $numMessages, $startMessage, $sort, $color, $show_num, $use_mailbox_cache);
 } else {
-    if (session_is_registered('msgs')) {
+    if (sqsession_is_registered('msgs')) {
         unset($msgs);
     }
 
-    if (session_is_registered('msort')) {
+    if (sqsession_is_registered('msort')) {
         unset($msort);
     }
 
-    if (session_is_registered('numMessages')) {
+    if (sqsession_is_registered('numMessages')) {
         unset($numMessages);
     }
 
@@ -187,22 +229,22 @@ if ($use_mailbox_cache && session_is_registered('msgs')) {
                            $startMessage, $sort, $color, $show_num,
                            $use_mailbox_cache);
 
-    if (session_is_registered('msgs') && isset($msgs)) {
-        session_register('msgs');
+    if (sqsession_is_registered('msgs') && isset($msgs)) {
+        sqsession_register($msgs, 'msgs');
         $_SESSION['msgs'] = $msgs;
     }
 
-    if (session_is_registered('msort') && isset($msort)) {
-        session_register('msort');
+    if (sqsession_is_registered('msort') && isset($msort)) {
+        sqsession_register($msort, 'msort');
         $_SESSION['msort'] = $msort;
     }
 
-    session_register('numMessages');
+    sqsession_register($numMessages, 'numMessages');
     $_SESSION['numMessages'] = $numMessages;
 }
 do_hook('right_main_bottom');
 sqimap_logout ($imapConnection);
 
-echo '</BODY></HTML>';
+echo '</body></html>';
 
 ?>