Сергей Шлоков

Сергей Шлоков

С нами с 31 января 2013; Место в рейтинге пользователей: #3
Сергей Шлоков
10 декабря 2021, 07:28
+5
Спасибо за добрые слова! Но ради справедливости хочу сказать, что в нашем RU-сообществе контрибьютеров MODX есть люди, вклад которых не меньше (а то и больше) значителен. Ведь важно не только писать код. Важно всё. И умение организовать и мотивировать других. И поправить лексиконы или CSS класс. И даже просто подсказать правильный инструмент для работы.

Немного пафосно прозвучало, да? %)
Сергей Шлоков
09 декабря 2021, 15:24
+7
Поправил. Спасибо!
Банальная опечатка. Вместо $modx->services написал $modx->service.
Сергей Шлоков
25 ноября 2021, 11:23
+6
Была такая мысль в RU чате контрибьютеров MODX. Только обсуждалось более простое решение — отдельный пакет админки. Т.е. никаких форков и отдельных систем. В качестве аналогии могу привести своё решение ZoomX. В анонсах MODX3 озвучивали, что ядро планируется перевести на SlimFramework. За 8 лет осилили только PSR-4 (автозагрузка классов через Composer). Про Slim уже и не вспоминают. А сейчас фреймворки стали очень популярны и являются де-факто стандартами разработки. И для тех, кто хочет использовать данные подходы и стандарты в MODX, есть решение — компонент ZoomX — ставишь и работаешь как в фреймворке. И никакие форки MODX не нужны. Конечно, полноценное фреймворковское ядро было бы лучше. Но боюсь мы его не дождёмся. А с ZoomX есть возможность работать по современному.
Тоже и с админкой. Отдельный пакет сделать вполне по силам. Даже пусть для начала и с ограниченными возможностями.
Сергей Шлоков
20 ноября 2021, 07:48
0
Странная валидация.
Сергей Шлоков
19 ноября 2021, 21:15
0
Андрей, а у тебя реально работают приоритеты? Просто я смотрю на код и вижу, что ты создаёшь один виртуальный плагин с id=1000. И не понимаю, как заставить один и тот же плагин сработать в разных приоритетах?
'eventMap' => 
  array (
    'OnHandleRequest' => 
      array(
         1000 => '1000',
         3 => '3',
         1000 => '1000',
         7 => '7',
      ) ,
  );
В индексированном массиве нельзя указывать один и тот же индекс для разных записей.

П.С. Сознаюсь, что я не тестировал твой компонент, просто код смотрел. Поэтому и спрашиваю. :)
Сергей Шлоков
17 ноября 2021, 08:17
0
Игорь, а Вы читали пост? Он же ведь не очень большой. И там по этому поводу всё написано — в следующей версии нельзя будет указывать путь для файловых элементов в параметрах сниппета. Он указывается в системной настройке администратором (!) и не должен переопределяться простым контент-менеджером.
Сергей Шлоков
17 ноября 2021, 08:12
+3
Кстати, если для основной части запросов ресурсы не нужны, то автозагрузку ресурсов можно отключить в соответствующей системной настройке. А для тех роутов, где ресурс нужен, подгружать его самостоятельно
$modx->resource = zoomx()->getResource($alias_or_id);
Сергей Шлоков
12 ноября 2021, 21:18
0
К сожалению пока это невозможно.
Сергей Шлоков
08 ноября 2021, 10:36
0
Теперь ответ легко находится. Класс не найден. Почему? Потому что в третьем параметре метода getService, в котором должен быть указан путь к классу (для классов MODX указывается пустое значение), указан массив заголовков, который должен быть указан в четвёртом параметре.
Сергей Шлоков
08 ноября 2021, 07:29
0
И 500-ая ошибка говорит, что…
Сергей Шлоков
05 ноября 2021, 17:04
0
Да я тоже не могу похвалится твердыми знаниями. Возможно браузер кэширует. А ты попробуй в инкогнито открыть.
Сергей Шлоков
05 ноября 2021, 16:44
0
А может другое условие срабатывает раньше?
Сергей Шлоков
05 ноября 2021, 14:31
0
использовании toSeparatePlaceholders вываливаются ошибки
Это не ошибки, а ворнинги. Они не ломают код.

пробовал этот вариант
Очень стрёмный вариант. Без фенома можно и такой костыль пилить. Но с феномом всё проще. Нужно сохранить данные в переменную, потом по ней прогнать цикл, в котором проверять условие и формировать колонки.
Сергей Шлоков
05 ноября 2021, 14:25
0
Если проблема в версии PHP, то нужно смотреть лог. Там должна быть зафиксирована проблема.

А ещё очень похоже на случай, когда грузится 2 jQuery. Одна вручную, другая через Tickets.
Сергей Шлоков
05 ноября 2021, 14:22
0
А консоль что показывает?
Сергей Шлоков
02 ноября 2021, 20:28
+2
Ну и просто чтобы PHPStorm видел классы и не ругался, что класс не найден.
Я для этого добавляю ссылки в «Include Path». Т.е. при разработке компонента, чтобы PhpStorm видел ядро MODX, указываю папку, где находится MODX. У меня для этого отдельное место, где лежат чистые библиотеки.