akurteev VIP
Total posts: 43
02 Июнь 2016 16:59

Сереж, привет!

Напомни, пожалуйста, какой плашкой можно вставить текст / картинку о наличии доступа к определенной категории кобальта?

Последние изменения: 23 Дек 2016


Sergey
Total posts: 13,748
05 Июнь 2016 14:48

Я не помню. Такого не было. Было по мойму у стандартного содержимого. А у списка статей кобальта нет. Там же ограничение в полях назначается на статью.

Но можно в шаблоне сделать кастом. Если ограничение в типе, то можно глянуть в его параметры, и посмотреть ограничения, проверить по ним есть ли подписка и покзать плашку. Например.

require_once JPATH_ROOT . '/components/com_emerald/api.php';
$plans = $this->submission_types[$item->type_id]->params->get('emerald.type_view_subscription');
if($plans)
{
    if(EmeraldApi::hasSubscription($plans,'',NULL,0,0))
    {
        echo "You have access";
    }
    esle
    {
        echo "You do not have access";
    }
}

akurteev VIP
Total posts: 43
07 Июнь 2016 08:19

Ты как-то писал про новшества Емеральда 9, что можно написать [placeholder] и что-то будет выводиться и проверяться. Такое возможно?

Просто нужно закрыть категорию.


Sergey
Total posts: 13,748
12 Июнь 2016 14:24

Я могу добавить такой плейсхолдер. Это конечно будет проще. Но тогда тоже не просто закрыть категорию нужно будет, а еще добавить плейсхолдер в шаблон или в текст куда-то.

Хотя такие пелйсхолдеры уже есть.

http://docs.mintjoomla.com/en/emerald/restrict-anything

Можно их использовать что бы показать иконку замка открытого или закрытого.


akurteev VIP
Total posts: 43
17 Июнь 2016 08:57

А они будут действовать в материалах / категориях кобальта?


Sergey
Total posts: 13,748
21 Июнь 2016 05:11

akurteev А они будут действовать в материалах / категориях кобальта?

Где угодно. Даже просто в шаблоне если втавишь.


Гость
19 Дек 2016 11:20

Подскажите а ка сделать такую же проверку но для K2 ? Например я нахожусь в итеме К2. У меня есть ограничение на скачивание прикрепленного файла. Как мне программно проверить есть ли доступ у данного пользователя к этому файлу или нет? Потомук что конструкция hasSubscription($plans, $msg, $user_id = 0, $count = TRUE, $redirect = TRUE, $url = NULL, $apply_count = TRUE) Не работает.

План текущего пользователя я могу получить. URL для скачивания файла тоже есть.

Вставляю все в эту функцию Но все время получаю TRUE Потом разобрался,что надо передавать не текущий план пользователя а ID плана на котором стоит ограничение на данную категорию K2. Но вот и вопрос как получить ID того плана который в текущий момент применим к данному URL или же хотябы по ItemID?????


Sergey
Total posts: 13,748
23 Дек 2016 05:50

2 метода.

  1. качаете специальный адаптор для К2 и там есть настрока для файлов. И они будут скрыты если нет подписки.
  2. Используйте метод Rescrict Anything. Отрактируйте шаблон К2 который показывает файлы, и возмите эту часть в то что описано в статье, и файлов не будет видно пока человек не оплатит.
Работает на Cobalt