Кирилл

Кирилл

С нами с 28 июля 2018; Место в рейтинге пользователей: #10129
Кирилл
21 июня 2021, 00:17
0
если возможно

касаемо новых версий minishop2

было бы отлично если бы были такие нововведения:

Products

select all products

возможность применять ковсем товарам, также как и к одной позиции товара
Кирилл
21 июня 2021, 00:15
0
За советы спасибо огромное

если бы решение msAddField неотваливалось поработав некоторое время ещё на последних версиях revo и также стабильно на любом ms2 со стабильной 2.5.5 вообщеб сказка была

тот импорт товаров который по дэфолту с минишопом из первых версий шёл неразобрался (((
сколько непытался вообще ничего неимпортилось как только csv этот неделал в excel
Кирилл
05 июня 2021, 11:57
0
на версии modx revo 2.8.2 всё нормально

подожду когда пофиксят и выложат новую версию modx revo
Кирилл
19 марта 2021, 03:43
0
спасибо за совет

нашёл
Нет отображение производителей в MiniShop2

Думал вот как бы так сделать чтобы например при логине с настроенными определёнными ACL поставщик только свои заказы мог видеть

ради интереса разбирался

Пробывал поменять Orders

/assets/components/minishop2/js/mgr/orders/orders.form.js

miniShop2.panel.OrdersForm = function (config) {
    config = config || {};
    if (!config.id) {
        config.id = 'minishop2-form-orders';
    }

    Ext.apply(config, {
        layout: 'form',
        cls: 'main-wrapper',
        defaults: {msgTarget: 'under', border: false},
        anchor: '100% 100%',
        border: false,
        items: this.getFields(config),
        listeners: this.getListeners(config),
        buttons: this.getButtons(config),
        keys: this.getKeys(config),
    });
    miniShop2.panel.OrdersForm.superclass.constructor.call(this, config);
};
Ext.extend(miniShop2.panel.OrdersForm, MODx.FormPanel, {

    grid: null,

    getFields: function (config) {
        return [{
            layout: 'column',
            items: [{
                columnWidth: .308,
                layout: 'form',
                defaults: {anchor: '100%', hideLabel: true},
                items: this.getLeftFields(config),
            }, {
                columnWidth: .37,
                layout: 'form',
                defaults: {anchor: '100%', hideLabel: true},
                items: this.getCenterFields(config),
            }, {
                columnWidth: .322,
                layout: 'form',
                defaults: {anchor: '100%', hideLabel: true},
                items: this.getRightFields(config),
            }],
        }];
    },

    getLeftFields: function (config) {
        return [{
            xtype: 'datefield',
            id: config.id + '-begin',
            emptyText: _('ms2_orders_form_begin'),
            name: 'date_start',
            format: MODx.config['manager_date_format'] || 'Y-m-d',
            listeners: {
                select: {
                    fn: function () {
                        this.fireEvent('change');
                    }, scope: this
                },
            },
        }, {
            xtype: 'datefield',
            id: config.id + '-end',
            emptyText: _('ms2_orders_form_end'),
            name: 'date_end',
            format: MODx.config['manager_date_format'] || 'Y-m-d',
            listeners: {
                select: {
                    fn: function () {
                        this.fireEvent('change');
                    }, scope: this
                },
            },
        }, {
            xtype: 'minishop2-combo-status',
            id: config.id + '-status',
            emptyText: _('ms2_orders_form_status'),
            name: 'status',
            addall: true,
            listeners: {
                select: {
                    fn: function () {
                        this.fireEvent('change')
                    }, scope: this
                }
            }
        }];
    },

    getCenterFields: function () {
        return [{
            xtype: 'displayfield',
            id: 'minishop2-orders-info',
            html: String.format('\
                <table>\
                    <tr class="top">\
                        <td><span id="minishop2-orders-info-num">0</span>
{0}</td>\
                        <td><span id="minishop2-orders-info-sum">0</span>
{1}</td>\
                    </tr>\
                    <tr class="bottom">\
                        <td><span id="minishop2-orders-info-month-num">0</span>
{2}</td>\
                        <td><span id="minishop2-orders-info-month-sum">0</span>
{3}</td>\
                    </tr>\
                </table>',
                _('ms2_orders_form_selected_num'), _('ms2_orders_form_selected_sum'),
                _('ms2_orders_form_month_num'), _('ms2_orders_form_month_sum')
            ),
        }];
    },

    getRightFields: function (config) {
        return [{
            xtype: 'textfield',
            id: config.id + '-search',
            emptyText: _('ms2_orders_form_search'),
            name: 'query',
        }, {
            xtype: 'minishop2-combo-user',
            id: config.id + '-user',
            emptyText: _('ms2_orders_form_customer'),
            name: 'customer',
            allowBlank: true,
            listeners: {
                select: {
                    fn: function () {
                        this.fireEvent('change')
                    }, scope: this
                }
            }
        },

// то что было добавлено по примерному пониманию

        {
            xtype: 'minishop2-combo-vendor',
            id: config.id + '-user',
            emptyText: _('ms2_orders_form_vendor'),
            name: 'vendor',
            allowBlank: true,
            listeners: {
                select: {
                    fn: function () {
                        this.fireEvent('change')
                    }, scope: this
                }
            }
        },
//



         {
            xtype: 'minishop2-combo-context',
            id: config.id + '-context',
            emptyText: _('ms2_orders_form_context'),
            name: 'context',
            allowBlank: true,
            listeners: {
                select: {
                    fn: function () {
                        this.fireEvent('change')
                    }, scope: this
                }
            }
        }];
    },

    getListeners: function () {
        return {
            beforerender: function () {
                this.grid = Ext.getCmp('minishop2-grid-orders');
                var store = this.grid.getStore();
                var form = this;
                store.on('load', function (res) {
                    form.updateInfo(res.reader['jsonData']);
                });
            },
            afterrender: function() {
                var form = this;
                window.setTimeout(function() {
                    form.on('resize', function() {
                        form.updateInfo();
                    });
                }, 100);
            },
            change: function () {
                this.submit();
            },
        }
    },

    getButtons: function () {
        return [{
            text: '<i class="icon icon-times"></i> ' + _('ms2_orders_form_reset'),
            handler: this.reset,
            scope: this,
            iconCls: 'x-btn-small',
        }, {
            text: '<i class="icon icon-check"></i> ' + _('ms2_orders_form_submit'),
            handler: this.submit,
            scope: this,
            cls: 'primary-button',
            iconCls: 'x-btn-small',
        }];
    },

    getKeys: function () {
        return [{
            key: Ext.EventObject.ENTER,
            fn: function () {
                this.submit();
            },
            scope: this
        }];
    },

    submit: function () {
        var store = this.grid.getStore();
        var form = this.getForm();

        var values = form.getFieldValues();
        for (var i in values) {
            if (i != undefined && values.hasOwnProperty(i)) {
                store.baseParams[i] = values[i];
            }
        }
        this.refresh();
    },

    reset: function () {
        var store = this.grid.getStore();
        var form = this.getForm();

        form.items.each(function(f) {
            if (f.name == 'status') {
                f.clearValue();
            }
            else {
                f.reset();
            }
        });

        var values = form.getValues();
        for (var i in values) {
            if (values.hasOwnProperty(i)) {
                store.baseParams[i] = '';
            }
        }
        this.refresh();
    },

    refresh: function () {
        this.grid.getBottomToolbar().changePage(1);
    },

    updateInfo: function (data) {
        var arr = {
            'num': 'num',
            'sum': 'sum',
            'month-num': 'month_total',
            'month-sum': 'month_sum',
        };
        for (var i in arr) {
            if (!arr.hasOwnProperty(i)) {
                continue;
            }
            var text_size = 30;
            var elem = Ext.get('minishop2-orders-info-' + i);
            if (elem) {
                elem.setStyle('font-size', text_size + 'px');
                var val = data != undefined
                    ? data[arr[i]]
                    : elem.dom.innerText;
                var elem_width = elem.parent().getWidth();
                var text_width = val.length * text_size * .6;
                if (text_width > elem_width) {
                    for (var m = text_size; m >= 10; m--) {
                        if ((val.length * m * .6) < elem_width) {
                            break;
                        }
                    }
                    elem.setStyle('font-size', m + 'px');
                }
                elem.update(val);
            }
        }
    },

    focusFirstField: function () {
    },

});
Ext.reg('minishop2-form-orders', miniShop2.panel.OrdersForm);

при логине видит все заказы и даже можно листить по поставщику но неотображается вообще ничего

тоесть то что я примерно понял и помнял orders несильно помогло что то неучёл

поделитесь xtype описаниями minishop2 полей может из за этого нелиситься

как бы так сделать чтобы при логине только отображались заказы поставщика который указан в Vendor

Vendor в ms2 product там где цвет товара, вес товара, артикул

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

и кактобы так xtype правильно указать чтобы невыбиралось и по другим поставщикам нелистилось, фиксированный как бы select без возможности выбирать других поставщиков и смотреть их заказы
Кирилл
17 марта 2021, 04:30
-3
Огромнейшая просьба к разработчику дополнения admintools

добавьте пожалуйста такую возможность

все вам будут очень признательны
Кирилл
17 марта 2021, 04:15
0
скорее team до 10 человек например

— вдруг кто то… затёр случайно, чтобы удаляться сниппеты и чанки немогли ))
— обидился ушёл из тима и напрощанье и недопониманий всё затёр

причины могут быть разные

но то что это полезно, это бесспорно
Кирилл
17 марта 2021, 00:36
0
Спасибо за ваше мнение

Пример

Есть team 100 человек работают над одним проектом, и есть senior developer к примеру который нехочет чтобы juniors и нюбы ввиде меня нелезли в его сниппеты к примеру и ничего там случайно ненапортачили.

Пример абстрактный выдуманный, но есть ли целесообразность в таком случаи?
Ответ: ДА :)

Важно это очень или необходимо?: ответ сложный

Спасибо
Кирилл
09 февраля 2021, 10:52
0
Спасибо огромнейшее

Нефакт что осилю, но попробую разобраться вдруг получиться
Кирилл
09 февраля 2021, 10:48
0
компонент вообщебез слов, спасибо огромнейшее

подскажите пожалуйста как поправить данный баг

modx revo 2.8.1 minishop 2.8 msReferralProgramCoin 1.1.11-pl

захожу в категорию с товарами

неоткрываеться вкладка товар и вообще никакие вкладки, зависает на tv созданном для товаров отдельно привязанному к шаблону, комплектация с разными свойствами и тд (((

а так всё больше чем нормально
Кирилл
08 февраля 2021, 12:02
0
спасибо за совет

суперовое дополнение очень, но на modx revo 2.8.1 глючит и нетолько на данной версии
у меня проблема постоянная была что одно поле создаётся а потом всё падает, я и вручну с таблицы всё чистил вообще ничего непомогает.
Если данное дополнение ещё когда либо обновиться до стабильной версии было бы отлично.
Кирилл
01 февраля 2021, 13:13
0
отображаем во фронтенде

Chunk: msProduct.content

[[!msOptions?options=`color,size,tags`]]


Заполняем Product properties

tags
название товаров с разными цветами

в шаблоне для данного товара создаём отдельный шаблон

<head>
 
 <!-- Jquery -->
 <script src="/assets/templates/lib/jquery.min.js"> </script>


<script>
$(document).ready(function(){
  $("#hide").click(function(){
    $("p").hide();
  });
  $("#show").click(function(){
    $("p").show();
  });
});
</script>


</head>

[[$msProduct.content]]

<div align="center">
    
    
<p hidden> 

<b>название товара цвет такойто</b>

<img src="/assets/templates/product/productimg.jpg" alt="">


<b>название товара цвет такойто</b>

<img src="/assets/templates/product/productimg.jpg" alt="">


<b>название товара цвет такойто</b>

<img src="/assets/templates/product/productimg.jpg" alt="">


<b>название товара цвет такойто</b>

<img src="/assets/templates/product/productimg.jpg" alt="">


<b>название товара цвет такойто</b>

<img src="/assets/templates/product/productimg.jpg" alt="">

</p>


<button id="show" class="btn btn-default btn-md">Показать товары в других цветах</button>
<button id="hide" class="btn btn-default btn-md">Скрыть товары</button>

</div>

после добавления товара, фото товара в корзине дэфолтное
это сложные материи для меня )))))
Кирилл
01 февраля 2021, 10:31
0
а с помощью встроенного msGallery можно листить отдельными tpl products?
ктонибудь на своих проектах так применял?
Кирилл
19 января 2021, 01:11
0
подскажите как дополнить с сортировкой по названию, кому несложно
Кирилл
11 декабря 2020, 02:44
+4
спасибо всем, кто делает его с каждой версией всё лучше и лучше!
Кирилл
11 декабря 2020, 02:39
0
у кого на какой версии minishop2 и modx revo данный пакет работает вообще без глюков?
у меня просто даже после удаления потом товары из категории неотображаються вообще (ms2 2.6 modx revo 2.8.1) :(

спасибо заранее
Кирилл
11 декабря 2020, 02:16
0
спасибо огромнейшее,
а есть возможность если данная версия пакета была обновлена заново package сделать

Я пробывал на ms2 2.6 и revo 2.81 после создания одного поля работает, но при добавлении новых полей они неотображаються в самих свойствах товаров ms product

конечно понимаю что скажи и за это спасибо, но если бы это было возможно
то несомненно это было бы замечательно

спасибо ещё раз всем кто удилил время
Кирилл
10 декабря 2020, 04:20
0
кому нежалко
выложите куданибудь и скиньте вличку ссылку на package

буду очень признателен
Кирилл
10 декабря 2020, 02:47
0
Используй вот это и не заморачивайся
спасибо, огромнейшее
Кирилл
07 декабря 2020, 15:52
0
было бы просто замечательно если бы ктонибудь привёл пример

Product

Product properties

и также как Tags только например упаковка с выбором когда товары заполняешь (мягкая, пак, акционные)
Кирилл
07 декабря 2020, 09:35
0
приведите пожалуйста пример с дополнительным текстовым полем также в msproduct

из примера

Пример фильтрации товаров (msearch2)

кому нежалко и есть время

спасибо заранее