26 lines
827 B
JavaScript
26 lines
827 B
JavaScript
define([
|
|
'jquery',
|
|
'mage/translate'
|
|
], function ($, $t) {
|
|
'use strict';
|
|
|
|
return function (config, element) {
|
|
var $form = $(element),
|
|
$selectAll = $form.find('[data-role="wiki-select-all"]'),
|
|
$items = $form.find('[data-role="wiki-category-select"]');
|
|
|
|
$selectAll.on('change', function () {
|
|
$items.prop('checked', this.checked);
|
|
});
|
|
$items.on('change', function () {
|
|
$selectAll.prop('checked', $items.length > 0 && $items.filter(':checked').length === $items.length);
|
|
});
|
|
$form.on('submit', function (event) {
|
|
if ($items.filter(':checked').length === 0) {
|
|
event.preventDefault();
|
|
window.alert($t('Select at least one Wiki category.'));
|
|
}
|
|
});
|
|
};
|
|
});
|