2 commits - plugins/libcalendaring plugins/libkolab

Thomas Brüderli bruederli at kolabsys.com
Thu Feb 21 13:04:22 CET 2013


 plugins/libcalendaring/libcalendaring.php     |   14 ++++++++------
 plugins/libkolab/lib/kolab_storage_cache.php  |    1 +
 plugins/libkolab/lib/kolab_storage_folder.php |   11 +++++++++++
 3 files changed, 20 insertions(+), 6 deletions(-)

New commits:
commit 581724f7c11b05fa79f5911d217f00ab9a605578
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date:   Thu Feb 21 13:04:00 2013 +0100

    Allow libcalendaring to work without output

diff --git a/plugins/libcalendaring/libcalendaring.php b/plugins/libcalendaring/libcalendaring.php
index 24f98cb..c78173b 100644
--- a/plugins/libcalendaring/libcalendaring.php
+++ b/plugins/libcalendaring/libcalendaring.php
@@ -84,14 +84,16 @@ class libcalendaring extends rcube_plugin
         $this->add_texts('localization/', false);
 
         // include client scripts and styles
-        $this->include_script('libcalendaring.js');
-        $this->rc->output->set_env('libcal_settings', $this->load_settings());
+        if ($this->rc->output) {
+            $this->include_script('libcalendaring.js');
+            $this->rc->output->set_env('libcal_settings', $this->load_settings());
 
-        $this->include_stylesheet($this->local_skin_path() . '/libcal.css');
+            $this->include_stylesheet($this->local_skin_path() . '/libcal.css');
 
-        // add hook to display alarms
-        $this->add_hook('refresh', array($this, 'refresh'));
-        $this->register_action('plugin.alarms', array($this, 'alarms_action'));
+            // add hook to display alarms
+            $this->add_hook('refresh', array($this, 'refresh'));
+            $this->register_action('plugin.alarms', array($this, 'alarms_action'));
+        }
     }
 
 


commit 5b4c9500d13134695f10e585f8fa757e39ac36c7
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date:   Thu Feb 21 11:18:59 2013 +0100

    Make some metadata from the Kolab storage backend available to the library user

diff --git a/plugins/libkolab/lib/kolab_storage_cache.php b/plugins/libkolab/lib/kolab_storage_cache.php
index 6f6e16e..ef4dd22 100644
--- a/plugins/libkolab/lib/kolab_storage_cache.php
+++ b/plugins/libkolab/lib/kolab_storage_cache.php
@@ -591,6 +591,7 @@ class kolab_storage_cache
         $object['_type'] = $sql_arr['type'];
         $object['_msguid'] = $sql_arr['msguid'];
         $object['_mailbox'] = $this->folder->name;
+        $object['_size'] = strlen($sql_arr['xml']);
         $object['_formatobj'] = kolab_format::factory($sql_arr['type'], 3.0, $sql_arr['xml']);
 
         return $object;
diff --git a/plugins/libkolab/lib/kolab_storage_folder.php b/plugins/libkolab/lib/kolab_storage_folder.php
index 5038a64..1ffb0df 100644
--- a/plugins/libkolab/lib/kolab_storage_folder.php
+++ b/plugins/libkolab/lib/kolab_storage_folder.php
@@ -51,6 +51,7 @@ class kolab_storage_folder
     private $type_annotation;
     private $imap;
     private $info;
+    private $idata;
     private $owner;
     private $resource_uri;
     private $uid2msg = array();
@@ -99,6 +100,16 @@ class kolab_storage_folder
         return $this->info;
     }
 
+    /**
+     * Make IMAP folder data available for this folder
+     */
+    public function get_imap_data()
+    {
+        if (!isset($this->idata))
+            $this->idata = $this->imap->folder_data($this->name);
+
+        return $this->idata;
+    }
 
     /**
      * Returns IMAP metadata/annotations (GETMETADATA/GETANNOTATION)





More information about the commits mailing list