diff --git a/misc/machine-name.js b/misc/machine-name.js index 00a648a1b54f2edd22abc1d0d65c681732fc1108..2691c3b73a2c849ac55d105024102690b3d9df8f 100644 --- a/misc/machine-name.js +++ b/misc/machine-name.js @@ -35,6 +35,8 @@ Drupal.behaviors.machineName = { if ($target.hasClass('error')) { return; } + // Figure out the maximum length for the machine name. + options.maxlength = $target.attr('maxlength'); // Hide the form item container of the machine name form element. $wrapper.hide(); // Determine the initial machine name value. Unless the machine name form @@ -103,13 +105,14 @@ Drupal.behaviors.machineName = { * disallowed characters in the machine name; e.g., '[^a-z0-9]+'. * - replace: A character to replace disallowed characters with; e.g., '_' * or '-'. + * - maxlength: The maximum length of the machine name. * * @return * The transliterated source string. */ transliterate: function (source, settings) { var rx = new RegExp(settings.replace_pattern, 'g'); - return source.toLowerCase().replace(rx, settings.replace); + return source.toLowerCase().replace(rx, settings.replace).substr(0, settings.maxlength); } };