From 6cd00992a2c7de38e0ff7df152fba8ea89012dce Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Fri, 12 Sep 2008 12:48:23 -0400
Subject: [PATCH] - Fixed quota img height/width setting from template (#1484857)

---
 CHANGELOG                         |    1 +
 bin/quotaimg.php                  |    2 +-
 skins/default/templates/mail.html |    2 +-
 program/steps/mail/func.inc       |   19 ++++++++++++++-----
 4 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index cdb46a9..a82605e 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -6,6 +6,7 @@
 - Added vertical splitter for folders list resizing
 - Added possibility to view all headers in message view
 - Fixed splitter drag/resize on Opera (#1485170)
+- Fixed quota img height/width setting from template (#1484857)
 
 2008/09/12 (thomasb)
 ----------
diff --git a/bin/quotaimg.php b/bin/quotaimg.php
index 354f4eb..97c8b86 100644
--- a/bin/quotaimg.php
+++ b/bin/quotaimg.php
@@ -159,7 +159,7 @@
 		}
 
 		$quota_width = $quota / 100 * $width;
-		imagefilledrectangle($im, $border, 0, $quota, $height-2*$border, $fill);
+		imagefilledrectangle($im, $border, 0, $quota_width, $height-2*$border, $fill);
 
 		$string = $quota . '%';
 		$mid    = floor(($width-(strlen($string)*imagefontwidth($font)))/2)+1;
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index 6a885a0..6d23b6f 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -446,7 +446,7 @@
   $attrib_str = create_attrib_string($attrib, array('style', 'class', 'id', 'display'));
 
   $out = '<span' . $attrib_str . '>';
-  $out .= rcmail_quota_content();
+  $out .= rcmail_quota_content(NULL, $attrib);
   $out .= '</span>';
   return $out;
   }
@@ -455,7 +455,7 @@
 /**
  *
  */
-function rcmail_quota_content($quota=NULL)
+function rcmail_quota_content($quota=NULL, $attrib=NULL)
   {
   global $IMAP, $COMM_PATH, $RCMAIL;
 
@@ -481,14 +481,23 @@
     // show quota as image (by Brett Patterson)
     if ($display == 'image' && function_exists('imagegif'))
       {
-      $attrib = array('width' => 100, 'height' => 14);
+      if (!$attrib['width'])
+        $attrib['width'] = isset($_SESSION['quota_width']) ? $_SESSION['quota_width'] : 100;
+      else
+	$_SESSION['quota_width'] = $attrib['width'];
+
+      if (!$attrib['height'])
+        $attrib['height'] = isset($_SESSION['quota_height']) ? $_SESSION['quota_height'] : 14;
+      else
+	$_SESSION['quota_height'] = $attrib['height'];
+	    
       $quota_text = sprintf('<img src="./bin/quotaimg.php?u=%s&amp;q=%d&amp;w=%d&amp;h=%d" width="%d" height="%d" alt="%s" title="%s / %s" />',
                             $quota['used'], $quota['total'],
                             $attrib['width'], $attrib['height'],
                             $attrib['width'], $attrib['height'],
                             $quota_text,
-                            show_bytes($quota["used"] * 1024),
-                            show_bytes($quota["total"] * 1024));
+                            show_bytes($quota['used'] * 1024),
+                            show_bytes($quota['total'] * 1024));
       }
     }
   else
diff --git a/skins/default/templates/mail.html b/skins/default/templates/mail.html
index 3d2068d..935a7af 100644
--- a/skins/default/templates/mail.html
+++ b/skins/default/templates/mail.html
@@ -109,7 +109,7 @@
 <roundcube:button command="select-all" prop="unread" label="unread" classAct="active" />&nbsp;
 <roundcube:button command="select-none" label="none" classAct="active" /> &nbsp;&nbsp;&nbsp;
 <roundcube:if condition="env:quota" />
-<roundcube:label name="quota" />: <roundcube:object name="quotaDisplay" display="image" width="120" id="quotadisplay" />
+<roundcube:label name="quota" />: <roundcube:object name="quotaDisplay" display="image" width="100" id="quotadisplay" />
 <roundcube:endif />
 </div>
 

--
Gitblit v1.9.1