Mercurial > hg > isophonics-drupal-site
diff core/modules/node/node.es6.js @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children | 129ea1e6d783 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/modules/node/node.es6.js Wed Nov 29 16:09:58 2017 +0000 @@ -0,0 +1,50 @@ +/** + * @file + * Defines Javascript behaviors for the node module. + */ + +(function ($, Drupal, drupalSettings) { + /** + * Behaviors for tabs in the node edit form. + * + * @type {Drupal~behavior} + * + * @prop {Drupal~behaviorAttach} attach + * Attaches summary behavior for tabs in the node edit form. + */ + Drupal.behaviors.nodeDetailsSummaries = { + attach(context) { + const $context = $(context); + + $context.find('.node-form-author').drupalSetSummary((context) => { + const $authorContext = $(context); + const name = $authorContext.find('.field--name-uid input').val(); + const date = $authorContext.find('.field--name-created input').val(); + + if (name && date) { + return Drupal.t('By @name on @date', { '@name': name, '@date': date }); + } + else if (name) { + return Drupal.t('By @name', { '@name': name }); + } + else if (date) { + return Drupal.t('Authored on @date', { '@date': date }); + } + }); + + $context.find('.node-form-options').drupalSetSummary((context) => { + const $optionsContext = $(context); + const vals = []; + + if ($optionsContext.find('input').is(':checked')) { + $optionsContext.find('input:checked').next('label').each(function () { + vals.push(Drupal.checkPlain($.trim($(this).text()))); + }); + return vals.join(', '); + } + + return Drupal.t('Not promoted'); + }); + }, + }; +}(jQuery, Drupal, drupalSettings));