Andrew

Andrew

Был в сети 15 ноября 2024, 02:10
Заказы не принимаю
Жаль в php не силён, а так бы обязательно воспользовался вашим советом, да и вообще, написал бы молча свой ecThreadRatingCustom и не лез бы сюда с дурными вопросами).
Поэтому и спрашиваю, может у кого была похожая задача и он её решил? Тем более я не первый с таким вопросом:
Виктор
07 марта 2018, 19:41

Приветствую! Такой вопрос возник — как можно вывести общий рейтинг из нескольких ресурсов?

На счетчике сообщений проблем нет — справляется параметр threads, а на рейтинге то он отсутствует. Можно его как-то прикрутить или нужно сделать какой-то альтернативный вызов?
Добрый день, нужна помощь зала, может кто нибудь сталкивался с подобной проблемой)
Сайт с контекстами.
Заказчик хочет, чтобы на странице товара, в отзывах о товаре, показывались отзывы со всех контекстов этого товара. Благодаря threads в сниппете ecMessages, эту проблему вроде удалось решить используя такую конструкцию:
{set $theadweb = 'question-'~$_modx->runSnippet("!BabelTranslation", [
           'contextKey' => 'web', 
           'resourceId' => $_modx->resource.id])}
{set $theadby = 'question-'~$_modx->runSnippet("!BabelTranslation", [
           'contextKey' => 'by', 
           'resourceId' => $_modx->resource.id])}        
{$_modx->runSnippet("!ecMessages", [
          'tpl' => '@FILE chunks/tpl_question.tpl',
          'threads' => "$theadweb, $theadby"])}
а вот со сниппетом ecThreadRating такой фокус не проходит, так как там изначально нету параметра threads, и соответственно нельзя указать несколько цепочек комментариев для обработки сниппетом.
Может кто подскажет как можно решить данную проблему или натолкнёт на правильный ход мыслей?
Такая же история, не выводится ссылка на контекст 'ua' на странице с контекстом 'web' именно в Гугл хроме, в других браузерах всё работает. Наоборот, то есть, на странице с контекстом 'ua', ссылка на контекст 'web' выводится нормально. Кеш Гугл хрома чистил, но не помогает.
ПС: web — русский, ua — украинский
Что за мистика?
Получается с укр.страницы можно перейти на рус., а с рус.страницы на укр. не выводится ссылка-переключатель… и именно в Гугл хроме…
Предложить свой код разработчикам?) Ахахаха… Отличная шутка!)
А у меня вторая серия, только теперь с tickets-ом), он тоже грузит свои скрипты и стили с пустыми настройками frontend_css и frontend_js, но с включенным enable_editor в положении 'да', и никак это побороть нельзя.
Придётся отключить этот редактор «markltUp» в комментариях, блин.
Это да, узнаю сразу если клиент захочет без моего ведома обновить минишоп)

Так понимаю в mSearch2 добавили такую возможность в базовую сборку? Почему нельзя сделать так же с minishop2 в одном из следующих обновлений?
в общем закостылил такой вариант)
добавил в файл minishop2.class.php на строку 143 такой код:
if (empty($js)) {
                $message_setting = array(
                    'close_all_message' => $this->modx->lexicon('ms2_message_close_all'),
                );

                $js_setting = array(
                    'cssUrl' => $this->config['cssUrl'] . 'web/',
                    'jsUrl' => $this->config['jsUrl'] . 'web/',
                    'actionUrl' => $this->config['actionUrl'],
                    'ctx' => $ctx,
                    'price_format' => json_decode(
                        $this->modx->getOption('ms2_price_format', null, '[2, ".", " "]'),
                        true
                    ),
                    'price_format_no_zeros' => (bool)$this->modx->getOption('ms2_price_format_no_zeros', null, true),
                    'weight_format' => json_decode(
                        $this->modx->getOption('ms2_weight_format', null, '[3, ".", " "]'),
                        true
                    ),
                    'weight_format_no_zeros' => (bool)$this->modx->getOption('ms2_weight_format_no_zeros', null, true),
                );

                $data = json_encode(array_merge($message_setting, $js_setting), true);
                $this->modx->regClientStartupScript(
                    '<script>miniShop2Config = ' . $data . ';</script>',
                    true
                );
            }
вроде работает и теперь можно подключаемые на страницу файлы минишопа засунуть в один файл minifix-а и теперь все функции на сайте работают нормально…
Столкнулся с такой проблемой, после удаления скриптов фронтенда в минишопе (ms2_frontend_js), перестаёт инициализироваться переменная miniShop2Config в head, хотя все скрипты минишопа добавляются в минимизированный файл (проверил), причем в том порядке, в котором они работали до добавления в группы и прехуки.
Из за этого не работает нормально сайт,
вот собственно вызов сниппета:
{'!MinifyX' | snippet : [
		'minifyCss'=>1,
		'minifyJs'=>1,
		'cssGroups' => 'baseCss',
                'jsGroups' => 'baseJs',
                'preHooks' => 'main.php, .......'
	  ]}
а вот файл groups.php
<?php

return [
    'baseCss' => [
        '{assets_url}css/bootstrap.min.css',
        '{assets_url}css/style.css',
       .......
        '{assets_url}components/mspnnotify/js/web/pn/pnotify.custom.css'
    ],
    'baseJs' => [
        '{assets_url}js/jquery-1.10.2.min.js',
        '{assets_url}js/bootstrap.min.js',
      ........
        '{assets_url}components/mspnnotify/js/web/pn/default.js',
        '{assets_url}components/mspnnotify/js/web/pn/pnotify.custom.js'        
    ],   
    'ticketsCss' => [
        '{assets_url}components/tickets/css/web/default.css',
        '{assets_url}components/tickets/js/web/editor/editor.css'
    ],
    'ticketsJs' => [
        '{assets_url}components/tickets/js/web/default.js',
        '{assets_url}components/tickets/js/web/editor/jquery.markitup.js'
    ],
    'msearch2Css' => [
        '{assets_url}components/msearch2/css/web/default.css'        
    ],
    'msearch2Js' => [
        '{assets_url}components/msearch2/js/web/default.js'        
    ],
    'minishop2Css' => [
        '{assets_url}components/minishop2/css/web/default.css?v=d667606381',
        '{assets_url}components/minishop2/css/web/lib/jquery.jgrowl.min.css'
    ],
    'minishop2Js' => [
        '{assets_url}components/minishop2/js/web/default.js?v=d667606381',
        '{assets_url}components/minishop2/js/web/lib/jquery.jgrowl.min.js',
        '{assets_url}components/minishop2/js/web/message_settings.js'
    ],
    'msoptionspriceCss' => [
        '{assets_url}components/msoptionsprice/css/web/default.css?v=2385a7bc'        
    ],
    'msoptionspriceJs' => [
        '{assets_url}components/msoptionsprice/js/web/default.js?v=2385a7bc'        
    ],
    'easycommCss' => [
        '{assets_url}components/easycomm/css/web/ec.default.css'        
    ],
    'easycommJs' => [
        '{assets_url}components/easycomm/js/web/ec.default.js'        
    ],
    'lookedJs' => [
        '{assets_url}components/looked/js/web/looked.js'        
    ],
    'ajaxformCss' => [
        '{assets_url}components/ajaxform/css/default.css'        
    ],
    'ajaxformJs' => [
        '{assets_url}components/ajaxform/js/default.js'        
    ],
];
и main.php:
<?php
if ($modx->resource->template == 1 || $modx->resource->template == 3) {    
    $MinifyX->addCssGroup('msearch2Css,minishop2Css,msoptionspriceCss');
    $MinifyX->addJsGroup('msearch2Js,minishop2Js,msoptionspriceJs');   
}
короче, пока что не получается объединить в один файл скрипты дополнений, если есть минишоп)