Drupal 8.0.0 beta 12. More info: https://www.drupal.org/node/2514176
This commit is contained in:
commit
9921556621
13277 changed files with 1459781 additions and 0 deletions
104
core/modules/locale/locale.admin.js
Normal file
104
core/modules/locale/locale.admin.js
Normal file
|
@ -0,0 +1,104 @@
|
|||
/**
|
||||
* @file
|
||||
* Locale admin behavior.
|
||||
*/
|
||||
|
||||
(function ($, Drupal) {
|
||||
|
||||
"use strict";
|
||||
|
||||
/**
|
||||
* Marks changes of translations.
|
||||
*
|
||||
* @type {Drupal~behavior}
|
||||
*/
|
||||
Drupal.behaviors.localeTranslateDirty = {
|
||||
attach: function () {
|
||||
var $form = $("#locale-translate-edit-form").once('localetranslatedirty');
|
||||
if ($form.length) {
|
||||
// Display a notice if any row changed.
|
||||
$form.one('formUpdated.localeTranslateDirty', 'table', function () {
|
||||
var $marker = $(Drupal.theme('localeTranslateChangedWarning')).hide();
|
||||
$(this).addClass('changed').before($marker);
|
||||
$marker.fadeIn('slow');
|
||||
});
|
||||
// Highlight changed row.
|
||||
$form.on('formUpdated.localeTranslateDirty', 'tr', function () {
|
||||
var $row = $(this);
|
||||
var $rowToMark = $row.once('localemark');
|
||||
var marker = Drupal.theme('localeTranslateChangedMarker');
|
||||
|
||||
$row.addClass('changed');
|
||||
// Add an asterisk only once if row changed.
|
||||
if ($rowToMark.length) {
|
||||
$rowToMark.find('td:first-child .form-item').append(marker);
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
detach: function (context, settings, trigger) {
|
||||
if (trigger === 'unload') {
|
||||
var $form = $("#locale-translate-edit-form").removeOnce('localetranslatedirty');
|
||||
if ($form.length) {
|
||||
$form.off('formUpdated.localeTranslateDirty');
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Show/hide the description details on Available translation updates page.
|
||||
*
|
||||
* @type {Drupal~behavior}
|
||||
*/
|
||||
Drupal.behaviors.hideUpdateInformation = {
|
||||
attach: function (context, settings) {
|
||||
var $table = $('#locale-translation-status-form').once('expand-updates');
|
||||
if ($table.length) {
|
||||
var $tbodies = $table.find('tbody');
|
||||
|
||||
// Open/close the description details by toggling a tr class.
|
||||
$tbodies.on('click keydown', '.description', function (e) {
|
||||
if (e.keyCode && (e.keyCode !== 13 && e.keyCode !== 32)) {
|
||||
return;
|
||||
}
|
||||
e.preventDefault();
|
||||
var $tr = $(this).closest('tr');
|
||||
|
||||
$tr.toggleClass('expanded');
|
||||
|
||||
// Change screen reader text.
|
||||
$tr.find('.locale-translation-update__prefix').text(function () {
|
||||
if ($tr.hasClass('expanded')) {
|
||||
return Drupal.t('Hide description');
|
||||
}
|
||||
else {
|
||||
return Drupal.t('Show description');
|
||||
}
|
||||
});
|
||||
});
|
||||
$table.find('.requirements, .links').hide();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
$.extend(Drupal.theme, /** @lends Drupal.theme */{
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {string}
|
||||
*/
|
||||
localeTranslateChangedMarker: function () {
|
||||
return '<abbr class="warning ajax-changed" title="' + Drupal.t('Changed') + '">*</abbr>';
|
||||
},
|
||||
|
||||
/**
|
||||
*
|
||||
* @return {string}
|
||||
*/
|
||||
localeTranslateChangedWarning: function () {
|
||||
return '<div class="clearfix messages messages--warning">' + Drupal.theme('localeTranslateChangedMarker') + ' ' + Drupal.t('Changes made in this table will not be saved until the form is submitted.') + '</div>';
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery, Drupal);
|
Reference in a new issue