Вопросы

mFilter2 - &ajaxMode=`button`

mFilter2 - &ajaxMode=`button`
Пытаюсь изменить кнопку, но всё тщетно, помогите решить проблему.
Пробовал так:
&ajaxTplMore=`@INLINE <button class="btn btn-default btn-more my">[[%pdopage_more]]</button>`
И так:
&ajaxTplMore=`ajaxTplMore`
Класс добавить пытался my.
Илья Александрович
29 декабря 2017, 06:04
modx.pro
1 951
0

Вывод товаров с старой ценой или пометкой особый

Здравствуйте.
как вывести товары у которых заполнено поле «Старая цена» или стоит галочка «Особый»?
Пробовал разные варианты, ничего не получается.
{"Data.old_price:!=":"0" OR "Data.favorite:!=":"0"}
{"Data.old_price:!=":"0" OR "Data.favorite":"1"}
Выводят все ресурсы без фильтрации
Вячеслав Варов
29 декабря 2017, 05:33
modx.pro
7 880
0

Прайс-листы большие и не очень с помощью migx + pdoPage

Доброго дня уважаемые!
Давно хотел здесь, что-то нужное и полезное написать, но руки дошли только сейчас, да и тема на мой взгляд актуальная. Ну так вот, стояла задача по организации прайс-листов на сайте медицинского центра, причем не просто вывод, а с поиском и выбором категории на основе csv, то есть все данные должны браться только из csv.

В целом стояли такие задачи:
1. Загрузка csv прайсов через форму в админке
2. Фильтрация по категориям в csv (отдельное поле категория в csv)
3. Поиск по прайсу
4. ajax подгрузка строк

Мое решение:

сниппет getPrice
<?php
if($method != 'search') {
    $csv = file_get_contents($_SERVER['DOCUMENT_ROOT'].$file);
    $array = str_getcsv($csv, "\n");
    $json = json_encode($array);
}

$idx = 1;
switch ($method) {
    case 'search':
        if(!empty($_GET['search'])) {
            $out = '{"el1:contains":"'.$_GET['search'].'"}';    
        }elseif (!empty($_GET['way'])) {
            $out = '{"el2":"'.$_GET['way'].'"}';    
        }
        return $out;
        break;
    case 'options':
        foreach ($array as $row) {
            $new = explode(';', $row);
            if($new[1] != '') $categories[] = $new[1];
            $categories = array_unique($categories);
            unset($categories[0]);
        }
        
        $idx = 1;
        foreach ($categories as $item) {
            $migx[$idx-1]['MIGX_id'] = $idx;
            $migx[$idx-1]['category'] = $item;
            $idx++;   
        }
        break;
    default:
        foreach ($array as $row) {
            $new = explode(';', $row);
            $migx[$idx-1]['MIGX_id'] = $idx;
            $x = 1;
            foreach ($new as $a) {
                $migx[$idx-1]['el'.$x] = $a;
                $x++;
            }
            $idx++;
        }
        break;
}
return json_encode($migx);

форма с поиском
<form action="[[~[[*id]]]]" method="GET" class="form-search">
        <input type="text" name="search" placeholder="Поиск по прайсу" value="[[!#GET.search]]">
        <button type="submit"></button>
        <div class="desc">Например, <span class="blue">невролог</span>  </div>
</form>

Форма с выбором категории
<form action="[[~[[*id]]]]" class="sorting" method="GET">
	<div class="input-group">
		<select name="way" id="way">
			<option value="">Все направления</option>
			[[!getImageList?
			        &value=`[[getPrice? &file=`[[*pricelist_new]]` &method=`options`]]`
                                &tpl=`wayOptions.tpl`
                                &limit=`0`
                        ]]
		</select>
	</div>
</form>

pdoPage
<div class="table-services table-pricelist" style="border:none" id="pdopage">
    <div class="rows">
    [[!pdoPage?
        &element=`getImageList`
        &value=`[[getPrice? &file=`[[*pricelist_new]]`]]`
        &limit=`100`
        &tpl=`pricelist_new.tpl`
        &where=`[[!getPrice? &method=`search`]]`
        &ajax=`1`
        &ajaxMode=`scroll`
    ]]
    </div>
    [[!+page.nav]]
</div>
Сам csv:
  • разделитель; (точка с запятой)
  • кодировка UTF-8
В идеале можно конечно допилить следующие моменты:
1. убрать ограничения по csv
2. перевести на fenom

Подобного решения на форуме не нашел, может кому и пригодится.
Andrey Frost
29 декабря 2017, 04:51
modx.pro
2
1 461
+1

pdoResources + phpThumbOn с @INLINE

Дано:

[[pdoResources? &parents=`2` &limit=`3` &sortby=`RAND()` &tpl=`@INLINE [[$chunk]]`]]

Внутри $chunk:

<img src="[[phpThumbOn? &input=`/images/quests/[[+alias]]/av_[[+alias]].jpg` &options=`q=75`]]" />

Замена где угодно [[]] на {{}} не помогла, как бы не пытался. Вызов без кеша тоже не помогает. phpThumbOn генерит заглушку, хотя чистый [[+alias]] вполне выводится.
koozoo
28 декабря 2017, 15:06
modx.pro
3 285
0

Как в minishop2 создать заказ в админке?

Как в minishop2 менеджеру создать заказ в админке и присвоить его пользователю? Все облазил и не нашел такого функционала. Можно под «левым» аккаунтом делать заказ, а потом его менять в админке, но это не удобно.
UDAV
28 декабря 2017, 12:38
modx.pro
1 206
0

2 уровень меню только для одного пункта

Подскажите как реализовать:
Есть 5 пунктов меню, у 3-х из них есть много дочерних элементов. Мне нужно в меню вложенность сделать только для одного.
[[pdoMenu?
	&parents=`0`
        &level=`1`
        &resources=`-8`
        &tpl = `@INLINE <li[[+classes]]><a class='nav-link' href="[[+link]]" [[+attributes]]>[[+menutitle]]</a>[[+wrapper]]</li>`
        &outerClass=`navbar-nav`
        &rowClass=`nav-item`
        &tplHere=`@INLINE <li [[+classes]]><span class='nav-link active' >[[+menutitle]]</span>[[+wrapper]]</li>`
        &firstClass=``
        &lastClass=``
]]
Miša Bulic
28 декабря 2017, 08:23
modx.pro
1 206
0

Пример ms2form

Люди добрые, покажите пожалуйста примеры реализации. По возможности если еще и с опциями было бы здорово. Титул, прайс и картинки нормально выводит, а вот с ТВ и опциями не могу разобраться.
Сергей Лим
28 декабря 2017, 00:19
modx.pro
2 728
0

Как подружить pdoPage и phpthumbon

Доброго времени суток!
Столкнулся с проблемой и к сожалению гугление не помогло, хочу вывести фото к новости из TV. естественно фото загружали абы какого размера и перед выводом его нужно привести к определенным размерам, пытаюсь использовать модификатор, но картинка не показывается.

Вызываю так
&tplFirst=`@INLINE <img src="[[!+tv.img:phpthumbon=`w=371&h=208&zc=1`]]
" alt="[[+pagetitle]]" />
DeHuCkA
27 декабря 2017, 20:57
modx.pro
1 709
0

Водяной знак. phpthumbon

Кто нибудь делал подобное? Как можно реализовать?
Водяной знак на темном фоне добавлялся светлыми буквами, а на светлом – темными.
Илья Александрович
27 декабря 2017, 17:17
modx.pro
1
1 260
0

Изменения уже существующего заказа

Подскажите, как отследить изменение уже существующего заказа? Не понимаю какое тут событие вызывается. Мне что нужно: После оформления заказа менеджер может удалить или добавить товары в заказ. Нужно уведомлять по почте покупателя об изменении состава заказа. Заранее спасибо!
ViktorK
27 декабря 2017, 14:46
modx.pro
1 425
0