Андрей

Андрей

С нами с 22 сентября 2014; Место в рейтинге пользователей: #169
Андрей
29 марта 2018, 11:50
0
Вооо, что и требовалось доказать. Здесь только минусы ставить все горазды… Стоит ущемить ваше самолюбие, так вы сразу находите время на гневные тирады и высказывания. А когда к вам обращаешься с вопросом, стоя на коленях, так нет — мимо проходим — это не по вашему уровню…
Мой гневный пост был вызван тем, что я в течение нескольких дней просил помощи у всех, но никто не реагировал. Тогда я решил немного вас всех задеть — о о чудо — вы тут же среагировали… Подождем вечера и эта тема станет самой обсуждаемой…
И не надо сравнивать с мертвым сообществом Laravel, сравните с более живыми CMS. Они хоть и ущербные, но там хоть на вопросы отвечают. А то вы как наша власть — сравниваете как мы классно живем в сравнении с 90-ми, когда страны не было. Хотя конечно же это не про всех. есть и здесь люди, которые готовы придти на помощь. Но видимо при повышении собственного эго и они уходят постепенно на более высокий уровень.
Андрей
28 марта 2018, 17:48
-1
В этом сообществе не принято помогать, так что можете особо не рассчитывать ни на что. Здесь более уместно заниматься нравоучениями, как на всех остальных пыльных форумах программистов, которые считают, что они родились с кодом в руках и голове, а все остальные — лишь жалкие тупоголовые неучи…
По вашему вопросу к пользователям относятся таблицы:
modx_users
modx_user_attributes
modx_user_group_roles
modx_user_group_settings
modx_user_messages
modx_user_settings
Андрей
28 марта 2018, 12:12
0
Не надеюсь конечно на помощь уже, сообществу важнее обсуждать новый логотип, это же сильно влияет на удобство работу с MODX, но все же, может все-таки кто-то снизойдет до обычных пользователей:
Подскажите, почему у меня в этом коде данные есть:
loadData: function () {
        MODx.Ajax.request({
            url: this.url,
            params: this.baseParams,
            listeners: {
                success: {
                    fn: function (r) {
                        console.log(r); // Здесь получаю правильные данные
                        this.setup(r.results);
                    },
                    scope: this
                }
            }
        });
как мне их передать в окно чтобы создать чекбоксы…
Андрей
27 марта 2018, 11:39
0
Добрый день. Прошу помощи у сообщества, как решить мою проблему. Я делаю так:
В файле combo.js регистрирую свой кастомный comboboxgroup
MyComp.combo.CheckboxGroup = function (config) {
    config = config || {};
    Ext.applyIf(config, {
        items: [{
            boxLabel: 'hidden',
            name: config.hiddenName + '[]',
            inputValue: '',
            itemId: '',
            hidden: true,
            checked: true
        }],
        msgTarget: 'under',
        listeners: {
            afterrender: {fn: this.onAfterRender, scope: this}

        }
    });
    MyComp.combo.CheckboxGroup.superclass.constructor.call(this, config);
};
Ext.extend(MyComp.combo.CheckboxGroup, Ext.form.CheckboxGroup, {
    onAfterRender: function () {
        if (this.url) {
            this.loadData();
        } else {
            this.setup();
        }
    },
    loadData: function () {
        MODx.Ajax.request({
            url: this.url,
            params: this.baseParams,
            listeners: {
                success: {
                    fn: function (r) {
                        this.setup(r.results);
                    },
                    scope: this
                }
            }
        });
    },
    setup: function (data) {
        if (data) {
            Ext.each(data || [], function (item) {
                this.addItem({
                    boxLabel: item[this.displayField],
                    name: this.hiddenName + '[]',
                    inputValue: item[this.valueField],
                    checked: this.checkValue(item[this.valueField])
                });
            }, this);
        } else {
            Ext.each(this.items.items || [], function (item) {
                if (!item.hidden) {
                    item.setValue(this.checkValue(item.inputValue));
                }
            }, this);
            this.addItem({
                boxLabel: 'hidden',
                name: this.hiddenName + '[]',
                inputValue: '',
                itemId: '',
                hidden: true,
                checked: true
            });
        }
    },
    addItem: function (data) {
        var checkbox = new Ext.form.Checkbox(data),
            col = this.panel.items.get(this.items.getCount() % this.panel.items.getCount());
        this.items.add(checkbox);
        col.add(checkbox);
    },
    checkValue: function (val) {
        var checked = false;
        Ext.each(this.values || [], function (item) {
            if (item.value == val) {
                checked = true;
                return false;
            }
        });
        return checked;
    },
    validateValue: function (b) {
        var valid = false;
        if (this.allowBlank) return true;
        Ext.each(this.items.items || [], function (item) {
            if (!item.hidden && item.getValue()) {
                valid = true;
                return false;
            }
        }, this);
        if (!valid) this.markInvalid(this.blankText);
        return valid;
    }

});
Ext.reg('myComp-pricegroup', MyComp.combo.CheckboxGroup);
В файле окна, где нужно вывести группу чекбоксов, добавляю такой вызов:

{
	xtype: 'mycomp-pr',
	fieldLabel: _('mycomp_pr_name'),
	description: '<b>[[*name]]</b><br />'+_('mycomp_pr_name_help'),
	columns: 1,
	hiddenName: 'name',
	displayField: 'name',
	valueField: 'id',
	url: MyComp.config.connector_url,
	baseParams:{
		action: 'mgr/item/pr/getpr'
	},
	allowBlank: true,
}
В результате я вижу только заголовок группы чекбоксов. В тоже время судя по консоли, данные с процессора принимаются и приходят, но не отображаются. Может нужно шаблон отображения вывести или еще что? Я в замешательстве…
Андрей
26 марта 2018, 14:42
0
Павел, подскажите, как сделать — пытаюсь вывести в окне компонента в виде CheckboxGroup даннеы из таблицы, но никак не осилю, в ручную могу прописать, а как туда подвязать получение данных?
В доке вот что нашел:
id:'myGroup',
            xtype: 'checkboxgroup',
            fieldLabel: 'Single Column',
            itemCls: 'x-check-group-alt',
            // Put all controls in a single column with width 100%
            columns: 1,
            items: [
                {boxLabel: 'Item 1', name: 'cb-col-1'},
                {boxLabel: 'Item 2', name: 'cb-col-2', checked: true},
                {boxLabel: 'Item 3', name: 'cb-col-3'}
            ]
Андрей
22 марта 2018, 09:23
1
0
Подскажите, вывожу сниппет, наглухо вешает страницу. В результате 504 ошибка. Что может быть?
{'!modRelation' | snippet : [
                    'element' => 'msProducts',
                    'parents' => 2,
                    'sortby' => 'RAND()',
                    'limit' => 3,
                ]}
Андрей
15 марта 2018, 18:32
0
С помощью разработчика решил. Оказалось cityFileds конфликтует с GeoLocation. Снес последний — все стало ок.
Андрей
15 марта 2018, 12:18
0
Добрый день. Возникла такая же беда. Отключаю компонент cityFileds — работает нормально. Подскажите, как вылечить?
Андрей
07 марта 2018, 16:41
0
Спасибо, купил, протестирую!
Андрей
07 марта 2018, 14:12
0
да, подожду. Отпишитесь плиз, как сделаете, я возьму сразу компонент
Андрей
07 марта 2018, 14:08
0
Хотелось бы иметь возможность выводить его звездами — так можно? Если да, то беру прямо сейчас))
Андрей
07 марта 2018, 14:05
+1
Просто для многих более естественно именно среднюю оценку видеть. Паша Михалев эту проблему уже поднимал я смотрю здесь в обсуждении. Будет ли добавлена возможность выводить среднюю оценку?
Андрей
07 марта 2018, 14:01
0
Он считает по Вильсону я так понял. А среднее арифметическое выводит на основе оценок? Например поставили 5 и 3 — средний покажет 4.
Андрей
07 марта 2018, 13:59
0
Средний рейтинг считает?
Андрей
05 марта 2018, 18:01
0
Подскажите, а можно ли вывести в товаре значения какой-либо опции этого товара (например размер), чтобы каждое значение было ссылкой на соответствующий раздел, сгенерированный seoFilter? Чтобы например по клику на 48 размер — переходить на страницу, где все товары 48 размера и т.д.
Андрей
05 марта 2018, 17:31
0
Хорошо. В дальнейшем можете добавить автоматизацию данной функции?
Андрей
04 марта 2018, 20:18
0
Добрый день.
Подскажите, как можно настроить компонент для работу с несколькими выборами одного фильтра?
Например, часто упоминаемый пример сайтов строительной тематики и фильтр по полю «Материал стен». Пользователь выбирает кирпич и газобетон и хочется сформировать заголовок Дома из кирпича и газобетона…
Андрей
04 марта 2018, 14:10
0
Добрый день.
Прошу помощи у сообщества)) Есть какие идеи?
Андрей
02 марта 2018, 09:43
0
Да, это я понимаю. но у меня почему-то он выбирает весь массив опций и все чекает… А мне нужно прочекать только то, что есть в массиве $option_key, выведя при этом массив $prop. Помогите пожалуйста.
Вот код:
<?php
$key = 'uslugi';
$id = 3;

$options = $modx->getObject('msOption', [
  'key' => $key
]);
$prop = $options->get('properties');
$product = $modx->getObject('msProduct', $id);
$options = $product->loadData()->get('options');
$option_key = $options[$key];

foreach ($prop as $k => $v) {
    foreach ($v as $values) {
        print "<label><input";
		if (isset($prop[$k])) {
			print " checked "; 
		}
		print "type='checkbox' name='$k'> $values</label>";
	    }
}