Drupal и zAccordion

zAccordion - горизонтальный слайдер изображений и не только их, использующий jQuery. Гибко настраиваемый скрипт, который можно легко вписать в любой дизайн.
Пример использования:

$(document).ready(function() {
     $("#example1").zAccordion({
                    timeout: 4000,
                    speed: 800,
                    slideWidth: 600,
                    width: 960,
                    height: 270,
                    errors: true
      });
});

Каждый слайд имеет размеры 600х270 пикселей.
Мы установили ширину аккордеона до 960 пикселей и ширину слайда до 600 пикселей. Размер вкладки будет вычислен автоматически.
Прокрутка слайдов начнется также автоматически - за это отвечает параметр "auto".
Прокрутка одного слайда длится 800 миллисекунд, это указано в параметре "speed". Задержка между двумя прокрутками - параметр "timeout", составит 4 секунды.
Параметр "error" говорит о выдаче ошибок работы скрипта на консоль.

Вроде всё верно, аккордеон появился и прокручивает изображения.
Теперь предположим, что мы хотим задать параметры не константами, а взять их из настроек, например Drupal.settings:

$(document).ready(function() {
     $("#example1").zAccordion({
                    timeout: Drupal.settings.my_settings.timeout, // 4000
                    speed: Drupal.settings.my_settings.speed //800
                    slideWidth: Drupal.settings.my_settings.slideWidth, //500
                    width: Drupal.settings.my_settings.width, //960
                    height: Drupal.settings.my_settings.height, //270
                    errors: true
      });
});

Что же мы видим? Слайдер не появился, зато в консоли броузера видно сообщение: "Speed cannot be greater than timeout". Но параметр "speed" у нас меньше, чем параметр "timeout". В чём же дело?

Для начала, сделав дамп объекта Drupal.settings.my_settings, использовав тот же console.log, видим, что все свойства объекта теперь хранятся, как строки, а не числа, кроме, разве что, логического "errors".
Изучив файл jquery.zaccordion.js, находим фрагмент кода:

else if (options.speed > options.timeout) {
   helpers.displayError("Speed cannot be greater than timeout", options.errors);
return false;

Здесь сравниваются параметры "options.speed" и "options.timeout". Но так как теперь их тип - строка, а не число, то и сравниваются они, как строки.
А выражение "800" > "4000" для строк истинно.

При использовании функции parseInt() для параметров "speed" и "timeout" всё становится на свои места.
Для остальных же параметров в данном примере строки допустимы, так как для них предусмотрено наличие measure units в конце, например "%" или "px"