Undefined index: name (shopDiscounts.class.php)

1

Непосредственно после обновления, в изменениях которого упоминались скидки, в php.log:

PHP Notice: Undefined index: name in /var/www/admin/data/www/site.ru/wa-apps/shop/lib/classes/shopDiscounts.class.php on line 104

До этого отмечал появление ошибки при заходе на страницу оформления, но тут за ночь появилось сразу 100 страниц ошибок.

error_reporting(0); - костыльный выход, надо переменную предопределить или же проверку сделать.

Кому в голову пришла идея выводить скидку для каждого товара в backend'е? У меня для оптовых заказов, где 70+ различных позиций, выводится соответственно 70+ совершенно ненужных мне строк - и это как раз после данного обновления.

104-я:

$description .= $item['name'].' − ';

Окружение:

      if ($item_discount) {
                $item_discount = min(max(0, $item_discount), shop_currency($item['price'], $item['currency'], $currency, false) * $item['quantity']);
                $order['items'][$item_id]['total_discount'] = $item_discount;
                $description .= $item['name'].' − ';
                if ($discount_type == 'sum') {
                    $description .= '<ul>'.$item_discount_description.'</ul>';
                } else {
                    $description .= $item_discount_description;
                }
                $description .= '<br>';
                $discount += $item_discount;
            }

- вот кому это надо? Либо я в упор не вижу опции отключения такого вывода, либо такой настройки действительно нет. Теперь постоянно с каждым обновлением править shopDiscounts.class.php?

3 комментария

  • +1

    Это нужно всем, у кого не оптовые заказы, а таких клиентов 98%
    Т.к. скидок может быть разных штук 5 в магазине и менеджеры хотят видеть почему у этого товара скидка 10% (по категории контакта, например), а у этого 20% (акция на товар).
    Проблему вашу увидели, настройку введём в следующей версии.
    Будет выбор: подробно по каждому товару (по умолчанию) или просто выводить общую сумму скидки.

    По поводу Notice, локально воспроизвести не удалось. На двух рабочий магазинах, в логах такого нотиса нет.
    Как оформляется заказ? На витрине или через админку? А может через какой-то плагин (например купить в один клик и т.п.)?

  • +1
    Worker Worker 8 декабря 2015 06:20 #

    Notice ошибка всплывает при оформлении через витрину. Да, судя по всему, из-за используемого плагина "Заказ на одной странице"...

    Добавить комментарий

    Чтобы добавить комментарий, зарегистрируйтесь или войдите