Сuriosity

Сuriosity

С нами с 19 марта 2015; Место в рейтинге пользователей: #170
Сuriosity
27 декабря 2021, 13:40
0
Все ваши новые поля поломаются, если, при внесении записи в это поле, вставить одинарную кавычку (апостроф).
Если следовать вашему примеру, то зайдя в профиль юзера, ​
в поле «Новое поле профиля» написать вместо:
Можно сохранять что угодно…
например
Можно сохранять что угод'но…

Сохраняем, заходим еще раз в профиль этого пользователя и вуаля… нового поля нет (а если было не одно новое поле, то и других бы тоже).

Неприятность находится здесь:
case "OnUserFormPrerender":
        if (!isset($user) || $user->get('id') < 1) {
            return;
        }

        if (!$modx->getCount('modPlugin', array('name' => 'AjaxManager', 'disabled' => false))) {
            $data['new_checkbox'] = $user->new_checkbox ? 'true' : 'false';
            $data['new_field'] = htmlspecialchars($user->Profile->new_field);
Внесите в код правку:
$data['new_field'] = htmlspecialchars($user->Profile->new_field, ENT_QUOTES);
Или, как вариант, впихнуть какую-то регулярку…
Надеюсь, это кому-то поможет.
Сuriosity
15 августа 2019, 21:11
0
Вот разные запросы по этой теме гуглил, но как-то не додумался до, казалось бы, простого: «Сохранение корзины для пользователей».
Евгений, спасибо!
Сuriosity
15 августа 2019, 21:08
0
добавьте плагин на событие отвечающие за выход пользователя из личного кабинета и перед выходом сохраняйте список товаров в корзине.
Я тоже думал в этом направлении, но появилась мысль, не будет ли это лишним, возможно есть уже готовое решение из коробки того же Office или miniShop2. А, если нет, может какое-то готовое элегантное решение…
Сuriosity
14 декабря 2018, 17:09
0
Возможно стоит, вынести ссылку chat.modx.pro на самый верх к: Modstore, Modhost, Docs, MODX.Pro
Думаю, это было бы удобно
Сuriosity
14 декабря 2018, 17:07
+1
Очень, очень!
Сuriosity
12 июля 2018, 19:57
0
Боюсь, я с github, пока еще, на ВЫ с оочень больших букв. Потому и разместил топик здесь, в надежде, что найдется тот, кому этот монстр на ТЫ.
Сuriosity
12 июля 2018, 19:52
0
Да проверял на разных хостигах.
В логах modx ничего не пишет. Думаю, потому, что modx не видит ошибки, ведь данные, по сути, сохраняются. Ошибка только в js скрипте, которому этот спецсимвол явно не комильфо.
Сuriosity
12 июля 2018, 19:39
+1
Павел, вы и сами можете все это увидеть. Достаточно создать родителя, в pagetitle которого есть с спецсимвол кавычки (& quot; убрать лишний пробел), после чего его дети уже не будут нормально сохраняться.
Сuriosity
12 июля 2018, 19:23
0
Последняя на вчерашний день. MODX Revolution 2.6.4-pl
Сuriosity
11 июля 2018, 14:54
0
Смотря на логотип, тоже об этом подумал. Более чем уверен, что с аккуратным треугольничком в текущей пустоте, будет смотреться куда красивее, эффектней и, главное, гармоничней. имхо
Сuriosity
31 мая 2018, 21:20
+1
Александр, спасибо за внимательность. Я действительно забыл заменить концовку из мануальной на оригинальную:
$response = $this->ms2->invokeEvent('msOnValidateOrderValue', array(
            'key' => $key,
            'value' => $value,
        ));
        $value = $response['data']['value'];

        return $value;
P.S.
Код поправил.
Сuriosity
31 мая 2018, 18:00
0
Насчет рейтинга и переноса…
Это не баг… Оказывается мой рейтинг поднялся, сразу после первого голоса за эту статью.
Сuriosity
31 мая 2018, 17:58
0
Вполне возможно или, даже, скорей всего.
Сuriosity
31 мая 2018, 17:38
0
Только-что перенес.
Хотя, насколько я помню, изначально эту статью не мог занести в раздел «Готовые решения», потому как не хватало рейтинга.
А если это так, то только-что обнаружился баг.
Если вначале создать статью в разделе «Вопросы», то после редактирования можно, не смотря на рейтинг, перенести в раздел «Готовые решения».
(:
Сuriosity
31 мая 2018, 16:18
0
Более того, немного расширил проверку на апостроф.
Т.к. апострофы народ пишет кому как удобно…
’, ʼ, ', ` — все это разные символы.
Но теперь, какой бы из этих вариантов пользователь не ввел, автоматом заменит на '.
Сuriosity
31 мая 2018, 16:13
+1
Нет, не поломалось! Очень даже рабочий вариант. Правда с регулярным выражением пришлось повозиться…
Дело в том, что в эту регулярку нельзя прямо вставить нужные символы, приходится прописывать краказябры, как будто я написал символы в utf-8, а вижу как windows-1251.
Сuriosity
18 мая 2018, 15:26
0
Пока остановился на варианте:
— добавляю товарам опцию, например:
clothes_gallery_id_id (id Галереи главного товара);

— соответственно в Майка4 (104) и Майка5 (105) в этой опции указываю 103;

— в шаблонах для карточек товаров дубликатов пишу что-то вроде:
{if $_pls['clothes_gallery_id.value'] > 0}
            {$_modx->runSnippet('!ms2Gallery', [
                'resources' => $_pls['clothes_gallery_id.value'],
                'tpl' => '@FILE chunks/gallery/tpl.ms2Gallery.tpl'
            ])}
        {else}
            {$_modx->runSnippet('!ms2Gallery', [
                'tpl' => '@FILE chunks/gallery/tpl.ms2Gallery.tpl'
            ])}
        {/if}

Все же лучше, чем использовать TV