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

Условия - "Минимальная стоимость заказа"

Добавлено: 06.08.2019, 12:19
MotoR4ik
Здраствуйте, пытаюсь сделать условия при оформлении заказа. Что бы если заказ меньше 150 грн, пользователю сообшалось что "Минимальная стоимость заказа наложеным платежем - 150 грн"

Вот код:

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

if ($order->total_price>150.00) {
    <div class="o_notify_v2_order_id">
        <div class="o_notify_v2_order_id_box">
            <div data-language="order_number_text">{$lang->order_number_text}</div>
            <span class="o_notify_v2_order_id_bold">№ {$order->id}</span>
        </div>
    </div>
 }
  else {
   <div class="o_notify_v2_content">
        <div class="o_notify_v2_content_inner" data-language="order_success_text">
            <p><strong>{$order->name|escape}</strong>, {$lang->order_success_text}
      Вибачте, але мінімальна вартість замовлення доступня для відпраки "Наложеним платижем" - 150 грн. Ваше замовлення може бути відправлине тільки
      у разі оплати картою, або при збільшенні вашого замовлення до - 150 грн, або більше. Дякуємо за розуміння!
             </p>
        </div>
    </div>
    <div class="o_notify_v2_order_id">
        <div class="o_notify_v2_order_id_box">
            <div data-language="order_number_text">{$lang->order_number_text}</div>
            <span class="o_notify_v2_order_id_bold">№ {$order->id}</span>
        </div>
    </div>
 }


Где ошибка, подскажите куда копать?

Добавлено спустя 9 минут 8 секунд:
Вопрос снят, разобрался, может кому надо вот пример

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

   {if ($order->total_price>150.00)}
   <div class="o_notify_v2_content">
        <div class="o_notify_v2_content_inner" data-language="order_success_text">
            <p><strong>{$order->name|escape}</strong>, {$lang->order_success_text}
             </p>
        </div>
    </div>
    <div class="o_notify_v2_order_id">
        <div class="o_notify_v2_order_id_box">
            <div data-language="order_number_text">{$lang->order_number_text}</div>
            <span class="o_notify_v2_order_id_bold">№ {$order->id}</span>
        </div>
    </div>
</div>
 
 {else}
   <div class="o_notify_v2_content">
        <div class="o_notify_v2_content_inner" data-language="order_success_text">
            <p><strong>{$order->name|escape}</strong>, {$lang->order_success_text}
      Вибачте, але мінімальна вартість замовлення доступня для відпраки "Наложеним платижем" - 150 грн. Ваше замовлення може бути відправлине тільки
      у разі оплати картою, або при збільшенні вашого замовлення до - 150 грн, або більше. Дякуємо за розуміння!
             </p>
        </div>
    </div>
    <div class="o_notify_v2_order_id">
        <div class="o_notify_v2_order_id_box">
            <div data-language="order_number_text">{$lang->order_number_text}</div>
            <span class="o_notify_v2_order_id_bold">№ {$order->id}</span>
        </div>
    </div>
 {/if}

Добавлено: 06.08.2019, 12:45
Julius123
Как минимум вот тут:

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

не
"else {"
а
"{else}2


В конце

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

не
}
а
{/if}

Добавлено: 19.01.2021, 08:32
Владимир
Подскажите пожалуйста, а куда вставлять этот код нужно? и Работает ли код на версии 3 ?

Файл

Добавлено: 05.02.2021, 11:32
Иван
Владимир, Добрый день! Вы нашли файл куда вставлять код?

Добавлено: 05.02.2021, 12:20
ispolin
Иван писал(а):Владимир, Добрый день! Вы нашли файл куда вставлять код?

К сожалению. нет. Для меня реализация условия минимальной оплаты, остается по прежнему актуальной. Может найдется кто, сможет помочь реализовать это уже на 4.0 версии. Все же уже Оупенсорс )

Добавлено: 05.02.2021, 12:48
OkayCMS
Вам похоже вот это нужно https://okay-cms.com/products/simplamarket_min_order_amount

Добавлено: 05.02.2021, 14:45
korshunov
Пробуйте в Okay/Controllers/CartController.php вставить

if($cart->total_price < 150 ){
$this->design->assign('error', 'Недостаточная стоимость заказа!');
}else

перед

if ($error = $validateHelper->getCartValidateError($order)) {
$this->design->assign('error', $error);
} else {

Добавлено спустя 2 часа 3 минуты:
OkayCMS писал(а):Вам похоже вот это нужно https://okay-cms.com/products/simplamarket_min_order_amount

Открываю демо модуля. Оформляю заказ. В поле Номер телефона ввожу неверное значение '1', жму Оформить заказ. Получаю белый экран с сообщением об ошибке
The string supplied did not seem to be a phone number. #0 /var/www/modules.okay-cms.com/data/www/m.okay-cms.com/8eaa3a0895a41dae87aa74ea91595fe9/vendor/giggsey/libphonenumber-for-php/src/PhoneNumberUtil.php(3017): libphonenumber\PhoneNumberUtil->parseHelper('1', 'UA', false, true, Object(libphonenumber\PhoneNumber)) #1 /var/www/modules.okay-cms.com/data/www/m.okay-cms.com/8eaa3a0895a41dae87aa74ea91595fe9/Okay/Core/Phone.php(111): libphonenumber\PhoneNumberUtil->parse('1', 'UA') ...

Можно предположить, что добавочная проверка, сделанная в модуле, ухитрилась подпортить основной функционал...