plugins/libkolab

Thomas Brüderli bruederli at kolabsys.com
Tue Sep 9 16:33:58 CEST 2014


 plugins/libkolab/js/folderlist.js |   12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

New commits:
commit 7161b90e4616776efbd4d4a10a150a45cde4eb7b
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date:   Tue Sep 9 15:51:27 2014 +0200

    Set subscription state to parent/child folders when adding to list

diff --git a/plugins/libkolab/js/folderlist.js b/plugins/libkolab/js/folderlist.js
index b583947..617dc45 100644
--- a/plugins/libkolab/js/folderlist.js
+++ b/plugins/libkolab/js/folderlist.js
@@ -68,7 +68,7 @@ function kolab_folderlist(node, p)
                           id = li.attr('id').replace(new RegExp('^'+p.id_prefix), '');
                       if (p.id_decode)
                           id = p.id_decode(id);
-                      node = search_results_widget.get_node(id),
+                      node = search_results_widget.get_node(id);
                       has_children = node.children && node.children.length;
 
                       e.stopPropagation();
@@ -81,6 +81,11 @@ function kolab_folderlist(node, p)
                           li.children().first()
                               .toggleClass('subscribed')
                               .find('input[type=checkbox]').get(0).checked = true;
+
+                          if (has_children && search_results[id].group == 'other user') {
+                              li.find('ul li > div').addClass('subscribed')
+                                  .find('a.subscribed').attr('aria-checked', 'true');;
+                          }
                       }
                       else if (!this.checked) {
                           return;
@@ -97,6 +102,11 @@ function kolab_folderlist(node, p)
                           li.remove();
                       }
 
+                      // set partial subscription status
+                      if (search_results[id].subscribed && search_results[id].parent && search_results[id].group == 'other') {
+                          parent_subscription_status($(me.get_item(id, true)));
+                      }
+
                       // set focus to cloned checkbox
                       if (rcube_event.is_keyboard(e)) {
                         $(me.get_item(id, true)).find('input[type=checkbox]').first().focus();




More information about the commits mailing list