Артур Шевченко

Артур Шевченко

С нами с 24 мая 2019; Место в рейтинге пользователей: #4
Отправить деньги
Артур Шевченко
29 декабря 2020, 13:48
0
Сформулируйте задачу конкретнее. Где нужно вывести? Для чего?
Артур Шевченко
29 декабря 2020, 13:46
0
Отключить в системных настройках Hybrid Auth возможность создания нового пользователя
Артур Шевченко
29 декабря 2020, 13:40
0
Тикет поддерживает стандартную валидацию FormIt, естественно нужно этот компонент установить, а потом в форме добавления комментария поставьте validate=`comment:minLength=^50^`
Артур Шевченко
29 декабря 2020, 13:35
0
Написать плагин самая здравая идея. В нём менять name, а в корзине выводить как обычно, ибо даже в стандартном чанке опции джойняться. В документации написано как можно менять значения у товаров в корзине.
Артур Шевченко
29 декабря 2020, 13:25
+1
А какой смысл в подобном фильтре? Вы правда считаете, что кто-то захочет посмотреть каких товаров нет? Если нужно совсем не показывать, тогда через where ограничьте выборку, а если сначала показывать те которые в наличии, то в sort поставьте на первое место remains|remains:desc
Артур Шевченко
27 декабря 2020, 23:43
0
Насколько мне известно нет.
Артур Шевченко
27 декабря 2020, 19:26
0
Это не так работает, надо зарегистрироваться, привязать аккаунт и только потом входить.
Артур Шевченко
25 декабря 2020, 15:02
0
Да всё просто, '!yandexMaps' так пишут когда хотят чтобы сниппет некешировался, только в том варианте который предложил автор это не работает, там он и так не кешируется. А дальше тут уже и про TV написали и вообще всё заработало)))
Артур Шевченко
25 декабря 2020, 03:18
+1
Я так понимаю не работает вызов? И вы хотите чтобы сниппет не кешировался? Попробуйте убрать из названия!.. Если я ничего не путаю, то вызов снипетов подобным образом по умолчанию не кешируется, в отличие от такой записи
{'SnippetName'|snippet}
Артур Шевченко
24 декабря 2020, 15:08
0
Я думаю @Наумов Алексей имел в виду что-то вроде этого
function(val, cell, row){
console.log(row);
}
А потом f12 и смотреть консоль браузера.
Артур Шевченко
24 декабря 2020, 15:05
+1
Я не знаю. Я загуглил там написано что есть два варианта решения поднять версию или сменить кодировку или указать префикс для поля с автоинкрементом, но префикс вы указать не сможете так как это сторонний компонент править исходники которого не хорошо. Поэтому для начала попробуйте поднять версию, я бы так сделал.
Артур Шевченко
24 декабря 2020, 13:58
0
Поднять версию mysql можешь? И если нет, то уберись что кодировка в БД utf8 без всяких там mb4.
Артур Шевченко
24 декабря 2020, 13:51
0
Есть товары, которые продаются поштучно и цена у них за 1 штуку. А есть товары, которые продаются по весу и цена у них за единицу веса. А принципиальная разница в формировании общей стоимости разве есть? Ведь в обоих случаях нужно количество единиц умножить на цену. Так и какая вам разница, что обозначают цифры в поле с названием «количество» вес или штуки? Поэтому в самом простом варианте указываете цену за единицу веса — это в админке, а на фронте в поле типа number пишите: min=500 step=200. И всё работает как надо. Если граммы не устраивают, тогда переводите в кг и пишите плагин на события Добавление в корзину и Изменения в корзине, который будет переводить обратно в граммы, чтобы не править исходники минишопа, так как с дробным количеством он на работает.
Артур Шевченко
23 декабря 2020, 19:30
+1
А чем вам вес не количество? Я имею в виду, что укажите цену за единицу веса, допустим 1000гр и продавайте в граммах, если есть доставка с учётом веса, то тогда ещё надо плагин написать на msOnCartChange и перезаписывать weight. Если очень надо в кг, тогда либо ещё один плагин пишите который будет из дробного количества в кг делать целое в гр, либо делайте как тут Или callback'и пишите подробнее здесь
Артур Шевченко
21 декабря 2020, 11:52
-1
Понятно. Удачи вам в решении ваших многочисленных проблем)))
Артур Шевченко
20 декабря 2020, 00:39
0
Не знаю. Рекомендую переходить на fenom.
Артур Шевченко
19 декабря 2020, 23:50
0
Ресурс это, как верно подмечают переводчики, источник, а уж источником чего будет тот или иной документ решать вам. Если вам нужно одно поле, делайте одно поле, если нужен небольшой набор данных 2-4 поля, которые не требуют пагинации, фильтрации, сортировки используйте migx, а если всё сложнее используйте документ со всеми его полями. Это конечно только мое мнение.
Артур Шевченко
19 декабря 2020, 22:48
0
Я бы сделал так:
{set $migx = $resource_id | resource: 'migx_tvname' | fromJSON}
<!-- wrapperTpl -->
{foreach $migx as $m}
{$_modx->getChunk('tpl', ['fieldname' => $m['fieldname'], 'test' => $test])}
{/foreach}
<!-- wrapperTpl -->
Артур Шевченко
19 декабря 2020, 22:42
+1
Я вот тут поступил так.
1. Разместил в шаблоне блок в котором должен быть баннер с классом jsInnerBanner, скрытно.
2. Пометил все превьюхи классом к примеру jsBannerMark.
3. Повесил обработчик на событие mse2_load
$(document).on('mse2_load', function(e, data) {
            insertBanner('.jsBannerMark','.jsInnerBanner', 0.6)
        });
Сама функция insertBanner ищет скрытый блок, вытаскивает из него шаблон баннера и вставляет в нужное место, я сделал в процентах, но вы можете сделать как вам нравится.
function insertBanner(mark,banner, percent){
        var count = $(mark).length,
            banner = $(banner).clone(),
            position = Math.round(count * percent);
       banner.find('.promo').addClass('jsBanner');
        if((position % 2) != 0){
            position = position + 1;
        }
        if(count > 1){
            if(mark == '.jsBannerMark'){
                $(mark)[position - 1].after(banner[0]);
            }
            if(mark == '.jsMaterialMark'){
                $(mark)[position - 1].before(banner[0]);
            }
        }else{
            $(mark).after(banner[0]);
        }
    }
Сами баннеры я сделал в виде ресурсов и забираю их через pdoResources. Конечно в чистом виде вам моё решение не подойдет, но думаю общая идея пригодится.
Артур Шевченко
19 декабря 2020, 13:35
-1
Я вам за невнимательность. Во-первых, когда я писал свой комментарий, было только ваше пояснение, без комментария @Иван Бочкарев, во-вторых, в своем комментарии я написал, что после ваших пояснений мне стала ясна суть проблемы и ни на какое из ваших начал я не наезжал, я дал понять, что для меня это не является существенной проблемой и пояснил, что помочь вам, к сожалению, не могу. Если вас оскорбило моё замечание, прошу прошу прощения, я не хотел вас обидеть, а имел намерение разобраться в проблеме и по возможности помочь. И наконец, цели просто высказаться я себе не ставлю.