Home News

Отправка Webform в Drupal 7 через Ajax (модуль)

09.10.2017

видео Отправка Webform в Drupal 7 через Ajax (модуль)

Drupal 6 PopUp окна на сайте. Модуль Popups

Модуль Webform Ajax работает в Drupal 7 как–то через Ж в отличие от этого же модуля но для Drupal 6.

В сети существует ряд решений, но в качестве рабочего рекомендую dropbucket.org/node/1477 .


Код:

<?php function webform_ajax_submit_form_alter(&$form, &$form_state, $form_id) { // do ajax submit generic for all the webform those have no redirect option enabled if($form['#node']->webform['redirect_url'] == "<none>") { $matches = array(); // check whether the form id have nid at the end like _nid preg_match('/[\d]+$/', $form_id, $matches); $nid_match = $matches[0]; if(strpos($form_id, 'webform_client_form_') == 0 && !empty($nid_match)) { $form['actions']['submit'] = array( '#type' => 'submit', '#ajax' => array( 'callback' => 'webform_client_form_ajax_callback', 'wrapper' => str_replace('_','-',$form['#form_id']), 'effect' => 'fade', ), '#value' => t('Отправить'), ); } } } // Messages function webform_client_form_ajax_callback($form, &$form_state) { if(form_get_errors()) { return $form; } else { return $form['#node']->webform['confirmation']; } }

Остается собрать данное решение в модуль, подключить его и наслаждаться результатом. Архив с модулем прилагается.


4.1. Contact. Конструктор форм в Drupal 8. Форма обратной связи.

rss