From 0c6bc2f7a1234e7e3b0dcaced09d7ebd4b372138 Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Tue, 6 Mar 2012 20:17:42 +0100 Subject: [PATCH] MINOR Moving Tree.js entwine rules into namespace (wasn't applying multiple/draggable toggles because of that) --- admin/javascript/LeftAndMain.Tree.js | 132 ++++++++++++++------------- 1 file changed, 67 insertions(+), 65 deletions(-) diff --git a/admin/javascript/LeftAndMain.Tree.js b/admin/javascript/LeftAndMain.Tree.js index 215f763538a..8493804169b 100644 --- a/admin/javascript/LeftAndMain.Tree.js +++ b/admin/javascript/LeftAndMain.Tree.js @@ -254,75 +254,77 @@ } } + }, + onunmatch: function() { + } }); - }); - - $('.cms-tree.multiple').entwine({ - onmatch: function() { - this._super(); - - this.jstree('show_checkboxes'); - }, - onunmatch: function() { - this._super(); - - this.jstree('uncheck_all'); - this.jstree('hide_checkboxes'); - }, - /** - * Function: getSelectedIDs - * - * Returns: - * (Array) - */ - getSelectedIDs: function() { - return $.map($(this).jstree('get_checked'), function(el, i) {return $(el).data('id');}); - } - }); - - $('.cms-tree li').entwine({ - /** - * Function: setEnabled - * - * Parameters: - * (bool) - */ - setEnabled: function(bool) { - this.toggleClass('disabled', !(bool)); - }, + $('.cms-tree.multiple').entwine({ + onmatch: function() { + this._super(); + this.jstree('show_checkboxes'); + }, + onunmatch: function() { + this._super(); + this.jstree('uncheck_all'); + this.jstree('hide_checkboxes'); + }, + /** + * Function: getSelectedIDs + * + * Returns: + * (Array) + */ + getSelectedIDs: function() { + return $.map($(this).jstree('get_checked'), function(el, i) {return $(el).data('id');}); + } + }); - /** - * Function: getClassname - * - * Returns PHP class for this element. Useful to check business rules like valid drag'n'drop targets. - */ - getClassname: function() { - var matches = this.attr('class').match(/class-([^\s]*)/i); - return matches ? matches[1] : ''; - }, + $('.cms-tree li').entwine({ + + /** + * Function: setEnabled + * + * Parameters: + * (bool) + */ + setEnabled: function(bool) { + this.toggleClass('disabled', !(bool)); + }, + + /** + * Function: getClassname + * + * Returns PHP class for this element. Useful to check business rules like valid drag'n'drop targets. + */ + getClassname: function() { + var matches = this.attr('class').match(/class-([^\s]*)/i); + return matches ? matches[1] : ''; + }, + + /** + * Function: getID + * + * Returns: + * (Number) + */ + getID: function() { + return this.data('id'); + } + }); - /** - * Function: getID - * - * Returns: - * (Number) - */ - getID: function() { - return this.data('id'); - } - }); - - $('.cms-tree-view-modes input.view-mode').entwine({ - onmatch: function() { - // set active by default - this.trigger('click'); - this._super(); - }, - onclick: function(e) { - $('.cms-tree').toggleClass('draggable', $(e.target).val() == 'draggable'); - } + $('.cms-tree-view-modes input.view-mode').entwine({ + onmatch: function() { + // set active by default + this.trigger('click'); + this._super(); + }, + onclick: function(e) { + $('.cms-tree') + .toggleClass('draggable', $(e.target).val() == 'draggable') + .toggleClass('multiple', $(e.target).val() == 'multiselect'); + } + }); }); - }(jQuery)); \ No newline at end of file