Страница 1 из 1

Не обязательное поле Email в версии 4

Добавлено: 02.06.2021, 07:17
seo-deluxe.ru
Ребята помогайте. Все уже перепробовал. Валидацию отключаю в scripts.tpl, так же убираю сообщения об ошибке в cart.tpl.
Все делаю, но вылетает ошибка empty_email.
Собственно сам вопрос, где это валидация еще спрятана? Все перековырял, не могу найти.

Добавлено: 02.06.2021, 07:57
korshunov
Возможно, в Okay/Helpers/ValidateHelper.php

А вообще надо хоть чуть заботиться о понятности вопроса. Если пишете "вылетает ошибка empty_email", то надо указывать хотя бы, на какой странице...

Добавлено: 02.06.2021, 08:47
nyc-xp
seo-deluxe.ru писал(а):Ребята помогайте. Все уже перепробовал. Валидацию отключаю в scripts.tpl, так же убираю сообщения об ошибке в cart.tpl.
Все делаю, но вылетает ошибка empty_email.
Собственно сам вопрос, где это валидация еще спрятана? Все перековырял, не могу найти.

еще вариант - бесплатный модуль установить
https://okay-cms.com/products/simplamarket_email_not_required

Добавлено: 03.06.2021, 07:00
seo-deluxe.ru
Не работает этот модуль.

Добавлено: 03.06.2021, 07:29
korshunov
У меня прекрасно работает...

Добавлено: 03.06.2021, 08:23
nyc-xp
seo-deluxe.ru писал(а):Не работает этот модуль.
На 4.0.3 - работает точно
Возможно Вы вносили какие то перемены в сайте, которые не дают этому модулю работать.
Или попробуйте после установки модуля, весь кеш почистить

Добавлено: 17.06.2021, 08:04
Sergey
Тот же вопрос, только: как включить валидацию на строку номера телефона?
В последнее время клиенты забывают указать контактный номер.
Странно, что это поле есть НЕ обязательным.
Подскажите, как поправить?
Версия 4.0.2

Добавлено: 17.06.2021, 21:42
Inclinatio
Отключаем обязательный email, делаем обязательным поле номер телефона
Актуально для версии 4.0.5

1) Идем /design/ВАШАТЕМА/html/scripts.tpl

Ищем:

Код: Выделить всё

if($(".fn_validate_cart").length>0

Меняем то что ниже этой строчки (условие if) на:

Код: Выделить всё

        $(".fn_validate_cart").validate({
            rules: {
                name: "required",
                phone: "required",
                email: {
                 //   required: true,
                    email: true
                },
                captcha_code: "required"
            },
            messages: {
                name: form_enter_name,
                phone: form_enter_phone,
                // email: form_enter_email,
                captcha_code: form_error_captcha
            }
        });


2) Идем /Okay/Helpers/ValidateHelper.php
Меняем

Код: Выделить всё

elseif (!$this->validator->isEmail($order->email, true))

На

Код: Выделить всё

elseif (!$this->validator->isEmail($order->email))

Меняем

Код: Выделить всё

elseif (!$this->validator->isPhone($order->phone))

На

Код: Выделить всё

elseif (!$this->validator->isPhone($order->phone, true))



3) Идем /design/ВАШАТЕМА/html/cart.tpl

Меняем

Код: Выделить всё

<span class="form__placeholder">{$lang->form_phone}</span>

На

Код: Выделить всё

<span class="form__placeholder">{$lang->form_phone}*</span>

Меняем

Код: Выделить всё

<span class="form__placeholder">{$lang->form_email}*</span>

На

Код: Выделить всё

<span class="form__placeholder">{$lang->form_email}</span>

Добавлено: 19.06.2021, 11:12
Sergey
Возможно эти изменения перекачуют в версию 4.0.6 и просто дождаться обновы?

Добавлено: 09.11.2021, 13:42
irekunenko
Sergey писал(а):Возможно эти изменения перекачуют в версию 4.0.6 и просто дождаться обновы?
В 4.1.1 модуль работает
Если не получится запустить - маякните

Добавлено: 11.04.2022, 16:39
SergeyURA
4.3.0 тоже работает.

Возможно кто-то подскажет как реализовать такую "маску"? "+380 (__) ___-__-__" только чтобы она проверяла правильность ввода и когда ошибся и стер цифру, то она оставалась

Добавлено: 15.04.2022, 14:40
Matfak
Є скрипт inputmask
Виглядає він приблизно так

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.1.62/jquery.inputmask.bundle.js"></script>
<script>
$(document).ready(function() {
$('#mobil_phone').inputmask("+38 (999) 999-99-99");
});
</script>

але як прикрутити його до Оkay я не знаю.

Добавлено: 06.12.2022, 07:13
dimitriy
вот респект, еще не пробовал, но обязательно попробую.
так как емэйл мало актуальная тема, а телефон куда актуальней ( у всех whatsapp)

Добавлено: 19.12.2022, 07:40
Matfak
Якщо вдасться поджужити з Оkay, поділіться з класом :)

Добавлено: 31.08.2023, 19:33
Vanger

Код: Выделить всё

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.maskedinput/1.4.1/jquery.maskedinput.min.js" integrity="sha512-d4KkQohk+HswGs6A1d6Gak6Bb9rMWtxjOa0IiY49Q3TeFd5xAzjWXDCBW9RS7m86FQ4RzM2BdHmdJnnKRYknxw==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script>
$('.mask-phone').mask('+38(999)999-99-99');
$('input[name="phone"]').mask("+38(999)999-99-99");
$('input[name="callback_phone"]').mask("+38(999)999-99-99");
</script>

Добавлено: 14.09.2023, 06:01
Matfak

Код: Выделить всё

<!-- mask-phone -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.inputmask/3.1.62/jquery.inputmask.bundle.js" type="text/javascript"></script>
<script>
jQuery(function($){
  $('input[name="phone"]').inputmask("+38 (999) 999-99-99");
  $('input[name="callback_phone"]').inputmask("+38 (999) 999-99-99");
});
</script>
<!-- mask-phone -->

Можна добавити в "лічильники та коди"