Вопросы

miniShop2->cart->status() не верно считает кол-во товаров и их сумму

Привет. Подскажите плиз в чем проблема может быть?

Нашел некий код, который делает перерасчет заказа gist.github.com/grachov/7337b6ec98c05fbc4926

Если в покупке есть одинаковые товары (артикул), но с разыми характеристиками prnt.sc/rep5lt
то этот код не видит повторные продукты и не учитывает цены.

Если распечатать miniShop2->cart->status()
то получим
array (
'total_count' => 2,
'total_cost' => 10990.0,
'total_weight' => 1.4,
)

т.е. тут два товара и их сумма, а не 4 товара… из-за этого общая стоимость покупок сбивается.
UDAV
11 марта 2020, 14:21
modx.pro
1 082
0

подскажите, длина полей при оформлении заказа minishop2

доброго дня, в minishop2 при оформлении заказа использую поле индекс для других данных, но почему-то обрезает данные и отправлет в заказе лишь 10 символов, проверила бд, там длина поля 50 символов, не могу найти где же стоит ограничение, подскажите
seversayt
11 марта 2020, 12:08
modx.pro
1
763
0

Проблема при повторном открытии MODx.Window

Создаю компонент для своего проекта.
При повторном открытии Window в админке, неправильно подгружается кастомный комбобокс, повторно выводя просто label множество раз. Если не использовать Combobox, или использовать один из других моих Combobox, то всё нормально.
Проблема и при обновлении, и при создании нового объекта.
Ошибок в логе даже при полном логгировании нет, консоль браузера чиста.


Суть компонента в том, чтобы задавать периоды туров, с датами, календарём, неделями, кастомными ценами на нужный период. Цена формируется из множества показателей, и полей, выбираемых пользователем для расчета.
Для каждого из полей есть свой шаблон расчета, который мы и выбираем в нашем проблемном окне.
Павел
11 марта 2020, 10:56
modx.pro
994
0

miniShop2 DeliveryHandler

Помогите разобраться, пожалуйста.

Задача: добавить свою цену доставки к цене корзины. Чтобы потом отправить на оплату.

Создал расширение класса
core/components/minishop2/custom/delivery/mscustomorderhandler.class.php

возращаю цену + цену за доставку, но сама цена доставки не прибавляется к цене корзины, а отнимается от цены корзины и переносится к цене доставки.
Не уверен, что понятно объясняю…

Вообщем, пример.
Товаров в корзине на 5000 рублей. Цена доставки — 300 рублей.
По идее в письме менеджеру должно приходить письмо с надписью.

Итого, с доставкой: 5 000 руб. + 300 руб. = 5 300 руб.

А приходит…

Итого, с доставкой: 4 700 руб. + 300 руб. = 5 000 руб.

Не очень понимаю, почему так. Можете подсказать?
Максим
11 марта 2020, 02:04
modx.pro
1 297
0

PHP warning: constant(): Couldn't find constant 32759

Часто появляться в логе, вопрос — как мне найти данную ошибку?
Сергей
10 марта 2020, 21:56
modx.pro
1 184
0

Убрать элемент из массива

Есть массив $files содержащий в себе другие элементы-массивы.
Вопрос, как на fenome удалить любой элемент из этого массива?
Например первый. Или разобрать массив $files со второго элемента с помощью {foreach}?
Анатолий
10 марта 2020, 20:33
modx.pro
1 547
0

Перебор массива в fenom

Друзья, сломал голову, как обернуть определенным тегом только первый элемент массива?

{foreach $files as $file}
        {if $file@first} <i>{$file['id']}</i>{/if}
        <b>{$file['id']}</b>
 {/foreach}
Но так в теге <i> оказываются все элементы.
Анатолий
10 марта 2020, 20:25
modx.pro
1
2 602
0

Как выбрать одно или несколько значений из списка?

Приветствую.
Есть список: «один, мотор, кровать, солнце, 11, 55, привет, ёу». Думаю о том, как максимально быстро сделать выбор одного или нескольких значений из этого списка и вывести в шаблон/поле. Пока пришел только к тому, что надо создать сниппет, в нем создать список, указать нужное количество элементов выборки из списка, обработать и вернуть это дело. Такое решение работает, но а что если мне быстро надо выбрать одно или несколько значений из списка из нескольких элементов, т. е. решить ту же задачу, что я решил, но что-то более быстрое, без написания отдельного сниппета под каждую задачу со списком? На ум приходит вот что: передать в сниппет список, количество выборок и, возможно, другие параметры, но мои знания в PHP и MODX весьма поверхностны в сравнении с вами, наверно) Что посоветуете? Если подскажете решение, ссылки на решения, будет классно!
weranda
10 марта 2020, 19:59
modx.pro
1 448
0

Подскановка id в поле alias.

Есть сниппет. Он создает документ.
Сейчас alias формируется из tv+рандом. Как сделать так чтобы в alias подставлялся id документа который был создан.
Код сниппета:
<?php
$profile = $modx->user->getOne('Profile');
$userid = $profile ? $profile->get('id') : '';

// Сниппет будет получать данные из формы методом POST
$title       =  $_POST['title'];
$content     =  $_POST['message'];
$introtext   =  $_POST['introtext'];
$description =  $_POST['description'];
$parent      =  $_POST['parent'];
$template    =  $_POST['template'];
$user_id     =  $_POST['user_id'];
$publishedon =  date('Y-m-d H:i:s');

// Если некоторые значения не будут указаны,
// они будут установлены по умолчанию
if (!$introtext)   $introtext = $title;
if (!$description) $description = $introtext;
if (!$parent)      $parent = 6;
if (!$template)    $template = 6;


// Создаем ресурс
$newResource = $modx->newObject('modResource');

$permitted_chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$alias = $userid.'-'.substr(str_shuffle($permitted_chars), 0, 32);

// Заполняем нужные значения
$newResource->set('pagetitle',$title);
$newResource->set('longtitle',$title);
$newResource->set('description',$description);
$newResource->set('introtext',$introtext);
$newResource->set('content',$content);
$newResource->set('alias',$alias);
$newResource->set('template',$template);
$newResource->set('published',1);
$newResource->set('parent',$parent);
$newResource->set('publishedon',$publishedon);


$id = $newResource->get('id');
// Сохраняем ресурс
if ($newResource->save()) {
  
// Очищаем кеш, чтобы изменения были видны сразу
  $modx->cacheManager->clearCache();
} 
$newResource->setTVValue('user_id', $user_id);
$newResource->setTVValue('project_status', '<span class="badge badge-primary">Відкритий</span>');
 
return true;
Сергій
10 марта 2020, 06:38
modx.pro
2
973
0

Настройка постоянных ссылок

Здравствуйте. В данный момент мой сайт формирует ссылки следующим образом: siteurl.com/page1.html
Однако, для моего проекта требуется, чтобы урлы также включали категории в которых они находятся: siteurl.com/blog/page1.html
Все ресурсы опубликованы и вложены в категории, например «blog»
joxi.ru/1A5v59yTGpKaNr
Для «blog» также задан псевдоним
joxi.ru/Dr8jdnvCzdk8P2
В вордпресс это легко изменить в настройке постоянных ссылок. В Modx не совсем понимаю где найти данную опцию и как изменить шаблон формирования url. Подскажите, пожалуйста
Sergey
09 марта 2020, 10:30
modx.pro
835
0