Andrey Frost
С нами с 16 февраля 2016; Место в рейтинге пользователей: #718Не отображается поле receiver в заказах
Доброго времени суток, подскажите почему поле receiver не отображается в админе минишопа?
скрин
Хотя в заказе поле заполнено
скрин
Хотя в заказе поле заполнено
mfilter2 custom filter по tv с разделителем
Доброго времени суток.
Пытался сделать кастомный фильтр для mfilter2, можно сказать почти удалось, но столкнулся с проблемой, при фильтрации по одному тв полю — все работает, если по нескольким уже нет.
Всего полей 10 в них содержатся значения в таком виде: 0|1|2 и т.д.
https://yadi.sk/i/AU8706AxkYLZzQ
Прошу помощи
Пытался сделать кастомный фильтр для mfilter2, можно сказать почти удалось, но столкнулся с проблемой, при фильтрации по одному тв полю — все работает, если по нескольким уже нет.
Всего полей 10 в них содержатся значения в таком виде: 0|1|2 и т.д.
<?php
class myCustomFilter extends mse2FiltersHandler {
public function buildQstFilter(array $values) {
if (count($values) < 2 && empty($this->config['showEmptyFilters'])) {
return array();
}
$tmp = $values;
$values = array();
foreach ($tmp as $k => $v) {
$tmp = explode('|', $k);
foreach ($tmp as $k => $v) {
$values[$v] = array(
$v => $v
);
}
}
$results = array();
foreach ($values as $value => $ids) {
$title = $value;
if (!isset($results[$value])) {
$results[$value] = array(
'title' => $title
,'value' => $value
,'type' => 'price'
,'resource' => array()
);
}
foreach ($ids as $id) {
$results[$value]['resources'][] = $id;
}
}
ksort($results);
return $results;
}
public function filterQst(array $requested, array $values, array $ids) {
$matched = array();
//$values = Array ( [7] => Array ( [890] => 890 ) [2|7] => Array ( [1530] => 1530 ) )
//$value = 2
$value = $requested[0];
$tmp = array_flip($ids);
foreach ($values as $answ_id => $id) {
$answ = explode('|', $answ_id);
if(in_array($value, $answ)) {
foreach ($id as $k => $v) {
$matched[] = $v;
}
}
}
return $matched;
}
}
В шаблоне{'!mFilter2'|snippet:[
'aliases' => '
tv|qst_9==qst_9,
tv|qst_10==qst_10,
tv|qst_11==qst_11,
tv|qst_12==qst_12,
tv|qst_13==qst_13,
tv|qst_14==qst_14,
tv|qst_15==qst_15,
tv|qst_16==qst_16,
tv|qst_18==qst_18,
tv|region==region,
ms|price==price,
resource|parent==category
',
'filters' => '
tv|qst_9:qst,
tv|qst_10:qst,
tv|qst_11:qst,
tv|qst_12:qst,
tv|qst_13:qst,
tv|qst_14:qst,
tv|qst_15:qst,
tv|qst_16:qst,
tv|qst_18:qst,
tv|region:qst,
ms|price:number,
resource|parent:parents
',
'parents' => 7,
'limit' => 12,
'element' => 'msProducts',
'sortby' => 'RAND()',
'class' => 'msProduct',
'includeContent' => 1,
'includeTVs' => 'filials,img,qst_9,qst_10,qst_11,qst_12,qst_13,qst_14,qst_15,qst_16,qst_18,region',
'tplOuter' => 'PODBORKA.mFilter2.outer',
'tplFilter.outer.default' => 'mFilter2.filter.outer',
'tplFilter.row.default' => 'mFilter2.filter.checkbox',
'tplFilter.outer.price' => 'tpl.mFilter2.filter.slider',
'tplFilter.row.price' => 'tpl.mFilter2.filter.number',
'tpls' => 'CATALOG.item.tpl',
'hideContainers' => 1,
'showEmptyFilters' => 1,
'suggestions' => 0,
'ajaxMode' => 'default'
]}
Сами поля:https://yadi.sk/i/AU8706AxkYLZzQ
Прошу помощи
Прайс-листы большие и не очень с помощью migx + pdoPage
Доброго дня уважаемые!
Давно хотел здесь, что-то нужное и полезное написать, но руки дошли только сейчас, да и тема на мой взгляд актуальная. Ну так вот, стояла задача по организации прайс-листов на сайте медицинского центра, причем не просто вывод, а с поиском и выбором категории на основе csv, то есть все данные должны браться только из csv.
В целом стояли такие задачи:
1. Загрузка csv прайсов через форму в админке
2. Фильтрация по категориям в csv (отдельное поле категория в csv)
3. Поиск по прайсу
4. ajax подгрузка строк
Мое решение:
сниппет getPrice
форма с поиском
Форма с выбором категории
pdoPage
1. убрать ограничения по csv
2. перевести на fenom
Подобного решения на форуме не нашел, может кому и пригодится.
Давно хотел здесь, что-то нужное и полезное написать, но руки дошли только сейчас, да и тема на мой взгляд актуальная. Ну так вот, стояла задача по организации прайс-листов на сайте медицинского центра, причем не просто вывод, а с поиском и выбором категории на основе 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
Подобного решения на форуме не нашел, может кому и пригодится.
HybridAuth не редиректит на провайдера
Доброго дня уважаемые, столкнулся с такой проблемой: в журнале пишет [HybridAuth] No provider ID specified, во фронтенде при клике просто обновляется страница, ключи пробовал генерить множество раз, безрезультатно. Самое интересное работают Google,Yandex,Vkontakte,facebook*, но ни в какую не хотят работать другие провайдеры, везде одна картина, просто обновляется страница и запись в журнале [HybridAuth] No provider ID specified. Пробовал на Twitter, Yahoo, Mailru, скрин с настройками joxi.ru/E2pgLeNTBEvzqm (Mailru). Подскажите что не так делаю, сносить и заново ставить модуль пробовал — не помогло.
p.s. дружественные урлы включены, пробовал на revo.modx.ru/ ставить, та же ситуация.
p.s. дружественные урлы включены, пробовал на revo.modx.ru/ ставить, та же ситуация.
*Meta, которой принадлежат facebook и instagram признана экстремистской в России