Сергей Шлоков
С нами с 31 января 2013; Место в рейтинге пользователей: #32 часа назад
А как вы в шаблоне письма вывели имя пользователя? У меня просто в шаблоне отрабатывает. А в письме нет.
[[$user.name]]
[[$us...
Sendex - как добавить поле "Имя"? 2
3 часа назад
Слышу эту песню про программирование — уже с лет 20 точно.
Но пока «мы» даже сверстать макет не можем автоматически, чтобы можно было в продакшен о...
Испытание ИИ Cursor 9
Вчера в 14:29
$array = array(ids);
if(in_array($modx->resource->get('id'), $array)) {
$modx->regClientStartupHTMLBlock('<script>Ext.onReady(fu...
RTE для introtext: помогите пожалуйста с подсказкой 1
Вчера в 14:13
В итоге переписала сама. Не знаю можно ли вставлять сюда столько текста, так что чистый JS код, если кому надо, можно найти по ссылке
[xLike] Идеальная система лайков с оптимистичным интерфейсом и правильной формулой 113
24 декабря 2024, 21:46
Это не косяк, это осознанное изменение. Я считаю, что нет смысла показывать «Форма содержит ошибки» и ещё сами ошибки. Однако само сообщение в ответе ...
[SendIt 2.0.0] Пагинация и обновлённая загрузка файлов 28
23 декабря 2024, 18:04
Для версии 3 лучше конечно иметь типа minishop3.
Да для всего этого нужно свободное время конечно же.
minishop2.com. Почему то не хочет в админку сайта заходить 3
23 декабря 2024, 16:08
Добрый день, спасибо за помощь, разобрались на сайте поддержки продукта, сразу просто не увидели там продление поддержки, с Уважением.
Подключение msOptionsColor 2
23 декабря 2024, 03:39
polylang-1.3.16-pl
появились проблемы с кешированием, рандомно не меняется culturekey, после очистки кеша — всё ок
Polylang 142
21 декабря 2024, 12:41
Подскажите как работает счетчик загрузок (я так понимаю поле 'download') но оно по у меня не обновляется, всегда показывает 0. И как получить поле раз...
FileMan - прикрепление файлов к ресурсам для MODX 3 53
21 декабря 2024, 11:46
После стольких мучений, я понял что SendIt и Polylang очень даже дружат.
Моя ошибка была в том, что я не увидел одного мелкого важного момента.
...
Как подружить SendIt и Polylang ? 5
Используйте подготовленные запросы.
Кстати, для отладки есть удобный метод toSql(), который выдает подготовленный распарсенный sql запрос.
Они точно не будут лазить и искать алгоритмы.
А алгоритмы можно придумать разные — удалить файл, или испортить исходник класса, и ещё много чего можно придумать. Т.е. и не подумаешь, что проблема в ключе. Баг какой-то. Даже если разработчик пишет тебе в техподдержку для сайта, для которого куплен компонент, просишь его выслать код класса и всё становиться ясно. Тут уж как фантазия работает.
Вань, ты прикалываешься что-ли? Да нахрена его взламывать, лазить по файлам, искать где шифруется, если можно просто скопировать код? В этом случае на каком уровне твой плинтус? У меня 2 минуты заняло поставить Office на локалку — скачать с сайта (без архивирования!), выполнить ряд манипуляций (не буду говорить какие) и поставить ещё один зависимый пакет (а может не один).
И я про тоже. Только без внешних источников.
П.С. Кстати, а пользователь не знает, есть запрос на внешний источник или нет. Может и искать нет смысла.
Кстати, пока писал, пришла идея :) — наверно можно использовать динамический ключ для таких пакетов, чтобы не лазить в репо? При сборке пакета по заданным условиям его формировать, а при распаковке проверять. Теоретически возможно.
А флудить начали именно потому, что нет ясности. Вот и возник спор.
Ты вообще что-ль нормально разучился разговаривать? Ничего мне не нужно уточнять, успокойся.
П.С. Только что ради эксперимента поставил Office на локалку. Потратил 2 минуты.
А если продается техподдержка, а не лицензия, то почему нельзя использовать дополнение без техподдержки. В чём непорядочность разработчиков-неплатильщиков в юридическом смысле? Нигде же не сказано про обязательность техподдержки. И получается, что ты усложняешь жизнь разработчикам, которые формально ничего не нарушили. Они за техподдержку не платили — они её не получают.
Это вопрос скорее к ребятам из MODSTORE. Я как автор платных дополнений заинтересован в четких правилах, повышающих мои права и продажи.
По поводу защиты не стал заморачиваться. Ничто не мешает скупому, неблагодарному, бессовестному, беспринципному и наглому разработчику вместо пакета скопировать исходники с сайта-донора. Мы же помним, как такие разработчики собирали пакеты платных дополнений Василия с Гитхаба. Да, чуть сложнее. Но это вряд ли их остановит.
Сравнивать тысячные доли? Это даже не погрешность, это погрешность погрешности. Пять раз обнови страницу, и пять раз цифры будут разные даже не меняя код.
Я когда переходил не феном тоже сравнивал. Разницы в скорости при вызове сниппетов через стандартный синтаксис и через феном никакой.
Парсер MODX запускается перед феномом только для обработки кэшируемых тегов. Вообще парсинг выглядит так:
1. Запускается парсер MODX и обрабатывает кэшируемые теги. Феном теги остаются необработанные.
2. Запускается парсер фенома, если есть теги Fenom.
3. Запускается парсер MODX и обрабатывает некэшируемые теги пока они есть. Нераспарсенные не удаляются.
Пункты 2 и 3 могут выполняться в цикле до 10 раз, если есть нераспарсенные теги.
4. Запускается парсер фенома, если есть теги Fenom.
5. Запускается парсер MODX и обрабатывает некэшируемые теги пока они есть. Нераспарсенные теги удаляются.
Пункты 4 и 5 пункт могут выполняться в цикле до 10 раз, если есть нераспарсенные теги.
Многие, наверно, обращали внимание на тормоза, если указан несуществующий плейсхолдер.
Выглядит эта конструкция, мягко говоря, как вид жопы сбоку. У этих парсеров разный принцип работы. По хорошему, разработчикам MODX нужно или вообще отказываться от парсера и просто дать возможность пользователям самим выбирать (я сделал маленький шажок в эту сторону) или дорабатывать его до более-менее функционального уровня (я это тоже пробовал).
Я бы посоветовал использовать оба парсера так:
— юзать только кэшируемые теги MODX ([[*tag]], [[$chunk]], [[++system]], [[snippet]]). Хорошо для оптимизации.
— для остального использовать феном.
В этих режимах парсеры не пересекаются.
Добавил пример в описание метода select.
А попробовать?
П.С. Я бы ещё посоветовал ограничить список полей через select(). Не зачем ненужные поля выводить.
Конечно, это пост оптимизация.
П.С. У меня работает отлично. Феном в помощь.