Всего 125 661 комментарий

Евгений Webinmd
15 февраля 2021, 17:41
+1
{if $_modx->resource.template in list [1,2,3]}
Денис
15 февраля 2021, 15:51
+1
Наверно как-то так?

{if $_modx->resource.template == 1}
привет
{else} 
пока
{/if}
Евгений Webinmd
15 февраля 2021, 15:22
+1
в минишопе первое изображение хранится со всеми данными товара, у вас скорей всего настроен экспорт галереи, посмотрите там есть такие поля как: Превью (только для excel), Превью (thumb), Изображение — вот одно из этих выберите, должно помочь
Константин
15 февраля 2021, 14:08
0
Пробую аналогично вывести в письме артикул {$product.options['article']}. Поле пустое приходит. Есть ли вариант решения?
Константин
15 февраля 2021, 13:38
0
В письме менеджеру приходят данные о заказе и соответственно характеристиках товара. За это отвечает чанк tpl.msEmail. В нем вывожу артикул. Артикул: {$product.article}. Но на почту приходит артикул не модификации. А тот артикул который указан в свойствах товара по умолчанию! Как это можно исправить?
Евгений Мельников
15 февраля 2021, 12:37
0
Благодарю! Все получилось и работает, как нужно.
Futuris
15 февраля 2021, 12:10
0
А нужно ли создавать в АМО воронку и прописывать ее ID в настройках компонента? Или при передаче данных воронка для сделок создастся автоматически?
Andrew
15 февраля 2021, 11:58
0
Благодарю за быстрый ответ!
Я сделал стандартным методом, а тут решил попробовать поработать с классами. )

Да, я находил информацию, что в новых версиях MS2 ребята хотят внести функционал в коробку.
Если правильно понял, конечно же.

Еще раз, благодарю! Пошел обучаться! )
Алексей Шумаев
15 февраля 2021, 11:43
+1
Добрый!

1. не очень понятно, при чём тут Самовывоз — это не order, а delivery
Ты подключаешь кастомный класс заказа, не доставки.
2. проверь, что в системной настройке ms2_services

И ещё важный момент — этот пост старый, что в текущих версиях MS2 — я не скажу сейчас, возможно, что всё уже немного иначе )

Думаю, вот тут вся информация по расширению класса доставки.
Andrew
15 февраля 2021, 11:22
0
Добрый день!
Подскажите, где промахнулся…

1. Создал файл
path — > components/minishop2/custom/order/myOrderHandler.class.php

2. Вложил
class myOrderHandler extends msOrderHandler

public function submit($data = array())
    {
        if ($this->ms2->config['json_response']) {
            $success_page = $this->modx->getOption('ms2_order_success_page');
            if (is_numeric($success_page)) {
                if ($this->modx->getCount('modResource', array('id' => $success_page, 'published' => true, 'deleted' => false))) {
                    $url = $this->modx->context->makeUrl($success_page);
                    return $this->success('', array('redirect' => $url . '?msorder=' . $order->get('id')));
                }
            }
            return $this->success('', array('msorder' => $order->get('id')));


3. Создал парметр: ms2_order_success_page => id-ресурса на который хочу редиректнуть

4. Открыл консоль, вписал

if ($miniShop2 = $modx->getService('miniShop2')) {
    $miniShop2->addService('order', 'myOrderHandler',
        '{core_path}components/minishop2/custom/order/myOrderHandler.class.php'
    );


5. В парметр ms2_order_handler_class => myOrderHandler

6. Зашел в настройки MS2-Самовывоз-Моего класса нет.

7. Загрустил…
Константин
15 февраля 2021, 10:46
0
Приветствую, нам техподдержка 1с ответила так: prntscr.com/zkpa7y
Можем ли мы реализовать данную синхронизацию с помощью вашего компонента?
Илья Александрович
15 февраля 2021, 09:22
0
хотя нет, если есть ещё одна вложенность категории, то всё сбивается
Илья Александрович
15 февраля 2021, 09:12
0
товар сортируется правильно, а как для каждой категории товаров вывести название Категории?
Alexey
14 февраля 2021, 22:31
1
+2
Привет! В файле core/components/minishop2/custom/payment/robokassa.class.php заменить метод getPaymentLink на следующий код:

public function getPaymentLink(msOrder $order)
    {
        $id = $order->get('id');
        $sum = number_format($order->get('cost'), 2, '.', '');
	//список товаров в заказе
	$order_goods = $this->modx->getCollection('msOrderProduct', ['order_id' => $id]);
	$tmp = [];
	foreach($order_goods as $key => $good) {
	    $tmp[$key]['name'] = $good->name;
	    $tmp[$key]['quantity'] = $good->count;
	    $tmp[$key]['sum'] = $good->cost;
	    $tmp[$key]['tax'] = 'none';
	}
		
        //номенклатура заказа
        $receipt = ['items' => array_values($tmp)];
	$receipt_json = json_encode($receipt, JSON_UNESCAPED_UNICODE);
	$SignatureValue = md5($this->config['login'] . ':' . $sum . ':' . $id. ':' . $receipt_json . ':' . $this->config['pass1']);
        $request = array(
            'url' => $this->config['checkoutUrl'],
            'MrchLogin' => $this->config['login'],
            'OutSum' => $sum,
            'InvId' => $id,
            'Desc' => 'Payment #' . $id,
            'IncCurrLabel' => $this->config['currency'],
            'Culture' => $this->config['culture'],
            'Receipt' => $receipt_json,
            'SignatureValue' => $SignatureValue,
        );
        
        if (!empty($this->config['test_mode'])) {
            $request['isTest'] = 1;
        }
        $link = $this->config['checkoutUrl'] . '?' . http_build_query($request);
        return $link;
    }

Компонент давно не обновляется, нужна была оперативность, поэтому правил исходники компонента. Нужно иметь в виду, что если выйдет апдейт, то эти правки будут затерты. Про расширение классов, думаю, можно немало информации найти, хотя бы здесь.

Делал под конкретный сайта, поэтому передавал только необходимые параметры. Советую почитать тут ( skrinshoter.ru/s/140221/5d2fQ6PK?a ), возможно, нужно передать другую систему налогообложения, налоговую ставку и т.д…
Евгений Мельников
14 февраля 2021, 20:41
0
Добрый день!
В связи с введением новых правил, в чеках теперь должны быть указаны товары. Кто-нибудь решил такую задачу? Можете подсказать решение?
dokreg
14 февраля 2021, 18:20
0
спасибо большое, так работает
Андрей
14 февраля 2021, 18:17
+1
Попробуй так:
'where' => ['resid:=' => $_modx->resource.id]
Иван Бочкарев
14 февраля 2021, 15:47
+1
Обновление дополнения доступно в репозитории
Sergey
14 февраля 2021, 15:02
0
Спасибо большое! Работает
Николай Савин
14 февраля 2021, 14:58
+1
Решение.
Открываем файл core/components/minishop2/model/minishop2/msproductdata.class.php
Находим строку 648
Меняем
$data = array_merge($data, $response['data']);
на
$data = array_merge($data, $response['data']['data']);
Обновление исправляющее ошибку официально выйдет в ближайшие дни