Модификация Отображаем "приватный раздел" без доступа к содержимому.

Тема в разделе "Плагины, модификации и скрипты", создана пользователем Wulk@n, 3 янв 2016.

  1. Wulk@n

    Wulk@n Администратор Команда форума Админ

    171
    100.007
    1.087
    1.PNG 2.PNG

    Многие форумы имеют свои приватные,закрытые разделы.Их наличие видят только определённые группы пользователей.Но для стимуляции активности,можно такой раздел и показать остальным пользователям)

    1.
    Для начала выберем узел,который мы хотим сделать приватным и выставим соответствующие права.Тем группам которым мы хотим дать доступ выставляем все пункты в положение "Разрешено"

    Тем группам,которым мы хотим запретить доступ все пункты кроме "Просмотр узла" устанавливаем в положение "Отозвать"("Просмотр узла"-разрешено).Можно конечно отображать и темы имеющиеся в разделе,тогда разрешаем "Просмотр чужих тем"

    3.PNG

    2.Открываем шаблон forum_list и ищем строчку

    Код:
    <xen:hook name="forum_list_nodes">
    над ней добавляем (тут я немного вмешался в кодеса автора)

    Код:
    <xen:if is="{xen:helper ismemberof, $visitor, х}"><div class="staffOnly">
    <h3>Доступ запрещён!Только для проверенных!</h3>
    </div></xen:if>
    
    х в данном случае это id группы которым мы будем выводить предупреждение.

    3.
    В шаблоне node_list ищем следующий код

    Код:
    <ol class="nodeList sectionMain" id="forums">
    <xen:contentcheck>
            <xen:foreach loop="$renderedNodes" value="$node">{xen:raw $node}</xen:foreach>
        </xen:contentcheck>
        </ol>
    и заменяем его на

    Код:
    <div class="staffContainer">
        <ol class="nodeList sectionMain" id="forums">
        <xen:contentcheck>
            <xen:foreach loop="$renderedNodes" value="$node">{xen:raw $node}</xen:foreach>
        </xen:contentcheck>
        </ol>
    </div>
    
    4.В шаблон extra.css вашего стиля добавляем
    Код:
    .staffOnly {
    background-color: black;
    height: 60px;
    z-index: 10;
    border-radius: 3px;
    opacity: 0.5;
    top: 180px;
    position: relative;
    }
    .staffOnly h3 {
    font-size:20px;
    color: white;
    font-weight: bold;
    margin-left: 35%;
    padding-top: 15px !important;
    }
    .staffOnly:hover{
    background-color: red;
    box-shadow: 0 0 35px 5px #fff inset;
    }
    .staffContainer { position: relative; }
    Можно добавить эффект только к тексту


    Код:
    .staffOnly h3:hover{
    font-size:30px;
    color: red;
    font-weight: bold;
    margin-left: 25%;
    padding-top: 10px !important;
    
    4b.gif
    Код:
    top: 180px;
    
    Внимание!Все значения подбираются индивидуально под каждый стиль и местоположение раздела.Все регулировки производятся в extra.css.К примеру чтобы перемещать эту "полосу" по списку разделов меняем значение
     
    Protection нравится это.