Антон Соловьёв

Антон Соловьёв

С нами с 14 января 2013; Место в рейтинге пользователей: #472

Лучший сервис и компонент для донатов на благотворительном сайте.

Доброго дня. Лет пять не видел модх, за деньги конечно ж не стал бы ничего делать т.к. давно не в теме, да и работа постоянная на другом стеке имеется (сейчас даже не связан с вебом). Но вот просит знакомый помочь другу с сайтом благотворительной организации. Естественно, все на волонтерских началах. Надо сделать там кнопку донатов-пожертвований на доброе дело.
Ну значит лезу я на модстор. Какой сервис лучше выбрать для не комерческой организации, пожертвований? Вот допустим free-kassa.ru, нормальный сервис или так себе? А то я только Робокассу помню. Смотрю, платежные системы — все для Минишопа. А я как-то только с Шопкипером работал. Принципиально вообще возможно и сильно ли времязатратно запилить на нём донаты, покупку товара без корзины? Компоненты Наумкина обычно очень гибкие. Документации на платежные системыних не богато. modstore.pro/packages/payment-system/mspsberbank Укадиие мол настройки, дальше мы сами. На событие плагина срабатывают? Через сниппет нельзя юзать?
Антон Соловьёв
11 июня 2021, 14:03
modx.pro
471
0

Поле extended ломает профиль юзера

Доброго времени. Удивительную вещь заметил — стоит сохранить в любом расширенном поле имя отчество (пробовал только со своим) — мой профиль перестает загружаться. Причем это происходит, если сохранять программно или через админку.
Как-то так выглядит.

$user = $modx->getObject('modUser',['id'=>1])->Profile;
$ext = $user->get('extended');;
$ext['surname'] = 'Ант Владимирович';
print_r($ext);
$user->set('extended',$ext);
$user->save();
Ан Владимирович — все ок, Антон Владимиро тоже, а вот Антон Владимиров уже ломает профиль. И дело не в длине сохраняемой строки. Чисто принт-эром нашел, что все ломается где-то здесь, в _parseCustomData
Антон Соловьёв
05 февраля 2017, 09:35
modx.pro
983
0

MODx.Window и ItemSelector [решено]

UPD
я извиняюсь, перед теми, кому вдруг было интересно (ну, мало ли), что задержался, замоталси, но проблема была в том, что в ItemSelector предполагается, что reset происходит полсе события рендер и там используются this.toMultiselect, this.hiddenField, которые задаются в онРендер. А я зациклился на модхсовой части. А там в общем ресет вызывается до рендеренга…
/-----------------------------------------------------/

Доброго времени. В примерах к extjs есть кастомный компонент ItemSelector.
Выглядит вот так
Вроде бы он наследует от Ext.form.Field и может быть значит указан в форме, если подключить необходимые скрипты ( ItemSelector.js и MultiSelect.js ). И вот какая история, не работает с окошками модх. А в таком виде виджит прекрасно работает
Антон Соловьёв
26 июня 2016, 12:56
modx.pro
1 652
0

Связанные комбобоксы

У меня в компоненте несколько городов и районы в них. В таблице районов есть поле city с id города, а в extjs в BaseParam указан id в параметре city по которому процессор фильтрует только те районы, кот. есть в данном городе. И вот я в городах слушаю событие выбора города и меняю параметр city. Проблема в обновлении комбобокса района автоматически, от выбора города. Т.е. если я выбрал город и в ручную удалил выбранный район — все как надо, выпадает нужный список районов. Но ведь это поле человек может и не трогать, оно должно автоматом обновляться. Так вот, я для этого использую getStore().load(), потом дергаю getStore().data.items и сравниваю что там есть со значением в районе (zone.value). Если getStore().data.items — пусто или там нету объекта с id из zone.value (т.е. по запросу с указанным городом пришли районы, но в них нет того, что сейчас выбран в комбобоксе), то очищаю значение в комбобоксе района. А там уж пользователь нужный ставит. Так вот, я выбираю в комбобоксе город А и затем город Б, срабатывает событие, но в zone.getStore().data.items всегда приходит результат, будто в city id того города, который я выбирал до этого (т.е. город А).
Антон Соловьёв
20 апреля 2015, 13:24
modx.pro
1 009
0

Как юзать modx-dataview?

Нужно вызвать Ext.DataView в компоненте. Просто отобразить фотографии в папке (превью).
docs.sencha.com/extjs/3.4.0/#!/api/Ext.DataView
dev.sencha.com/deploy/ext-3.4.0/examples/view/data-view.html
Мне представлялось, что чтобы вызвать это, нужно просто добавить элемент modx-dataview, передать ему нужный action с процессором, который возвращает данные о картинках в json по типу этого github.com/probonogeek/extjs/blob/3.x/examples/view/get-images.php
Пробовал по документации прописать
{
		xtype:  'modx-dataview'
		url:...
		action:...
        tpl: new Ext.XTemplate(
			'<tpl for=".">',
				'<div class="thumb-wrap" id="{name}">',
				'<div class="thumb"><img src="{url}" title="{name}"></div>',
				'<span class="x-editable">{shortName}</span></div>',
			'</tpl>',
			'<div class="x-clear"></div>'
		),
        autoHeight:true,
        multiSelect: true,
        overClass:'x-view-over',
        itemSelector:'div.thumb-wrap',
        emptyText: 'No images to display'
    }
чтобы для начала увидеть emptyText — но и его нет. Вообще много как пробовал.

Начал искать примеры использования — нашел только в Gallery и MS2
Антон Соловьёв
16 апреля 2015, 08:32
modx.pro
1 137
0

Чем плох Babel для мультиязычности?

Встала задача мультиязычности. Как бы Babel решает, но на всякий случай начал смотреть, что есть новенького по теме. При этом наткнулся на комментарии типа «придется Babel использовать» или «Babel не нравится заказчику, хочет, чтобы все в одном месте было» И собственно непонятно, а что с ним не так? Ну да, переключения контекстов во фронте может и неудобно настраивать, но это абсолютно не смертельно и не может быть аргументом, чтобы отзываться от Babel. Какие у него есть конкуренты?
Антон Соловьёв
05 марта 2015, 14:59
modx.pro
1
2 821
+1

Простейший grid, без url, proxy, др. запросов

Нужно получить в панелях админки простую табличку со стандартным видом в modx т.е. на ext.js и с группировкой (ну, чтоб sortable: true ). Создавать отдельные файлы не требуется, табличка очень небольшая и нужно просто получить массив на php, перевести его в json и отдать его ext.js. Т.е. не надо никаких урлОв-прохсЕй. Набрасал код, создал store, передал его гриду в переменной. Вроде все отображает, но крутится вечный лоадер и в консоил ошибка TypeError: this.proxy is undefined
Антон Соловьёв
24 ноября 2014, 07:16
modx.pro
1 190
0

Обработка json в компоненте modx

Решил я, что разумно и правильно хранить часть данных в строке json. Ну т.е. в таблице что-то типа
<field key="field_name" dbtype="text" phptype="string" />
И некий массив отправляется в $modx->toJSON() и сохраняется в field_name. Там список строк, состоящий из месяца, года и произвольного текста.
В json переводится что-то типа этого:
[0] => Array    
	(
                    ['time'] => 1999
                    ['mounth'] => 1
                    ['text'] => 'Текст'
                ),
[1] => Array    
	(
                    ['time'] => 2001
                    ['mounth'] => 8
                    ['text'] => 'Текст 2'
                ),
Но нужно как-то наладить управление ими в компоненте, составить гирд из json.
Антон Соловьёв
28 августа 2014, 17:57
modx.pro
6 733
0

Редактир-я в modExt:как получить данные др таблиц?

Есть таблица А, таблица Б в компоненте.
Одно из полей таблицы Б компонента содержит id документа modResource. В getlist.class.php (компонент не на гитхабе, modExtra для наглядности) таблицы А я джоиню таблицу Б, в которой собственно id документа и джоиню modResource в prepareQueryBeforeCount, а в гирде вывожу pagetitle в одной из колонок и вместо Б.id, который собственно хранится в А,- Б.name и все хорошо.
Но в функции update в row лежат только данные строки таблицы, которую мы редактируем (т.е. А), данных, полученных в getlist.class.php там нету. Но мне нужно
Антон Соловьёв
15 июля 2014, 08:19
modx.pro
1 131
0

migxdb: "Массовые действи" не лезут в свой блок

На одном сайте кнопки массовые действия не влезают в свой блок, как на других. Из-за этого кнопку «посмотреть корзину» не видно. (смотрите картинку). Сколько бы я не выставлял в Buttons per row выкладки Actionbuttons — блок остается маленьким. Да и само окно конфигурации открывается слишком высоко, так что его невозможно передвигать по экрану.
Как исправить проблему?
И еще, обычно не включаю массовые действия, они как-то непонятно работают. Если удаляю — попадают в корзину migxdb, но как их массово удалить из этой корзины? Могу конечно плагин написать, на клик по корзинке над деревом, но может есть способ проще? Да должен же быть.
MODX Revolution 2.2.14-pl. Скрины с проблемой приложил.
Антон Соловьёв
01 июля 2014, 18:31
modx.pro
889
0