1. Главная
  2. Форумы
  3. Техподдержка Drupal
  4. Решение проблем

Webform и Popups API

Главные вкладки

Необходимо вывести страницу (форма обратной связи с множеством полей) созданную из типа материала модуля Webform 6.x-3.6 в модальном окне.
Для реализации этой задачи был выбран модуль Popups API (Ajax Dialogs) 6.x-2.0-alpha6.
В настройках модуля Popups отметил чекбокс "Scan all pages for popup links.".
В файле темы page.tpl.php для ссылки на страницу с формой созданной модулем Webform указал класс "popups", на первый взгляд все заработало, страница выводится в модальном окошке как надо, то есть именно контент страницы без темы сайта.
Но когда заполняешь поля формы и нажимаешь кнопку отправить, то после нажатия модальное окошко пропадает и крутится постоянно процесс загрузки "Loading..." этого модального окна без каких либо дальнейших действий.
Так вот как заставить работать эту связку модулей, чтобы форма все же работала и отправляла данные введенные пользователем?

Комментарии

Аватар пользователя wowik wowik 1 марта 2011 в 16:05

У меня похожая ситуация - создал webform, на странице указал как в примере кусок кода ссылкой

---------
echo l("Popup link", 'node/123',array('attributes' => array('id' => 'blabla')));

// Need to have the rule outside the else, or it won't get loaded on ajax reload.
popups_add_popups(array('#blabla' => array('titleSelectors'=>array('#page-title'), 'noUpdate'=>TRUE, 'reloadOnError'=>TRUE)));
---------

По клику на ссылке появляется форма, но по сабмиту не то что хотелось бы, а именно - сабмит происходит корректно, если все поля заполнены корректно, если нет, то я не вижу даже сообщений об этом. Второй момент - окно просто перерисовывается. Как сделать так, чтобы если все ок - окно закрывалось и выводилось сообщение из сабмита, если что-то в форме не так - либо об этом в окне информировалось либо окно закрывалось и мы попадали на страницу вебформы с сообщениями об ошибках заполнения.

Аватар пользователя wowik wowik 1 марта 2011 в 17:41

Насколько я понял для формы юзается node.tpl.php,
можно конечно создать для вебформы свой tpl и там анализировать SESSION['messages'], но в примере ж оно работает само - показ ошибок например - http://jesox.com/posts/how-display-drupal-contact-form-nice-ajax-popup

Аватар пользователя wowik wowik 3 марта 2011 в 18:28

когда перенес все со своей локальной машины на реал - модуль повел себя по другому - по сабмиту закрывал попап. В чем причина разного поведения - кто что может подсказать. Кто пробовал модуль модальные формы? Там у меня тоже что-то не пошло.

Аватар пользователя ikee ikee 26 января 2012 в 11:27

Добрый день, у меня (вроде?) похожая проблема, хочу использовать модуль Popups (6.x-2.0-beta0) с модулем Privatemsg (6.x-1.5) версия drupal 6.22.
Значит, ссылка на отправку личного сообщения вызывает popup окно,там все ок, графа "кому", "тема" все заполняется, после отправки сообщения окно не закрывается и в окне появляется контент той ноды с которой отправлялись сообщения.
Такая же ерунда не только с приватМСДЖ, но и с админской частью. Например находясь на странице www.mysite.ru/admin/build/block я добавляю блок, всплывает попАп окно, в него все прописываю и отправляю. Окно не закрывает, а в нем появляется контент узла "admin/build/block".
В чем проблема? может данный модуль конфликтует с другими модулями. Или я что то где-то не настроил.
Как мне сделать так, чтобы после сабмита, окно закрывалось?

Логотип drupal.ru

Содержимое сайта публикуется на условиях CreativeCommons Attribution-ShareAlike 3.0 или более поздней версии. Программные коды в тексте статей — на условиях GNU GPL v2 или более поздней версии.

Документация по совместной работе с репозиторием drupal.ru – https://docs.drupal.ru/code

Drupal – торговая марка Дриса Бёйтарта

12+

AltStyle によって変換されたページ (->オリジナル) /