Евгений Борисов · 05 сентября 2018, 14:12 DatabaseCustomURL http://www.rfxn.com/downloads/rfxn.ndb DatabaseCustomURL http://www.rfxn.com/downloads/rfxn.hdb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/junk.ndb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/phish.ndb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/rogue.hdb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/foxhole_filename.cdb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/foxhole_generic.cdb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/foxhole_js.cdb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/badmacro.ndb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/scam.ndb DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/sanesecurity.ftm DatabaseCustomURL http://ftp.swin.edu.au/sanesecurity/sigwhitelist.ign2 DatabaseCustomURL http://cdn.malware.expert/malware.expert.ndb DatabaseCustomURL http://cdn.malware.expert/malware.expert.hdb DatabaseCustomURL http://clamav.bofhland.org/bofhland_cracked_URL.ndb DatabaseCustomURL http://clamav.bofhland.org/bofhland_malware_URL.ndb DatabaseCustomURL http://clamav.bofhland.org/bofhland_malware_attach.hdb DatabaseCustomURL http://clamav.bofhland.org/bofhland_phishing_URL.ndbТуда же Вопросы / Заражения продолжаются и после обновления до 2.6.5 10 0 3
Евгений Борисов · 04 сентября 2018, 15:21 Увы, но айболит не самое лучшее решение. Они анализируют файлы по регулярным выражениям. В итоге точность детекта в лучшем случае 90%. Я предпочитаю ClamAV с базами SecuriteInfo Вопросы / Заражения продолжаются и после обновления до 2.6.5 10 0 1
Василий Наумкин · 10 октября 2017, 12:39 Если покопаться в MODX API то можно научиться выводить любой ресурс в плагине на нужном событии: $modx->resource = $modx->getObject('modResource', $modx->getOption('site_start')); $modx->resource->set('content', $pdoTools->runSnippet('@FILE snippets/get_panel.php')); $modx->request->prepareResponse();Здесь, как видно, еще и замена контента на свой идёт, на лету. Можно так на лету и виртуальные ресурсы делать, со своими pagetitle и прочими свойствами. При желании, можно вообще весь сайт без ресурсов сделать =) Готовые решения / Одностраничники на базе MODx без контекстов 16 +5 6
Виталий · 22 декабря 2016, 09:41 Спасибо, Евгений! тоже думал в этом направлении Павел подсказал такое решение: [[!pdoPage? &element=`msProducts` &select=`["ROUND(((old_price - price) / old_price) * 100) as price_percentage"]` &sortby=`price_percentage` &sortdir=`DESC` ]] Объявления о работе / MS2 вывод по разнице price-old_price в процентах 8 +1 2
Василий Наумкин · 06 сентября 2016, 10:40 Ну тогда rewrite должен решить все твои проблемы. location ~* ^/en/assets/images/ { rewrite ^/en/assets/images/(.*) /assets/images/$1 permanent; } Кстати, можно сделать еще круче — без редиректа, а просто подставляя нужную директорию, вот так: location ~* ^/en/assets/images/(.*) { alias /полный_путь_к_файлам_от_корня_сервера/assets/images/$1; } Вопросы / No valid context specified 13 +1 3
Володя · 05 августа 2016, 22:35 можно добавить так создать плагин на pdoToolsOnFenomInit, в нем добавить модификатор detector <?php switch ($modx->event->name) { case 'pdoToolsOnFenomInit': if (!$fenom = $modx->getOption('fenom', $scriptProperties)) { return; } if (!$MobileDetect = $modx->getService('mobiledetect', 'MobileDetect', MODX_CORE_PATH . 'components/mobiledetect/')) { return; } $key = $MobileDetect->config['force_browser_variable']; $device = !empty($_GET) && array_key_exists($key, $_GET) ? $modx->stripTags($_GET[$key]) : ''; if (empty($device)) { $device = $MobileDetect->getSettings(); } if (empty($device)) { $detector = $MobileDetect->getDetector(); $device = ($detector->isMobile() ? ($detector->isTablet() ? 'tablet' : 'mobile') : 'standard'); $MobileDetect->saveSettings($device); } $fenom->addModifier("detector", function ($value) use ($device) { return $value == $device; }); break; } и теперь в любом месте можно делать так {if 'mobile'|detector} mobile {/if} {if 'tablet'|detector} tablet {/if} {if 'standard'|detector} standard {/if} Вопросы / Fenom + MobileDetect + NGINX + PHP5-FPM = 502 bad gateway 9 +5 21
Василий Наумкин · 26 февраля 2016, 23:16 Чтобы работало как надо, через ajax: 1. Обновляем pdoTools до версии 2.2.7-pl, в которой добавлена возможность получать доступ к конфигурации объекта pdoPage. 2. На странице примерно такая разметка, &pageVarKey по умолчанию — page. <div class="select_goodlist_count"> <p>Товаров на странице:</p> <select name="count_pages"> <option>5</option> <option>20</option> <option>50</option> </select> <div class="clear"></div> </div> <div id="pdopage"> <div class="rows"> [[!pdoPage? &parents=`0` &ajaxMode=`default` &limit=`5` ]] </div> [[!+page.nav]] </div> 3. И такой скрипт: <script> $(document).on('change', 'select[name="count_pages"]', function() { var params = pdoPage.Hash.get(); params['page'] = 1; params['limit'] = $(this).val(); pdoPage.Hash.set(params); pdoPage.keys['page'] = 0; pdoPage.loadPage(document.location.href, pdoPage.configs['page']); }); </script> Вопросы / Зміна кількості результатів видачі pdoPage 13 +4 1
Василий Наумкин · 15 февраля 2016, 21:57 [[!msProducts? &parents=`0` &innerJoin=`{ "OrderProduct": {"class":"msOrderProduct", "on":"msProduct.id = OrderProduct.product_id"}, "Order": {"class":"msOrder", "on":"Order.id = OrderProduct.order_id"} }` &where=`{ "Order.user_id": [[!+modx.user.id]], "Order.status:>": 1 }` &groupby=`msProduct.id` &showLog=`1` ]]Выводим только те товары, которые были оформлены в заказе текущего юзера и статус у заказа «Оплачен» или выше. Можно еще указывать разные условия в &where. Вопросы / Вопрос по miniShop2+Office 6 +1 2
Василий Наумкин · 23 января 2016, 10:55 Отвечает «отец-основатель», который отказывается обучать javascript всех желающих в техподдержке дополнения. Я действительно не понимаю, в чём может быть проблема вывести какие-то значения в чанке, а потом скопировать их через javascript. Если это получается сделать с title и alt, что мешает это сделать с другими элементами? Очевидно, вы просто не знаете, как работать с jQuery. В моём коде title и alt — это атрибуты тега img, поэтому и обращение к ним идёт через image[0].title и image[0].alt. Если рядом с картинкой будет элемент с классом, например, desc, то получить его можно так: var image = $(this).find('img'); // здесь ищем картинку - это из оригинального кода var desc = $(this).find('.desc'); // а рядом можно поискать элемент с классом desc // После этого содержимое элемента desc можно вставить куда угодно. Например, в элемент .mainImageDesc var imageDesc = gallery.find('.mainImageDesc'); imageDesc.text(desc.text());Это весь нужный javascript код. 80 lvl не требуется даже близко. Чтобы всё работало, нужно не забыть вывести описание на страницу: <div class="span2 col-md-2"> <a href="[[+360x270:default=`[[+url]]`]]" class="thumbnail" data-image="[[+url]]"> <img src="[[+120x90]]" alt="[[+alt]]" title="[[+name]]" width="120" height="90"> <div class="desc" style="display:none;">[[+description]]</div> </a> </div>Я вывожу его в скрытом виде, чтобы не мешало. А еще нужно предусмотреть блок для вывода текста в главной картинке <div class="ms2Gallery"> <a rel="fancybox" href="[[+url:default=`/assets/ms2gallery/minishop2/img/web/ms2_big.png`]]" target="_blank"> <img src="[[+360x270:default=`/assets/components/ms2gallery/img/web/ms2_medium.png`]]" width="360" height="270" alt="[[+alt]]" title="[[+name]]" class="mainImage" /> </a> <div class="mainImageDesc">[[+description]]</div> <div class="row"> [[+rows]] </div> </div> Как видно, речь исключительно о работе с javascript, никаких особенностей, связанных с ms2Gallery, здесь нет. Вопросы / Обновление доп полей изображения (ms2Gallery) 2 +1 2
[videoGallery] Видео галерея YouTube, Vimeo Невозможно установить пакет с подписью: videogallery-1.4.0-beta Ошибка установки Error в /core/packages/videogallery-1.4.0-beta/modCategory/7fc931a7772edc9752c16e9c41eb5e52.reso...
mxBoard: канбан-доска для команд, людей и ИИ-агентов в MODX 3 Привет, добавил пользователя в группу mxBoard(4), создал токен. Добавляю все в postman пишет: rest: { «success»: false, «message»: «Недействительный токен.», «data...
Релиз miniShop2 ver. 4.4.1 & 4.4.2 Подскажите пожалуйста, может я что-то не знаю или упустил. Но есть ли решение по глюку с radio? Указываешь свое radio c одинаковым name и в результате при переключении получаешь вс...
Плагин EnvBadge: визуальный индикатор окружения в админке MODX3 Расскажите пожалуйста как вы настраиваете сайт на MODX 3 чтобы был dev, prod, stage. Можете описать workflow? Допустим у меня 80% — это магазины, там клиенты, продажи, все онлай...
MaxNotify Обновление компонента 1.3.0-pl (22.07.2026) — добавлено автоматическое получение полей через msOrder->toArray(); — массивы и объекты безопасно пропускаются; — стандартные...
MyFavorites MyFavorites — 3.0.0-beta Первая версия для MODX Revolution 3.x — компонент полностью переписан с нуля (PHP >= 8.4, namespaced-ядро MODX 3, PSR-4, сервис-ориентированная архит...
Здесь, как видно, еще и замена контента на свой идёт, на лету.
Можно так на лету и виртуальные ресурсы делать, со своими pagetitle и прочими свойствами. При желании, можно вообще весь сайт без ресурсов сделать =)
тоже думал в этом направлении
Павел подсказал такое решение:
Кстати, можно сделать еще круче — без редиректа, а просто подставляя нужную директорию, вот так:
создать плагин на pdoToolsOnFenomInit, в нем добавить модификатор detector
и теперь в любом месте можно делать так
1. Обновляем pdoTools до версии 2.2.7-pl, в которой добавлена возможность получать доступ к конфигурации объекта pdoPage.
2. На странице примерно такая разметка, &pageVarKey по умолчанию — page.
3. И такой скрипт:
Я действительно не понимаю, в чём может быть проблема вывести какие-то значения в чанке, а потом скопировать их через javascript.
Если это получается сделать с title и alt, что мешает это сделать с другими элементами? Очевидно, вы просто не знаете, как работать с jQuery.
В моём коде title и alt — это атрибуты тега img, поэтому и обращение к ним идёт через image[0].title и image[0].alt. Если рядом с картинкой будет элемент с классом, например, desc, то получить его можно так:
Это весь нужный javascript код. 80 lvl не требуется даже близко.
Чтобы всё работало, нужно не забыть вывести описание на страницу:
Я вывожу его в скрытом виде, чтобы не мешало.
А еще нужно предусмотреть блок для вывода текста в главной картинке
Как видно, речь исключительно о работе с javascript, никаких особенностей, связанных с ms2Gallery, здесь нет.