09 сентября 2016, 14:43 Просто в России, если написано акция до 8, это это, блин, до 8, а не до обеда восьмого и не до 7… А если магазин работает до 21, то закрываться он должен в 22 часа, а не в 21-00 и не в 21-30. :) В той России, в которой живу я, если хотят, чтобы акция действовала и 8-го, говорят «акция продлится до 8-го включительно». Ибо приставка «до» имеет строго определенное значение. Магазин дополнений / 100 000 загрузок из репозитория modstore.pro! 17 0
09 сентября 2016, 13:59 Этот код нужно указать в javascript файле и его подключить или прописать напрямую в шаблоне. А в url нужно указать адрес страницы со сниппетом date. Вопросы / modx и ajax 10 0
09 сентября 2016, 13:57 Важна актуальность информации. Представь, ты сидишь в офисе на 3-ем этаже и тебе надо узнать время. Часы находятся на первом этаже. Ты просишь курьера сбегать и узнать. Они прибегает и говорит — 12 часов 22 минуты 41 секунда. Ты его опять посылаешь, он уже приходит не спеша и сообщает — 12 часов 24 минуты 18 секунд. Как ты думаешь, время соответствует реальному? А вот если он сбегает (или сходит) и узнает сколько человек в очереди в столовой, то эта информация будет актуальной. Тут не так важны секунды. Чувствуешь разницу? Вопросы / modx и ajax 10 +1
09 сентября 2016, 11:07 На здоровье! По этому компоненту все планы выполнены. Новые дополнения и их версии / [tagElementPlugin] Доработанный диалог параметров 7 +1
09 сентября 2016, 10:42 Как раз наоборот. Посчитай количество шагов в том и другом случае. Лично я не стал бы ставить пакет ради одного сниппета. Тем более обновлений не планируется. Новые дополнения и их версии / [ViewsOnline] Статистика кто онлайн для страницы 22 0
09 сентября 2016, 10:17 Это что-то новенькое — php для динамических элементов. Сергей, а ты понимаешь, что на ajax запрос требуется время? И может случится так, что запрос будет выполняться несколько секунд. Такие вещи делаются только на яваскрипте. Забиваешь в яндекс «Вывод текущего времени на странице javascript» и получаешь кучу примеров. Вопросы / modx и ajax 10 0
09 сентября 2016, 10:07 Этот репозиторий есть — готовые решения. ;) Плохо тегов тут нет. Новые дополнения и их версии / [ViewsOnline] Статистика кто онлайн для страницы 22 0
09 сентября 2016, 08:18 Хорошее решение. Только лучше таблицу напрямую не указывать. MODX сам умеет определять SELECT * FROM {$modx->getTableName('TicketView')} WHERE .... Новые дополнения и их версии / [ViewsOnline] Статистика кто онлайн для страницы 22 +1 1
08 сентября 2016, 16:13 Для небеглого ознакомления. Вопросы / Пользователей онлайн на странице - как лучше? 10 0
07 сентября 2016, 08:45 А так ... &where=`["TVeventdate.value >= NOW()"]`или так ... &where=`["EventDate >= NOW()"]` Вопросы / Помогите разделить вывод мероприятий по дате 6 +1 1
07 сентября 2016, 08:28 [[!pdoResources? &tpl=`ImmediateEvents` &includeTVs=`1` &includeContent=`1` &includeTVs=`EventImage, EventDate` &processTVs=`1` &limit=`4444` &where=`["TVEventDate.value >= NOW()"]` &showLog=`1` ]]Вызывать обязательно некэшированным. Вопросы / Помогите разделить вывод мероприятий по дате 6 0 1
03 сентября 2016, 14:06 <input type="hidden" name="context_key" value="Айди другого контекста" />А сниппету в параметре allowedFields нужно добавить context_key. Вопросы / Публикация из фронта на другие контексты Tickets 10 0
03 сентября 2016, 11:31 писал впервые из нескольких кусковЭто очень заметно. Чисто для понимания давайте пробежимся по коду. // очищаем кеш Зачем? П.С. Вообще это можно сделать непрограммно — просто создавать некэшированные страницы. Но в данном случае не понятно, зачем это нужно. //Получаем ID текущего ресурса $id = $modx->resource->get('id');Зачем? В первой строчке уже получали. //текущая дата $today = date('Y-m-d');Зачем? В strtotime и так по умолчанию берется текущая дата. $date = date('Y-m-d',strtotime("-$day day", strtotime(preg_replace('~^(\d+)\.(\d+)\.(\d+)$~', '$3-$2-$1', $today)))); Это вообще что за конструкция? Явно откуда-то скопирована без понимания. Хватило бы $date = date('Y-m-d',strtotime("-$day day"));Но и это лишнее, так как в mySql есть готовые функции для работы с датами. $tmpip = $arr_one[«ip»]; $allip[] = $tmpip; А почему нельзя было написать так $allip[] = $arr_one[«ip»]? if (in_array("$ip", $allip)) {$ip нужно указывать без кавычек. print $unlock;Возврат значений из сниппета должен быть через return. Явно есть над чем поработать. Вопросы / Ограничение голосования по IP для easyComm 8 +1
03 сентября 2016, 10:44 Смотрите, Сергей, если задача — разрешить добавлять комментарий 1 раз в n дней, то решается она несколькими строчками. Вариант 1. Через сниппет как у вас. $sql = "SELECT 1 FROM modx_ec_messages C LEFT JOIN modx_ec_threads D ON C.thread=D.id WHERE D.resource = {$modx->resource->id} AND C.date>DATE_SUB(NOW(),INTERVAL {$day} DAY) AND ip = ?" ; $stmt = $modx->prepare($sql); $stmt ->execute($_SERVER['REMOTE_ADDR']); if ($stmt->rowCount() ) { // Запрещено return ''; } // Выполняем указанные сниппет return $modx->runSnippet($snippet, $scriptProperties);Ну и вызывать так // Вместо unlock указываем snippet и любые другие параметры указанного сниппета [[!voting_ban? &snippet=`ecForm` &day=`7`]]Вариант 2. Через плагин. Если у этого компонента есть событие добавления комментария по аналогии с Tickets, то форма показывается, но при добавлении комментария плагин проверяет возможность добавления. Вот как минимум 2 варианта. П.С. Ещё было бы логично проверять почту. У пользователя ip может быть динамическим. А лучше разрешать оставлять отзыв только авторизованным пользователям. Тогда ещё проще. Вопросы / Ограничение голосования по IP для easyComm 8 0 1
03 сентября 2016, 09:32 Если вам интересно, могу объяснить почему данное решение вряд ли кто будет использовать. Вопросы / Ограничение голосования по IP для easyComm 8 0
03 сентября 2016, 08:46 Зачем это нужно понятно из названия. А что делает данный сниппет? Потенциальный пользователь данного решения должен копаться в коде, чтобы понять? И ещё вопрос. Ложу тут — если покажется нужным — прошу перенести куда следует.В данном предложении как правильно читать — лОжу или ложУ? П.С. Данное решение никак не тянет на готовое. Вопросы / Ограничение голосования по IP для easyComm 8 0
03 сентября 2016, 08:04 В файле snippets/game.php добавить работу с кэшем. Документация. Новые дополнения и их версии / [pdoTools] 2.5.0 - файловые элементы 46 +1 1
Редизайн сообщества У меня одного пагинации кнопки отрабатывают на первую страницу? Уточняю: только кнопка — 2 отрабатывает некорректно, начиная с 3 и далее, всё работает
Возможно ли реализовать возможность предоплаты за доставку на сайте? У меня Робокасса, у них вроде есть docs.robokassa.ru/ru/iframe
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... Да, планируется. Даже чуть больше, чем просто бонусная система)
В той России, в которой живу я, если хотят, чтобы акция действовала и 8-го, говорят «акция продлится до 8-го включительно». Ибо приставка «до» имеет строго определенное значение.
Представь, ты сидишь в офисе на 3-ем этаже и тебе надо узнать время. Часы находятся на первом этаже. Ты просишь курьера сбегать и узнать. Они прибегает и говорит — 12 часов 22 минуты 41 секунда. Ты его опять посылаешь, он уже приходит не спеша и сообщает — 12 часов 24 минуты 18 секунд. Как ты думаешь, время соответствует реальному?
А вот если он сбегает (или сходит) и узнает сколько человек в очереди в столовой, то эта информация будет актуальной. Тут не так важны секунды.
Чувствуешь разницу?
По этому компоненту все планы выполнены.
Такие вещи делаются только на яваскрипте. Забиваешь в яндекс «Вывод текущего времени на странице javascript» и получаешь кучу примеров.
или так
Зачем?
П.С. Вообще это можно сделать непрограммно — просто создавать некэшированные страницы. Но в данном случае не понятно, зачем это нужно.
Зачем? В первой строчке уже получали.
Зачем? В strtotime и так по умолчанию берется текущая дата.
Это вообще что за конструкция? Явно откуда-то скопирована без понимания. Хватило бы
Но и это лишнее, так как в mySql есть готовые функции для работы с датами.
А почему нельзя было написать так $allip[] = $arr_one[«ip»]?
$ip нужно указывать без кавычек.
Возврат значений из сниппета должен быть через return.
Явно есть над чем поработать.
Вариант 1. Через сниппет как у вас.
Ну и вызывать так
Вариант 2. Через плагин.
Если у этого компонента есть событие добавления комментария по аналогии с Tickets, то форма показывается, но при добавлении комментария плагин проверяет возможность добавления.
Вот как минимум 2 варианта.
П.С. Ещё было бы логично проверять почту. У пользователя ip может быть динамическим. А лучше разрешать оставлять отзыв только авторизованным пользователям. Тогда ещё проще.
И ещё вопрос.
В данном предложении как правильно читать — лОжу или ложУ?
П.С. Данное решение никак не тянет на готовое.