ура! заработало! сам бы я до такого разделения не додумался.
Добавлено через 36 минут
Долго меня мучал этот вопрос: как изменить ввод обязательного мэйла на обычный телефон при заказе в качестве гостя? И вот нашел решение. Сразу оговорюсь - возможно, этот способ покажется вам не удачным, но это пока единственный выход из ситуации. И довольно простой. Суть его в том, что email адрес не проверяется на правильность ввода и позволяет продолжить оформление заказа.
Сразу опишу некоторые минусы (хотя и не критичные, и в дальнейшем, возможно, исправимые
- т.к. мы используем форму мыла, текст из формы подставляется в заказе в строчку "E-mail"
- зарегистрироваться в магазине можно с любым мэйлом (например 12345)
- система ругается, когда пытается что-то отправить на указанные адреса, но это не влияет на дальнейшие изменения.
Вот, собственно, пока всё, что мне удалось определить.
Ну, а теперь изменения, которые нужно проделать:
1) В файле js/core.js ищем строку с таким вот текстом:
// Check the email field
if (lbl.hasClass('cm-email')) {
if (jQuery.is.email(elm.val()) == true) {
if (lbl.hasClass('cm-required') || jQuery.is.blank(elsm.val()) == true) {
this.form_message(lang.error_validator_email, lbl);
is_ok = true;
set_mark = false;
}
}
}
...и меняем значения
true и
false на те, что выделены красным.
2) Вот, собственно, и всё
Теперь email не будет проверяться.
А чтобы на странице оформления заказа изменить стандартный текст (E-mail), берём файл skins/ВАШ_ШАБЛОН/customer/views/profiles/components/
profile_fields.tpl и заменяем
{$lang.email} на свой (например, "Телефон:")
Может быть, этот вариант подтолкнёт кого-то более продвинутого в коде, чтобы найти какой-нибудь более правильный способ.