summaryrefslogtreecommitdiffstatshomepage
path: root/core/modules/taxonomy/taxonomy.js
diff options
context:
space:
mode:
Diffstat (limited to 'core/modules/taxonomy/taxonomy.js')
-rw-r--r--core/modules/taxonomy/taxonomy.js50
1 files changed, 34 insertions, 16 deletions
diff --git a/core/modules/taxonomy/taxonomy.js b/core/modules/taxonomy/taxonomy.js
index 8b65002ce8b..7b9d9298e25 100644
--- a/core/modules/taxonomy/taxonomy.js
+++ b/core/modules/taxonomy/taxonomy.js
@@ -1,30 +1,46 @@
/**
-* DO NOT EDIT THIS FILE.
-* See the following change record for more information,
-* https://www.drupal.org/node/2815083
-* @preserve
-**/
+ * @file
+ * Taxonomy behaviors.
+ */
(function ($, Drupal) {
+ /**
+ * Reorder taxonomy terms.
+ *
+ * This behavior is dependent on the tableDrag behavior, since it uses the
+ * objects initialized in that behavior to update the row.
+ *
+ * @type {Drupal~behavior}
+ *
+ * @prop {Drupal~behaviorAttach} attach
+ * Attaches the drag behavior to an applicable table element.
+ */
Drupal.behaviors.termDrag = {
attach(context, settings) {
const backStep = settings.taxonomy.backStep;
const forwardStep = settings.taxonomy.forwardStep;
+ // Get the taxonomy tableDrag object.
const tableDrag = Drupal.tableDrag.taxonomy;
const $table = $('#taxonomy');
const rows = $table.find('tr').length;
+ // When a row is swapped, keep previous and next page classes set.
tableDrag.row.prototype.onSwap = function (swappedRow) {
- $table.find('tr.taxonomy-term-preview').removeClass('taxonomy-term-preview');
- $table.find('tr.taxonomy-term-divider-top').removeClass('taxonomy-term-divider-top');
- $table.find('tr.taxonomy-term-divider-bottom').removeClass('taxonomy-term-divider-bottom');
- const tableBody = $table[0].tBodies[0];
+ $table
+ .find('tr.taxonomy-term-preview')
+ .removeClass('taxonomy-term-preview');
+ $table
+ .find('tr.taxonomy-term-divider-top')
+ .removeClass('taxonomy-term-divider-top');
+ $table
+ .find('tr.taxonomy-term-divider-bottom')
+ .removeClass('taxonomy-term-divider-bottom');
+ const tableBody = $table[0].tBodies[0];
if (backStep) {
for (let n = 0; n < backStep; n++) {
$(tableBody.rows[n]).addClass('taxonomy-term-preview');
}
-
$(tableBody.rows[backStep - 1]).addClass('taxonomy-term-divider-top');
$(tableBody.rows[backStep]).addClass('taxonomy-term-divider-bottom');
}
@@ -33,12 +49,14 @@
for (let k = rows - forwardStep - 1; k < rows - 1; k++) {
$(tableBody.rows[k]).addClass('taxonomy-term-preview');
}
-
- $(tableBody.rows[rows - forwardStep - 2]).addClass('taxonomy-term-divider-top');
- $(tableBody.rows[rows - forwardStep - 1]).addClass('taxonomy-term-divider-bottom');
+ $(tableBody.rows[rows - forwardStep - 2]).addClass(
+ 'taxonomy-term-divider-top',
+ );
+ $(tableBody.rows[rows - forwardStep - 1]).addClass(
+ 'taxonomy-term-divider-bottom',
+ );
}
};
- }
-
+ },
};
-})(jQuery, Drupal); \ No newline at end of file
+})(jQuery, Drupal);