22 ноября 2019, 07:08 Определенно, это указывает на то, что данные, получаемые из процессора при открытии формы на редактирование, либо не поступают от процессора, либо просто не подставляются в поля. Мне что-то подсказывает, что коннектор возвращает только стандартные поля, а про доп. поля ему ничего не известно. Чтобы это понять, открывайте консоль браузера и в момент открытия формы на редактирование посмотрите, какие данные возвращает коннектор. Если в них нет ваших доп. полей, значит нужно копать серверную часть и смотреть, где вы что-то упустили, что коннектор не возвращает нужные данные. Если же данные поступают, но не подставляются в поля, то нужно копать клиентскую часть, то есть javascript, и смотреть, почему эти данные не подставляются в соответствующие поля формы. Понимаю, что вы надеялись скорее всего получить конкретный ответ, но, к сожалению, у меня сейчас не так много времени, чтобы воспроизвести у себя данный кейс и указать на конкретную причину :) Пошаговые инструкции / Добавить поле в опции MS вкладка "Производитель товара" msVendor . 8 +1
21 ноября 2019, 16:37 То есть если я все правильно понимаю, поля отображаются, все ок. При сохранении формы первый раз все отправляется и сохраняется, а при редактировании уже нет? При редактировании в кастомных полях есть данные или они пустые? Пошаговые инструкции / Добавить поле в опции MS вкладка "Производитель товара" msVendor . 8 +1
12 февраля 2018, 09:55 Я явно вижу, что ты не до конца понимаешь сути работы git и отдельных его фишек. Поэтому советую больше почитать про git, его возможности и команды. Как решается твоя проблема (как я ее решаю): 1. Приходит готовый сайт, я создаю под него отдельный репозиторий 2. Создаю .gitignore файл, в который я дописываю все те файлы, которые не нужно хранить под контролем версий (туда относятся всякие изображения, добавляемые админом при создании новых ресурсов или редактировании старых, туда относятся папки с кэшем, и туда же относятся файлы-конфиги, в которых содержатся различные переменные, специфичные для того хоста, на котором этот сайт разворачивается) 3. Все конфиги я копирую в папку или файл с суфиксом .sample (то есть чтобы ты при разворачивании где-то в другом месте мог их скопировать, удалить .sample и прописать в них настройки для конкретного хоста) 4. Заливаю все это в свой репозиторий, делаю коммит и пуш (commit + push). То, что прописано в .gitignore туда не попадает. 5. На рабочем сервере сначала удаляю папку сайта (либо делаю бэкап), потом клонирую репозиторий в папку с таким же названием, как бывшая папка сайта, потом делаю конфиги из .sample-конфигов. Настраиваю БД и прочие стандартные вещи. 6. Копирую через FTP или SSH папки, которые не вошли в репозиторий (как правило, это только картинки, кэш копировать смысла нет) И все! Теперь, если ты делаешь изменения на своем локальном сервере, ты их заливаешь в репозиторий, а потом на сервере ты их вытягиваешь из репозитория командой git pull — и все это происходит в рабочем каталоге сайта. Вопросы / github как прослойка для синхронизации dev и production 14 +1
22 сентября 2016, 15:51 Тоже верно, мое решение — 5-минутное. Я когда написал, тоже подумал о том, что можно ввести другой промокод :) Оперативненько сработал :) Новые дополнения и их версии / [msPromoCode] Скидочные промо-коды для miniShop2 87 +1
22 сентября 2016, 10:33 В методе setCurrentCoupon надо бы добавить строчки после первого if: elseif($_SESSION['mspc']['coupon'] == $code){ $this->mspc->setError($this->modx->lexicon('mspromocode_err_code_applied'), true); return false; }А то получается, даже если купон уже был применен, то мы можем его повторно применять неограниченное количество раз. Ну и в словарь добавить фразу «Этот купон уже был применен» Новые дополнения и их версии / [msPromoCode] Скидочные промо-коды для miniShop2 87 +1
22 сентября 2016, 10:12 Если в поле ввода промокода убрать [[+coupon:notempty=`disabled`]], то каждый раз, обновляя страницу корзины можно вводить этот же промокод и каждый раз скидка будет применяться к текущей сумме (то есть можно так себе сделать гораздо бОльшую скидку). Павел, протестируй, пожалуйста, этот момент, так как это дает потенциальную дыру для «особо умных» покупателей :) Новые дополнения и их версии / [msPromoCode] Скидочные промо-коды для miniShop2 87 +1
mxBoard: канбан-доска для команд, людей и ИИ-агентов в MODX 3 Идея модуля отличная! Будем посмотреть. По интерфейсу косяк нашел, на странице пользователя, сверху плашка какие-то токены (пока не разобрался), а снизу страница за край уехала, и...
Плагин EnvBadge: визуальный индикатор окружения в админке MODX3 Лучше автоматический ci/cd настроить и не править прод напрямую. Это самый безопасный вариант. Другое дело, что далеко не каждый владелец сайта и далеко не каждый сайт готовы в авт...
[videoGallery] Видео галерея YouTube, Vimeo Невозможно установить пакет с подписью: videogallery-1.4.0-beta Ошибка установки Error в /core/packages/videogallery-1.4.0-beta/modCategory/7fc931a7772edc9752c16e9c41eb5e52.reso...
Релиз miniShop2 ver. 4.4.1 & 4.4.2 Подскажите пожалуйста, может я что-то не знаю или упустил. Но есть ли решение по глюку с radio? Указываешь свое radio c одинаковым name и в результате при переключении получаешь вс...
MaxNotify Обновление компонента 1.3.0-pl (22.07.2026) — добавлено автоматическое получение полей через msOrder->toArray(); — массивы и объекты безопасно пропускаются; — стандартные...
MyFavorites MyFavorites — 3.0.0-beta Первая версия для MODX Revolution 3.x — компонент полностью переписан с нуля (PHP >= 8.4, namespaced-ядро MODX 3, PSR-4, сервис-ориентированная архит...
Чтобы это понять, открывайте консоль браузера и в момент открытия формы на редактирование посмотрите, какие данные возвращает коннектор. Если в них нет ваших доп. полей, значит нужно копать серверную часть и смотреть, где вы что-то упустили, что коннектор не возвращает нужные данные.
Если же данные поступают, но не подставляются в поля, то нужно копать клиентскую часть, то есть javascript, и смотреть, почему эти данные не подставляются в соответствующие поля формы.
Понимаю, что вы надеялись скорее всего получить конкретный ответ, но, к сожалению, у меня сейчас не так много времени, чтобы воспроизвести у себя данный кейс и указать на конкретную причину :)
Как решается твоя проблема (как я ее решаю):
1. Приходит готовый сайт, я создаю под него отдельный репозиторий
2. Создаю .gitignore файл, в который я дописываю все те файлы, которые не нужно хранить под контролем версий (туда относятся всякие изображения, добавляемые админом при создании новых ресурсов или редактировании старых, туда относятся папки с кэшем, и туда же относятся файлы-конфиги, в которых содержатся различные переменные, специфичные для того хоста, на котором этот сайт разворачивается)
3. Все конфиги я копирую в папку или файл с суфиксом .sample (то есть чтобы ты при разворачивании где-то в другом месте мог их скопировать, удалить .sample и прописать в них настройки для конкретного хоста)
4. Заливаю все это в свой репозиторий, делаю коммит и пуш (commit + push). То, что прописано в .gitignore туда не попадает.
5. На рабочем сервере сначала удаляю папку сайта (либо делаю бэкап), потом клонирую репозиторий в папку с таким же названием, как бывшая папка сайта, потом делаю конфиги из .sample-конфигов. Настраиваю БД и прочие стандартные вещи.
6. Копирую через FTP или SSH папки, которые не вошли в репозиторий (как правило, это только картинки, кэш копировать смысла нет)
И все!
Теперь, если ты делаешь изменения на своем локальном сервере, ты их заливаешь в репозиторий, а потом на сервере ты их вытягиваешь из репозитория командой git pull — и все это происходит в рабочем каталоге сайта.
Оперативненько сработал :)
А то получается, даже если купон уже был применен, то мы можем его повторно применять неограниченное количество раз.
Ну и в словарь добавить фразу «Этот купон уже был применен»
Павел, протестируй, пожалуйста, этот момент, так как это дает потенциальную дыру для «особо умных» покупателей :)