Пример
В template.php есть такая темизированная функция:
<?php
function THEME_my_module_form($form) {
$output .= '<div>';
$output .= drupal_render($form['panes']['customer']);
$output .= drupal_render($form['panes']['cart']);
$output .= '</div>';
return $output;
}
?>
Задача: по условию, определяемого в ДРУГОМ модуле показывать/скрывать скажем переменную $form['panes']['customer']
, т.е тупо делать
<?php
unset($form['panes']['customer']);
?>
Покажите в каком направлении копать
Комментарии
что за условие?
Как правильно переопределить функцию модуля[Решено]
Как то так копать...
Условие такое: скрывать поле ввода баллов для получения скидки (модуль uc_userpoints) на странице cart/checkout если, скажем, на предыдущей странице /cart пользователь ввёл код купона (предоставляется другим модулем) - чтобы не было двойного дискаунта
Или элегантнее писать правило для Conditional Actions?
PS Иногда кажется, что разобраться до конца в этих хуках да и структуре Друпала просто нереально
добавляй свой submit callback на форму для ввода кода купона. там устанавливай флаг в сессию. в блоке проверяй флаг, если есть - удаляй unset($form['panes']['customer']) и удаляй флаг.
Ок, буду пытаться