Slava

Slava

Был в сети 16 февраля 2021, 14:24
Заказы не принимаю
Это ж нужно было так тупо делать, использовать стандартные классы, по типу класс «error», бл ну кто так делает? Если делается модуль какой-либо, то добавляется либо аббревиатура, либо полностью названия модуля, и потом стандартный класс, по типу «ajax-form__error», из-за такой вот зал… пришлось копаться во всем этом, еще и опоздал с решением задачи.
Похоже баг, нужно призывать самого отца, ибо аяксформа охотится за чекбоксом, О великий и могучий, светейший наш, молю тебя приди, помоги челяди справится, у самого мозгов не хватает, спаисбо :) Во имя отца и сына, и святого Безумкина, ctrl + shift + delete!
Та бред это) что вообще такое происходить, я даже просто вытащил из обертки, и поставил на верх формы, он просто удалил всю форму, он будто охотится за спец блокакми, классы все убрал, пздц, убрал чекбокс, Оставил все как было, не удаляет, чекбокс голый, без неймов айди и т.д, просто инпут и тайп.
Не получается даже сменить существущий пункт в статусе корзины, пытался сменить именно «total_count», на фронте тоже самое.

<?php
$cartArray = $cart->get();
$cartStatus = $cart->status();
$total_num = 0;

foreach ($cartArray as $item) {
    $total_num++;
}


$cartStatus["total_count"] = $total_num;
$cart->set($cartArray);
$modx->log(modX::LOG_LEVEL_ERROR, var_dump($cart->get()));
Даже после
$cart->set($cartArray);
выводится что состояние есть выглядеть все это так.

[msOnBeforeAddToCart]array(6) {
  ["4bc3dec43dd7aef39faeea3efb7381fe"]=>
  array(6) {
    ["id"]=>
    string(3) "752"
    ["price"]=>
    float(3685)
    ["weight"]=>
    float(0)
    ["count"]=>
    float(31)
    ["options"]=>
    array(0) {
    }
    ["ctx"]=>
    string(3) "web"
  }
  ["total_count"]=>
  float(22)
  ["total_cost"]=>
  float(81070)
  ["total_weight"]=>
  float(0)
  ["total_num"]=>
  int(5)
  ["3f2c5f1dead59556a3f3ebc0546b0b24"]=>
  array(6) {
    ["id"]=>
    string(3) "616"
    ["price"]=>
    float(1450)
    ["weight"]=>
    float(0)
    ["count"]=>
    float(4)
    ["options"]=>
    array(0) {
    }
    ["ctx"]=>
    string(3) "web"
  }
}
Зарегистрировал службу, но но мой пункт не создался, в колбеках пусто, тоже не показывает.

Сам код как вверху готовый.
службу назвал так

if ($miniShop2 = $modx->getService('miniShop2')) {
    $miniShop2->addService('cart', 'CustomGoodsQuantity',
        '{core_path}components/minishop2/custom/cart/mscarthandlerquantity.class.php'
    );
}
Выполнил ее через консоль.
При этом только сейчас заметил что и уведомления уменя при добовлении в крозину на англ языке, посмотрел системные настройки, везде стоит ru. Поменял во всех языках на свою валют все равно не показывает…
В итоге просто сделал свой вариант, а кто может подсказать, как получить доступ ИМЕННО ко всем ИМЕННО свойствам товара? а не вводя в ручную, поскольку может быть куча, и так хламить нельзя. P.S(свойства скопировал).