annotate core/misc/entity-form.es6.js @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 129ea1e6d783
children
rev   line source
Chris@0 1 /**
Chris@0 2 * @file
Chris@0 3 * Defines Javascript behaviors for the block_content module.
Chris@0 4 */
Chris@0 5
Chris@17 6 (function($, Drupal) {
Chris@0 7 /**
Chris@0 8 * Sets summaries about revision and translation of entities.
Chris@0 9 *
Chris@0 10 * @type {Drupal~behavior}
Chris@0 11 *
Chris@0 12 * @prop {Drupal~behaviorAttach} attach
Chris@0 13 * Attaches summary behaviour entity form tabs.
Chris@0 14 *
Chris@0 15 * Specifically, it updates summaries to the revision information and the
Chris@0 16 * translation options.
Chris@0 17 */
Chris@0 18 Drupal.behaviors.entityContentDetailsSummaries = {
Chris@0 19 attach(context) {
Chris@0 20 const $context = $(context);
Chris@17 21 $context
Chris@17 22 .find('.entity-content-form-revision-information')
Chris@17 23 .drupalSetSummary(context => {
Chris@17 24 const $revisionContext = $(context);
Chris@17 25 const revisionCheckbox = $revisionContext.find(
Chris@17 26 '.js-form-item-revision input',
Chris@17 27 );
Chris@0 28
Chris@17 29 // Return 'New revision' if the 'Create new revision' checkbox is checked,
Chris@17 30 // or if the checkbox doesn't exist, but the revision log does. For users
Chris@17 31 // without the "Administer content" permission the checkbox won't appear,
Chris@17 32 // but the revision log will if the content type is set to auto-revision.
Chris@17 33 if (
Chris@17 34 revisionCheckbox.is(':checked') ||
Chris@17 35 (!revisionCheckbox.length &&
Chris@17 36 $revisionContext.find('.js-form-item-revision-log textarea')
Chris@17 37 .length)
Chris@17 38 ) {
Chris@17 39 return Drupal.t('New revision');
Chris@17 40 }
Chris@0 41
Chris@17 42 return Drupal.t('No revision');
Chris@17 43 });
Chris@0 44
Chris@17 45 $context
Chris@17 46 .find('details.entity-translation-options')
Chris@17 47 .drupalSetSummary(context => {
Chris@17 48 const $translationContext = $(context);
Chris@17 49 let translate;
Chris@17 50 let $checkbox = $translationContext.find(
Chris@17 51 '.js-form-item-translation-translate input',
Chris@17 52 );
Chris@0 53
Chris@17 54 if ($checkbox.length) {
Chris@17 55 translate = $checkbox.is(':checked')
Chris@17 56 ? Drupal.t('Needs to be updated')
Chris@17 57 : Drupal.t('Does not need to be updated');
Chris@17 58 } else {
Chris@17 59 $checkbox = $translationContext.find(
Chris@17 60 '.js-form-item-translation-retranslate input',
Chris@17 61 );
Chris@17 62 translate = $checkbox.is(':checked')
Chris@17 63 ? Drupal.t('Flag other translations as outdated')
Chris@17 64 : Drupal.t('Do not flag other translations as outdated');
Chris@17 65 }
Chris@0 66
Chris@17 67 return translate;
Chris@17 68 });
Chris@0 69 },
Chris@0 70 };
Chris@17 71 })(jQuery, Drupal);