Евгений

Евгений

С нами с 21 июля 2014; Место в рейтинге пользователей: #722

В Office проблемка в вызове officeProfile на нескольких страницах

Здравствуйте. Заметил странное поведение Office при вызове контроллера officeProfile на нескольких страницах сайта. Есть отдельная страница профиля юзера, он прописана в настройках как office_profile_page_id, так же в настройках прописано обязательное заполнение полей office_profile_required_fields которые юзер не указывает при регистрации. То есть по ссылке авторизации юзер должен попадать в профиль и пока не заполнит эти поля в свой личный кабинет он не попадет, однако, если на странице личного кабинета кроме officeAuth так же вызывается officeProfile (есть необходимость внесения каких-то новых данных пользователем без перехода на страницу профиля), то при авторизации по ссылке из письма новый юзер попадает сразу в личный кабинет, игнорируя прописанную в настройках логику с заполнением обязательных полей на странице профиля.
Такое ощущение что office_profile_page_id перезаписывается при каждом новом вызове контроллера officeProfile, и когда мы вызываем его со страницы личного кабинета, office_profile_page_id так же меняется на ID кабинета, хоть в настройках и остается выставлено значение профиля. Проверил на 2-х сайтах с купленным Office — везде так. Может кто-нибудь проверить со своей стороны и посоветовать как это поправить или подсказать что я делаю не так?
Евгений
18 декабря 2023, 16:35
modx.pro
275
0

Еще одна форма в кабинете пользователя Office

При использовании плагина Office столкнулся с проблемой добавления на страницу пользователя еще одной формы, куда пользователь мог бы занести какие-то данные. Сниппет написал, на отдельной странице он норм работает, а если в личном кабинете форму заполнять — по клику на кнопку идет перегрузка страницы и данные никуда не пишутся. Чую что надо что-то в код формы дописать чтобы Office понял что это не к нему относится и не лез куда не надо, но вот пока не понял что — подскажите, плиз, кто в теме.
сниппет вызывается в шаблоне личного кабинета tpl.Office.auth.logout, форма выглядит так:
<form method="post" class="form_db mb-4 row align-items-center">
      <label>Ссылка на видео</label> <input type="text" size="20" name="videolink" value="[[+extended.video]]" />      
      <button type="submit" name="videosubmit">сохранить</button>
    </form>
    [[!videolink]]
Сниппет videolink:
<?php
if( !empty( $_POST['videolink'] ) && (isset($_POST['videosubmit']))) {
        $video = filter_input(INPUT_POST, 'videolink', FILTER_SANITIZE_STRING);
        echo $video;
        $user = $modx->user;
        $profile = $user->getOne('Profile');
            echo $user->username;
          $extended = $profile->get('extended');
          $extended['video'] = $video;
          $profile->set('extended', $extended);
          $profile->save();
    }
Евгений
12 декабря 2023, 06:11
modx.pro
505
0

Minishop2 и fotorama - не инициализируется

Поставил сегодня MODX 2.8.4, на него minisop2 из modstore.pro, все настроил точно по быстрому старту minishop2 и почему то не инициализируется fotorama. В карточке товара картинка с ссылкой на полноразмерное изображение без превьюшек внизу и прочей красоты типа «развернуть на весь экран». В коде нет никаких ссылок на скрипты фоторамы, хотя элемент .fotorama внутри #msGallery имеется. Кто-нибудь сталкивался? Куда копать?
Даже сейчас попробовал с нуля на modhost.pro поставить minishop2, сделал тестовый товар — те же самые вилы: фоторама не иннициализируется.
Евгений
20 августа 2022, 17:30
modx.pro
1 030
0

mFilter2, как в адресной строке заменить id на pagetitle при filters=parent:grandparents

Есть список магазинов, которые делятся по округам и городам (лежат в соответствующих вложенных папках). Чтобы не мудрить с дополнительными tv вызываю mFilter2 таким образом:
&filters=`
parent:grandparents,
parent:categories
`
сейчас в запрос (в адресную строку) уходит id родителя и дедушки
gtoil.ru/buy/shops/?okrug=184&gorod=956
Можно сделать так, чтобы поисковикам все это понятнее было? То есть чтобы в сроку браузера уходил не id а pagetitle, и получалось что-то типа
gtoil.ru/buy/shops/?okrug=Северо-Западный&gorod=Санкт-Петербург
Плагин писать, чтобы он заносил в TV при сохранении не хотелось бы — чего TV почем зря плодить? Спасибо заранее за советы
Евгений
03 мая 2021, 11:54
modx.pro
305
0

mFilter2 - вывод в разные чанки в зависимости от условий

Здравствуйте.
Документацию читал, но прямо моего случая не нашел. Есть каталог автомасел, они делятся на 2 типа: моторные и трансмиссионные. Трансмиссионные делятся еще на для МКПП и АКПП. Нужно сделать подбор масел по марке автомобиля. Для каждого масла есть TV где чекбоксами выбираются марки авто, к которым это масло подходит. У Трансмиссионных еще одно TV — тип коробки передач. Сейчас фильтрация реализована так:
[[!mFilter2?
&limit=`0`
&parents=`2`
&element=`msProducts`
&filters=`tv|marka`
&includeTVs=`acea,api,dopusk,tipdvig,vyazk,segment,sootv,ilsac`
&tplOuter=`tpl.mFilter2.outer3`
&tplFilter.outer.tv|marka=`tpl.mFilter2.filter.select.marka`
&tplFilter.row.default=`tpl.mFilter2.filter.option`
&tpl=`tpl.category`
&suggestions=`1`
]]
Результат: gtoil.ru/podbor?marka=BYD
Все масла выводятся в одной куче. Надо чтобы было 3 блока: для мотора, для МКПП, для АКПП.
Евгений
16 сентября 2020, 17:52
modx.pro
584
0

Подскажите плагин чтобы юзер мог к себе в профиль писать данные каждый день

Здравствуйте. Нужно, чтобы залогиненный пользователь каждый день заносил в свой профиль некоторые данные (например, пробег машины). Причем чтобы история сохранялась и админ мог ее просмотреть. Есть что-то из стандартного под эту задачу? Пробовал Тикетс для этого приспособить, но что-то не пошло. Надо чтобы остальные это не видели, только сам юзер и админ. Юзеров может быть много.
Спасибо заранее за подсказки.
Евгений
25 июня 2020, 14:07
modx.pro
406
0

как оповестить админа о заполнении конкретных полей в профиле юзера?

Собственно, есть поля (например, website и zip). Как сделать так, чтобы когда юзер их заполняет или меняет — шло оповещение админу по почте? Сорри за, возможно, слишком простые вопросы — учусь…
Евгений
02 февраля 2020, 22:55
modx.pro
1
428
0

На что повесить плагин уведомления админа о том, что юзер обновил профиль?

Добрый день.
Использую Office, после активации юзер должен заполнить обязательные поля. С этим все понятно. Нужно чтобы при обновлении профиля зарегистрированным пользователем, уже после описанных выше процедур, админу приходило уведомление что профиль обновился.
Ничего лучше чем повесить его на событие OnUserFormSave пока не придумал, но теперь мне валятся уведомления и когда юзер только зарегистрировался и когда заполнил обязательные поля и когда админ внес какие-то правки в его профиль. Подскажите, пожалуйста, как отфильтровать все эти события? Плагины только начинаю писать, простите за, возможно, туповатые вопросы.
Евгений
30 января 2020, 12:03
modx.pro
495
0

Реализация фильтрации по каталогу авто

Здравствуйте, с наступившим НГ!
Ломаю голову над тем, как можно организовать фильтр подбора масла для автомобиля. Пока есть такой зародыш. Реализован с помощью mFilter2, для каждого масла проставлены куча чекбоксов в TV «марка».
Нужно чтобы помимо марки можно было указать модель, год, объем двигателя, тип топлива. Зависимые TV dynamicdropdown TV пробовал, но тут вопрос в том что для каждого масла надо указать кучу марок и для каждой марки выбрать несколько вариантов моделей и т.д. Как это сделать на dynamicdropdown не понятно.
Кто-то сталкивался с подобными вопросами?
Приходит на ум, что хорошо было бы сделать отдельный каталог ресурсов с марками авто и всеми модификациями автомобилей, а в каталоге масел как-то указывать к каким ресурсам из каталога авто они подходят, но, опять же, оформить это во что-то осмысленное пока не понимаю как.
Буду благодарен любым советам.
Евгений
09 января 2020, 17:22
modx.pro
491
0