Проверка Ubercart: при нажатии для просмотра заказа выполните дополнительную проверку

#php #drupal #drupal-6 #ubercart

#php #drupal #drupal-6 #ubercart

Вопрос:

Когда пользователь переходит к оформлению заказа и нажимает «просмотреть», я хотел бы иметь возможность подключиться к этому процессу, чтобы выполнить некоторую пользовательскую проверку.

Как бы я это сделал?

Ответ №1:

Если вы хотите добавить поля в форму, вам необходимо реализовать собственную панель оформления заказа (см. Эту страницу для хорошего примера).

Если вы просто буквально хотите добавить дополнительную проверку, вы сможете сделать это в пользовательском модуле, внедрив hook_form_FORM_ID_alter:

 function mymodule_form_uc_cart_checkout_form_alter(amp;$form, amp;$form_state) {
  $form['#validate'][] = 'mymodule_checkout_form_validate';
}

function mymodule_checkout_form_validate(amp;$form, amp;$form_state) {
  if ($form_state['values']['something'] != 'something else') {
    form_set_error('something', 'Something went wrong.');
  }
}