Aleksandr Huz

Aleksandr Huz

С нами с 02 августа 2014; Место в рейтинге пользователей: #20
Aleksandr Huz
25 апреля 2021, 11:59
0
на данный момент нет. Но в планах интегрировать GoogleSheets
Aleksandr Huz
23 апреля 2021, 16:24
0
Ну а если мы удалим пользователя — мы удалим и информацию об оставленной электронной почте.
Да, это подходит только если почта вообще не нужна.
Aleksandr Huz
23 апреля 2021, 16:04
0
Согласен, не очень логично, но и не критично.
Ну попадает заказ к одному анониму, ничего страшного, в заказе адрес и номер будет разный. Врятли, менеджеры переходят к пользователю, чтобы посмотреть его контактные данные.

А если это сильно смущает то можно удалять этого же пользователя, если его имя совпадает с почтой
Вешаем плагин на событие: OnUserSave
if($mode == 'new' && $user->get('username') == $user->Profile->get('email')) {
   $user->remove();
}
Но, только если при регистрации почта не используется как логин.

Конечно, это все костыли, и более правильно будет не создавать пользователя, но дать возможность решать это через системную настройку.
Aleksandr Huz
22 апреля 2021, 15:02
+1
Вы можете бесплатно установить пакет на modhost.pro и посмотреть админку
Aleksandr Huz
06 апреля 2021, 20:56
+1
{set $rows = $_modx->runSnippet('!pdoResources', [
    'fastMode' => 0,
    'limit' => 0,
    'parents' => 2,
    'depth' => 5,
    'includeContent' => 1,
    'tvPrefix' => 'tv_',
    'includeTVs' => 'stars,room_type,room_details,basis_price,photos',
    'select' => '{"modResource":"id,uri,pagetitle,content,photos"}',
    'return' => 'json',
    'where' => ['isfolder' => 0]
]) | fromJSON}

{foreach $rows as $row} 
    ..
{/foreach}
Aleksandr Huz
18 марта 2021, 11:29
+1
Интерфейс на Vue.js с визуальным добавлением узлов и атрибутов
В статье написано
Aleksandr Huz
13 марта 2021, 10:03
0
Напишите мне в ТП
Aleksandr Huz
06 марта 2021, 22:36
0
$tvName = 'babelLanguageLinks';
if(!$tv = $modx->getobject('modTemplateVar', ['name' => $tvName])) {
    die("TV c именем {$tvName} не найдено");
}
$babel_TV_ID = $tv->get('id');
Aleksandr Huz
17 февраля 2021, 21:34
0
И потом сидишь и думаешь, а сделал ли я заказ в магазине.
Aleksandr Huz
05 февраля 2021, 10:58
0
Я за решение 1. Если есть хотя бы один комментарий не от автора, то вопрос нельзя удалить или снять с публикации.

Решение 2. Если прогер спрашивает как вывести ресурсы через pdoResources и берет в работу ИМ, то я на месте заказчика хотел бы видеть историю пользователя, чтобы быть уверенным в выборе. Это нормально, если прогер 2 года назад спрашивает какую-то мелочь, а сейчас уже умеет создавать компоненты.
Aleksandr Huz
02 февраля 2021, 16:10
1
+2
Добавить сортировку для поиска. Например, если добавить параметр
&sort=date
то результаты сортируются, но это нужно вручную добавлять.
Чтобы увидеть самые старые, то добавить еще:
&dir=asc
Aleksandr Huz
27 января 2021, 14:36
0
Зачем это делать, если можно создать событие и добавить одну строчку?
А если js исходника поменяется, а вы переопределили метод, новый функционал не будет работать.

Вообщем, возможно ваш вариант и имеет место быть, но это не лучший вариант.
Aleksandr Huz
27 января 2021, 14:33
0
Нет, нужно в админке создать плагин на событие msOnEmptyCart
if($modx->event->name == 'msOnEmptyCart') {
    $modx->sendRedirect('http://site.ru');
}
Aleksandr Huz
27 января 2021, 13:48
+1
Используйте события, а именно msOnEmptyCart.
Править исходники не рекомендую.
Aleksandr Huz
22 января 2021, 22:33
0
document.querySelector('.jsSearchForm').addEventListener(event, function (e) {
     e.preventDefault();
     let formData = new FormData(e.target.closest('form'));
     sendAjax(formData);
});
Точно работает?
event — это submit?
e.target — если сабмит, то это и есть форма.
Aleksandr Huz
21 января 2021, 21:47
1
+1
Почему вы не пишите это автору, то есть мне? Вы купили компонент, могли бы написать и в ТП.
забрать данные куда-нибудь в MIGX таблицу, а потом как-то реализовать поиск уже по MIGX таблице и вывести результат?
Если данных много и они не обновляются часто, то можно экспортировать данные в json файл. И затем сделать поиск по нему, а не по мигс таблице. Но этот вариант нужно дорабатывать.

Выпустил обновление.
Теперь сниппет GoogleSheets принимает 2 параметра query и where

1. query — для точного поиска. Значение массива должно совпадать со значением параметра query. Например:
{'!GoogleSheets' | snippet: [
     'table' => 'https://docs.google.com/spreadsheets/d/16eyRIpKGbw/edit#gi1',
     'range' => 'ExportProducts',
     'query' => 'Мобильный'
] | table: 'table table-hover'}

2. where — для поиска по определенному полю. Например:
{'!GoogleSheets' | snippet: [
     'table' => 'https://docs.google.com/spreadsheets/d/16eyRIpKGbw/edit#gi1',
     'range' => 'ExportProducts',
     'where' => [
          'pagetitle' => 'Мобильный'
     ],
] | table: 'table table-hover'}
Будет искать слово 'Мобильный' в значение поля pagetitle

P.S. Можно использовать 2 параметра одновременно.
Aleksandr Huz
16 декабря 2020, 08:58
0
Посмотри какой родитель у товаров
Aleksandr Huz
10 декабря 2020, 20:19
0
Нужно использовать магическое заклинание со своими рецептами. Думаю, что может помочь только Гарри Поттер.
Aleksandr Huz
01 декабря 2020, 19:12
0
Да, действительно проблема. А до обновления этого не было?