Изменить форму в зависимости от условий

Аватар пользователя lo_sinclair lo_sinclair 18 апреля 2015 в 17:06

Еще раз нужна помощь.
Нужно изменить элемент $form в зависимости от того, находимся ли мы на странице полной ноды или в каталоге. (форма добавления в корзину commerce).
Пришло в голову только проверять по аргументу if(arg(0) == 'node')
Но дело в том ,что когда форма обновляется по ajax, аргумент уже другой.
Пытаюсь сохранить первое состояние формы через в $form_state['storage']['is_teaser'] - не срабатывает.
Какое может быть решение?

Комментарии

Аватар пользователя lo_sinclair lo_sinclair 19 апреля 2015 в 12:38

"<a href="mailto:sas@drupal.org">sas@drupal.org</a>" wrote:
current_path() и request_path() - в помощь, проверьте значения, что-то должно подойти.

В current_path() так же system/ajax. Но функции пригодятся.

Удалось сохранить как значение в $form_state результат первой загрузки формы на странице /значение - нода или нет/, чтоб оно потом не менялось, когда аякс дергает форму, правда, не знаю, насколько это правильно.

Аватар пользователя lo_sinclair lo_sinclair 22 апреля 2015 в 15:30

request_path() то же самое, только с синонимом url, получается все равно system/ajax. А нужен путь, с которого отправлен запрос.