23 марта 2021, 10:29 надо 'modUser'=>[ 'class' => 'modUser', 'on' => 'modUser.id = modUserGroupMember.member', ],И надо вам добавить groupby {'getTable' | snippet : [ 'table'=>[ 'class'=>'modUserGroupMember', 'actions'=>[ 'remove' =>[ 'cls' => 'btn btn-danger', 'icon' => 'fa fa-trash-o', 'row' => [], ], 'update'=>[ 'cls' => 'btn btn-default', 'icon' => 'fa fa-edit', ], ], 'pdoTools'=>[ 'class'=>'modUserGroupMember', 'limit'=>'5', 'leftJoin'=>[ 'modUserProfile'=>[ 'class' => 'modUserProfile', 'on' => 'modUserProfile.internalKey = modUserGroupMember.member', ], 'modUser'=>[ 'class' => 'modUser', 'on' => 'modUser.id = modUserGroupMember.member', ], 'msOrder'=>[ 'class' => 'msOrder', 'on' => 'modUser.id = msOrder.user_id', ], 'msOrderProduct'=>[ 'class' => 'msOrderProduct', 'on' => 'msOrder.id = msOrderProduct.order_id', ], ], 'where'=>[ 'modUserGroupMember.user_group'=>2, ], 'select'=>[ 'modUserProfile'=>'*', 'modUser'=>'*', 'msOrder'=>'SUM(msOrder.cost) as sum', 'msOrderProduct'=>'SUM(msOrderProduct.count) as count', ], 'groupby'=>'modUser.id', 'sortdir'=>'DESC', 'sortby'=>'', 'decodeJSON'=>1, ], 'checkbox'=>1, 'autosave'=>1, 'row'=>[ 'id'=>[ 'label'=>'id', ], 'fullname'=>[ 'label'=>'Имя', 'filter'=>1, ], 'email'=>[ 'label'=>'Email', ], 'count'=>[ 'label'=>'Товаров', ], 'sum'=>[ 'label'=>'Сумма', ], 'active'=>[ 'label'=>'Статус', ], ], ], ]}и сортировка не понятная 'sortdir'=>'DESC', 'sortby'=>'', Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
21 марта 2021, 15:29 составить запрос основываясь на modUserGroupMember {'getTable' | snippet : [ 'table'=>[ 'class'=>'modUserGroupMember', 'actions'=>[ 'create'=>[ ], 'update'=>[ 'icon' => 'fa fa-edit', ], ], 'pdoTools'=>[ 'class'=>'modUserGroupMember', 'leftJoin'=>[ 'modUserProfile'=>[ 'class' => 'modUserProfile', 'on' => 'modUserProfile.internalKey = modUserGroupMember.member', ], ], 'where'=>[ 'modUserGroupMember.user_group'=>2, ], 'select'=>[ 'modUserProfile'=>'*', ], 'decodeJSON'=>1, ], 'checkbox'=>0, 'autosave'=>1, 'row'=>[ 'internalKey'=>[ 'label'=>'data- 1 добавляем в data-индификатор строки, чтобы по нему можно было искать редактируемое значение fullname', 'data'=>1 ], 'fullname'=>[ 'class'=>'modUserProfile', 'edit'=>[ 'type'=>'text', 'search_fields'=>['internalKey '=>'internalKey', ], ], ], 'oc_name'=>[ 'label'=>'extended поле не редактируется', 'edit'=>['type'=>'view'] ], ], ], ]} Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
21 марта 2021, 13:20 Блин с extended полями не понятно как их вывести и редактировать. Не работает сейчас компонент с ними! Я extended полями не пользуюсь. Просто если надо поля доп таблицу завожу какую надо. Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
21 марта 2021, 13:17 'loadModels'=>'pdoUsers', не надо {'getTable' | snippet : [ 'table'=>[ 'class'=>'modUser', 'actions'=>[ 'create'=>[ ], 'update'=>[ 'icon' => 'fa fa-edit', ], ], 'pdoTools'=>[ 'class'=>'modUser', 'leftJoin'=>[ 'modUserProfile'=>[ 'class' => 'modUserProfile', 'on' => 'modUserProfile.internalKey = modUser.id', ], ], 'select'=>[ 'modUser' => 'modUser.id', 'modUserProfile'=>'*', ], 'decodeJSON'=>1, ], 'checkbox'=>0, 'autosave'=>1, 'row'=>[ 'id'=>[ ], 'fullname'=>[ 'class'=>'modUserProfile' ], 'oc_name'=>[ 'label'=>'extended поле не редактируется', 'edit'=>['type'=>'view'] ], ], ], ]} Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
14 марта 2021, 16:08 Отправил тебе 200р за Автоустановщик шаблонов BELISSIMO. Еще не тестировал, но сама идея нравиться :-). Не верстальщик и все время мучаюсь с шаблонами. Новые дополнения и их версии / Автоустановщик шаблонов BELISSIMO 7 0
11 марта 2021, 17:07 Еще можно перегнать код массива femom в JSON. В конфиге записать 2 параметра toJSON и showLog и в логе будет массив в json. {'getTable' | snippet : [ 'showLog'=>1, 'toJSON'=>1, 'loadModels'=>'raschets', 'table'=>[toFenom преобразует json массив в fenom массив Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
11 марта 2021, 16:58 На вывода как tv на ресурсе ничего пока не сделано. MIGX выводить только. Можно в компонентах вывести несколько таблицу или несколько таблиц в табах. Только здесь конфиг надо в системных настройках MODX в формате JSON прописывать. Например системная настройка gtsreview_admin. В ней код 2 табов с таблицами в них: { "loadModels": "gtsreview", "tabs": { "Orgs": { "label": "Фирмы", "table": { "class": "gtsReviewOrg", "actions": { "create": [], "update": [] }, "pdoTools": { "class": "gtsReviewOrg" }, "checkbox": 1, "autosave": 1, "row": { "id": { "cls": "", "edit": { "type": "hidden" } }, "name": { "label":"Имя", "filter": 1 }, "site": { "label":"Сайт", "filter": 1 }, "manager": { "label":"Фио менеджера", "filter": 1 }, "description": { "label":"Описание", "edit": { "type": "textarea", "skip_sanitize": 0 } } } } }, "Leed": { "label": "Сделки", "table": { "pdoTools": { "class": "gtsReviewLeed", "leftJoin":{ "gtsReviewOrg":{ "class":"gtsReviewOrg", "on":"gtsReviewOrg.id = gtsReviewLeed.org_id" } }, "select":{ "gtsReviewLeed":"*", "gtsReviewOrg":"gtsReviewOrg.name as org" } }, "checkbox": 1, "autosave": 1, "row": { "id": { "cls": "", "edit": { "type": "hidden" } }, "org_id":{ "label":"Фирма", "filter": 1, "edit":{ "type":"select", "select":"org", "field_content":"org" } }, "name": { "label":"Название сделки", "filter": 1 }, "date": { "label":"Дата сделки", "filter": 1, "edit": { "type": "date" } }, "description": { "label":"Описание", "edit": { "type": "textarea", "skip_sanitize": 0 } }, "rating": { "label":"Рейтинг", "filter": 1 }, "active": { "label":"Активно", "filter": 1, "edit": { "type": "checkbox" }, "default":1 } } } } } }Для подключения в админке делаем меню, где прописываем Действие: home Параметры: &config=gtsreview_admin Пространство имён: gettables Получиться вот: Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
11 марта 2021, 16:38 Я тут изобретаю параметры default и force, а оказывается можно просто value указать :-). Вообще можно: 'resource_id'=>[ 'label'=>'Ресурс ID', 'edit'=>['type'=>'hidden', 'default'=>$_modx->resource.id ],или 'resource_id'=>[ 'label'=>'Ресурс ID', 'edit'=>['type'=>'hidden', 'force'=>$_modx->resource.id ],default записывает, если записываемое значение пустое. А force всегда перезаписывает значение чтобы юзер не написал. Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
11 марта 2021, 16:32 Ошибки не критичные. Не могу добраться все их обработать :-(. их много при работе компонента вылазит. Весь журнал забивают. Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
10 марта 2021, 21:13 Наверно, кстати, я не верно первоначальный вопрос понял. Если tv MIGX создавать в базе через migxdb, то вывести эту табличку можно через getTables без проблем. Я просто тв уже редко использую и обычно таблицы к ресурсам MODX не привязываю. Пример вывода для таблицы https://www.tale.by/assets/docs/default.schema.xml из из статьи Товары из отдельной таблицы (migxdb: {'getTable' | snippet : [ 'loadModels'=>'pages', 'table'=>[ 'class'=>'CustomPages', 'actions'=>[ 'create'=>[ ], 'update'=>[ ], ], 'pdoTools'=>[ 'class'=>'CustomPages', ], 'checkbox'=>0, 'autosave'=>1, 'row'=>[ 'id'=>[ ], 'resource_id'=>[ 'label'=>'Ресурс ID', 'edit'=>['type'=>'hidden', ], 'filter'=>[ 'edit'=>['type'=>'text',], ], ], 'pagetitle'=>[ 'label'=>'Имя', 'filter'=>1 ], 'longtitle'=>[ 'label'=>'Описание', 'edit'=>['type'=>'textarea', ], ], 'published'=>[ 'label'=>'Опубликован', 'edit'=>['type'=>'checkbox',], ], ], ], ]}Примерный сокращенный код. Не проверял его работу. Если разместить его на какой-либо странице и зайти на неё с get или post параметром resource_id=15, то покажет покажет CustomPages прикрепленные к ресурсу с id=15. Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
10 марта 2021, 17:14 Ну я бы точно на геттаблес делал. Но для вас смотрите сами что вам удобной. Я сейчас на геттаблес табель учета рабочего времени делаю :-). Только для вашей задачи было бы хорошо если геттаблес еще дерево мог строить, но он этого пока не умеет. Времени не хватает сделать. А подгружать subtable на 3 уровня не очень хорошая идея. А так бы все можно было бы на компоненте сделать. Несколько вопросов есть: 1) «основные разделы общие для всех проектов» — то есть могут создаваться и другие разделы? 2) Создавать проект через ajax или перезагрузка таблицы? 3) открывать to-do лист по ajax или можно ссылку на отделную страницу? Можно связаться по скайп. Мой скайп touols Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
10 марта 2021, 16:11 Ок. Помощь в освоении нужна? Компонент достаточно сложный и даже я не все инструкции не помню. Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
10 марта 2021, 16:09 даже не знаю как объяснить :-). Ваш уровень владения MODX не понятен. Есть таблица в базе mysql. Есль классы в MODX для связи с таблицей в базе. Таблицу и классы проще создать через MIGX. Компонент getTables чтобы вывести таблицу пользователю чтоб он мог редактировать в ней данные. Это аналог MIGX, только без ExtJs. Использовать можно и на фронте и в админке. Надеюсь понятно. Можно по скайпу связаться если не понятно. Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
10 марта 2021, 15:53 Добрый день! Сами таблицы компонента с MIGX не связанны. С MIGX просто быстрей таблицы в базе mysql сделать. А потом все без MIGX. Новые дополнения и их версии / [getTables] Компонент редактируемых таблиц на основе bootstrap и pdoTools 136 0
03 марта 2021, 13:12 1 и 2 ничего нет. 3 remessages. 4 sms Вопросы / Веб-сервис на MODx. Поиск расширений, плагинов и пр. или готовых решений для доработки. 6 +1
03 февраля 2021, 18:10 Вообще планирую в течении месяца обновить компоненты. Не хватает статусов онлайн-офлайн и другие моменты поправить. Новые дополнения и их версии / gtsNotify - система уведомлений и RealMessenger - обмен сообщениями 9 0
03 февраля 2021, 17:48 Любой файл. Картинка как файл видна. Прикрепление файлов это компонент UserFiles Новые дополнения и их версии / gtsNotify - система уведомлений и RealMessenger - обмен сообщениями 9 0
02 февраля 2021, 20:25 Мне непонятно почему данный функционал нельзя реализовать независимо на своём сайте?Я одну причину только вижу. shared хостинг не дает открывать лишние порты. То есть, сайт должен быть на VDS, либо служба уведомлений на отдельном от сайта VDS. Сервис уведомлений проще всего подымать на nodejs + https://github.com/websockets/ws. От Workerman я использую только websocket php клиента. Вопросы / Уведомления в реальном времени 10 0
31 января 2021, 08:05 Извняюсь, принял ваш крик души на свой счет. 3 дня на нервах сижу. Компонент не стал полностью бесплатным. Оплату перенес на сервис. Так что reMessages купят. И, возможно, будут пользоваться и RealMessenger. Просто продавать компоненты без modstore не удобно и мне проще сделать сам компонент сделать бесплатным. Новые дополнения и их версии / gtsNotify - система уведомлений и RealMessenger - обмен сообщениями 9 0
gtsAPI 1.1.7 — таблицы на TanStack, инлайн-редактирование как в Excel Prime Vue datatable тупит на 200+ строк и в виртуальном скролинге высота полей фиксирована. Вот нам в итоге и не подошло. Директор сказал расчет должен сразу показываться без пагин...
mxApi — быстрый внешний API для MODX Revolution • зафиксировать публичный контракт EndpointInterface / метаданных по semver, чтобы наш провайдер не ломался на обновлениях;Фактически это уже так, beta стоит просто на всякий случа...
YaSmartCaptcha - защитите ваши формы от спама умной капчей от Яндекс Вообще не понял о чем речь) В системной настройке service_js сейчас указана ссылка smartcaptcha.cloud.yandex.ru/captcha.js Я предложил очистить эту настройку, тогда компонент н...
mxBackup — обезличенные копии MODX в пару кликов Ещё нет, я там разом почти полтора десятка пакетов выложил модератор, вероятно, а шоке.
Gallery3x 3.4.0 - вставка галерей прямо из визуального редактора (CKEditor и TinyMCE RTE) Здравствуйте. Есть консольный скрипт Вот почитайте: docs.ivan345.com/books/gallery3x/page/import-ms2galleryphp
[mSync] Новая версия синхронизации с 1С Всем привет. В какой то момент начали сыпаться ошибки: Error 23000 executing statement: INSERT INTO `modx_msync_products` (`product_id`, `uuid_1c`) VALUES ...
И надо вам добавить groupby
и сортировка не понятная 'sortdir'=>'DESC',
'sortby'=>'',
Я extended полями не пользуюсь. Просто если надо поля доп таблицу завожу какую надо.
В конфиге записать 2 параметра toJSON и showLog и в логе будет массив в json.
toFenom преобразует json массив в fenom массив
Можно в компонентах вывести несколько таблицу или несколько таблиц в табах.
Только здесь конфиг надо в системных настройках MODX в формате JSON прописывать.
Например системная настройка gtsreview_admin. В ней код 2 табов с таблицами в них:
Для подключения в админке делаем меню, где прописываем Действие: home Параметры: &config=gtsreview_admin Пространство имён: gettables
Получиться вот:
Вообще можно:
или
default записывает, если записываемое значение пустое. А force всегда перезаписывает значение чтобы юзер не написал.
Пример вывода для таблицы https://www.tale.by/assets/docs/default.schema.xml из из статьи Товары из отдельной таблицы (migxdb:
Примерный сокращенный код. Не проверял его работу. Если разместить его на какой-либо странице и зайти на неё с get или post параметром resource_id=15, то покажет покажет CustomPages прикрепленные к ресурсу с id=15.
Только для вашей задачи было бы хорошо если геттаблес еще дерево мог строить, но он этого пока не умеет. Времени не хватает сделать. А подгружать subtable на 3 уровня не очень хорошая идея. А так бы все можно было бы на компоненте сделать.
Несколько вопросов есть:
1) «основные разделы общие для всех проектов» — то есть могут создаваться и другие разделы?
2) Создавать проект через ajax или перезагрузка таблицы?
3) открывать to-do лист по ajax или можно ссылку на отделную страницу?
Можно связаться по скайп. Мой скайп touols
Есть таблица в базе mysql. Есль классы в MODX для связи с таблицей в базе. Таблицу и классы проще создать через MIGX.
Компонент getTables чтобы вывести таблицу пользователю чтоб он мог редактировать в ней данные. Это аналог MIGX, только без ExtJs. Использовать можно и на фронте и в админке.
Надеюсь понятно. Можно по скайпу связаться если не понятно.
Сервис уведомлений проще всего подымать на nodejs + https://github.com/websockets/ws. От Workerman я использую только websocket php клиента.