Как стать автором
Обновить

Комментарии 7

Зачем вы модифицируете чужой код? Почему не *_alter?
Я с вами полностью согласен, что модифицировать чужой код — это моветон, но здесь одним небольшим hook_form_alter не обойдёшься, так как вызов немодифицируемой _webform_client_form_rule_check есть уже в функции webform_client_form, а также в webform_client_form_submit, из-за чего придется копипастить 10% кода.
Честно говоря, на момент реализации очень спешил. Чуть позже обязательно оформлю изменения в виде отдельного модуля.
так как вызов немодифицируемой _webform_client_form_rule_check есть уже в функции webform_client_form

Альтерните webform_client_form.
а также в webform_client_form_submit

А с сабмитом то какая проблема? Альтерите его форму и подменяете (добавляете еще один) сабмит.

Вы, может быть, и проделали большую работу и сделали полезное дополнение к WebForms, но статья ваша больше вредна, чем полезна. Её прочитают, модули пропатчат, а после обновления будут кричать, что всё сломалось.
Не получится добавить один новый сабмит, так как в webform_client_form_pages перезаписывается контекст $form_state. Тогда уже надо делать два сабмита: один до и один после, чтобы в первом сохранить оригинальный $form_state, а во втором вычислить необходимую страницу.

> Вы, может быть, и проделали большую работу и сделали полезное дополнение к WebForms, но статья ваша больше вредна, чем полезна. Её прочитают, модули пропатчат, а после обновления будут кричать, что всё сломалось.
В статье оставлен комментарий на этот счёт: «Решим поставленную задачу модификации поведения модуля Webform несколько грубо и нетипично для Drupal, внеся ряд изменения напрямую с целью экономии времени. В будущем их вполне можно будет выделить отдельно и создать отдельный модуль.».
Вы точно выбрали тот инструмент? Вышло как-то некруто :)
Я бы посмотрела на Quiz в первую очередь, если у вас не просто форма, а опросник.
В Quiz несколько смущает отсутствие стабильной версии для 7.x, и там, насколько я знаю, не является родным функционалом вывод нескольких вопросов на страницу.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории