From b595c9fcf6940ae25c1e58ef2b8d340405083906 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Sun, 06 Nov 2005 19:32:57 -0500
Subject: [PATCH] Minor bugfixes

---
 skins/default/includes/links.html  |    1 +
 program/include/main.inc           |    1 +
 program/steps/mail/func.inc        |    3 ++-
 skins/default/templates/login.html |   13 ++++++-------
 program/include/rcube_imap.inc     |    9 +++++++++
 5 files changed, 19 insertions(+), 8 deletions(-)

diff --git a/program/include/main.inc b/program/include/main.inc
index 5895807..adb0b88 100644
--- a/program/include/main.inc
+++ b/program/include/main.inc
@@ -573,6 +573,7 @@
 // replace all strings ($varname) with the content of the according global variable
 function parse_with_globals($input)
   {
+  $GLOBALS['__comm_path'] = $GLOBALS['COMM_PATH'];
   $output = preg_replace('/\$(__[a-z0-9_\-]+)/e', '$GLOBALS["\\1"]', $input);
   return $output;
   }
diff --git a/program/include/rcube_imap.inc b/program/include/rcube_imap.inc
index 8253442..44ef248 100644
--- a/program/include/rcube_imap.inc
+++ b/program/include/rcube_imap.inc
@@ -464,6 +464,7 @@
 		
     // sort headers by a specific col
     $a_headers = iil_SortHeaders($a_msg_headers, $sort_field, $sort_order);
+    $headers_count = count($a_headers);
 
 	// free memory
 	unset($a_msg_headers);
@@ -471,6 +472,14 @@
     // write headers list to cache
     if (!$headers_cached)
       $this->update_cache($mailbox.'.msg', $a_headers);
+      
+    // update message count cache
+    $a_mailbox_cache = $this->get_cache('messagecount');
+    if (isset($a_mailbox_cache[$mailbox]['ALL']) && $a_mailbox_cache[$mailbox]['ALL'] != $headers_count)
+      {
+      $a_mailbox_cache[$mailbox]['ALL'] = (int)$headers_count;
+      $this->update_cache('messagecount', $a_mailbox_cache);
+      }
 
 	if (empty($a_headers))
 		return array();
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index e6c58a7..4d80c85 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -793,7 +793,8 @@
         }
 
       // part is file/attachment
-      else if ($mail_part->disposition=='attachment' || $mail_part->disposition=='inline' || $mail_part->headers['content-id'])
+      else if ($mail_part->disposition=='attachment' || $mail_part->disposition=='inline' || $mail_part->headers['content-id'] ||
+               (empty($mail_part->disposition) && ($mail_part->d_parameters['filename'] || $mail_part->d_parameters['name'])))
         {
         if ($message_ctype_secondary=='related' && $mail_part->headers['content-id'])
           $sa_inline_objects[] = array('filename' => $mail_part->d_parameters['filename'],
diff --git a/skins/default/includes/links.html b/skins/default/includes/links.html
index 5d8c0e5..30aeb4c 100644
--- a/skins/default/includes/links.html
+++ b/skins/default/includes/links.html
@@ -1,2 +1,3 @@
+<link rel="index" href="$__comm_path" />
 <link rel="shortcut icon" href="/images/favicon.ico"/>
 <link rel="stylesheet" type="text/css" href="/common.css" />
\ No newline at end of file
diff --git a/skins/default/templates/login.html b/skins/default/templates/login.html
index c66bb6b..2b56a38 100644
--- a/skins/default/templates/login.html
+++ b/skins/default/templates/login.html
@@ -5,13 +5,12 @@
 <roundcube:include file="/includes/links.html" />
 <style type="text/css">
 
-#login-form
-  {
-	margin-left: auto;
-    margin-right: auto;
-	margin-top: 50px;
-	width: 350px;
-  }
+#login-form {
+  margin-left: auto;
+  margin-right: auto;
+  margin-top: 50px;
+  width: 350px;
+}
 
 </style>
 </head>

--
Gitblit v1.9.1