Не удалось получить такой результат: если в магазине настроен только 1 склад и для этого склада в свойствах товара заполнены остатки, то вызов показанного вами кода с указанием ID этого склада не приводит к возникновению ошибки, и заказ успешно создаётся.
Насколько я вижу, в этом случае ошибка не возникает: если хотя бы для одного склада заполнены остатки, то вызов этого кода с указанием ID склада без заполненных остатков в данном товаре успешно создаёт заказ, а остатки не списываются (нечего списывать с указанного склада).
Если в карточке товара не заполнены остатки, то указывать какой-либо склад при создании заказа не нужно. Это и в веб-интерфейсе так: когда вы в бекенде добавляете в заказ товар, для него не предлагается выбор склада, если ни на одном складе для него не указаны остатки.
Похоже, что эта ошибка возникает в тех случаях, когда в шаблонах дизайна, используемых для отображения на блочных страницах главного меню или подвала сайта, есть вызов системного хелпера {$wa->myNav()}. Насколько я вижу, именно это происходит в теме Candyshop.
Передал информацию об этом разработчикам для изучения.
В качестве временного решения можно попробовать исключать использование этого метода в шаблонах дизайна, подключаемых к блочным страницам.
Не удалось получить такой результат в тестовом магазине последней версии.
Если проблема у вас сохраняется в обновлённом в «Инсталлере» Shop-Script, сообщите, пожалуйста, больше подробностей:
какие сообщения об ошибках появляются в консоли браузера;
содержимое запроса, который отправляется на сервер при выполнении ваших действий;
содержимое ответа, который приходит с сервера;
каково точное значение текстового поля с идентификатором списка (полученное средствами JavaScript; возможно, в него попадают скрытые символы, из-за чего возникает ошибка при валидации значения).
Или напишите нам в службу поддержки — изучим ситуацию подробнее.
Это в любом случае будет зависеть от реализации темы дизайна, мне кажется, потому что стандартным образом интерфейс выбора модификации товара ядром приложения не формируется.
Можно попробовать такие способы реализации:
По умолчанию ориентироваться на событие product_sku_changed для элемента с селектором #js-product-page, как в теме дизайна default. А на случай, если у пользователя с какой-то темой это не сработает, то позволить ему в настройках вашего плагина указать другое название события и селектор элемента, для которого оно генерируется при смене выбора модификации товара с темой конкретной витрины (для каждой витрины или темы дизайна надо будет сохранять отдельно такую настройку).
Переопределить стандартный метод history.replaceState() с генерацией и обработкой пользовательского события для объекта windows (источник — не пробовал, надо проверять на практике).
Мы выпустили обновление приложения «Сайт», в котором улучшили отображение имён файлов для редактора шаблонов дизайна в приложениях Webasyst. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!
Мы выпустили обновление Shop-Script, в котором исправили отображение иконок на кнопках действий с заказами. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!
Пока непонятно, как прийти к такой ситуации, когда в данном случае пустая строка. Такое ощущение, что это связано с выбором темы дизайна в свойствах какой-то из витрин. Возможно, есть витрина, для которой почему-то не выбрана вообще никакая тема...
Желательно изучить ваши настройки, чтобы определить причину максимально точно и хорошо понимать, как лучше всего это исправлять.
Пока не удалось получить такой результат, в том числе с этой версией Shop-Script. Напишите об этом, пожалуйста, в нашу службу поддержки — изучим ситуацию подробнее. Возможно, какие-то условия вашего окружения или ваших настроек неправильно обрабатываются исходным кодом Shop-Script.
Такой возможности в API пока нет. Передали разработчикам предложение добавить её в одном из будущих обновлений Shop-Script.
Если эту задачу вам нужно решить только в каком-то одном магазине, то можно, например, добавить этому магазину в директории wa-apps/shop/api/v1/ собственный файл с методом API, в котором описать на PHP нужную логику и вызывать этот метод для массового обновления доп. параметров товаров.
В плагине Telegram для CRM для хранения числового идентификатора пользователя мессенджера используется вертикальное поле контакта telegram_id (значения хранятся в таблице wa_contact_data). Используйте его в своих продуктах.
Спасибо за ваши наблюдения! Однако всё же просьба к вам: оформляйте, пожалуйста, разные сообщения об ошибках в виде отдельных тем на форуме поддержки. Так их удобнее обрабатывать и обсуждать.
Напишите об этом, пожалуйста, в нашу службу поддержки — изучим ситуацию подробнее и постараемся предложить решение.
Проголосуйте, пожалуйста, за такое предложение в специальном разделе форума поддержки. Или добавьте новое предложение на форум, если оно ещё не опубликовано.
Просьба к вам на будущее: оформляйте, пожалуйста, разные сообщения в виде отдельных тем на форуме поддержки. Так их удобнее обрабатывать и обсуждать, если потребуется.
В dev-ветке репозитория Shop-Script на GitHub мы уже поправили эти отступы — они теперь одинаковые. Используйте в своём плагине то значение отступа, которое используется в этой обновлённой версии.
Не хватает полного кода вашего приложения (хотя бы в минимальном рабочем объёме), чтобы попробовать запустить его у себя и получить такой же результат. По вашему описанию воспроизвести ошибку пока не получается.
Включён ли режим отладки в системных настройках (это рекомендуется на время разработки)? Или хотя бы очищали ли вы (там же) кеш после последнего редактирования файла с классом модели?
Скачали дистрибутив по кнопке «Скачать Webasyst» и загрузили на сервер с PHP 8.3.
Распаковали архив.
Установили права доступа для чтения и перезаписи распакованных файлов и директорий.
Запустили и прошли все шаги установщика.
Выполнили вход в бекенд.
После первого входа проверили созданные таблицы в базе данных: всего создалось 250 таблиц.
Возможно, на возникновение проблемы влияют особенности конкретного сервера. Напишите об этом, пожалуйста, в нашу службу поддержки — изучим ситуацию подробнее.
В последней версии фреймворка Webasyst доступен хук wa.frontend_head. Подпишитесь на него в своём плагине (используя маску'*' вместо идентификатора приложения), чтобы добавлять нужное вам содержимое в любой результат, который в теме дизайна возвращает стандартный метод {$wa->head()}.
Чтобы было проще и быстрее создавать плагины, реализующие собственные каналы продаж, мы добавили пример-заготовку на GitHub.
в ответ на Свои типы каналов продаж в Shop-Script 12 с помощью плагинов
Мы выпустили обновление «Сайта», в котором устранили описанную вами ошибку. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!
в ответ на Ошибка "Unable to load template file" в блочном редакторе страниц
в ответ на Order validation error при создании заказа в плагине
Если в карточке товара не заполнены остатки, то указывать какой-либо склад при создании заказа не нужно. Это и в веб-интерфейсе так: когда вы в бекенде добавляете в заказ товар, для него не предлагается выбор склада, если ни на одном складе для него не указаны остатки.
в ответ на Order validation error при создании заказа в плагине
Покажите, пожалуйста, ту часть значения переменной $orderData, которая относится к товарам и их количеству на складе.
в ответ на Order validation error при создании заказа в плагине
Похоже, что эта ошибка возникает в тех случаях, когда в шаблонах дизайна, используемых для отображения на блочных страницах главного меню или подвала сайта, есть вызов системного хелпера {$wa->myNav()}. Насколько я вижу, именно это происходит в теме Candyshop.
Передал информацию об этом разработчикам для изучения.
В качестве временного решения можно попробовать исключать использование этого метода в шаблонах дизайна, подключаемых к блочным страницам.
в ответ на Ошибка "Unable to load template file" в блочном редакторе страниц
Не удалось получить такой результат в тестовом магазине последней версии.
Если проблема у вас сохраняется в обновлённом в «Инсталлере» Shop-Script, сообщите, пожалуйста, больше подробностей:
Или напишите нам в службу поддержки — изучим ситуацию подробнее.
в ответ на Неверно генерируются ID списков товаров
Это в любом случае будет зависеть от реализации темы дизайна, мне кажется, потому что стандартным образом интерфейс выбора модификации товара ядром приложения не формируется.
Можно попробовать такие способы реализации:
в ответ на Переключение варианты на странице товара. JS
Передали замечание разработчикам, спасибо!
в ответ на UI2 + Shop-Script 12: портятся иконки нештатных действий с заказом
Мы выпустили обновление приложения «Сайт», в котором улучшили отображение имён файлов для редактора шаблонов дизайна в приложениях Webasyst. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!
в ответ на Список файлов темы дизайна в админке.
Мы выпустили обновление Shop-Script, в котором исправили отображение иконок на кнопках действий с заказами. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!
в ответ на UI2 + Shop-Script 12: портятся иконки нештатных действий с заказом
Мы выпустили обновление Shop-Script, в котором исправили отступы у иконок действий на странице заказа. Обновление можно установить в «Инсталлере».
Проверьте, пожалуйста. Сообщите нам, если проблема сохранилась.
Спасибо вам за то, что помогаете улучшать программные продукты Webasyst!
в ответ на Разные отступы в блоке backend_order.action_link
Пока непонятно, как прийти к такой ситуации, когда в данном случае пустая строка. Такое ощущение, что это связано с выбором темы дизайна в свойствах какой-то из витрин. Возможно, есть витрина, для которой почему-то не выбрана вообще никакая тема...
Желательно изучить ваши настройки, чтобы определить причину максимально точно и хорошо понимать, как лучше всего это исправлять.
в ответ на open_basedir restriction в админке
Пока не удалось получить такой результат, в том числе с этой версией Shop-Script. Напишите об этом, пожалуйста, в нашу службу поддержки — изучим ситуацию подробнее. Возможно, какие-то условия вашего окружения или ваших настроек неправильно обрабатываются исходным кодом Shop-Script.
в ответ на open_basedir restriction в админке
Такой возможности в API пока нет. Передали разработчикам предложение добавить её в одном из будущих обновлений Shop-Script.
Если эту задачу вам нужно решить только в каком-то одном магазине, то можно, например, добавить этому магазину в директории wa-apps/shop/api/v1/ собственный файл с методом API, в котором описать на PHP нужную логику и вызывать этот метод для массового обновления доп. параметров товаров.
в ответ на Обновление доп. параметров товаров API-методом shop.product.massUpdate
В плагине Telegram для CRM для хранения числового идентификатора пользователя мессенджера используется вертикальное поле контакта telegram_id (значения хранятся в таблице wa_contact_data). Используйте его в своих продуктах.
в ответ на Идентификатор Telegram
Встроенного автоматического формирования вкладок на странице настроек плагина нет — при необходимости их нужно формировать самостоятельно.
в ответ на Как разместить .tabs на странице настроек плагина.
Спасибо за ваши наблюдения! Однако всё же просьба к вам: оформляйте, пожалуйста, разные сообщения об ошибках в виде отдельных тем на форуме поддержки. Так их удобнее обрабатывать и обсуждать.
в ответ на Разные отступы в блоке backend_order.action_link
Передал информацию разработчикам — посмотрим ещё раз, спасибо!
в ответ на Разные отступы в блоке backend_order.action_link
Просьба к вам на будущее: оформляйте, пожалуйста, разные сообщения в виде отдельных тем на форуме поддержки. Так их удобнее обрабатывать и обсуждать, если потребуется.
в ответ на Access token is missing
В dev-ветке репозитория Shop-Script на GitHub мы уже поправили эти отступы — они теперь одинаковые. Используйте в своём плагине то значение отступа, которое используется в этой обновлённой версии.
в ответ на Разные отступы в блоке backend_order.action_link
Передали ваше предложение разработчикам.
в ответ на JS события корзины
Не хватает полного кода вашего приложения (хотя бы в минимальном рабочем объёме), чтобы попробовать запустить его у себя и получить такой же результат. По вашему описанию воспроизвести ошибку пока не получается.
в ответ на Fatal error: Uncaught Error: Class "app1Model" not found
Включён ли режим отладки в системных настройках (это рекомендуется на время разработки)? Или хотя бы очищали ли вы (там же) кеш после последнего редактирования файла с классом модели?
в ответ на Fatal error: Uncaught Error: Class "app1Model" not found
Пока не удалось получить такой результат по вашему описанию. Напишите об этом, пожалуйста, в нашу службу поддержки — изучим ситуацию подробнее.
в ответ на Неправильные сообщения в корзине для минимального количества товара
Пустая база данных перед установкой была создана со схемой сравнения кодировки utf8mb3_general_ci.
в ответ на Не завершается установка фреймворка с нуля
Пока не удалось получить такой результат.
Проверяли так:
После первого входа проверили созданные таблицы в базе данных: всего создалось 250 таблиц.
Возможно, на возникновение проблемы влияют особенности конкретного сервера. Напишите об этом, пожалуйста, в нашу службу поддержки — изучим ситуацию подробнее.
в ответ на Не завершается установка фреймворка с нуля
Хук wa.frontend_head доступен во всех приложениях начиная с версии фреймворка 3.8.2. Добавили описание хука в документацию: https://developers.webasyst.ru/hooks/shop/wa.frontend_head/
в ответ на Как вывести через хук произвольный js код с помощью плагина на страницы приложения Сайт?
Да, в этой версии он уже доступен. Других хуков именно с таким форматом имени во фреймворке пока нет, но вроде бы все существовавшие ранее системные хуки мы уже описали на странице https://developers.webasyst.ru/docs/cookbook/handlers/system-events/.
в ответ на Как вывести через хук произвольный js код с помощью плагина на страницы приложения Сайт?
В последней версии фреймворка Webasyst доступен хук wa.frontend_head. Подпишитесь на него в своём плагине (используя маску '*' вместо идентификатора приложения), чтобы добавлять нужное вам содержимое в любой результат, который в теме дизайна возвращает стандартный метод {$wa->head()}.
в ответ на Как вывести через хук произвольный js код с помощью плагина на страницы приложения Сайт?