Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

Рейтинг материалов +/- (плюс/минус) JavaScript

Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

» » Сообщение:

Изображение

1. Заливаем на хост прикрепленный файл. Подключаем его в шаблон верхнего глобального блока страницы.

2. В шаблон вида материалов/страницы материала и комментариев нужного модуля вставляем по месту вывода кнопок «+-»

Код: Выделить всё Развернуть
<?if($RATE_FORM$)?>
   <div class="rate-box">
      <a onclick="getRate(1,$ID$,'news');return false" href="#" title="Нравится" class="positive"><b>Да<span class="rate-count" id="plus_$ID$">0</span></b></a>
      <a onclick="getRate(-1,$ID$,'news');return false" href="#" title="Не нравится" class="negative"><b>Нет<span class="rate-count" id="minus_$ID$">0</span></b></a>
   </div>
   <script type="text/javascript">setRating($RATING$,$RATED$,$ID$)</script>
<?endif?>

Где в участке getRate(mark, id, module, events);return false

  • mark - Оценка (±1)
  • id - ID оцениваемого материала
  • module - название модуля (forum, blog, load, ...). Определяется автоматически, если не указано.
  • events - объект обработчиков событий.
    Имеет 3 свойства:
    • before - действие до отправки запроса. Принимает аргументом jQuery-объект, указывающий на #rate_$ID$.
    • after-success - действие после успешной оценки. Принимает аргументами jQuery-объект, указывающий на #rate_$ID$ и новую оценку.
    • after-error - действие после отправки запроса с ошибкой. Принимает аргументом код, возвращаемый сервером в первом теге cmd.

3. В CSS прописываем 3 класса:

Код: Выделить всё Развернуть
a.positive, a.negative {
   display: inline-block;
   padding: 7px 4px 7px 35px;
   text-align: center;
   font-size: 14px;
   vertical-align: top;
   color: #fff;
   border: 2px solid transparent;
}

.positive {
   margin-right: 5px;
   background:#69c23b url(http://likbezz.ucoz.ru/_ext/img/plus.png) no-repeat 5px 3px;
   border-radius: 4px;
   border-color: transparent #2bb26e #2bb26e transparent;
}

a.negative {
   background:#de5c4c url(http://likbezz.ucoz.ru/_ext/img/minus.png) no-repeat 5px 3px;
   border-radius: 4px;
   border-color: transparent #dadcdb #dadcdb transparent;
   color: #888;
}

.rate-count {
   margin-left: 3px;
}
.rate-box{
   white-space:nowrap;
}

a.positive - оформление положительного рейтинга.
a.negative - оформление отрицательного рейтинга.
.rate-count - оформление цифры рейтинга
.rate-box - оформление общего блока для кнопок рейтинга
- можно отредактировать под себя.

Выглядит так:

Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

---

Доступно только для зарегистрированных пользователей.



Re: Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

Admin » » Сообщение:

kinouser писал(а) › 21 сен 2016, 21:59:у заказчика скрипта заметил,что минус редко срабатывает.

У заказчика проблемы с разным рейтингом - и звезды, что плюсуют от 1 до 5, и другой рейтинг, что добавляет либо 1, либо 3 ... Конечно будут проблемы со счетом..
Лучше пробовать вот тут: likbezz.ucoz.ru/photo


Re: Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

Герук Юра » » Сообщение:

kinouser писал(а) › 21 сен 2016, 21:59:у заказчика скрипта заметил,что минус редко срабатывает

Да, есть небольшие проблемы, но это мелочи, главное что скрипт работает, а с теми мелочами справимся со временем. А так, этот скрипт хотя и не универсален, но пока в сети лучше нет чтобы в бесплатном доступе и скрипт лайков от Юкоз - https://blog.ucoz.ru/usocial/ulike совсем не то, что просили пользователи в идее - здесь. Друзья, отписывайтесь на странице идеи, пишите ваши комментарии, возможно статус выполнено все таки будет изменен на планируется и все же может реализуют, что просили вместо текущего платного в виде лайков.


Re: Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

kinouser » » Сообщение:

Adminтам вообще чёт ничего не плюсует и не минусует,Герук Юра писал там уже и не раз и в личку отписывался,думал хоть отпишутся,ан нет.У меня вообще только на сайте плюсует,минусовать не хотит и рейтинг после оценки пропадает,эхх.А всё разобрался,else дописал

Последний раз редактировалось kinouser 22 сен 2016, 00:22, всего редактировалось 1 раз.





Re: Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

Герук Юра » » Сообщение:

kinouser писал(а) › 22 сен 2016, 00:14:не хотит и рейтинг после оценки пропадает

Чтобы рейтинг не пропадал, удалите вот это условие:

Код: Выделить всё Развернуть
<?if($RATE_FORM$)?><?endif?>

оставьте лишь чистый код без этого условия и все должно отображаться.



Re: Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

Герук Юра » » Сообщение:

kinouser писал(а) › 22 сен 2016, 10:14:видать самый точный скрип,у меня получается только в новых материалах ставится и + и -

Все верно, проблема из-за того, что ранее был звездочный рейтинг и вот его оценки все сбивают, постепенно все устаканится либо "Автор скрипта", найдет какое решение, возможно. А так все хорошо работает.


Re: Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

Admin » » Сообщение:

kinouser писал(а) › 22 сен 2016, 10:14:а в старых только плюсы выводит)

Это из-за разницы .. что бы выводил в старых поставьте скрипт, который прибавляет и рассчитывает исходя из 5.
Доступно только для зарегистрированных пользователей.



Re: Рейтинг материалов +/- (плюс/минус) для uCoz. JavaScript

Admin » » Сообщение:

kinouser писал(а) › 22 сен 2016, 10:28:увы я тот уже удалил)

Найти:

Код: Выделить всё Развернуть
c==1?3:1

заменить на

Код: Выделить всё Развернуть
c==1?5:1

Найти:

Код: Выделить всё Развернуть
%=112%

заменит на:

Код: Выделить всё Развернуть
%=114%

След.



Похожие темыКомментарии ПросмотрыПоследнее сообщение
0912JavaScript. Логические операторы и ...
Сообщение от: Admin
0667Колонки одинаковой высоты - лучшее ...
Сообщение от: Admin
0493JavaScript методы alert, document.w...
Сообщение от: Admin
11656Re: Как можно этот Snippet на Vanil...
Сообщение от: Admin
099Вывод страницы на печать, версия дл...
Сообщение от: likbezz