Поддержать Проект

USDT TRC20

TBGKTYDs4yzU17vQbobbUB8epFFtFb6PKh

Обратная связь

[MODX] Guru
  • Информация
  • Разработчикам
  • Дополнения
    • DocLister
    • DLMenu
    • DLCrumbs
    • DLBuildMenu
    • DLLastViews
    • DLSiblings
    • DLRequest
    • DLglossary
    • DLSitemap
    • DocInfo
    • FormLister
    • Wayfinder
    • phpthumb
    • LikeDislike
    • eForm
    • Ditto
    • multiTV
    • AjaxMegaSearch
    • AjaxSearch
    • WebLoginPE
    • Breadcrumbs
    • CodeMirror
    • AnythingRating
    • Easy Newsletter
    • FirstChildRedirect
    • OpenGraphTags
    • ddTypograph
    • TagSaver
    • BlackList
    • CfgTv
    • ModxAccount
    • Forgot Manager Login
    • GetField
    • if
    • Jot
    • ListChild
    • ListIndexer
    • ManagerManager
    • ddMMEditor
    • MaxiGallery
    • MemberCheck
    • ddGetMultipleField
    • MetaX
    • MODxBB и phpBB
    • Yams
    • Personalize
    • PHx
    • Reflect
    • tagLinks
    • TransAlias
    • TvTagCloud
    • UltimateParent
    • WebSignup
    • WebLogin
    • countViews
    • thumb
    • imageCaptor
    • optimizeJPG
    • Preview Next
    • Shopkeeper
    • SiteMap
    • Sass
    • Selector
    • SimpleGallery
    • SimpleTube
    • SimpleFiles
    • Star Rating
    • MinifyX
    • adminNav
    • SimplePolls
    • CResource
    • MODxAPI
    • customTables
    • HtmlInLine
    • HtmlMinModxEvo
    • SHKUserProfile
    • PickDocsInTree
    • evoSearch
    • editDocs
    • PageBuilder
    • HybridAuth
    • Compare
    • alterTitle
  • Виджеты
  • Уроки
  • Разработчики
  • Готовые примеры
  • Блог
  • Конфиги
  • HTML коды
© [MODX] Guru
  • Дополнения
  • avatar
    • Автор: Pathologic
    • HybridAuth
    • DLSitemap
    • SimplePolls
    • Selector
    • DLMenu
    • SimpleGallery
    • SimpleTube
    • DLRequest
    • FormLister

LikeDislike - возможность ставить оценки

  • Дополнения
  • LikeDislike
Поддержать: USDT TRC20: TBGKTYDs4yzU17vQbobbUB8epFFtFb6PKh
4241

LikeDislike - возможность ставить оценки

Скачивать здесь: LikeDislike

В коробке:

  • сниппет LikeDislike, который и дает возможность ставить оценки;
  • сниппет 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="#" class="like">
		<i class="fa fa-lg fa-thumbs-up"></i>
		<span>[+like+]</span>
	</a>
	<a href="#" 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`, иначе поломаются запросы.