1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- (function ($) {
- /**
- * Attach collapse behavior to the feedback form block.
- */
- Drupal.behaviors.feedbackForm = {
- attach: function (context) {
- $('#block-feedback-form', context).once('feedback', function () {
- var $block = $(this);
- $block.find('span.feedback-link')
- .prepend('<span id="feedback-form-toggle">[ + ]</span> ')
- .css('cursor', 'pointer')
- .toggle(function () {
- Drupal.feedbackFormToggle($block, false);
- },
- function() {
- Drupal.feedbackFormToggle($block, true);
- }
- );
- $block.find('form').hide();
- $block.show();
- });
- }
- };
- /**
- * Re-collapse the feedback form after every successful form submission.
- */
- Drupal.behaviors.feedbackFormSubmit = {
- attach: function (context) {
- var $context = $(context);
- if (!$context.is('#feedback-status-message')) {
- return;
- }
- // Collapse the form.
- $('#block-feedback-form .feedback-link').click();
- // Blend out and remove status message.
- window.setTimeout(function () {
- $context.fadeOut('slow', function () {
- $context.remove();
- });
- }, 3000);
- }
- };
- /**
- * Collapse or uncollapse the feedback form block.
- */
- Drupal.feedbackFormToggle = function ($block, enable) {
- $block.find('form').slideToggle('medium');
- if (enable) {
- $('#feedback-form-toggle', $block).html('[ + ]');
- }
- else {
- $('#feedback-form-toggle', $block).html('[ − ]');
- }
- };
- })(jQuery);
|