summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2013-02-01 20:04:33 +0100
committerAleksander Machniak <alec@alec.pl>2013-02-01 20:04:33 +0100
commit3dd136f26e36d0f453649e77300b408cfa8491e4 (patch)
treef03a7dba5d86473df5c4c457a88c73234cc49705
parent1f910cb50dcb12e84d92db4d61dcd8dbb0f0c5b6 (diff)
parent01a98cb9d65abf8f31b7bc62002a5061e463c80f (diff)
Merge branch 'master' of github.com:roundcube/roundcubemail
-rwxr-xr-xbin/jsshrink.sh2
-rwxr-xr-xbin/jsunshrink.sh2
-rw-r--r--program/lib/Roundcube/rcube.php7
-rw-r--r--program/lib/Roundcube/rcube_result_set.php47
-rw-r--r--skins/classic/common.css5
-rw-r--r--skins/larry/styles.css4
6 files changed, 51 insertions, 16 deletions
diff --git a/bin/jsshrink.sh b/bin/jsshrink.sh
index 1d77ff388..c79f90405 100755
--- a/bin/jsshrink.sh
+++ b/bin/jsshrink.sh
@@ -56,7 +56,7 @@ if [ $# -gt 0 ]; then
fi
# default: compress application scripts
-for fn in app common googiespell list; do
+for fn in app common googiespell list treelist; do
if [ -r "$JS_DIR/${fn}.js.src" ]; then
echo "$JS_DIR/${fn}.js.src already exists, not overwriting"
else
diff --git a/bin/jsunshrink.sh b/bin/jsunshrink.sh
index 9d7755092..ef1bb47a1 100755
--- a/bin/jsunshrink.sh
+++ b/bin/jsunshrink.sh
@@ -6,7 +6,7 @@ if [ ! -d "$JS_DIR" ]; then
exit 1
fi
-for fn in app common googiespell list; do
+for fn in app common googiespell list treelist; do
if [ -r "$JS_DIR/${fn}.js.src" ]; then
mv "$JS_DIR/${fn}.js.src" "$JS_DIR/${fn}.js"
echo "Reverted $JS_DIR/${fn}.js"
diff --git a/program/lib/Roundcube/rcube.php b/program/lib/Roundcube/rcube.php
index a914ae65a..3ae511e1e 100644
--- a/program/lib/Roundcube/rcube.php
+++ b/program/lib/Roundcube/rcube.php
@@ -1073,14 +1073,17 @@ class rcube
{
// handle PHP exceptions
if (is_object($arg) && is_a($arg, 'Exception')) {
- $err = array(
+ $arg = array(
'type' => 'php',
'code' => $arg->getCode(),
'line' => $arg->getLine(),
'file' => $arg->getFile(),
'message' => $arg->getMessage(),
);
- $arg = $err;
+ }
+
+ if (empty($arg['code'])) {
+ $arg['code'] = 500;
}
// installer
diff --git a/program/lib/Roundcube/rcube_result_set.php b/program/lib/Roundcube/rcube_result_set.php
index 1391e5e4b..a4b070e28 100644
--- a/program/lib/Roundcube/rcube_result_set.php
+++ b/program/lib/Roundcube/rcube_result_set.php
@@ -3,7 +3,7 @@
/*
+-----------------------------------------------------------------------+
| This file is part of the Roundcube Webmail client |
- | Copyright (C) 2006-2011, The Roundcube Dev Team |
+ | Copyright (C) 2006-2013, The Roundcube Dev Team |
| |
| Licensed under the GNU General Public License version 3 or |
| any later version with exceptions for skins & plugins. |
@@ -17,20 +17,22 @@
*/
/**
- * Roundcube result set class.
+ * Roundcube result set class
+ *
* Representing an address directory result set.
+ * Implenets Iterator and thus be used in foreach() loops.
*
* @package Framework
* @subpackage Addressbook
*/
-class rcube_result_set
+class rcube_result_set implements Iterator
{
- var $count = 0;
- var $first = 0;
- var $current = 0;
- var $searchonly = false;
- var $records = array();
+ public $count = 0;
+ public $first = 0;
+ public $searchonly = false;
+ public $records = array();
+ private $current = 0;
function __construct($c=0, $f=0)
{
@@ -51,18 +53,39 @@ class rcube_result_set
function first()
{
$this->current = 0;
- return $this->records[$this->current++];
+ return $this->records[$this->current];
+ }
+
+ function seek($i)
+ {
+ $this->current = $i;
+ }
+
+ /*** PHP 5 Iterator interface ***/
+
+ function rewind()
+ {
+ $this->current = 0;
+ }
+
+ function current()
+ {
+ return $this->records[$this->current];
+ }
+
+ function key()
+ {
+ return $this->current;
}
- // alias for iterate()
function next()
{
return $this->iterate();
}
- function seek($i)
+ function valid()
{
- $this->current = $i;
+ return isset($this->records[$this->current]);
}
}
diff --git a/skins/classic/common.css b/skins/classic/common.css
index 16edeedf6..121616700 100644
--- a/skins/classic/common.css
+++ b/skins/classic/common.css
@@ -622,6 +622,11 @@ table.records-table tr.unfocused td
background-color: #929292;
}
+ul.treelist li
+{
+ position: relative;
+}
+
ul.treelist li div.treetoggle
{
position: absolute;
diff --git a/skins/larry/styles.css b/skins/larry/styles.css
index 7458ebba9..613a08aa1 100644
--- a/skins/larry/styles.css
+++ b/skins/larry/styles.css
@@ -1006,6 +1006,10 @@ table.layout td {
vertical-align: top;
}
+ul.treelist li {
+ position: relative;
+}
+
ul.treelist li div.treetoggle {
position: absolute;
top: 13px;