diff --git a/chosen.js b/chosen.js index fa78ce9..f501b94 100644 --- a/chosen.js +++ b/chosen.js @@ -9,7 +9,17 @@ // Define options. var multiple = Drupal.settings.chosen.multiple; var maxSelectedOptions = Drupal.settings.chosen.max_selected_options; - var options = {}; + var getOptions = function() { + var options = {}; + options.disable_search = Drupal.settings.chosen.disable_search; + options.disable_search_threshold = settings.chosen.disable_search_threshold; + options.search_contains = settings.chosen.search_contains; + options.placeholder_text_multiple = settings.chosen.placeholder_text_multiple; + options.placeholder_text_single = settings.chosen.placeholder_text_single; + options.no_results_text = settings.chosen.no_results_text; + options.inherit_select_classes = true; + return options; + }; // Prepare selector and add unwantend selectors. var selector = settings.chosen.selector; @@ -18,14 +28,7 @@ .not('#field-ui-field-overview-form select, #field-ui-display-overview-form select, .wysiwyg, .draggable select[name$="[weight]"], .draggable select[name$="[position]"]') //disable chosen on field ui .each(function() { var name = $(this).attr('name'); - options = {}; - options.disable_search = Drupal.settings.chosen.disable_search; - options.disable_search_threshold = settings.chosen.disable_search_threshold; - options.search_contains = settings.chosen.search_contains; - options.placeholder_text_multiple = settings.chosen.placeholder_text_multiple; - options.placeholder_text_single = settings.chosen.placeholder_text_single; - options.no_results_text = settings.chosen.no_results_text; - options.inherit_select_classes = true; + var options = getOptions(); minOptions = minOptionsSingle; if (multiple[name] !== false) { @@ -46,6 +49,7 @@ // Enable chosen for widgets. $('select.chosen-widget', context).each(function() { + var options = getOptions(); options = $.extend(options, { width: (($(this).width() < minWidth) ? minWidth : $(this).width()) + 'px' });