27 сентября 2015, 22:44 что-то странное со сниппетом msOptionsWithRemains а именно, в строке f (!is_array($options) || $options[0] == '' || $product->get('remains') == 0) {если заменить её на if (!is_array($options) || $options[0] == '' || $msProductRemains->getRemains( $scriptProperties ) == 0) {то все работает, а сверху дописать $msProductRemains = $modx->getService('msproductremains','msProductRemains',$modx->getOption('mspr_core_path',null,$modx->getOption('core_path').'components/msproductremains/').'model/msproductremains/',$scriptProperties); if (!($msProductRemains instanceof msProductRemains)) return '';при чем сниппет getRemains хорошо выдает остатки Новые дополнения и их версии / msProductRemains. Учёт по нескольким опциям! 34 0
27 сентября 2015, 17:48 оу оу оу, теперь действительно все работает! это реально мощный компонент по учету остатков! Новые дополнения и их версии / msProductRemains. Учёт по нескольким опциям! 34 0
27 сентября 2015, 14:07 теперь в таблице modx_ms2_product_remains — все ок, только на страничке компонента графа «остатки» — всегда равна 1, вне зависимости от реальных остатков товара. А на страничке товара — все ок, как надо по кол-ву остатков. Ссылка: s3036.h4.modhost.pro/manager/ Логин: s3036 Пароль: ZYPECAM5PwXa Новые дополнения и их версии / msProductRemains. Учёт по нескольким опциям! 34 0
27 сентября 2015, 13:00 попробовал — не работает. выдает ошибку: Notice: Undefined variable: config in /home/s3036/www/mspr_convert.php on line 20 Notice: Undefined variable: remains in /home/s3036/www/mspr_convert.php on line 34 Warning: Invalid argument supplied for foreach() in /home/s3036/www/mspr_convert.php on line 34 Done!и ничего не копирует. Новые дополнения и их версии / msProductRemains. Учёт по нескольким опциям! 34 0
21 сентября 2015, 17:52 Вообще если хотите сделать конкурентный продукт — берите пример с уже реализованных проектов для modx. Тот же redactor от modmore (основа — imperavi) — дико популярное приложение, даже у нас есть пользователи, и я в их числе. (не смотря на сегодняшний курс евро). К примеру, можно взять за основу ajenti у них даже есть плагин для munin (вполне адекватный мониторинг нагрузки сервера), и куча других не менее полезных плагинов. А так же «готовая» панелька управления сайтами Ajenti V но она довольно странная, никаких jail'ов и никаких отдельных пользователей для каждого сайта. Хостинг / Свой управляемый веб-сервер каждому разработчику! 63 0
21 сентября 2015, 12:03 Ребята, офигенно делаете! лично для меня важные моменты: 1. Инкрементальные бэкапы 2. Синхронизация бэкапов с облачным хранилищем данных 3. nginx+php-fpm 4. Отдельный Jail SSH (SFTP) для каждого сайта 5. Скорость работы У меня на текущий момент все это есть (кроме инкрементальных бекапов, и с Jail'ами беда — composer ругается на какие-то сертефикаты), только нет удобной панели управления. На текущий момент использую linode за 30$ в месяц (на данный момент все упирается в объем SSD, процессор простаивает на 90%, оперативная память на 30-50%), если ваша панелька позволит перейти на меньший тариф, с той же производительностью и с большими удобствами, с удовольствием буду оплачивать лицензию) Хостинг / Свой управляемый веб-сервер каждому разработчику! 63 +1
19 сентября 2015, 16:56 я на сколько понял, это лечится открыванием в новом окне по ссылке <a href="//domain.com/send/site1.com" target="_blank"></a>своей странички //domain.com/send/site1.com, которая уже сама переправляет редиректом 301 на нужный адрес http://site1.comВроде бы в контакте так и сделано. Безопасность / Почему не стоит использовать target=''_blank'' 14 +3 1
19 сентября 2015, 09:10 то что важно — никогда не бывает срочно. спасибо за оперативность) Новые дополнения и их версии / msProductRemains. Учёт по нескольким опциям! 34 0
16 сентября 2015, 15:33 Столкнулся ровно с такой же проблемой. Пока не нашел решения. Вопросы / Собственная маршрутизация и pdoPage в mFilter2 10 +1
15 сентября 2015, 09:58 Добрый день! Подскажите, как быть если мы уже забили около 500 складских остатков товаров со старой версией компонента? (у каждого товара несколько размеров, и у каждого размера свой остаток) Можно не вручную всю забитую базу перенести на новую версию компонента? Новые дополнения и их версии / msProductRemains. Учёт по нескольким опциям! 34 0
12 сентября 2015, 10:02 Добрый день! возник вопрос: как в сниппете AjaxForm указать плейсхолдеры, принимаемые из формы и передаваемые в FormIt? Раньше синтаксис был такой: 'emailTo' => 'order@[[++http_host]]', 'emailFrom' => 'order@[[++http_host]]', 'emailReplyTo' => '[[+email]]', 'emailReplyToName' => '[[+name]]', а как это сделать через fenom? вот до чего дошел: 'emailTo' => 'order@{$_modx->config.http_host}', 'emailFrom' => 'order@{$_modx->config.http_host}', 'emailReplyTo' => '[[+email]]', 'emailReplyToName' => '[[+name]]',Никак не могу взять в толк, откуда fenom'у взять эти плейсхолдеры и передать в сниппет Formit Полный вызов сниппета {$_modx->runSnippet('!AjaxForm', [ 'as_mode' => 'onload', 'snippet' => 'FormIt', 'form' => 'formscontact', 'emailTpl' => 'EmailContactForm', 'hooks' => 'email', 'emailFromName' => '{$_modx->config.site_name}', 'emailTo' => 'order@{$_modx->config.http_host}', 'emailFrom' => 'order@{$_modx->config.http_host}', 'emailReplyTo' => '[[+email]]', 'emailReplyToName' => '[[+name]]', 'validate' => 'name:required', 'validationErrorMessage' => 'В форме содержатся ошибки!', 'successMessage' => 'Сообщение успешно отправлено' ])} Новые дополнения и их версии / [pdoTools] Версия 2.0 с шаблонизатором и кэшем 46 0
02 сентября 2015, 22:17 Немного конечно не по теме, на эту страничку лучше добавить meta заголовок, чтобы все, включая скриншоты грузилось через https. А по теме: скорее всего не инклудятся превьюхи в getProducts, приведите пример вызова этого сниппета. Вопросы / Превью изображений 1 0
31 августа 2015, 12:09 определил ошибку — виноваты были плагины minishop2 Вопросы / Minishop2 и пустая панель 17 0
31 августа 2015, 11:45 Добрый день всем! возникла та же проблема — куча платных дополнений, все для minishop2. Вдруг выясняется что нельзя добавить новый товар — выскакивает ошибка: ext-all.js:21 Uncaught TypeError: b[(d.xtype || e)] is not a functionи подробнее: Uncaught TypeError: b[(d.xtype || e)] is not a functionExt.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.TabPanel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21MODx.Tabs @ modx.tabs.js:22MODx.VerticalTabs @ modx.tabs.js:42miniShop2.panel.ProductSettings @ product.common.js:467Ext.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.TabPanel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21MODx.Tabs @ modx.tabs.js:22Ext.ComponentMgr.create @ ext-all.js:21Ext.Container.Ext.extend.createComponent @ ext-all.js:21Ext.Container.Ext.extend.lookupComponent @ ext-all.js:21Ext.Container.Ext.extend.add @ ext-all.js:21(anonymous function) @ ext-all.js:21Ext.apply.each @ ext-base.js:21Ext.Container.Ext.extend.add @ ext-all.js:21Ext.Container.Ext.extend.initComponent @ ext-all.js:21Ext.Panel.Ext.extend.initComponent @ ext-all.js:21Ext.FormPanel.Ext.extend.initComponent @ ext-all.js:21Ext.Component @ ext-all.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21Ext.apply.extend.S @ ext-base.js:21MODx.FormPanel @ modx.panel.js:34MODx.panel.Resource @ modx.panel.resource.js:25miniShop2.panel.Product @ create.js:83Ext.ComponentMgr.create @ ext-all.js:21Ext.extend.load @ modx.js:85Ext.extend._loadComponents @ modx.component.js:68MODx.Component @ modx.component.js:10MODx.page.CreateResource @ create.js:29miniShop2.page.CreateProduct @ create.js:7Ext.ComponentMgr.create @ ext-all.js:21Ext.extend.load @ modx.js:85(anonymous function) @ ?id=2&a=resource/create&class_key=msProduct&parent=2&context_key=web:100(anonymous function) @ ext-all.js:21b @ ext-all.js:21Хочу проверить все на «чистом» минишопе2, в связи с этим, прошу добавить на тестовый тариф modhost.pro платные дополнения: msoptionscolor msproductremains UPD: я же могу их из /packages/ достать)) PS: переустановка\удаление tickets не помогает, равно как и отключение всех плагинов Вопросы / Minishop2 и пустая панель 17 0
23 августа 2015, 14:42 все работает как надо, даже если указать getFields: function(config) { return { color: {xtype: 'msoptionscolor-combo-ral', minChars: 1, hiddenName: 'color', valueField: 'id'} } }То можно хранить не имя цвета RAL в таблице товара, а ссылку на него (ID). Так что при изменении любых параметров цвета RAL, все изменения автоматически отразятся на поле продукта. За это отвечает параметр: valueField: 'id'А вот этот параметр указывает, что плагин у меня называется не «ral», а «color» hiddenName: 'color' Новые дополнения и их версии / [msOptionsColor] - цвет / паттерн для опций товара 82 0
21 августа 2015, 15:43 Скачал — установил — работает. Похоже у разработчика есть свой магазин, где этот модуль в боевом режиме обкатывается. Хороший, законченный компонент! Новые дополнения и их версии / [msProductRemains] 1.0.3-beta Новые сниппеты и пр. 4 0
19 августа 2015, 09:40 Добрый день. Подскажите, на какой аккаунт кидать pull-request'ы для minishop2? Есть два актуальных репозитория 1. github.com/bezumkin/miniShop2/ 2. github.com/argnist/miniShop2/ Краудфандинг / Альфа-релиз miniShop2. Торг. предложения и склад 20 0
14 августа 2015, 20:50 для статьи о mxManager скорее всего больше подойдет новостная площадка modx.today/ Новости и события / Большая статья про pdoParser 57 +1
06 августа 2015, 18:28 up Неужели никто не сталкивался с этой проблемой? Краудфандинг / Minishop 2.2.0. Характеристики 72 0
Возможно ли реализовать возможность предоплаты за доставку на сайте? Так ради этого мне и нужно это все, чтобы клиент платил сразу при оформлении заказа, чтобы избавить себя от мусорных заявок (когда человек оставляет заявку, а предоплату делать не ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
если заменить её на
то все работает,
а сверху дописать
при чем сниппет getRemains хорошо выдает остатки
А на страничке товара — все ок, как надо по кол-ву остатков.
Ссылка: s3036.h4.modhost.pro/manager/
выдает ошибку:
и ничего не копирует.
Тот же redactor от modmore (основа — imperavi) — дико популярное приложение, даже у нас есть пользователи, и я в их числе. (не смотря на сегодняшний курс евро).
К примеру, можно взять за основу ajenti у них даже есть плагин для munin (вполне адекватный мониторинг нагрузки сервера), и куча других не менее полезных плагинов.
А так же «готовая» панелька управления сайтами Ajenti V но она довольно странная, никаких jail'ов и никаких отдельных пользователей для каждого сайта.
лично для меня важные моменты:
1. Инкрементальные бэкапы
2. Синхронизация бэкапов с облачным хранилищем данных
3. nginx+php-fpm
4. Отдельный Jail SSH (SFTP) для каждого сайта
5. Скорость работы
У меня на текущий момент все это есть (кроме инкрементальных бекапов, и с Jail'ами беда — composer ругается на какие-то сертефикаты), только нет удобной панели управления.
На текущий момент использую linode за 30$ в месяц (на данный момент все упирается в объем SSD, процессор простаивает на 90%, оперативная память на 30-50%), если ваша панелька позволит перейти на меньший тариф, с той же производительностью и с большими удобствами, с удовольствием буду оплачивать лицензию)
своей странички , которая уже сама переправляет редиректом 301 на нужный адрес Вроде бы в контакте так и сделано.
как в сниппете AjaxForm указать плейсхолдеры, принимаемые из формы и передаваемые в FormIt? Раньше синтаксис был такой:
а как это сделать через fenom?
вот до чего дошел:
Никак не могу взять в толк, откуда fenom'у взять эти плейсхолдеры и передать в сниппет Formit
Полный вызов сниппета
А по теме: скорее всего не инклудятся превьюхи в getProducts, приведите пример вызова этого сниппета.
возникла та же проблема — куча платных дополнений, все для minishop2. Вдруг выясняется что нельзя добавить новый товар — выскакивает ошибка:
и подробнее:
Хочу проверить все на «чистом» минишопе2, в связи с этим, прошу добавить на тестовый тариф modhost.pro платные дополнения:msoptionscolor
msproductremains
UPD: я же могу их из /packages/ достать))
PS: переустановка\удаление tickets не помогает, равно как и отключение всех плагинов
То можно хранить не имя цвета RAL в таблице товара, а ссылку на него (ID). Так что при изменении любых параметров цвета RAL, все изменения автоматически отразятся на поле продукта.
За это отвечает параметр:
А вот этот параметр указывает, что плагин у меня называется не «ral», а «color»
1. github.com/bezumkin/miniShop2/
2. github.com/argnist/miniShop2/
Неужели никто не сталкивался с этой проблемой?