1
0
Fork 0
mirror of https://github.com/Oreolek/ifhub.club.git synced 2024-07-17 13:54:26 +03:00
ifhub.club/application/frontend/components/vote/README.md

118 lines
5.3 KiB
Markdown
Raw Normal View History

# Компонент vote
Голосование
## Зависимости
* jquery
* jquery.widget
* tooltip
* ls.utils
* ls.ajax
## Шаблоны
### vote.tpl
Основной шаблон с блоком голосования.
| Опция | Тип | По умолчанию | Описание |
| :------------ | :---------- | :----------------- | :------- |
| `sHeading` | string | null | Заголовок |
| `sClasses` | string | null | Дополнительные классы (указываются через пробел) |
| `sMods` | string | null | Список классов-модификаторов (указываются через пробел) |
| `sAttributes` | string | null | Атрибуты (указываются через пробел) |
| `bShowRating` | boolean | true | Показывать рейтинг или нет, если false, то значение рейтинга заменяется на _"?"_ |
| `bIsLocked` | boolean | false | Блокировка голосования, если true, то кнопки голосования не будут показываться |
### vote.info.tpl
Шаблон с информацией о голосовании выводимая в тултипе, который появляется при наведении на блок голосования.
| Опция | Тип | По умолчанию | Описание |
| :------------ | :---------- | :----------- | :------------------------- |
| `oObject` | object | null | Объект с инфо-ей о голосовании |
## Стили
Список модификаторов основного блока
| Мод-ор | Описание |
| :---------------- | :------- |
| `voted` | Пользователь проголосовал |
| `not-voted` | Не проголосовал |
| `voted-up` | Понравилось |
| `voted-down` | Не понравилось |
| `voted-zero` | Воздержался |
| `count-positive` | Рейтинг больше нуля |
| `count-negative` | Меньше нуля |
| `count-zero` | Равен нулю |
| `rating-hidden` | Рейтинг скрыт |
| `large` | Большой блок голосования |
| `small` | Маленький блок голосования |
## Скрипты
### vote.js
Основные опции
| Опция | Тип | По умолчанию | Описание |
| :----------------- | :---------- | :---------------- | :------------------------- |
| `params` | object | null | Параметры отправляемые при аякс запросе |
| `tooltip_options` | object | null | Опции тултипа с информацией о голосовании |
Ссылки
| Опция | Тип | По умолчанию | Описание |
| :------------ | :---------- | :----------- | :------------ |
| `urls.vote` | string | null | Голосование |
| `urls.info` | string | null | Информация о голосовании |
Селекторы
| Опция | Тип | По умолчанию | Описание |
| :------------------- | :---------- | :---------------- | :------- |
| `selectors.item` | string | '.js-vote-item' | Кнопки голосования |
| `selectors.rating` | string | '.js-vote-rating' | Блок с рейтингом |
Классы
| Опция | Тип | По умолчанию | Описание |
| :----------------------- | :---------- | :--------------------- | :------------------------- |
| `classes.voted` | string | 'vote--voted' | Пользователь проголосовал |
| `classes.not_voted` | string | 'vote--not-voted' | Не проголосовал |
| `classes.voted_up` | string | 'vote--voted-up' | Понравилось |
| `classes.voted_down` | string | 'vote--voted-down' | Не понравилось |
| `classes.voted_zero` | string | 'vote--voted-zero' | Воздержался |
| `classes.count_positive` | string | 'vote--count-positive' | Рейтинг больше нуля |
| `classes.count_negative` | string | 'vote--count-negative' | Меньше нуля |
| `classes.count_zero` | string | 'vote--count-zero' | Равен нулю |
| `classes.rating_hidden` | string | 'vote--rating-hidden' | Рейтинг скрыт |
## Использование
Пример использования в плагине.
аблон с изображением_ **image.tpl**
```smarty
...
{include 'components/vote/vote.tpl' sMods='small' sClasses='js-plugin-gallery-image-vote'}
...
```
айл иниц-ии js плагина_ **init.js**
```js
$('.js-plugin-gallery-image-vote').vote({
urls: {
vote: aRouter['gallery'] + 'vote/image/',
info: aRouter['gallery'] + 'vote/info/'
}
});
```