gunnar: server/patches/horde-webmail/1.2.0 horde-webmail-1.2.0_kolab_openpkg.patch, 1.32, 1.32.2.1

cvs at kolab.org cvs at kolab.org
Fri Mar 20 10:06:07 CET 2009


Author: gunnar

Update of /kolabrepository/server/patches/horde-webmail/1.2.0
In directory doto:/tmp/cvs-serv5961/patches/horde-webmail/1.2.0

Modified Files:
      Tag: kolab_2_2_branch
	horde-webmail-1.2.0_kolab_openpkg.patch 
Log Message:
Ported
        kolab/issue3444 (No error message when login fails because
                         of wrong credentials)
        kolab/issue3452 (Allow to configure the default imp view offered
                         to the user)
        kolab/issue3451 (Folder list does not get updated in dimp after
                         creating a new folder)
from HEAD.

Index: horde-webmail-1.2.0_kolab_openpkg.patch
===================================================================
RCS file: /kolabrepository/server/patches/horde-webmail/1.2.0/horde-webmail-1.2.0_kolab_openpkg.patch,v
retrieving revision 1.32
retrieving revision 1.32.2.1
diff -u -d -r1.32 -r1.32.2.1
--- horde-webmail-1.2.0_kolab_openpkg.patch	26 Feb 2009 16:47:48 -0000	1.32
+++ horde-webmail-1.2.0_kolab_openpkg.patch	20 Mar 2009 09:06:04 -0000	1.32.2.1
@@ -18978,6 +18978,295 @@
          return $html;
 -- 
 tg: (667dce6..) t/dimp/HK/GW/ItipHandling (depends on: master t/dimp/H/MS/FixBrokenFolderImages)
+From: Gunnar Wrobel <p at rdus.de>
+Subject: [PATCH] t/imp/H/GW/DefaultLoginView
+
+Allow to configure the default imp view shown to the user.
+
+STATUS: SUBMIT
+
+Signed-off-by: Gunnar Wrobel <p at rdus.de>
+
+---
+ horde-webmail/imp/config/conf.php |    1 +
+ horde-webmail/imp/config/conf.xml |    8 ++++++++
+ horde-webmail/imp/login.php       |    3 ++-
+ 3 files changed, 11 insertions(+), 1 deletions(-)
+
+diff --git a/horde-webmail/imp/config/conf.php b/horde-webmail/imp/config/conf.php
+index 3a0f1d6..6cea64b 100644
+--- a/horde-webmail/imp/config/conf.php
++++ b/horde-webmail/imp/config/conf.php
+@@ -13,6 +13,7 @@ $conf['user']['allow_resume_all'] = false;
+ $conf['user']['allow_view_source'] = true;
+ $conf['user']['alternate_login'] = false;
+ $conf['user']['redirect_on_logout'] = false;
++$conf['user']['default_view'] = 'dimp';
+ $conf['user']['select_view'] = true;
+ $conf['server']['change_server'] = false;
+ $conf['server']['change_port'] = false;
+diff --git a/horde-webmail/imp/config/conf.xml b/horde-webmail/imp/config/conf.xml
+index 517556e..92171b7 100644
+--- a/horde-webmail/imp/config/conf.xml
++++ b/horde-webmail/imp/config/conf.xml
+@@ -103,6 +103,14 @@
+      </configenum>
+     </case>
+    </configswitch>
++   <configenum name="default_view" desc="Which application view should be the
++   suggested default on the login page?">imp
++    <values>
++     <value desc="IMP">imp</value>
++     <value desc="DIMP">dimp</value>
++     <value desc="MIMP">mimp</value>
++    </values>
++   </configenum>
+   </configsection>
+  </configtab>
+ 
+diff --git a/horde-webmail/imp/login.php b/horde-webmail/imp/login.php
+index e6cd3c9..4644e93 100644
+--- a/horde-webmail/imp/login.php
++++ b/horde-webmail/imp/login.php
+@@ -257,7 +257,8 @@ if (!empty($conf['user']['select_view'])) {
+     $apps = $registry->listApps(null, true);
+     $view_cookie = isset($_COOKIE['default_imp_view'])
+         ? $_COOKIE['default_imp_view']
+-        : ($browser->isMobile() && isset($apps['mimp']) ? 'mimp' : 'imp');
++        : ($browser->isMobile() && isset($apps['mimp']) ? 'mimp' 
++           : isset($conf['user']['default_view']) ? $conf['user']['default_view'] : 'imp');
+     if (isset($apps['dimp']) || isset($apps['mimp'])) {
+         $views[] = array('sel' => $view_cookie == 'imp',
+                          'val' => 'imp', 'name' => _("Traditional"));
+-- 
+tg: (3a70f58..) t/imp/H/GW/DefaultLoginView (depends on: t/imp/H/JS/bug7739)
+-- 
+TOPGIT patch commit log
+=======================
+
+commit e2430d5bafced289bb0b8ac9d073fca9a4e9bb4a
+Author: Gunnar Wrobel <p at rdus.de>
+Date:   Sun Mar 8 20:09:33 2009 +0000
+
+    Add the conf.xml part of the new configuration variable.
+
+commit df4a014051b707ab4bf5ded96264c3b4f3b62ac4
+Author: Gunnar Wrobel <p at rdus.de>
+Date:   Sun Mar 8 08:14:20 2009 +0000
+
+    Allow to configure the default view for imp.
+From: Gunnar Wrobel <p at rdus.de>
+Subject: [PATCH] t/imp/H/GW/LoginRetries
+
+Fix the number of retries the c-client libraries uses when connecting to the IMAP server.
+
+Signed-off-by: Gunnar Wrobel <p at rdus.de>
+
+---
+ horde-webmail/imp/config/servers.php |    3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/horde-webmail/imp/config/servers.php b/horde-webmail/imp/config/servers.php
+index 1c6e537..d050122 100644
+--- a/horde-webmail/imp/config/servers.php
++++ b/horde-webmail/imp/config/servers.php
+@@ -264,7 +264,7 @@ if ($GLOBALS['conf']['kolab']['enabled']) {
+         $imapParams = array(
+ 			'hostspec' => $server,
+ 			'port'     => $GLOBALS['conf']['kolab']['imap']['port'],
+-            'protocol' => $GLOBALS['conf']['auth']['params']['protocol']
++            'protocol' => 'imap/novalidate-cert',
+         );
+     }
+ 
+@@ -284,5 +284,6 @@ if ($GLOBALS['conf']['kolab']['enabled']) {
+         'acl'        => array(
+             'driver' => 'rfc2086',
+         ),
++        'login_tries' => 1,
+     );
+ }
+-- 
+tg: (4f99941..) t/imp/H/GW/LoginRetries (depends on: t/imp/H/GW/DefaultLoginView)
+-- 
+TOPGIT patch commit log
+=======================
+
+commit 7540b6dc7fee180870333d1cbd8e2a173bdae751
+Author: Gunnar Wrobel <p at rdus.de>
+Date:   Sun Mar 8 20:27:01 2009 +0000
+
+    Fix the number of login retries.
+From: Gunnar Wrobel <p at rdus.de>
+Subject: [PATCH] t/imp/H/JS/bug7739
+
+[#7739] Folders tree not updated after an add (new) folder action
+
+http://bugs.horde.org/ticket/7739
+
+STATUS: MERGED
+
+Signed-off-by: Gunnar Wrobel <p at rdus.de>
+
+---
+ horde-webmail/imp/lib/IMAP/Tree.php |    9 ++++++++-
+ horde-webmail/imp/lib/Search.php    |   17 +++++++++++------
+ 2 files changed, 19 insertions(+), 7 deletions(-)
+
+diff --git a/horde-webmail/imp/lib/IMAP/Tree.php b/horde-webmail/imp/lib/IMAP/Tree.php
+index e249c1c..1fb857c 100644
+--- a/horde-webmail/imp/lib/IMAP/Tree.php
++++ b/horde-webmail/imp/lib/IMAP/Tree.php
+@@ -1584,7 +1584,14 @@ class IMP_Tree {
+         }
+ 
+         foreach (array_keys($id) as $key) {
+-            $adds[] = IMPTREE_VFOLDER_KEY . $this->_delimiter . $key;
++            $id_key = IMPTREE_VFOLDER_KEY . $this->_delimiter . $key;
++            if (!isset($this->_tree[$id_key])) {
++                $adds[] = $id_key;
++            }
++        }
++
++        if (empty($adds)) {
++            return;
+         }
+ 
+         $this->insert($adds);
+diff --git a/horde-webmail/imp/lib/Search.php b/horde-webmail/imp/lib/Search.php
+index ddb86e5..f14a8e4 100644
+--- a/horde-webmail/imp/lib/Search.php
++++ b/horde-webmail/imp/lib/Search.php
+@@ -204,12 +204,15 @@ class IMP_Search {
+     /**
+      * Deletes an IMAP search query.
+      *
+-     * @param string $id  The search query id to use (by default, will use
+-     *                    the current ID set in the object).
++     * @param string $id          The search query id to use (by default, will
++     *                            use the current ID set in the object).
++     * @param boolean $no_delete  Don't delete the entry in the tree object.
++     *
++     *
+      *
+      * @return string  Returns the search query id.
+      */
+-    function deleteSearchQuery($id = null)
++    function deleteSearchQuery($id = null, $no_delete = false)
+     {
+         $id = $this->_strip($id);
+         $is_vfolder = !empty($_SESSION['imp']['search']['q'][$id]['vfolder']);
+@@ -219,7 +222,9 @@ class IMP_Search {
+             $vfolders = $this->_getVFolderList();
+             unset($vfolders[$id]);
+             $this->_saveVFolderList($vfolders);
+-            $this->_updateIMPTree('delete', $id);
++            if (!$no_delete) {
++                $this->_updateIMPTree('delete', $id);
++            }
+         }
+     }
+ 
+@@ -355,7 +360,7 @@ class IMP_Search {
+         /* Delete the current Virtual Trash folder, if it exists. */
+         $vtrash_id = $GLOBALS['prefs']->getValue('vtrash_id');
+         if (!empty($vtrash_id)) {
+-            $this->deleteSearchQuery($vtrash_id);
++            $this->deleteSearchQuery($vtrash_id, true);
+         }
+ 
+         if (!$GLOBALS['prefs']->getValue('use_vtrash')) {
+@@ -418,7 +423,7 @@ class IMP_Search {
+         /* Delete the current Virtual Inbox folder, if it exists. */
+         $vinbox_id = $GLOBALS['prefs']->getValue('vinbox_id');
+         if (!empty($vinbox_id)) {
+-            $this->deleteSearchQuery($vinbox_id);
++            $this->deleteSearchQuery($vinbox_id, true);
+         }
+ 
+         if (!$GLOBALS['prefs']->getValue('use_vinbox')) {
+-- 
+tg: (38b4949..) t/imp/H/JS/bug7739 (depends on: t/imp/H/MS/bug7438)
+-- 
+TOPGIT patch commit log
+=======================
+
+commit 1a74763ee823d7cc74b9b2f8585bcd71963c805e
+Author: Gunnar Wrobel <p at rdus.de>
+Date:   Sun Mar 8 07:56:27 2009 +0000
+
+    Merged [#7739] Folders tree not updated after an add (new) folder action.
+From: Gunnar Wrobel <p at rdus.de>
+Subject: [PATCH] t/imp/H/MS/bug7438
+
+[#7438] Failed login not passed back to login screen
+
+http://bugs.horde.org/ticket/7438
+
+STATUS: MERGED
+
+Signed-off-by: Gunnar Wrobel <p at rdus.de>
+
+---
+ horde-webmail/imp/lib/Auth/imp.php |    2 +-
+ horde-webmail/imp/redirect.php     |    6 ++----
+ 2 files changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/horde-webmail/imp/lib/Auth/imp.php b/horde-webmail/imp/lib/Auth/imp.php
+index c94b0b1..6b55015 100644
+--- a/horde-webmail/imp/lib/Auth/imp.php
++++ b/horde-webmail/imp/lib/Auth/imp.php
+@@ -142,7 +142,7 @@ class Auth_imp extends Auth {
+             if (isset($prefs)) {
+                 $prefs->cleanup(true);
+             }
+-            $this->_setAuthError(AUTH_REASON_FAILED);
++            $this->_setAuthError(AUTH_REASON_BADLOGIN);
+             return false;
+         }
+ 
+diff --git a/horde-webmail/imp/redirect.php b/horde-webmail/imp/redirect.php
+index 7e5c045..e2f0daa 100644
+--- a/horde-webmail/imp/redirect.php
++++ b/horde-webmail/imp/redirect.php
+@@ -237,12 +237,10 @@ if (($imapuser !== null) && ($pass !== null)) {
+ 
+         IMP_Session::loginTasks();
+ 
+-        $url = _newSessionUrl($actionID, $isLogin, $view);
+-    } else {
+-        $url = Auth::addLogoutParameters(IMP::logoutUrl());
++        _redirect(_framesetUrl(_newSessionUrl($actionID, $isLogin, $view)));
+     }
+ 
+-    _redirect(_framesetUrl($url));
++    _redirect(Auth::addLogoutParameters(IMP::logoutUrl()));
+ }
+ 
+ /* No session, and no login attempt. Just go to the login page. */
+-- 
+tg: (461f8df..) t/imp/H/MS/bug7438 (depends on: t/COPYRIGHT3)
+-- 
+TOPGIT patch commit log
+=======================
+
+commit 38b4949c93b00cae793ace9ae861ade22e0bb3c1
+Author: Gunnar Wrobel <p at rdus.de>
+Date:   Sun Mar 8 22:57:16 2009 +0000
+
+    Removed stray patch file.
+
+commit 42660a8ab771c9f54731f24022409089aef6a09f
+Author: Gunnar Wrobel <p at rdus.de>
+Date:   Sun Mar 8 20:02:39 2009 +0000
+
+    Fix base patch.
+
+commit 0ae1d51e9802057c3aa2805a4088fe1eb6df8a53
+Author: Gunnar Wrobel <p at rdus.de>
+Date:   Sun Mar 8 07:23:20 2009 +0000
+
+    Fix [#7438] Failed login not passed back to login screen
 diff -c a/horde-webmail/lib/Horde/Kolab/Storage/Folder.php b/horde-webmail/lib/Horde/Kolab/Storage/Folder.php
 --- a/horde-webmail/lib/Horde/Kolab/Storage/Folder.php
 +++ b/horde-webmail/lib/Horde/Kolab/Storage/Folder.php
@@ -19000,34 +19289,3 @@
              }
 
 Diff finished.  Wed Feb 18 17:55:20 2009
-diff --git a/turba/config/sources.php b/turba/config/sources.php
-index bc0bf1d..3dea22b 100644
---- a/horde-webmail/turba/config/sources.php
-+++ b/horde-webmail/turba/config/sources.php
-@@ -332,7 +332,8 @@
-                 'notes'             => 'description',
-                 'kolabHomeServer'   => 'kolabHomeServer',
-                 'freebusyUrl'       => array('fields' => array('kolabHomeServer', 'email'),
--                                             'format' => 'https://%s/freebusy/%s.xfb'),
-+                                             'format' => 'https://%s/freebusy/%s.xfb',
-+                                             'defaults' => array('kolabHomeServer' => $GLOBALS['conf']['kolab']['imap']['server'])),
-             ),
-             'search' => array(
-                 'name',
-diff --git a/turba/lib/Driver.php b/turba/lib/Object.php
-index 09a09a8..db746d2 100644
---- a/horde-webmail/turba/lib/Object.php
-+++ b/horde-webmail/turba/lib/Object.php
-@@ -115,7 +115,11 @@
-             is_array($this->driver->map[$attribute])) {
-             $args = array();
-             foreach ($this->driver->map[$attribute]['fields'] as $field) {
--                $args[] = $this->getValue($field);
-+                $value = $this->getValue($field);
-+                if (empty($value) && isset($this->driver->map[$attribute]['defaults'][$field])) {
-+                    $value = $this->driver->map[$attribute]['defaults'][$field];
-+                }
-+                $args[] = $value;
-             }
-             return trim(vsprintf($this->driver->map[$attribute]['format'], $args), " \t\n\r\0\x0B,");
-         } elseif (!isset($this->attributes[$attribute])) {





More information about the commits mailing list