[msFavorites] - только для авторизованных юзеров

Иногда необходимо ограничить функционал избранного и разрешить его только для авторизованных пользователей. Под катом плагин для решения этого вопроса.

Дейстивия
— обновляем компонент до версии >= 2.1.1
добавлены события msFavoritesOnBeforeProcessFavorites, msFavoritesOnProcessFavorites

— создаем плагин на событие msFavoritesOnBeforeProcessFavorites
<?php
/** @var array $scriptProperties */
if ($modx->event->name != 'msFavoritesOnBeforeProcessFavorites') {
    return;
}

if (empty($params['method']) OR !in_array($params['method'], array('add','remove'))) {
    return;
}
if (!$modx->user->id) {
    $modx->event->output('Необходимо регистрация');
    return;
}

if (!$modx->user->isAuthenticated()) {
    $modx->event->output('Необходимо авторизация');
    return;
}

готово
Володя
19 октября 2017, 08:58
modx.pro
7
1 864
+11
Поблагодарить автора Отправить деньги

Комментарии: 3

Stan Ezersky
20 октября 2017, 22:05
0
Так можно и кнопку прятать

{if $_modx->user.id > 0}
    кнопка
{/if}
Зачем обнадёживать?:)
    Володя
    21 октября 2017, 19:10
    +2
    Так можно и кнопку прятать
    само собой можно. Была необходимость в кнопке и ограничении функционала.
    Зачем обнадёживать?:)
    Наверно чтоб подтолкнуть пользователя к реге на сайте…
      Stan Ezersky
      21 октября 2017, 21:45
      0
      Соглашусь!
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    3