Drupal 8. Форма Контактов во всплывающем окне + Ajax

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

Аватар пользователя tlito tlito 2 апреля 2016 в 15:15

Из прочитанных заголовков я понял, что на Друпал 8 можно создавать Аякс-формы:
http://www.sitepoint.com/using-ajax-forms-drupal-8/
http://enzolutions.com/articles/2014/11/25/how-to-work-with-drupal-8-for...

В связи с этим вопрос: Как просто сделать по кнопке "Написать", расположенной в шапке, открытие модального окна (типа колорбокс) с формой контактов /contact и сделать её отправку Аяксом?

Комментарии

Аватар пользователя g78knl6cvxf0 g78knl6cvxf0 3 апреля 2016 в 23:45

Примерно так (не проверял):

<?php

use \Drupal\Core\Form\FormStateInterface;
use \
Drupal\Core\Link;
use \
Drupal\Core\Url;

function 

hook_form_alter(&$formFormStateInterface $form_state$form_id) {
       
$url Url::fromUserInput('/contact', [
        
'attributes' => array(
          
'class' => 'use-ajax',
          
'data-accepts' => 'application/vnd.drupal-modal',
          
'data-dialog-options' => '{"width": "50%"}',
        ),
      ]);
      
$link Link::fromTextAndUrl(t('Написать'), $url);
      
$form['#attached']['library'][] = 'core/drupal.ajax';
}
?>