О проекте

Данный сайт попытка повысить коммуникацию самых активных разработчиков на CMS Drupal - блоггеров. Если Вы ведете свой блог о Друпале, значит Вы готовы делиться вашими знаниями, помочь другим. Не всегда ваши знания доходят до потребителя. Задача данного сайта агрегировать знания различных блогов в единую ленту и привести на Ваши блоги активных пользователей.

Активность пользователей на Вашем сайте будет дополнительным стимулом к дальнейшей работе.

Удачи во всех Ваших начинаниях!

работа с формами

Drupal: Изменить тип всех кнопок с <input type="submit"> на <button type="submit">

-6 votes
+
-

Часто по дизайну вместо кнопок типа <input type="submit" value="Submit" /> нужны кнопки типа <button type="submit">Submit</button>. Сменить тип достаточно просто:
В папке темы создаём файл input--submit.twig.html:

Drupal: Отправить контактную форму с помощью AJAX

-8 votes
+
-

AJAXификация всех контактных форм с поддержкой валидации:

Drupal: Расширить существующий виджет своим функционалом

-9 votes
+
-

Пример добавления нового функционала виджету text_textarea, с помощью которого можно будет включать динамическую высоту поля в зависимости от длины текста.
Реализация состоит из двух частей:

Drupal: Добавить класс определённому элементу перед выполнением ajax запроса

-24 votes
+
-

Очень часто перед выполнением ajax запроса нужно добавить какому-то элементу определённый класс, а после получения ответа убрать его, чтобы например показать какую-нибудь анимашу, мол keep calm и всё такое.
Реализовать можно с помощью создания собственного типа ajax-прогресса:

Drupal: Чиним onclick на ajax кнопках

-26 votes
+
-

В седьмом друпале есть фантомный баг с ajax кнопками — если попытаться навесить на такую кнопку onclick, то он не сработает, так как после события mousedown кнопка дизаблится и последующие события не вызываются. Фантомный он потому, что если ответ от сервера придёт очень быстро (например на локальном компьютере где пинги нулевые), то onclick таки выполнится.

Drupal: Многошаговая форма на AJAX

-25 votes
+
-

Чтобы сделать навигацию по многошаговой форме на AJAX нужно:
1. Добавить форме div враппер с уникальным id:

Drupal: Создание многошаговых форм (multistep form)

-17 votes
+
-

Пример создания формы из трёх шагов:

Drupal: Несколько одинаковых форм на одной странице

-16 votes
+
-

Пример вывода нескольких одинаковых форм на одной странице:

Drupal: Отправить форму с открытым автокомплитом (autocomplete)

-27 votes
+
-

В семёрке невозможно отправить форму с открытым автокомплитом ни нажатием на кнопку сабмита, ни клавишей Enter в поле ввода. Виновата в таком поведении функция Drupal.autocompleteSubmit(). Чиним:

Drupal: Сменить тип раскрытого фильтра с select на checkboxes

-22 votes
+
-

Пример программного изменения типа элемента с select на checkboxes в раскрытых фильтрах без использования модуля Better Exposed Filters: