Дмитрий

Дмитрий

С нами с 27 мая 2016; Место в рейтинге пользователей: #1085
Дмитрий
02 июля 2025, 15:45
0
Наверно сначала выполняется [[~[[+vendor.resource]]]], т к это не fenom, а потом проверяется условие…
сделал так
[[+vendor.resource:gt=`0`:then=`href="[[~[[+vendor.resource:default=`1`]]]]"`]]>[[!+vendor.name]]</a>
. Может более правильное решение?
Дмитрий
25 февраля 2025, 14:17
0
в версии 4.4.0 появляется ошибка
Fatal error: Cannot declare interface msCartInterface, because the name is already in use in /home/public_html/core/components/minishop2/model/minishop2/mscarthandler.class.php on line 3
Дмитрий
17 января 2025, 11:28
0
удалось найти причину? я так понял, плагин работает с minishop2 до версии 2.8.3-pl
Дмитрий
11 января 2025, 13:10
0
Здравствуйте, а есть ли возможность менять и старую цену? Попробовал так
<?php
switch ($modx->event->name) {
    case "msOnGetProductPrice":
        $returned = (array)$modx->getPlaceholder('_returned_price');
        if (!isset($returned['price'])) {
            return;
        }

        $id = $returned['id'];
        $price = $returned['price'];
        $oldPrice = !empty($returned['old_price']) ? $returned['old_price'] : $price; // Предположим, старую цену берём из текущей цены
        $options = !empty($returned['msoptionsprice_options'])
            ? $returned['msoptionsprice_options']
            : (!empty($_REQUEST['options'])
                ? $_REQUEST['options']
                : array());
        $options = array_diff_key($options, array_flip(array('modifications', 'modification')));

        foreach (array_keys($options) as $k) {
            if (!empty($options[$k]) && is_array($options[$k])) {
                foreach ($options[$k] as $v) {
                    // Изменение для текущей цены
                    $q = $modx->newQuery('msopModification')
                        ->innerJoin('msopModificationOption', 'Option',
                            "Option.mid = msopModification.id AND Option.key = '{$k}' AND Option.value = '{$v}'")
                        ->select(array('price', 'old_price')) // Добавляем выборку old_price
                        ->where(array(
                            'msopModification.rid' => $id,
                            'msopModification.type' => 2,
                            'msopModification.active' => true,
                        ));
                    if ($q->prepare() && $q->stmt->execute()) {
                        while ($row = $q->stmt->fetch(PDO::FETCH_ASSOC)) {
                            if (!empty($row['price'])) {
                                $price += $row['price'];
                            }
                            if (!empty($row['old_price'])) {
                                $oldPrice += $row['old_price']; // Добавляем старую цену
                            }
                        }
                    }
                }
            }
        }

        // Возвращаем и сохраняем значения
        $modx->event->returnedValues['price'] = $returned['price'] = $price;
        $modx->event->returnedValues['old_price'] = $returned['old_price'] = $oldPrice;
        $modx->setPlaceholder('_returned_price', $returned);
        break;
}
не сработало(
Дмитрий
06 декабря 2024, 10:18
+1
наверно уже не актуально, но может кому так пригодиться… необходимо в assets/components/msorderfiles/js/web/default.js в строке
createImageThumbnails: false,
заменить на
createImageThumbnails: true,
Дмитрий
18 октября 2024, 15:32
0
удалось найти решение?
Дмитрий
21 марта 2024, 15:27
+1
можно так
{
"field": "image",
"caption": "Изображение пузыря",
"inputTVtype": "image",
"sourceFrom":"config",
"sources":"[{\"MIGX_id\":\"1\",\"context\":\"web\",\"sourceid\":\"5\"}]"
}
где 5 — это id источника
Дмитрий
06 марта 2024, 12:18
0
удалось найти причину?
Дмитрий
19 декабря 2023, 16:52
0
если пару сайтов — то да, а если более 20, то это уже проблематично…
Дмитрий
14 декабря 2023, 15:32
0
это крайний вариант) т к получается что из-за одной страницы не будет обновляться вся тема
Дмитрий
14 декабря 2023, 14:41
0
да, если править manager/templates/default/security/login.tpl, то после обновления он перезаписывается
Дмитрий
14 декабря 2023, 14:41
0
я хочу изменить внешний вид страницы авторизации, для этого нужно править manager/templates/default/security/login.tpl, который перезаписывается при обновлении
Дмитрий
24 октября 2023, 14:02
0
Пока в голову пришло сделать только так
{var $dateCategory = '!pdoResources' | snippet : [
                'parents'=>'13',
                'class' => 'msCategory',
                'limit' => '0',
            	'select' => [
            		"msCategory" => "*"
            		,"Product" => "Product.id as product_id"
            	],
                'innerJoin' => [
            		"Product" => [ "class" => "msProduct", "on" => "Product.parent = msCategory.id AND Product.class_key = 'msProduct' AND Product.published = 1 AND Product.deleted = 0" ],
            		"Data" => [ "class" => "msProductData", "on" => "Product.id = Data.id" ],
            		"Vendor" => [ "class" => "msVendor", "on" => "Data.vendor = Vendor.id" ]
            	],
            	'where'=> ["Vendor.name:LIKE" => '%'~ $_modx->resource.pagetitle ~'%', "class_key" => "msCategory" ] ,
            	'sortdir' => 'asc',
            	'groupby' => 'msCategory.id'
                'tpl'=>'@INLINE {$parent},{$id},'
            ]}

                    {'!pdoMenu' | snippet:[
                        'parents' => 13,
                        'resources'=> $dateCategory,
                        'level' => 2,
                        'displayStart' => 0
                        'tplOuter' => '@INLINE <div class="brand-category__items">{$wrapper}</div>',
                        'tpl' => '@INLINE <li {$classes}><a href="{$link}?vendors={$_modx->resource.brand_id}">{$pagetitle}</a>{$wrapper}</li>',
                        'tplInner' => '@INLINE <ul class="brand-category__list {$classnames}">{$wrapper}</ul>',
                        'tplParentRow' => '@INLINE <div class="brand-category__item"><div class="brand-category__inner"><p class="brand-category__name">{$menutitle}</p>{$wrapper}</div></div>'
                    ]}
Может есть более правильный способ?
Дмитрий
17 октября 2023, 12:09
0
Удалось настроить интеграцию?
Дмитрий
11 сентября 2023, 14:02
0
столкнулся с такой же проблемой( нашли решение?
Дмитрий
10 сентября 2023, 20:06
0
добавил скрипт, выдает ошибку — Uncaught SyntaxError: Function statements require a function name
Дмитрий
10 сентября 2023, 13:34
0
У кого-нибудь работает этот плагин с minishop2 версии 3.x?
Дмитрий
10 сентября 2023, 13:33
0
Данный компонент не работает с minishop2 версий 3.x? После обновления пропали пункты выдачи в корзине(