Sem

Sem

С нами с 21 августа 2015; Место в рейтинге пользователей: #70
Sem
Sem
08 апреля 2021, 15:15
0
Поделись способом, может где пригодится
Sem
Sem
08 апреля 2021, 15:04
0
Важно только, что при таком раскладе нужен доступ к объекту $modx, с pdoTools и выключенным доступом к объекту (так по умолчанию) такая фишка не прокатит. А упрощенный класс $_modx не даст нужного результата, его нужно допилить, чтобы он возвращал все поля контекста.
Sem
Sem
08 апреля 2021, 14:58
0
Проверил, да так реально, работает, Сергей как всегда, спасибо!
Sem
Sem
01 апреля 2021, 11:35
0
По поводу ошибок, разобрался это не Ваш компонент, их кидает hideSource, когда другие плагины статичные, просто в случае с msPromoCode2 эти ошибки кладут систему.
В итоге виновником является hideSource и то как он реагирует на статичные плагины.
Прошу прощения за беспокойство и ещё раз извиняюсь за клевету на компонент.
Sem
Sem
01 апреля 2021, 11:15
0
Вы всё по поводу этой галочки? Это было для воспроизведения проблемы на modhost.
Даже если галочка не стоит, и при этом в системе есть другие статичные плагины — в консоль падают ошибки, о не возможности загрузки классов со странными префиксами «mspc2»
И это только когда в систему поставлен также hideSource
Sem
Sem
01 апреля 2021, 11:11
0
А по поводу событий, я имел ввиду следующее:
hideSource срабатывает на событие OnMediaSourceGetProperties
В списке событий msPromoCode2 этого события нет, значит плагин не должен реагировать на него.
Но ошибки которые падают в консоль говорят об обратном.
Could not load class: mspc2OnMediaSourceGetProperties from mspc2onmediasourcegetproperties.
Sem
Sem
01 апреля 2021, 11:05
0
Павел, я не ставил перед собой цели, как Вы говорите «обосрать Ваш труд», я столкнулся с проблемой и решил её описать в сообществе, где есть возможность, что кто-то поможет с этим разобраться, может кто-то с этим уже сталкивался. За неимением возможности написать в ТП, единственное место, где можно осветить проблему — это здесь. И целью комментария было желание привлечь внимание автора компонента, и возможно его помощи разобраться в проблеме. Но Вы же это приняли как клевету в свой адрес. Я извиняюсь за то, что задел своим комментарием Вас.
Но прошу, раз уж Вы отвечаете на комментарии, помочь разобраться в вопросе.
По поводу галочки — не понятна Ваша позиция, то что из коробки он идет с выключенной. Эта галочка, системная возможность движка и по идее кроме как «откуда брать код плагина» она не должна ни на что влиять, но влияет. И хотелось бы разобраться почему?
Sem
Sem
01 апреля 2021, 10:13
0
Честно, не знаю на что Вы обиделись и какого рода извинения ожидали.
Я же указал, что проблема решалась отключением Вашего компонента. Оставалось только найти причину, её я так пока и не нашел, но мне удалось её воспроизвести на modhost.
Ставим всего 2 компонента: msPromoCode2 и hideSource
Если у плагина промокодов поставить галку «статичный» — система падает с fatal error
Без галки — всё работает норм

Но если при этом в системе будут какие-то другие плагины с этой галкой, что не редкость для тех, кто работает в IDE, то в консоли в некоторых случаях получаем ошибки вида:
Could not load class: mspc2OnMediaSourceGetProperties from mspc2onmediasourcegetproperties.
Could not load class: msYaEcommerceOnMediaSourceGetProperties from msyaecommerceonmediasourcegetproperties.
Я пока не знаю почему атрибут «статичный» так влияет на работу плагинов, но как небольшой вывод для себя:
1)У плагина компонента msPromoCode2 не должна стоять галка «статичный» при установленном hideSource
2)Если в системе стоят и msPromoCode2 и hideSource и при этом есть другие статичные плагины, могут быть проблемы. (наблюдаются ошибки в консоли, но не у всех плагинов)
3)Я не утверждаю, что проблема именно в msPromoCode2, она проявляется в связке двух компонентов.
Sem
Sem
31 марта 2021, 21:50
0
По видимому такой эффект дает сочетание нескольких компонентов, попробовал на modhost проверить, такой проблемы нет, беру слова обратно. Буду искать проблему дальше
Sem
Sem
31 марта 2021, 21:30
-1
Знаю, что автор предпочитает, чтобы все вопросы по компоненту писали в ТП, но на днях попался сайт у клиента, где поддержки уже нет, а проблема с компонентом есть.
Заметил, что компонент ломает работу других плагинов на некоторые события и валит админку с фатальной ошибкой, например простейший плагин для скрытия файлов у медиаисточников, с выключенным плагином mspc2System, прекрасно работает, но стоит включить валится вся админка с fatal error ​
Код плагина, для примера.
<?php
/** @var modX $modx */
switch ($modx->event->name) {
   ​case 'OnMediaSourceGetProperties':
       ​$properties = json_decode($properties, true);
       ​if (!empty($properties['hideSource']) AND !empty($properties['hideSource']['value']) AND $_REQUEST['node'] == '/') {
           ​die('{}');
       ​}
   ​break;
}
Та же история с компонентом hideSource из modStore, который по сути делает тоже, что и плагин выше, без промокодов работает норм, с включенным компонентом — падает админка.
Скорее всего это происходит из-за того, что код плагина самого компонента, вообще никак не ограничен событиями, то есть работает через все события системы насквозь и по пути что-то ломает.
Sem
Sem
31 марта 2021, 18:34
0
О, спасибо, как мне не хватало этой статьи, целый день искал решение, но эта статья не попадалась почему-то.
В ней даже более элегантно сделано переопределение типа поля.
Sem
Sem
04 марта 2021, 17:40
0
Есть вопрос по компоненту, в интерфейсе во вкладке связи есть возможность включить действие промокода
на определенные категории товаров и товары. Но что делать если нужно наоборот исключить категорию/товар?
Например есть промокод, который действует на весь ассортимент каталога, за исключением одного товара.
И ещё один момент — в конфиге промокода есть чекбокс — Не применять без скидки, когда он включен,
на фронте применить промокод можно, а в админке к уже существующему заказу с тем же составом товаров нет, так и должно быть? Пишет — в корзине нет товаров, соответствующих этому промо-коду.
Sem
Sem
18 января 2021, 21:08
+1
Новая настройка «удалять временные файлы при синхронизации» в выключенном состоянии ломает синхронизацию только с изменениями.
Процесс начинает писать в уже существующие файлы, ну а это уже в свою очередь нагибает парсер и весь процесс ложится с ошибками.
И ещё одна небольшая хотелка, если будет время и возможность:
Сделать возможность скрытия из меню товаров, приходящих с нулевым количеством, так как снятие с публикации это сразу 404 ошибка и сеошники сразу начинают есть мозги, что товары нужно просто прятать от пользователей, но оставлять рабочими для поисковиков. Уже раз 10 попадались сайты клиентов с Вашим компонентом, везде приходилось дописывать этот функционал. Думаю это будет полезным прямо из коробки.
Sem
Sem
23 октября 2020, 13:25
0
1)Интегрировать весь функционал из компонента msTools, хотелось бы чтобы это было из коробки.
Минимальный функционал создания заказов из админки и возможность печатать по заказам нужные документы (накладные, для курьеров, выставление счета и.т.д)

2)Нужен пересчет стоимости заказа, когда во вкладке покупки происходят изменения — сейчас, например, после изменения количества товара, нужно нажимать кнопку сохранить, потом снова открывать заказ на редактирование, чтобы увидеть изменения. И такое поведение часто встречается при смене способа доставки или оплаты, хорошо бы в этом всплывающем окне всегда вызывалась функция полного пересчета заказа при любых изменениях заказа.

3)Возможность в настройках менять формат номера заказа (Были случаи, клиент просил вместо слеша, ставить тире, так удобнее копировать номер заказа в 1С было)

4)Визуальный дефект (не видно рамки у select-а)
Sem
Sem
20 октября 2020, 09:36
0
Классный компонент, но в консоли ошибок при обращении к компоненту постоянно валятся ошибки
Самая частая:
Encountered empty IN condition with key id
Можно увидеть при чистой установке системы на modhost + компонент
В остальном функционал супер, советую его всем своим клиентам
Sem
Sem
07 июля 2020, 09:16
+1
Автору респект! Очень интересный и полезный компонент. Немного хотелок (если у автора будет время):
— В общих шаблонах сейчас можно делать выборку только по ресурсу-родителю, было бы круто если бы можно было ещё и по шаблону выборку делать.
— Возможность добавлять свои переменные в шаблоны (Родные допполя miniShop2 и tv-поля)
— Склонение слов в шаблонах (через модификатор было бы вообще круто)
Sem
Sem
07 апреля 2020, 08:27
0
Очень интересную тему затронули. Продолжайте, поделитесь своим опытом.
У меня в последнее время стали часто появляться задачи по интеграции небольших магазинов и
сейчас в сайтах на MODX это решается либо компонентом mSync, когда нужна периодическая выгрузка или обмен заказами или когда клиент хочет прям полную интеграцию, тогда стандартный REST API в 1С — плюсом такого решения является отсутствие необходимости в 1С-специалисте, коих сейчас трудно найти.
Всё, что нужно это опубликовать 1С на веб-сервере и поставить одну галочку включения REST интерфейса.
Дальше всё делается со стороны web-разработчика. Сейчас детально изучают эту тему — мне кажется это наиболее оптимальный способ интеграции с 1С как для малых так и для больших магазинов.
Sem
Sem
22 марта 2020, 14:40
0
Обновленная версия кладет сайт с 500 error — вот лог — yadi.sk/i/qWMVhkBoXuJ_Kg
Отключаю плагин компонента, всё ок!
Ругается на это — core\components\resvideogallery\vendor\composer\autoload_real.php: 66) PHP warning:
И на это — core\components\resvideogallery\vendor\composer/../ralouphie/getallheaders/src/getallheaders.php): failed to open stream: No such file or directory
Sem
Sem
11 февраля 2020, 10:05
0
Поставил потестить компонент и заметил один момент, что поля фильтров, если им указать условие,
например — {«published»:1,«template»:8} — будут собирать новые значения, только если заходить в каждый новый товар и явно в нем ставить галочку опубликован и сохранять ресурс. Но сбора новых значений в словарь не происходит, если публиковать товары через таблицу в категории — yadi.sk/i/YJ2lPD0e0eC0zA
Видимо нажатие этих кнопок не вызывает необходимых событий, на которые завязан компонент.