Всего 125 005 комментариев

Олег Захаров
07 марта 2025, 21:44
+1
Прочитав про комментарий выше о том что тема создает папку manager я вспомнил что уже писал об этом и сталкивался с проблемой в прошлом. https://modx.pro/components/25063#comment-144547
Повторю сюда решение проблемы при установке — т.к. после установки на сайт, у которого папка manager (папка админки) была переименована, — тема встает неправильно:
У меня админка размещена по другому адресу (не manager).
Страница входа выглядит не так как на картинке в теме выше. Посмотрел и увидел что в корне создалась папка manager/templates/eclipseui
При этом в папке админки в папке templates тоже появилась папка eclipseui. Но в ней папки частично пустые.
Просто перенес содержимое созданной папки manager в правильную папку админки и все нормально заработало.
Т.е. установщик ставит шаблон неправильно — где-то в коде указывает папку установки с прямым путем manager/templates/eclipseui, а надо брать путь к папке из конфигов.
Благо разобрался и все заработало.
После этого получил красоту.
Правда не понял в чем разница в настройке manager_theme с gihub на eclipseui — вроде одинаковые.
Еще было бы круто вынести в настройки выбор цветов.
Артур Шевченко
07 марта 2025, 19:27
0
Сначала сохрани ресурс потом устанавливай значение ТВ.
Дима Касаткин
07 марта 2025, 04:59
+1
Я делал ровно такое через тегирование, компонентом tvSuperSelect.

На другом сайте клиники пытался сделать через taxonomy, но там что-то пошло не так (вроде с кодировкой русской были проблемы, но уже не помню, было несколько лет назад), и в итоге через TV с подстановкой возможных значений через синтаксис
@SELECT [[!pdoResources? //и тут выбор значений для чекбоксов ]]
То есть к врачу галочки ставишь, какие специальности, потому что специальностей список конечный, а врачей как будто нет. Услуги и цены создавал ресурсами, через настройку форм убирал лишние поля. Там где надо было схлопнуть дерево в админке, использовал компонент Collections.

Тут главное не забывать концепцию MODX, что ресурс — это не обязательно страница. Есть побочный эффект при таком подходе: на одинаковых услугах у тебя будет одинаковый alias, но это легко пофиксить пакетом customURLs, где настраиваются маски alias-ов по разным правилам.

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

Там все операции сводятся к перекладыванию JSON для MIGX и простейшим выборкам ресурсов, так что бояться такой кастомизации не стоит.

Успехов!
Prihod
06 марта 2025, 17:57
0
Типа каждый раз запрашивать код/звонк при авторизации?
Артем
06 марта 2025, 17:45
0
Можно авторизироваться без пароля, просто по смс коду/звонку?
Ruslan
06 марта 2025, 13:02
0
Теперь всё понятно.
Спасибо за разъяснение.
Рушан
06 марта 2025, 11:30
0
Получается, что бы записать в заказы надо указать в input
name="region"
?
Артур Шевченко
06 марта 2025, 11:26
0
<div class="input-group mb-3 input-parent">
                    <select class="form-select input-custom bg-transparent border-bottom" id="region" name="region">
                        <option selected>Область:</option>
                        <option value="Пензенская">Пензенская</option>
                        <option value="Саратовская">Саратовская</option>
                        <!-- Здесь можно добавить другие регионы, если необходимо -->
                    </select>
                </div>
Рушан
06 марта 2025, 11:15
0
Мне надо отправить region в заказ
Артур Шевченко
06 марта 2025, 10:41
+1
Смотри. Исторически так сложилось, что в форме есть поля и ошибки связаны с этими полями. Чтобы связать текст ошибки с полем нужно добавить блок с атрибутом data-si-error=«fieldName» где fieldName имя проверяемого поля. При авторизации проверяются сразу два поля Логин и Пароль, так вот параметр 'errorFieldName' нужен чтобы связать ошибку авторизации с полем. Можно с логином, можно с паролем, а я рекомендую делать скрытое поле.

P.S. описание параметра в доке не очень понятное надо исправить.
Павлик Мышкин
06 марта 2025, 10:23
+1
Ну мы надеемся, что автор сменит абсолютные пути на относительные в своём дополнении, тогда заживём.
Ruslan
06 марта 2025, 10:18
0
Сегодня обновился, и всё сработало.
Теперь очень удобно.

Спасибо большое за ваш труд.

Если можно, можете уточнить еще момент.
Наткнулся в документации при авторизации на такой параметр.
'errorFieldName' => 'errorLogin'
написано — в этом параметре необходимо указать имя скрытого поля, в которое будет записан текст ошибки авторизации, если оставить пустым ошибка будет показана во вплывающем сообщении.
Я правильно понимаю, что если в форме будет input поле как в вашем примере, то сообщение об удачной или не удачной авторизации должно появится в этом поле?
Если так, то почему то сообщение не работает оно всё так же во всплывающем окне отображается. Или я опять не так всё понял.
Артур Шевченко
06 марта 2025, 10:14
0
Какие переменные ты хочешь расставить?
Наумов Алексей
06 марта 2025, 09:54
+1
Обычно на таких сайтах есть раздел Услуги, где будет все, что у вас перечислено (до уровня врачей, но не включая их) и раздел Специалисты — где уже просто идут все врачи общим списком каким-то.

Далее нужно связать эти два раздела, в целом можно было бы просто добавить TV поле Список с множественным выбором к Услуге и выбирать там врачей, кто оказывает эту услугу. Но вы указали, что каждому врачу нужен еще и прайс-лист свой. Тогда используем либо MIGX, либо PageBlocks (бесплатный вполне подойдет), где делаем выбор врача из списка и добавляем таблицу с ценами.

В фид это при желании тоже всё можно вывести
Maks
06 марта 2025, 08:05
+1
Так еще и при установке зачем то создает папку manager с вложенніми папками темі, хотя у меня админка в другой папке.
Maks
06 марта 2025, 07:53
0
Установил но к сожалению не работает. Стоит дефолтная тема и никакие переключатели не срабатывают.
Артур Шевченко
05 марта 2025, 22:30
0
В целом всё правильно ты понял, но в поле usergroup должен быть массив. В следующем обновлении сделаю так, чтобы можно было передавать строку.
Олег Захаров
05 марта 2025, 16:07
0
Поставил обновление. Теперь админка стала как обычная. Удалил, переустановил, все также. Короче, не работает :(
Prihod
05 марта 2025, 13:14
0
Да, группу просто в системных настройках модуля укажили или явно через параметр у сниппета