Андрей

Андрей

Был в сети 25 июня 2026, 01:11
Заказы принимаю
V
V
1
+1
Для jGrowl решил вот так:
<script>
    $(document).ready(function(){
        $.jGrowl.defaults.beforeOpen = 
            function(message) {
                if ($(message).find('.jGrowl-message').text() == 'g-recaptcha-response: Это поле обязательно.') {
                    $(message).find('.jGrowl-message').text('Подтвердите, что вы не робот.');
                };
        };
    });
</script>
Володя
Володя
1
+1
пример плагина для расчета стоимости userevents.vgrish.ru/manager/?a=element/plugin/update&id=7
Добавить проверку на время
case "UserEventsOnBeforeGetOrderCost":
        /** @var UserEventsOrderInterface $orderHandler */
        $orderHandler = $modx->getOption("order", $scriptProperties);
        if (!$orderHandler OR !($orderHandler instanceof UserEventsOrderInterface)) {
            return;
        }
        $values = $modx->Event->returnedValues;
        $data = $orderHandler->get();
     
        $rid = $modx->getOption("resource", $data);

        $cost = 0;
        // расчет стоимости согласно своей логике
        if ($resource = $modx->getObject("modResource", $rid)) {
            $cost = $resource->get("id") * 100;
        }
        
        $add_cost = 0;

	// проверка на вечернее время
        $time = isset($data['time']) ? $data['time'] : '';
        if ($time) {
            $time = array_map('floatval', explode(',', $time));
            if ($time[0] >= 19) {
                $add_cost += $cost / 100 * 30;
            }
        }
        
        $cost += $add_cost;

        $values["cost"] = $cost;

        $modx->event->returnedValues = $values;
        break;
Володя
Володя
3
+1
Константин Ильин
Константин Ильин
1
0
В случае если меняется только домен(поддомен):

Создаете ресурс
pagetitle: robots
Тип содержимого: text
Кэшируемый: убрать галочку

Создаете шаблон Robots с содержимым (Должен быть включен Fenom)
User-agent: *
Disallow: /manager/
Disallow: /assets/components/
Disallow: /core/
Disallow: /connectors/
Host: {$.server.HTTP_HOST}

Sitemap: {$.server.REQUEST_SCHEME}://{$.server.HTTP_HOST}/sitemap.xml

В корне сайта нужно удалить файл robots.txt иначе будет загружаться он, а не созданный ресурс.
Присваиваете этот шаблон ранее созданному ресурсу и все готово. Теперь у вас динамический роботс, пляшущий от HTTP_HOST.
Bender
Bender
3
+2
Благодаря Василию, вопрос был разрешен.
'class' => 'modResource',
        'loadModels' => 'ms2gallery',
        'leftJoin' => [
            'Image' => [
                'class' => 'msResourceFile',
                'on' => 'modResource.id = Image.resource_id AND Image.parent = 0',
            ],
            'Thumb' => [
                'class' => 'msResourceFile',
                'on' => 'Image.id = Thumb.parent AND Thumb.path LIKE "%medium%"',
            ]
        ],
        'select' => [
            'modResource' => '*',
            'Image' => 'Image.url as image',
            'Thumb' => 'Thumb.url as thumb',
        ],
Николай
Николай
1
0
получилось реализовать следующим способом
вывод
[[pdoResources?
&parents=`[[*id]]`
	&class=`msVendor`
	 &parents=`0` 
    &where=`{"id:IN":[ [[msVendor]] ]}`
	&sortby=`name`
	&sortdir=`ASC`
		&limit=`0`
	&tpl=`vendor.tpl`
]]
чанк vendor.tpl
[[+logo:is=``:then=``:else=` 
<li><a href="[[~[[*id]]]]?vendors=[[+id]]"> <img src="[[+logo]]" > <p>[[+name]]</p></a>   </li>

`]]
чанк vendor.tpl3
[[#[[+id]].vendor]],
чанк vendor.tpl4
[[#[[+id]].vendor]]
сниппет msVendor
$ids = $modx->runSnippet('msProducts', array('where'=>'{"Data.vendor:!=":"0"}','limit'=>0,'tpl'=>'vendor.tpl3','tplLast'=>'vendor.tpl4'));

 
print_r($ids);