prestashop - показывает js уведомление во фронт-контроллере - PullRequest
0 голосов
/ 14 февраля 2020

Я переопределяю CartController в своем пользовательском модуле. Но у меня проблема с уведомлением, это мой код:

<?php

    use PrestaShop\PrestaShop\Adapter\Presenter\Cart\CartPresenter;

    class CartController extends CartControllerCore
    {
        public $php_self = 'cart';

        public function init()
        {
            parent::init();
            $this->qty = abs(Tools::getValue('qty', 1));
            var_dump(1);

            if ($this->qty >= 2) {
                #How can i show notification?
            }
        }

    }

Если я говорю «проблема», я имею в виду, как я могу показать, например, js сообщение или модальный диалог, когда $ this-> qty> = 2 ?

Экран с первой страницы, я вижу ошибку в сети, но я не вижу уведомления на странице enter image description here

1 Ответ

1 голос
/ 14 февраля 2020

Вы можете посмотреть, как контроллер основной корзины отображает уведомления:

Для вывода сообщения об ошибке должно быть достаточно $this->errors[].

            $this->errors[] = $this->trans(
                'Add your message her with possible variables like this: %product% and %quantity%.',
                array('%product%' => $product->name, '%quantity%' => $product->minimal_quantity),
                'Shop.Notifications.Error'
            );

Также посмотрите на FrontController другие подобные массивы для установки уведомлений:

/** @var array Controller errors */
public $errors = array();

/** @var array Controller warning notifications */
public $warning = array();

/** @var array Controller success notifications */
public $success = array();

/** @var array Controller info notifications */
public $info = array();
...