more warnings removed
[squirrelmail.git] / src / right_main.php
index 619aa938b4c304b83fdd8928eb69f690b5ca1e92..11d09a535e4a2c9c2545c182f48cbe63a1cc0bb5 100644 (file)
@@ -8,26 +8,32 @@
     **  This is where the mailboxes are listed.  This controls most of what
     **  goes on in SquirrelMail.
     **
+    **  $Id$
     **/
 
+   if (!isset($i18n_php))
+      include("../functions/i18n.php");
 
    session_start();
 
-   if(!isset($logged_in)) {
-      echo _("You must login first.");
-      exit;
-   }
-   if(!isset($username) || !isset($key)) {
-      echo _("You need a valid user and password to access this page!");
+   if(!isset($logged_in) || !isset($username) || !isset($key)) {
+      include ("../themes/default_theme.php");
+      include ("../functions/display_messages.php");
+      printf('<html><BODY TEXT="%s" BGCOLOR="%s" LINK="%s" VLINK="%s" ALINK="%s">',
+              $color[8], $color[4], $color[7], $color[7], $color[7]);
+      plain_error_message(_("You need a valid user and password to access this page!")
+                          . "<br><a href=\"../src/login.php\">"
+                          . _("Click here to log back in.") . "</a>.", $color);
+      echo "</body></html>";
       exit;
    }
 
+   if (!isset($strings_php))
+      include("../functions/strings.php");
    if (!isset($config_php))
       include("../config/config.php");
    if (!isset($imap_php))
       include("../functions/imap.php");
-   if (!isset($strings_php))
-      include("../functions/strings.php");
    if (!isset($date_php))
       include("../functions/date.php");
    if (!isset($page_header_php))
    /** If it was a successful login, lets load their preferences **/
    include("../src/load_prefs.php");
 
+   if (isset($newsort) && $newsort != $sort) {
+      setPref($data_dir, $username, "sort", $newsort);
+   }
+
    // If the page has been loaded without a specific mailbox,
-   //    just show a page of general info.
+   //   send them to the inbox
    if (!isset($mailbox)) {
       $mailbox = "INBOX";
-      $sort = $newsort = 0;
       $startMessage = 1;
+   }
 
-//      displayPageHeader($color, "None");
-//      general_info($motd, $org_logo, $version, $org_name, $color);
-//      echo "</BODY></HTML>";
-//      exit;
+   // compensate for the UW vulnerability
+   if ($imap_server_type == "uw" && strstr($mailbox, "../")) {
+      $mailbox = "INBOX";
    }
 
    sqimap_mailbox_select($imapConnection, $mailbox);
    displayPageHeader($color, $mailbox);
 
+   do_hook("right_main_after_header");
+   
+   if (isset($just_logged_in) && $just_logged_in == 1 && 
+       strlen(trim($motd)) > 0) {
+      echo "<center><br>\n";
+      echo "<table width=70% cellpadding=0 cellspacing=0 border=0><tr><td bgcolor=\"$color[9]\">\n";
+      echo "<table width=100% cellpadding=5 cellspacing=1 border=0><tr><td bgcolor=\"$color[4]\">\n";
+      echo "$motd\n";
+      echo "</td></tr></table>\n";
+      echo "</td></tr></table>\n";
+      echo "</center><br>\n";
+   }
+
        if (isset($newsort)) {
                $sort = $newsort;
                session_register("sort");
    // Check to see if we can use cache or not.  Currently the only time when you wont use it is
    //    when a link on the left hand frame is used.  Also check to make sure we actually have the
    //    array in the registered session data.  :)
+   if (! isset($use_mailbox_cache))
+       $use_mailbox_cache = 0;
    if ($use_mailbox_cache && session_is_registered("msgs")) {
       showMessagesForMailbox($imapConnection, $mailbox, $numMessages, $startMessage, $sort, $color, $show_num, $use_mailbox_cache);
    } else {
       session_register("numMessages");
    }
 
-   // close the connection
+   do_hook("right_main_bottom");
    sqimap_logout ($imapConnection);
 ?>
 </FONT>