Василий Наумкин

Василий Наумкин

С нами с 08 декабря 2012; Место в рейтинге пользователей: #1
Василий Наумкин
13 августа 2015, 20:24
0
Кстати говоря, а вот интересно посмотреть на примеры работ «оттуда».

Потому что у меня складывается стойкое ощущение, что авторы MODX свою систему в реальной работе уже не используют.
Пишут там на Slim и Twig что-то под заказ, устанавливая их через Composer, а MODX просто любят по старой памяти.
Василий Наумкин
13 августа 2015, 19:49
+1
Конечно, в ядро ничего пулять не стоит, просто я удивлён, с каким упорством наши заграничные коллеги используют всякий нафталин.

Они по-прежнему любят getResources, они используют Wayfinder, даже Apache2 сегодня тут вспоминали.

Тут дело не в шаблонизаторах, а в подходе. Я предлагаю вообще самый простой способ — нужно просто установить один компонент (который и так есть у многих) и использовать в любом чанке новый синтаксис. Всё!

Ничего больше не нужно, просто хоть так пиши, хоть эдак — всё работает максимально прозрачно.

Предлагаешь это людям, а они отвечают
you are more than capable of a developer, we have seen all your good work and know you mean well, so use what works for you and your team
Типа, сам используй свои приблуды.

Ну и зачем мне вообще напрягаться, что-то писать на английском, с такой реакцией? Зачем включать английский лексикон в дополнения, зачем комментировать код на языке вероятного противника?

Серьёзно, это же лишний напряг и всё равно никто не ценит. Прекрасно поставлена работа с сообществом в MODX, лишний раз убеждаюсь.

Кстати, кто-то видел официальное объявление о единственном в истории мобильном приложении для iOS — mxManager? Да ладно, объявление, хоть бы ретвитнули. Действительно, кому это может быть интересно…

У меня от них уже лютый баттхерт, прям бомбит.
Василий Наумкин
13 августа 2015, 19:11
0
Но этого нет в modParser.
И не будет, судя по всему, никогда.

Аминь.
Василий Наумкин
13 августа 2015, 18:42
0
Речь о том, что из-за отсутствия продвинутого синтаксиса приходится делать много чанков.

Например, при выводе комментариев нужно:
— чанк обёртка всего блока с комментами
— чанк формы комментирования
— чанк комментария для авторизованного юзера
— чанк комментария для гостя
— чанк удалённого комментария

С использованием Fenom (или другого нормального шаблонизатора) я могу сделать это всё в одном чанке.
Точнее, я это уже сделал на kg-portal.ru, где сейчас комментарии выводятся через xPDO + Fenom и всё оформление в одном шаблоне. Ведь это намного проще — изменить один чанк, вместо двух или трёх!

Я уже молчу о том, что сейчас в Tickets дофига лишней логики тупо из-за ограничений синтаксиса. Например — вот здесь выставляются лишние плейсхолдеры только ради того, чтобы чанк быстро парсился без фильтров MODX.

Тем печальнее, что никого в англоязычном сообществе это, похоже, не волнует. Ни скорость работы, ни удобство — они о 3й версии мечтают, без перерывов на обед.
Василий Наумкин
13 августа 2015, 07:15
+4
Fenom нарушает парадигму MVC, и шаблоны и чанки в итоге превратятся в кашу с php-кодом аля джумла.
Еще подумалось, а как же Creative Freedom™?

pdoParser позволяет использовать новый и старый синтаксис вместе. Это по-любому лучше, чем один старый синтаксис без вариантов.
Василий Наумкин
13 августа 2015, 07:05
+3
А там нет php кода, там есть конструкции для удобного оформления: проверка переменных, циклы и тд. Лично мне всего этого давно стало не хватать в чанках MODX.

Посмотри на Tickets — 28 чанков, miniShop2 — 25 чанков. Использование нормального синтаксиса позволило бы сократить их минимум раза в 2.

Реакцию можно почитать вот здесь (скриншот добавил в новость), только её, как бы и нет. Всем реально пофиг, давайте лучше в тысячный раз пофантазируем о MODX 3.

Зачем осваивать что-то новое, нужно просто встречаться со всеми и рассказывать им про тормозные getResources, Wayfinder и Articles.

Вернул обратно предложение о переводе. Какие они ни есть, всё же нужно им рассказывать о наших наработках.
Василий Наумкин
12 августа 2015, 22:01
+1
Если бы я предполагал подобный сценарий работы, то это поле было бы изначально редактируемым.
Но нет, я зачем-то придумал методы доставки и возможность их расширять, хотя можно было просто вводить стоимость прямо в заказе.

Так что без хака пока никак не получится.

P.S. Сколько чего покупал через интернет — ни разу не приходилось созваниваться с магазином. Не повезло, наверное.
Василий Наумкин
12 августа 2015, 19:24
0
Сессия одна, но разные контексты.

Пользователи авторизуются в разных контекстах раздельно, так даже можно делать несколько несвязанных сайтов на одной установке движка.
Василий Наумкин
12 августа 2015, 19:22
0
Вставляю допустим в чанке для шапки.
и
Сам авторизован в админке.
По моему, должно быть очевидно, что авторизация в админке не авторизует на сайте.
Василий Наумкин
12 августа 2015, 19:19
0
Работает, только что проверил.
Василий Наумкин
12 августа 2015, 19:17
0
За всё время работы mFilter2 такой вопрос возник первый раз, причём не в техподдержке дополнения.

Если есть желание — ты можешь сам добавить что-то в документацию, она открыта и доступна на GitHub.
Василий Наумкин
12 августа 2015, 19:11
+1
Нет никакого косяка, нужно указывать префикс и для этих плейсхолдеров.
[[+префикс.total]]
[[+префикс.log]]

А то выходит, что эти плейсхолдерам хочу префиксы, а те должны сами как-то работать.
Василий Наумкин
12 августа 2015, 13:28
0
Да, так и есть.

Провайдеры просят делегировать домены к ним, чтобы самостоятельно менять им IP адрес для своих внутренних нужд. Мы оставляем эту работу владельцу домена — заодно и повышаем их техническую грамотность =)

Вы, например, теперь хорошо знаете как работает система распределённых имён (DNS) и зачем она вообще нужна.
Василий Наумкин
12 августа 2015, 13:26
+1
Насколько я знаю, они планирует сделать работу через Composer.

Это привнесёт поддержку не только Fenom, но и еще тысяч других классов и шаблонизаторов.
Василий Наумкин
12 августа 2015, 13:11
0
Да быть не может!

Неужели, нужно было просто… подождать еще?
Василий Наумкин
12 августа 2015, 13:11
0
Видимо нужно повторить 12 раз? Открытие того или иного сайта зависит от настроек компьютера.

Если он запомнил старый адрес, закэшировал его где-то, то со стороны сайта или хостинга ничего сделать нельзя. Нужно чистить этот кэш на этом компьютере и это его личная проблема, а не сайта и хостинга.

Проверить соответствие домена IP адресу на компьютере можно очень просто:
nslookup modx.pro
или
ping modx.pro
Будет показан IP адрес. Домен modx.pro, понятно, нужно заменить на свой.
Василий Наумкин
12 августа 2015, 12:55
0
Я уже 10 раз объяснил это в поддержке хостинга и объясняю еще раз: после смены IP домена, новый адрес должен разойтись во DNS серверам провайдеров.

Ваш домашний компьютер узнаёт у DNS сервера провайдера, на какой IP нужно обращаться при открытии любого сайта. Какой IP ему этот DNS отдаст, туда он и пойдёт.

Обычно обновление записей занимает 4-6 часов, но есть DNS провайдера тормоз, то информация о новом IP может идти до него и сутки.

Сделать с этим можно только одно — прописать в настройках своего компьютера нормальный DNS сервер, например от Google 8.8.8.8.

У меня, например, ваш сайт открывается еще со вчера, без проблем.
Василий Наумкин
12 августа 2015, 09:32
+2
В версии 2.1.1-pl поддерживаются наборы параметров и значения по умолчанию — см. обновление внизу заметки.
Василий Наумкин
12 августа 2015, 09:26
1
+4
А вообще, это издевательство, конечно!

С версии 2.1.1-pl, все обычные вызовы сниппетов становятся кэшированными:
{$_modx->runSnippet('pdoResources')}

Некэшированный вызов, понятно дело, вот такой:
{$_modx->runSnippet('!pdoResources')}
Можно обновляться.

Если очень хочется самому управлять кэшем — то верхний пример по-прежнему работает.
Василий Наумкин
12 августа 2015, 09:22
4
0
Вот 2 правила для Nginx: первое пропускает превьюшки, а второе запрещает открывать в галерее всё кроме них
location ~* ^/assets/images/products/\d+/\d+x\d+/ {
	access_log		off;
	expires			10d;
	break;
}

location ~* ^/assets/images/products/\d+/ {
	deny			all;
}
Наверное, можно и как-то красивее написать, но я не придумал.

Теперь никто не откроет полноразмерные картинки, и ты можешь отдавать их через PHP покупателям.