1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- (function ($) {
- /**
- * Auto-hide summary textarea if empty and show hide and unhide links.
- */
- Drupal.behaviors.textSummary = {
- attach: function (context, settings) {
- $('.text-summary', context).once('text-summary', function () {
- var $widget = $(this).closest('div.field-type-text-with-summary');
- var $summaries = $widget.find('div.text-summary-wrapper');
- $summaries.once('text-summary-wrapper').each(function(index) {
- var $summary = $(this);
- var $summaryLabel = $summary.find('label').first();
- var $full = $widget.find('.text-full').eq(index).closest('.form-item');
- var $fullLabel = $full.find('label').first();
- // Create a placeholder label when the field cardinality is
- // unlimited or greater than 1.
- if ($fullLabel.length == 0) {
- $fullLabel = $('<label></label>').prependTo($full);
- }
- // Setup the edit/hide summary link.
- var $link = $('<span class="field-edit-link">(<a class="link-edit-summary" href="#">' + Drupal.t('Hide summary') + '</a>)</span>');
- var $a = $link.find('a');
- var toggleClick = true;
- $link.bind('click', function (e) {
- if (toggleClick) {
- $summary.hide();
- $a.html(Drupal.t('Edit summary'));
- $link.appendTo($fullLabel);
- }
- else {
- $summary.show();
- $a.html(Drupal.t('Hide summary'));
- $link.appendTo($summaryLabel);
- }
- toggleClick = !toggleClick;
- return false;
- }).appendTo($summaryLabel);
- // If no summary is set, hide the summary field.
- if ($(this).find('.text-summary').val() == '') {
- $link.click();
- }
- });
- });
- }
- };
- })(jQuery);
|