Скрытая ссылка в zoo

Тема в разделе "Внешний вид, шаблоны, графика", создана пользователем scercio, 10.03.2015.

  1. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Доброго всем дня!

    Проблема в следующем, не могу сделать в zoo, что бы файлы скачивали только верифицированные пользователи. Например пользователь регистрируется, но ссылок на скачивание не видит. Я присваиваю ему верификацию. И после этого он видит ссылки, на скачку файлов.

    Что делал:
    Создал группу пользователей verification.
    zoo - каталок продуктов - редактировать поля - создаю "загрузку", где в "уровне доступа" указываю пункт "verification". Но уже просто зарегистрированный пользователь видит ссылку на скачку.

    Пробовал по разному, ни чего не выходит....

    В чем может быть проблема?

     
  2.  
  3. Лучший ответ:
    Сообщение #28 от 11.03.2015, автор CB9T
  4. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    Добрый! Вы примерно так делали?
    3gW9wiM.png

    В принципе наверно Вам условие в шаблоне нужно.

    Показывать только для группы Author:

    Код (PHP):
    1. <?php
    2. $user = JFactory::getUser();
    3. if (in_array('3', $user->groups) {
    4. <КОД>
    5. }
    6. ?>

    Показывать только для Super Users:

    Код (PHP):
    1. <?php
    2. $user = JFactory::getUser();
    3. if ($user->superadmin) {
    4. <КОД>
    5. }
    6. ?>


    У вас примерно:

    Код (PHP):
    1. <?php
    2. $user = JFactory::getUser();
    3. if (in_array('5', $user->groups) {
    4. <КОД>
    5. }
    6. ?>


    Где 5 это ID группы пользователей.

    Примерно так:

    Код (PHP):
    1. <?php
    2. $user = JFactory::getUser();
    3. if (in_array('5', $user->groups) {
    4. <div class="linksdownload">
    5. <?php if ($this->checkPosition('linksdownload')) : ?>
    6.     <?php echo $this->renderPosition('linksdownload'); ?>
    7. <?php endif; ?>
    8. </div>
    9. }
    10. ?>
     
  5. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Да, только в группе пользователей создавал ещё группу типа "verification".

    Т.е. я понимаю, что программно так не сделать, нужно код править?
     
    Последнее редактирование: 10.03.2015
  6. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
  7. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Вот как делал я.

    01.jpg 02.jpg 03.jpg




    Я думал, что программно все получится..... но зарегистрированный пользователь, все-равно видит ссылку на скачку....
     
  8. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    Может и баг, но все же мне кажется условия надо прописывать в шаблоне Вашем.
     
  9. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Не могу понять, почему в файле нет условия, о пользователе? Может он в другом месте содержится?
    media/zoo/applications/product/templates/default/renderer/item путь правильный же?
     

    Вложения:

    • full.txt
      Размер файла:
      2.2 КБ
      Просмотров:
      1
  10. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    А он там и не появиться, т.к. это руками делается.

    Попробуйте так это для группы special.

    Элемент поместите в related позицию

    Код (PHP):
    1. <?php
    2. /**
    3. * @package   com_zoo
    4. * @author    YOOtheme http://www.yootheme.com
    5. * @copyright Copyright (C) YOOtheme GmbH
    6. * @license   http://www.gnu.org/licenses/gpl.html GNU/GPL
    7. */
    8.  
    9. // no direct access
    10. defined('_JEXEC') or die('Restricted access');
    11.  
    12. ?>
    13.  
    14. <?php if ($this->checkPosition('top')) : ?>
    15. <div class="pos-top">
    16.  
    17.     <div class="box-t1">
    18.         <div class="box-t2">
    19.             <div class="box-t3"></div>
    20.         </div>
    21.     </div>
    22.  
    23.     <div class="box-1">
    24.         <?php echo $this->renderPosition('top', array('style' => 'block')); ?>
    25.     </div>
    26.  
    27.     <div class="box-b1">
    28.         <div class="box-b2">
    29.             <div class="box-b3"></div>
    30.         </div>
    31.     </div>
    32.  
    33. </div>
    34. <?php endif; ?>
    35.  
    36. <div class="floatbox">
    37.  
    38.     <div class="box-t1">
    39.         <div class="box-t2">
    40.             <div class="box-t3"></div>
    41.         </div>
    42.     </div>
    43.  
    44.     <div class="box-1">
    45.  
    46.         <?php if ($this->checkPosition('media')) : ?>
    47.         <div class="pos-media <?php echo 'media-'.$view->params->get('template.item_media_alignment'); ?>">
    48.             <?php echo $this->renderPosition('media', array('style' => 'block')); ?>
    49.         </div>
    50.         <?php endif; ?>
    51.  
    52.         <?php if ($this->checkPosition('title')) : ?>
    53.         <h1 class="pos-title"><?php echo $this->renderPosition('title'); ?></h1>
    54.         <?php endif; ?>
    55.  
    56.         <?php if ($this->checkPosition('description')) : ?>
    57.         <div class="pos-description">
    58.             <?php echo $this->renderPosition('description', array('style' => 'block')); ?>
    59.         </div>
    60.         <?php endif; ?>
    61.  
    62.         <?php if ($this->checkPosition('specification')) : ?>
    63.         <div class="pos-specification">
    64.             <h3><?php echo JText::_('Specifications'); ?></h3>
    65.             <ul>
    66.                 <?php echo $this->renderPosition('specification', array('style' => 'list')); ?>
    67.             </ul>
    68.         </div>
    69.         <?php endif; ?>
    70.  
    71.         <?php if ($this->checkPosition('bottom')) : ?>
    72.         <div class="pos-bottom">
    73.             <?php echo $this->renderPosition('bottom', array('style' => 'block')); ?>
    74.         </div>
    75.         <?php endif; ?>
    76.  
    77.  
    78.         <?php
    79. $user = JFactory::getUser();
    80. if (in_array('3', $user->groups) {
    81. if ($this->checkPosition('related')) : ?>
    82.    <?php echo $this->renderPosition('related', array('style' => 'block')); ?>
    83. <?php endif; ?>
    84. </div>
    85. }
    86. ?>
    87.     </div>
    88.  
    89.     <div class="box-b1">
    90.         <div class="box-b2">
    91.             <div class="box-b3"></div>
    92.         </div>
    93.     </div>
    94.  
    95. </div>
     
  11. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Вроде все так сделал....
    Ошибку выдало...
    Parse error: syntax error, unexpected '{' in /home/host1331221/forex911.ru/htdocs/www/media/zoo/applications/product/templates/default/renderer/item/full.php on line 80
    --- добавлено: 10.03.2015 ---
    01.jpg 02.jpg
     
  12. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    а так? низ исправьте:
    Код (PHP):
    1. <?php
    2. $user = JFactory::getUser();
    3. if (in_array('3', $user->groups) {
    4.    <?php echo $this->renderPosition('related', array('style' => 'block')); ?>
    5. }
    6. ?>
     
  13. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Ту же ошибку пишет.... вроде правильно вставил...
    --- добавлено: 10.03.2015, первое сообщение размещено: 10.03.2015 ---
    Код (PHP):
    1. <?php
    2. /**
    3. * @package   com_zoo
    4. * @author    YOOtheme http://www.yootheme.com
    5. * @copyright Copyright (C) YOOtheme GmbH
    6. * @license   http://www.gnu.org/licenses/gpl.html GNU/GPL
    7. */
    8.  
    9. // no direct access
    10. defined('_JEXEC') or die('Restricted access');
    11.  
    12. ?>
    13.  
    14. <?php if ($this->checkPosition('top')) : ?>
    15. <div class="pos-top">
    16.  
    17.     <div class="box-t1">
    18.         <div class="box-t2">
    19.             <div class="box-t3"></div>
    20.         </div>
    21.     </div>
    22.  
    23.     <div class="box-1">
    24.         <?php echo $this->renderPosition('top', array('style' => 'block')); ?>
    25.     </div>
    26.  
    27.     <div class="box-b1">
    28.         <div class="box-b2">
    29.             <div class="box-b3"></div>
    30.         </div>
    31.     </div>
    32.  
    33. </div>
    34. <?php endif; ?>
    35.  
    36. <div class="floatbox">
    37.  
    38.     <div class="box-t1">
    39.         <div class="box-t2">
    40.             <div class="box-t3"></div>
    41.         </div>
    42.     </div>
    43.  
    44.     <div class="box-1">
    45.  
    46.         <?php if ($this->checkPosition('media')) : ?>
    47.         <div class="pos-media <?php echo 'media-'.$view->params->get('template.item_media_alignment'); ?>">
    48.             <?php echo $this->renderPosition('media', array('style' => 'block')); ?>
    49.         </div>
    50.         <?php endif; ?>
    51.  
    52.         <?php if ($this->checkPosition('title')) : ?>
    53.         <h1 class="pos-title"><?php echo $this->renderPosition('title'); ?></h1>
    54.         <?php endif; ?>
    55.  
    56.         <?php if ($this->checkPosition('description')) : ?>
    57.         <div class="pos-description">
    58.             <?php echo $this->renderPosition('description', array('style' => 'block')); ?>
    59.         </div>
    60.         <?php endif; ?>
    61.  
    62.         <?php if ($this->checkPosition('specification')) : ?>
    63.         <div class="pos-specification">
    64.             <h3><?php echo JText::_('Specifications'); ?></h3>
    65.             <ul>
    66.                 <?php echo $this->renderPosition('specification', array('style' => 'list')); ?>
    67.             </ul>
    68.         </div>
    69.         <?php endif; ?>
    70.  
    71.         <?php if ($this->checkPosition('bottom')) : ?>
    72.         <div class="pos-bottom">
    73.             <?php echo $this->renderPosition('bottom', array('style' => 'block')); ?>
    74.         </div>
    75.         <?php endif; ?>
    76.  
    77.  
    78.         <?php
    79. $user = JFactory::getUser();
    80. if (in_array('3', $user->groups) {
    81.    <?php echo $this->renderPosition('related', array('style' => 'block')); ?>
    82. }
    83. ?>
    84.     </div>
    85.  
    86.     <div class="box-b1">
    87.         <div class="box-b2">
    88.             <div class="box-b3"></div>
    89.         </div>
    90.     </div>
    91.  
    92. </div>
     

    Вложения:

    • full.txt
      Размер файла:
      2.4 КБ
      Просмотров:
      0
  14. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    Сейчас на своем серваке посмотрю
    --- добавлено: 10.03.2015, первое сообщение размещено: 10.03.2015 ---
    100% рабочий код:

    Код (PHP):
    1. <?php
    2. $user = JFactory::getUser();
    3. if (!in_array('3', $user->groups)) {
    4.     echo 'У вас нет прав для просмотра';
    5. } else  {
    6.    echo $this->renderPosition('price', array('style' => 'block'));
    7. }
    8. ?>
     
  15. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Он при при внесении в группу "special", так же пишет, что нет прав, для просмотра....
     
  16. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
  17. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Да, как и было исправил на related
     
  18. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
  19. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Нет, все так же не отображается....
    --- добавлено: 10.03.2015 ---
    01.jpg 02.jpg
     
  20. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    Код рабочий, вот изменил на группу ЗАРЕГИСТРИРОВАННЫЙ (создал акк - demo - просто зареганный пользователь)
    Все работает:

    0PI8Qq9.png

    vHYy7Ha.png

    UkqrCiy.png

    DwapunX.png

    ziDEEAg.gif
    --- добавлено: 10.03.2015, первое сообщение размещено: 10.03.2015 ---
    P.S. В самом элементе измените на public, с этим условием он будет позицию проверять, а не элемент.
     
  21. Offline

    scercio Пользователь

    Регистрация:
    03.03.2015
    Сообщения:
    33
    Симпатии:
    3
    Пол:
    Мужской
    Да, при простой регистрации, у меня тоже всё в порядке. Но стоит только изменить группу, которую создал, то сразу перестает выдавать ссылку.
     
  22. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    это значит код верный, а настройка уровня группы нет.
    --- добавлено: 10.03.2015, первое сообщение размещено: 10.03.2015 ---
    Попробуйте так - только 1 птичку:
    uq1CuJC.png

    И пользователя в эту группу киньте
    --- добавлено: 10.03.2015 ---
    Проверьте 7 раз верный ли ID Вы указали
     

Поделиться этой страницей

Загрузка...