LikeDislike

    LikeDislike - можливість ставити оцінки

    LikeDislike - можливість ставити оцінки на Evolution CMS.

    завантажувати тут: Pathologic

    В коробцы:

    • сніпет Like Dislike, який і дає можливість ставити оцінки;
    • сніпет ldController для запуску DocLister з розширеним контролером site_content;
    • модуль LikeDislike, щоб бачити оцінки в адмінці.

    Захист від накруток ныяка проста – кукы, ip, також можна дозволити оцінювати тільки зареєстрованим користувачам.

    Встановлення

    Після установки потрібно запустити модуль, щоб створилися таблиці.

    На сторінці документа потрібно підключити скрипт jGrowl:

    <script type="text/javascript" src="assets/js/jGrowl/jquery.jgrowl.min.js"></script>
    <link rel="stylesheet" href="assets/js/jGrowl/jquery.jgrowl.min.css">
    

    І скрипт для ajax-розбробника:

    <script type="text/javascript" src="assets/snippets/LikeDislike/likedislike.js"></script>
    <link rel="stylesheet" href="assets/snippets/LikeDislike/likedislike.css">
    

    Виклик сниппета виглядає так:

    [!LikeDislike? 
    &enabledTpl=`@CODE:
    <div class="likedislike" data-id="[+rid+]">
        <a href="/ua/04_extras/likedislike.html#" class="like">
            <i class="fa fa-lg fa-thumbs-up"></i>
            <span>[+like+]</span>
        </a>
        <a href="/ua/04_extras/likedislike.html#" class="dislike">
            <i class="fa fa-lg fa-thumbs-down"></i>
            <span>[+dislike+]</span>
        </a>
    </div>
    ` 
    &disabledTpl=`@CODE: 
    <div class="likedislike">
        <span class="like">За: <span>[+like+]</span></span>
        <span class="dislike">Против: <span>[+dislike+]</span></span>
    </div>
    `
    !]
    

    Скрипт likedislike.jsнаписаний під верстку в цьому прикладі.

    Крім виведення шаблонів сниппет задає плейсхолдери [+modResource.like.{id}+] і [+modResource.dislike.{id}+].

    Параметри сніпета LikeDislike

    • rid – id оцінюваного ресурсу, якщо параметр не заданий, то по можливості використовується id поточного ресурсу;
    • classKey – параметр дозволяє розділяти оцінювані суті. Зроблено на майбутнє, раптом знадобиться ставити оцінки користувачам або ще чого-небудь. За замовчуванням – modResource.
    • action – дія: like, dislike, stat (за замовчуванням – stat);
    • enabledTpl – шаблон, якщо дозволено оцінювати;
    • disabledTpl – шаблон, якщо заборонено оцінювати;
    • onlyUsers – дозволено оцінювати тільки зареєстрованим користувачам;

    Якщо не ставити шаблони, то сниппет поверне масив з ключами like і dislike.

    Параметри сніпета ldController

    • allowLD – дозволити оцінювати в списку (за замовчуванням - 0);
    • enabledTpl – шаблон, якщо дозволено оцінювати;
    • disabledTpl – шаблон, якщо заборонено оцінювати;
    • onlyUsers – дозволено оцінювати тільки зареєстрованим користувачам;
    • classKey;

    Для виведення в основному шаблоні (&tpl) потрібно використовувати плейсхолдер [+likedislike+]. Імена полів в параметрах для вибірки і сортування краще ставити з префіксом таблиці («c» для site_content і «ld» для likedislike). Поле like обов'язково повинно бути в зворотних лапках - `like`, інакше поламаються запити.