Игорь

Игорь

С нами с 12 сентября 2018; Место в рейтинге пользователей: #495
Игорь
20 октября 2023, 10:23
0
Здравствуйте.
Как можно сделать множественный список ресурсов?
Стандартный вариант (добавить в поле «Список (множественный выбор)» запрос mysql или сниппет) здесь не срабатывает…
@EVAL return $modx->runSnippet('pdoResources', array(
	'parents' => 3,
	'limit' => 0,
	'tpl' => '@INLINE {$pagetitle}=={$id}',
	'outputSeparator' => '||',
	'sortby' => '{"menuindex":"ASC"}'
  ));
Игорь
15 октября 2023, 13:59
0
Вывел в логи срабатывание плагинов:
[2023-10-15 13:50:33] Сработал msBonus: OnMODXInit
[2023-10-15 13:50:33] Сработал msBonus: msOnBeforeSaveOrder
[2023-10-15 13:50:33] Сработал msBonus: msOnSaveOrder
[2023-10-15 13:50:33] Сработал msBonus: msOnCreateOrder
[2023-10-15 13:50:33] Сработал msTelegram
[2023-10-15 13:50:34] Сработал msBonus: msOnEmptyCart
[2023-10-15 13:50:34] Сработал msBonus: msOnBeforeChangeOrderStatus
[2023-10-15 13:50:34] Сработал msBonus: msOnBeforeSaveOrder
[2023-10-15 13:50:34] Сработал msBonus: msOnSaveOrder
[2023-10-15 13:50:34] Сработал msBonus: msOnBeforeSaveOrder
[2023-10-15 13:50:34] Сработал msBonus: msOnSaveOrder
[2023-10-15 13:50:34] Сработал msBonus: msOnSaveOrder
[2023-10-15 13:50:35] Сработал msBonus: OnMODXInit
[2023-10-15 13:50:43] Сработал msBonus: OnMODXInit
В событии msOnCreateOrder порядок верный сейчас (сначала msBonus, потом msTelegram).
т.е. отправку телеграм нужно вешать на какое-то другое событие? Но ведь тогда будут лишние сообщения приходить при каждом сохранении заказа? А нужно только о новых заказах писать в телеграм?
Что-то я совсем запутался — на почту ведь нормальное письмо приходит, со всеми бонусами (и на странице «Заказ получен» тоже всё хорошо)
Игорь
15 октября 2023, 11:50
0
Такое ощущение, что эти бонусы «долго списываются» и msTelegram раньше начинает свою работу, даже если по порядку он включается позже… Такое может быть?
Может быть моно настроить какую-нибудь задержку по времени выполнения?
Игорь
15 октября 2023, 11:24
0
msTelrgram:
$message = "
Новый заказ #{$msOrder->num}
на сумму {$msOrder->cost} р.
Оплата: {$msOrder->Payment->name}
Доставка: {$msOrder->Delivery->name}
...
"
Игорь
14 октября 2023, 21:49
0
не помогло
Игорь
14 октября 2023, 21:15
0
у плагина msBonus на событие msOnCreateOrder стоит приоритет 9999999, у плагина msTelegram был 0 — я поставил 99999999 (на одну 9 больше)… ))
Игорь
14 октября 2023, 19:59
0
да, чистил… и в админке, и через файлы
Игорь
14 октября 2023, 12:20
0
Здравствуйте.
Подскажите, можно ли на странице оформления заказа динамически изменять итоговую сумму при применении бонусов?
Т.е. из документации docs.modx.pro/components/msbonus2/quick-start я понял, что можно вывести дополнительную строчку типа «из ни Оплата бонусами» рядом с итоговой суммой заказа. Но есть желание изменять саму сумму (с учетом того, что она также зависит от стоимости доставки, промокодов и т.п.).
Или добавить ещё один параметр «Итого к оплате» (стоимость заказа — бонусы), опять же что бы это все работало динамически?
Игорь
10 октября 2023, 01:01
0
ну и выбранные диапазоны цен почему-то не запоминаются (т.е. выбрал диапазон, перезагрузил страницу — в адресной строке браузера цифры есть, в ползунке все «по умолчанию»)… переменная {$current_value} не работает получается?
Игорь
10 октября 2023, 00:40
0
вроде почти со всем уже разобрался… только не могу понять, почему когда мышкой перемещаешь ползунок слайдера, цифры в результате, чаще всего «немножко не правильные» вылазят (когда мышкой двигаю — всё четко)… я так понимаю, что это связано с тем, что «в самом коде слайдера нужно изменить отправку события change только когда «отпустили» ползунок» — только как это сделать, я в js не особо ((
Игорь
09 октября 2023, 21:49
0
сейчас увидел, что это я в чанке tpl.mFilter2.filter.number просто кавычки забыл закрыть в параметре name="{$filter_key}"… но, всё равно, нормально пока не работает — у меня два этих ползунка, а в js я не особо силен… если есть готовое правильное решение — было бы очень круто )
Игорь
09 октября 2023, 21:29
0
Здравствуйте.
Тоже пытаюсь «прикрутить» Ion.RangeSlider к mFilter2.
Может быть кто-нибудь разобрался уже с этим вопросом?
Вроде бы все и просто должно быть, но по факту корректно не работает совсем у меня.
1. Чанк tpl.mFilter2.filter.slider:
<fieldset id="mse2_{$table ~ $delimeter ~ $filter}">
    <div class="price" id="js-range-slider-{$filter_key}">
		<div class="name">{('mse2_filter_' ~ $table ~ '_' ~ $filter) | lexicon}</div>
		<!--<div class="mse2_number_slider mse2_number_inputs row"></div>-->
		<input type="text" class="js-range-slider mse2_number_slider mse2_number_inputs row" name="{$filter_key}" value=""
        data-type="double"
        {$rows}
        data-grid="true"
    />
	</div> 
</fieldset>
2. Чанк tpl.mFilter2.filter.number (наверное так не правильно делать, но чисто для примера):
{var $key = $table ~ $delimeter ~ $filter}
{if $idx == 0}data-min="{$value}" data-from="{$value} name="{$filter_key}" id="mse2_{$key}_{$idx}" value="{$value} data-current-value="{$current_value}" class="form-control ml-1""{/if}
{if $idx == 1}data-max="{$value}" data-to="{$value} name="{$filter_key}" id="mse2_{$key}_{$idx}" value="{$value} data-current-value="{$current_value}" class="form-control ml-1""{/if}
3. Скрипт, который должен реагировать на изменения ползунка (из вашего примера), он вроде даже как-то и «реагирует», но очень странно:
<script>
    $(".js-range-slider").ionRangeSlider({
        range: true,
        type: "double",
        keyboard: true,
        input_values_separator: ",",
        onFinish:function(ui) { 
	    $('.js-range-slider').val(ui.from + ',' + ui.to);
            $('.js-range-slider').trigger('change');
	} ,
    } ) ;
</script>
Игорь
04 октября 2023, 23:00
0
{set $articles = 'pdoResources' | snippet : [
                'parents' => '8',
				'limit' => '5',
                'includeTVs' => 'img',
                'sortby' => 'menuindex',
                'sortdir' => 'ASC',
                'tvPrefix'=>'',
                'return' => 'data'
 ]}
и дальше уже по верстке:
<section class="building">
	<div class="container">
		<h3 class="title">{$title}</h3>
		<div class="building__inner">
			<div class="building__blocks">
				<div class="building__block building__block-1">
					<div class="title">{$articles[0].pagetitle}</div>
					<div class="subtitle">{$articles[0].introtext}</div>
					<a href="{$_modx->config.site_url}{$articles[0].uri}" class="btn">ПОДРОБНЕЕ</a>
				</div>
				<div class="building__block building__block-2">
					<div class="title">{$articles[1].pagetitle}</div>
					<div class="subtitle">{$articles[1].introtext}</div>
					<a href="{$_modx->config.site_url}{$articles[1].uri}" class="btn">ПОДРОБНЕЕ</a>
				</div>
			</div>
			<div class="building__blocks">
				<div class="building__block building__block-3">
					<div class="photo"><img src="{$_modx->config.site_url}{$articles[2].img}" alt="{$articles[2].pagetitle}"></div>
					<div class="content">
						<div class="title">{$articles[2].pagetitle}</div>
						<a href="{$_modx->config.site_url}{$articles[2].uri}" class="btn">ПОДРОБНЕЕ</a>
					</div>
				</div>
				<div class="building__block building__block-4">
					<div class="title">{$articles[3].pagetitle}</div>
					<div class="subtitle">{$articles[3].introtext}</div>
					<a href="{$_modx->config.site_url}{$articles[3].uri}" class="btn">ПОДРОБНЕЕ</a>
				</div>
				<div class="building__block building__block-5">
					<div class="photo">
						<img src="{$_modx->config.site_url}{$articles[4].img}" alt="{$articles[4].pagetitle}">
					</div>
					<div class="content">
						<div class="title">{$articles[4].pagetitle}</div>
						<a href="{$_modx->config.site_url}{$articles[4].uri}" class="btn">ПОДРОБНЕЕ</a>
					</div>
				</div>
			</div>
		</div>
	</div>
</section>
// и т.д.
Спасибо за помощь!
Игорь
04 октября 2023, 22:39
0
добавил в вызов сниппета, что бы без префикса стали доп.поля — вроде все заработало )
'tvPrefix'=>'',
как же у вас всё «сложно» в этом модексе, всю голову можно сломать пока разберешься (
Игорь
04 октября 2023, 21:50
0
спасибо, я уже «по простому забацал» как Вы посоветовали… только с допполями не могу сообразить
Игорь
04 октября 2023, 21:47
0
только ещё доп.поля почему-то не подтягиваются — но это я видимо сам уже опять туплю
Игорь
04 октября 2023, 21:25
0
«по уродски конечно получается»… тупо вставлять переменные… но не мы такие, вёрстка такая ))
Игорь
04 октября 2023, 21:09
0
вроде работает по вашей подсказке, толком не смотрел ещё, но кажется всё ок )
{set $test = 'pdoResources' | snippet : [
                'parents' => '8',
				'limit' => '5',
                'includeTVs' => 'img',
                'sortby' => 'menuindex',
                'sortdir' => 'ASC',
                'return' => 'data'
 ]}
 
  {$test[0].pagetitle}
 {$test[0].introtext}
 {$test[0].uri}
 {$test[0].tv.img}
остается только в чанке с версткой эти элементы распихать по нужным блокам
Игорь
03 октября 2023, 19:05
0
а если всё в обычный плейсхолдер засунуть, будет работать? типа myarticle[0].title и т.д… я что-то правда не ожидал, что на этом сниппете споткнусь (… просто сейчас делаю дальше, но этот вопрос висит ((