Asaf — микрофреймворк для ajax ификации форм в drupal 7...

Preview:

Citation preview

Asaf — микрофреймворк для

ajax-ификации форм в Drupal 7

Егор Талдыкин

Asaf == ajax submit for any form

drupal.org/project/asaf

Ajax & FormAPI

• Появился в D6

• Мог использоваться для реализации

зависимых элементов

D7 FormAPI ajax engine

Простейший режим работы Asaf

• #ajax для всех кнопок

• обертка вокруг всей формы

• ajax_callback возвращает всю форму

Asaf GUI

Админка (admin/config/system/asaf)

Не поддерживается :(

• прямое обращение к POST url из

валидатора/самбита

• проверка $_POST['op'] == t('Submit')

• TableDrag (поддержка запланирована)

Поддерживается :)

• загрузка файлов

• переходы (redirect/drupal_goto)

• Batch API

• отправка формы по Enter-у (включается в

настройках)

• pagecache

• еще куча всего

Процент работоспособности

~95% форм работает корректно

Asaf API

Перерисовываемая область

Контрол

Точка входа

Основные юзкейсы

• сабмит без перегрузки всей страницы

• зависимые элементы

• добавление полей ввода на лету

• multistep

Ajax-команды

Ajax-команды

Возможности ajax-команд

• изменение HTML за пределами формы

• выполнение кастомных ajax-команд

Управление ajax-командами

• $form_state['asaf_ajax_commands']

• HOOK_asaf_form_ajax_commands_alter

• HOOK_asaf_form_FORM_ID_ajax_commands

_alter

Контрибьюторы — asaf-ицируйтесь!

Спасибо за внимание

Егор Талдыкин

Ardas Group Inc.

mail: taldy@ya.ru

skype: taldykin.egor

d.org: drupal.org/project/asaf

Recommended