Chris@0: /** Chris@0: * @file Chris@0: * Defines Javascript behaviors for the block_content module. Chris@0: */ Chris@0: Chris@17: (function($, Drupal) { Chris@0: /** Chris@0: * Sets summaries about revision and translation of entities. Chris@0: * Chris@0: * @type {Drupal~behavior} Chris@0: * Chris@0: * @prop {Drupal~behaviorAttach} attach Chris@0: * Attaches summary behaviour entity form tabs. Chris@0: * Chris@0: * Specifically, it updates summaries to the revision information and the Chris@0: * translation options. Chris@0: */ Chris@0: Drupal.behaviors.entityContentDetailsSummaries = { Chris@0: attach(context) { Chris@0: const $context = $(context); Chris@17: $context Chris@17: .find('.entity-content-form-revision-information') Chris@17: .drupalSetSummary(context => { Chris@17: const $revisionContext = $(context); Chris@17: const revisionCheckbox = $revisionContext.find( Chris@17: '.js-form-item-revision input', Chris@17: ); Chris@0: Chris@17: // Return 'New revision' if the 'Create new revision' checkbox is checked, Chris@17: // or if the checkbox doesn't exist, but the revision log does. For users Chris@17: // without the "Administer content" permission the checkbox won't appear, Chris@17: // but the revision log will if the content type is set to auto-revision. Chris@17: if ( Chris@17: revisionCheckbox.is(':checked') || Chris@17: (!revisionCheckbox.length && Chris@17: $revisionContext.find('.js-form-item-revision-log textarea') Chris@17: .length) Chris@17: ) { Chris@17: return Drupal.t('New revision'); Chris@17: } Chris@0: Chris@17: return Drupal.t('No revision'); Chris@17: }); Chris@0: Chris@17: $context Chris@17: .find('details.entity-translation-options') Chris@17: .drupalSetSummary(context => { Chris@17: const $translationContext = $(context); Chris@17: let translate; Chris@17: let $checkbox = $translationContext.find( Chris@17: '.js-form-item-translation-translate input', Chris@17: ); Chris@0: Chris@17: if ($checkbox.length) { Chris@17: translate = $checkbox.is(':checked') Chris@17: ? Drupal.t('Needs to be updated') Chris@17: : Drupal.t('Does not need to be updated'); Chris@17: } else { Chris@17: $checkbox = $translationContext.find( Chris@17: '.js-form-item-translation-retranslate input', Chris@17: ); Chris@17: translate = $checkbox.is(':checked') Chris@17: ? Drupal.t('Flag other translations as outdated') Chris@17: : Drupal.t('Do not flag other translations as outdated'); Chris@17: } Chris@0: Chris@17: return translate; Chris@17: }); Chris@0: }, Chris@0: }; Chris@17: })(jQuery, Drupal);