diff --git a/modules/block/block.js b/modules/block/block.js index b722d30df01cdcefe0076a1f50dc99ccddd4ceef..34c04d2460c6902945b95aeff472f06947c323cf 100644 --- a/modules/block/block.js +++ b/modules/block/block.js @@ -25,7 +25,9 @@ Drupal.behaviors.blockDrag = { // Add a handler so when a row is dropped, update fields dropped into new regions. tableDrag.onDrop = function () { dragObject = this; - var regionRow = $(dragObject.rowObject.element).prev('tr').get(0); + // Use "region-message" row instead of "region" row because + // "region-{region_name}-message" is less prone to regexp match errors. + var regionRow = $(dragObject.rowObject.element).prevAll('tr.region-message').get(0); var regionName = regionRow.className.replace(/([^ ]+[ ]+)*region-([^ ]+)-message([ ]+[^ ]+)*/, '$2'); var regionField = $('select.block-region-select', dragObject.rowObject.element); // Check whether the newly picked region is available for this block.