checkout_before_auth
Срабатывает перед вызовом предварительного метода prepare() шага оформления заказа «ввод контактных данных» на странице оформления заказа в корзине.
Доступно начиная с версии 8.0.0.
Shop-Script
Входящие параметры (передаются по ссылке)
$params['step_id'] string Идентификатор шага оформления заказа.
$params['result'] array Значения, которые будут переданы JavaScript-коду и в шаблон соответствующего шага templates/actions/frontend/order/form/auth.html. Могут быть изменены плагином.
$params['data'] array Данные, которые передаются классу шага оформления заказа. Могут быть изменены плагином.
$params['data']['origin'] string Обозначение источника вызова: 'form' (полное формирование всей формы оформления заказа), 'calculate' (фоновое обновление части формы по мере изменения значений в ней покупателем), 'create' (создание заказа после окончательного подтверждения покупателем).
$params['data']['order'] object Экземпляр класса
$params['data']['contact'] object Экземпляр класса
$params['data']['input'] array Данные, полученные из POST-запроса, сессии или другого источника.
$params['error_step_id'] string Идентификатор шага, на котором возникла ошибка. Может быть изменён плагином.
$params['errors'] array Сообщения об ошибках. Могут быть изменены плагином.
$params['errors'][]['text'] string Текст сообщения об ошибке.
$params['result'] array Значения, которые будут переданы JavaScript-коду и в шаблон соответствующего шага templates/actions/frontend/order/form/auth.html. Могут быть изменены плагином.
$params['data'] array Данные, которые передаются классу шага оформления заказа. Могут быть изменены плагином.
$params['data']['origin'] string Обозначение источника вызова: 'form' (полное формирование всей формы оформления заказа), 'calculate' (фоновое обновление части формы по мере изменения значений в ней покупателем), 'create' (создание заказа после окончательного подтверждения покупателем).
$params['data']['order'] object Экземпляр класса
shopOrder со свойствами заказа.$params['data']['contact'] object Экземпляр класса
waContact со свойствами авторизованного покупателя.$params['data']['input'] array Данные, полученные из POST-запроса, сессии или другого источника.
$params['error_step_id'] string Идентификатор шага, на котором возникла ошибка. Может быть изменён плагином.
$params['errors'] array Сообщения об ошибках. Могут быть изменены плагином.
$params['errors'][]['text'] string Текст сообщения об ошибке.
… код плагина …
Результат работы плагина
Shop-Script
Пример кода плагина
PHP
public function checkoutBeforeAuth(&$params)
{
$customer_email = ifset($params, 'data', 'input', 'auth', 'data', 'email', '');
if ($customer_email) {
$customer_email = $params['data']['input']['auth']['data']['email'];
$is_main_customer_email = shopMyPlugin::isMainCustomerEmail($customer_email);
if (!$is_main_customer_email) {
$main_customer_email = shopMyPlugin::getMainCustomerEmailByEmail($customer_email);
$params['data']['input']['auth']['data']['email'] = $main_customer_email;
}
}
}









