From cead5c727147faac362e742aa7bcecf07f68cd99 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Thu, 18 May 2006 17:24:42 -0400
Subject: [PATCH] Updated CHANGELOG

---
 index.php |   60 +++++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 45 insertions(+), 15 deletions(-)

diff --git a/index.php b/index.php
index 2490628..eb45503 100644
--- a/index.php
+++ b/index.php
@@ -2,7 +2,7 @@
 /*
  +-----------------------------------------------------------------------+
  | RoundCube Webmail IMAP Client                                         |
- | Version 0.1-20060104                                                  |
+ | Version 0.1-20060505                                                  |
  |                                                                       |
  | Copyright (C) 2005, RoundCube Dev. - Switzerland                      |
  | Licensed under the GNU GPL                                            |
@@ -40,13 +40,14 @@
 
 */
 
-define('RCMAIL_VERSION', '0.1-20060104');
-
+define('RCMAIL_VERSION', '0.1-20060505');
 
 // define global vars
-$INSTALL_PATH = dirname($_SERVER['SCRIPT_FILENAME']);
+$CHARSET = 'UTF-8';
 $OUTPUT_TYPE = 'html';
 $JS_OBJECT_NAME = 'rcmail';
+$INSTALL_PATH = dirname($_SERVER['SCRIPT_FILENAME']);
+$MAIN_TASKS = array('mail','settings','addressbook','logout');
 
 if (empty($INSTALL_PATH))
   $INSTALL_PATH = './';
@@ -80,12 +81,19 @@
 // set PEAR error handling
 // PEAR::setErrorHandling(PEAR_ERROR_TRIGGER, E_USER_NOTICE);
 
+// use gzip compression if supported
+if (function_exists('ob_gzhandler') && !ini_get('zlib.output_compression'))
+  ob_start('ob_gzhandler');
+
 
 // catch some url/post parameters
-$_auth = !empty($_POST['_auth']) ? $_POST['_auth'] : $_GET['_auth'];
-$_task = !empty($_POST['_task']) ? $_POST['_task'] : (!empty($_GET['_task']) ? $_GET['_task'] : 'mail');
-$_action = !empty($_POST['_action']) ? $_POST['_action'] : (!empty($_GET['_action']) ? $_GET['_action'] : '');
+$_auth = get_input_value('_auth', RCUBE_INPUT_GPC);
+$_task = get_input_value('_task', RCUBE_INPUT_GPC);
+$_action = get_input_value('_action', RCUBE_INPUT_GPC);
 $_framed = (!empty($_GET['_framed']) || !empty($_POST['_framed']));
+
+if (empty($_task))
+  $_task = 'mail';
 
 if (!empty($_GET['_remote']))
   $REMOTE_REQUEST = TRUE;
@@ -109,6 +117,15 @@
 // init necessary objects for GUI
 load_gui();
 
+
+// check DB connections and exit on failure
+if ($err_str = $DB->is_error())
+  {
+  raise_error(array('code' => 500, 'type' => 'db', 'line' => __LINE__, 'file' => __FILE__,
+                    'message' => $err_str), FALSE, TRUE);
+  }
+
+
 // error steps
 if ($_action=='error' && !empty($_GET['_code']))
   {
@@ -126,7 +143,10 @@
     {
     show_message("cookiesdisabled", 'warning');
     }
-  else if (isset($_POST['_user']) && isset($_POST['_pass']) && rcmail_login($_POST['_user'], $_POST['_pass'], $host))
+  else if (isset($_POST['_user']) && isset($_POST['_pass']) &&
+           rcmail_login(get_input_value('_user', RCUBE_INPUT_POST),
+                        get_input_value('_pass', RCUBE_INPUT_POST),
+                        $host))
     {
     // send redirect
     header("Location: $COMM_PATH");
@@ -215,7 +235,7 @@
 if ($_task=='mail')
   {
   include_once('program/steps/mail/func.inc');
-
+  
   if ($_action=='show' || $_action=='print')
     include('program/steps/mail/show.inc');
 
@@ -243,7 +263,7 @@
   if ($_action=='addcontact')
     include('program/steps/mail/addcontact.inc');
 
-  if ($_action=='expunge')
+  if ($_action=='expunge' || $_action=='purge')
     include('program/steps/mail/folders.inc');
 
   if ($_action=='check-recent')
@@ -252,12 +272,24 @@
   if ($_action=='getunread')
     include('program/steps/mail/getunread.inc');
     
-  if ($_action=='list' && $_GET['_remote'])
+  if ($_action=='list' && isset($_GET['_remote']))
     include('program/steps/mail/list.inc');
+
+   if ($_action=='search')
+     include('program/steps/mail/search.inc');
+     
+  if ($_action=='spell')
+    include('program/steps/mail/spell.inc');
+
+  if ($_action=='rss')
+    include('program/steps/mail/rss.inc');
 
   // kill compose entry from session
   if (isset($_SESSION['compose']))
     rcmail_compose_cleanup();
+    
+  // make sure the message count is refreshed
+  $IMAP->messagecount($_SESSION['mbox'], 'ALL', TRUE);
   }
 
 
@@ -312,11 +344,9 @@
   }
 
 
-// only allow these templates to be included
-$valid_tasks = array('mail','settings','addressbook');
-
 // parse main template
-if (in_array($_task, $valid_tasks))
+// only allow these templates to be included
+if (in_array($_task, $MAIN_TASKS))
   parse_template($_task);
 
 

--
Gitblit v1.9.1