Mercurial > hg > cmmr2012-drupal-site
diff core/modules/locale/locale.bulk.es6.js @ 0:c75dbcec494b
Initial commit from drush-created site
author | Chris Cannam |
---|---|
date | Thu, 05 Jul 2018 14:24:15 +0000 |
parents | |
children | a9cd425dd02b |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/modules/locale/locale.bulk.es6.js Thu Jul 05 14:24:15 2018 +0000 @@ -0,0 +1,34 @@ +/** + * @file + * Locale behavior. + */ + +(function ($, Drupal) { + /** + * Select the language code of an imported file based on its filename. + * + * This only works if the file name ends with "LANGCODE.po". + * + * @type {Drupal~behavior} + * + * @prop {Drupal~behaviorAttach} attach + * Attaches behavior for preselecting language code based on filename. + */ + Drupal.behaviors.importLanguageCodeSelector = { + attach(context, settings) { + const $form = $('#locale-translate-import-form').once('autodetect-lang'); + if ($form.length) { + const $langcode = $form.find('.langcode-input'); + $form.find('.file-import-input') + .on('change', function () { + // If the filename is fully the language code or the filename + // ends with a language code, pre-select that one. + const matches = $(this).val().match(/([^.][.]*)([\w-]+)\.po$/); + if (matches && $langcode.find(`option[value="${matches[2]}"]`).length) { + $langcode.val(matches[2]); + } + }); + } + }, + }; +}(jQuery, Drupal));