summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--misc/vertical-tabs.js47
-rw-r--r--modules/filter/filter.admin.js40
2 files changed, 45 insertions, 42 deletions
diff --git a/misc/vertical-tabs.js b/misc/vertical-tabs.js
index ba43c8f88..127df5420 100644
--- a/misc/vertical-tabs.js
+++ b/misc/vertical-tabs.js
@@ -80,7 +80,9 @@ Drupal.verticalTab = function (settings) {
};
Drupal.verticalTab.prototype = {
- // Displays the tab's content pane.
+ /**
+ * Displays the tab's content pane.
+ */
focus: function () {
this.fieldset
.siblings('fieldset.vertical-tabs-pane')
@@ -96,9 +98,50 @@ Drupal.verticalTab.prototype = {
this.item.addClass('selected');
},
- // Updates the tab's summary.
+ /**
+ * Updates the tab's summary.
+ */
updateSummary: function () {
this.summary.html(this.fieldset.getSummary());
+ },
+
+ /**
+ * Shows a vertical tab pane.
+ */
+ tabShow: function () {
+ // Display the tab.
+ this.item.show();
+ // Update .first marker for items. We need recurse from parent to retain the
+ // actual DOM element order as jQuery implements sortOrder, but not as public
+ // method.
+ this.item.parent().children('.vertical-tab-button').removeClass('first')
+ .filter(':visible:first').addClass('first');
+ // Display the fieldset.
+ this.fieldset.removeClass('vertical-tab-hidden').show();
+ // Focus this tab.
+ this.focus();
+ return this;
+ },
+
+ /**
+ * Hides a vertical tab pane.
+ */
+ tabHide: function () {
+ // Hide this tab.
+ this.item.hide();
+ // Update .first marker for items. We need recurse from parent to retain the
+ // actual DOM element order as jQuery implements sortOrder, but not as public
+ // method.
+ this.item.parent().children('.vertical-tab-button').removeClass('first')
+ .filter(':visible:first').addClass('first');
+ // Hide the fieldset.
+ this.fieldset.addClass('vertical-tab-hidden').hide();
+ // Focus the first visible tab (if there is one).
+ var $firstTab = this.fieldset.siblings('.vertical-tabs-pane:not(.vertical-tab-hidden):first');
+ if ($firstTab.length) {
+ $firstTab.data('verticalTab').focus();
+ }
+ return this;
}
};
diff --git a/modules/filter/filter.admin.js b/modules/filter/filter.admin.js
index b4b946318..3ba6424af 100644
--- a/modules/filter/filter.admin.js
+++ b/modules/filter/filter.admin.js
@@ -1,46 +1,6 @@
// $Id$
-
(function ($) {
-/**
- * Shows the vertical tab pane.
- */
-Drupal.verticalTab.prototype.tabShow = function () {
- // Display the tab.
- this.item.show();
- // Update .first marker for items. We need recurse from parent to retain the
- // actual DOM element order as jQuery implements sortOrder, but not as public
- // method.
- this.item.parent().children('.vertical-tab-button').removeClass('first')
- .filter(':visible:first').addClass('first');
- // Display the fieldset.
- this.fieldset.removeClass('filter-settings-hidden').show();
- // Focus this tab.
- this.focus();
- return this;
-};
-
-/**
- * Hides the vertical tab pane.
- */
-Drupal.verticalTab.prototype.tabHide = function () {
- // Hide this tab.
- this.item.hide();
- // Update .first marker for items. We need recurse from parent to retain the
- // actual DOM element order as jQuery implements sortOrder, but not as public
- // method.
- this.item.parent().children('.vertical-tab-button').removeClass('first')
- .filter(':visible:first').addClass('first');
- // Hide the fieldset.
- this.fieldset.addClass('filter-settings-hidden').hide();
- // Focus the first visible tab (if there is one).
- var $firstTab = this.fieldset.siblings('.vertical-tabs-pane:not(.filter-settings-hidden):first');
- if ($firstTab.length) {
- $firstTab.data('verticalTab').focus();
- }
- return this;
-};
-
Drupal.behaviors.filterStatus = {
attach: function (context, settings) {
$('#filters-status-wrapper input.form-checkbox', context).once('filter-status', function () {