Commit 308f8491 authored by Dries's avatar Dries

- Patch #741726 by sun: move filter module's vertical tabs extensions into vertical-tabs.js.

parent 92bd43b3
......@@ -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;
}
};
......
// $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 () {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment