Nk-CS.Ru: Все для вашего портала uCoz
Авторизация

Рейтинг Кинопоиск и iMDB для uCoz

Рейтинг Кинопоиск и iMDB для uCoz Описание:
Здравствуйте, представляю вашему вниманию новый (рабочий) скрпит, который выводит рейтинг фильма с Кинопоиска и iMDB. В сети уже полно скриптов, но большинство уже не работает, это же новый скрипт, который полностью работает и проверен на тестовом сайте.

Установка скрипта:
1. Залить kinopoisk.min.js в файловый менеджер в папку js;

2. В том месте где хотите вывести рейтинг вставляем код:
<div class="site-rating">
<div class="kinopoisk2" data-movie="$OTHER1$"></div>
<script type="text/javascript" src="/js/kinopoisk.min.js"></script>
</div>

$OTHER1$ - При добавлении в доп. поле указываем ID фильма с Kinopoisk.
Например находим фильм https://www.kinopoisk.ru/film/v-pole-zreniya-2011-582359/ - 582359 в конце это и есть ID фильма, его мы указываем в Доп. Поле 1 при добавлении.

3. В таблицу стилей CSS добавим:
.site-rating {overflow:hidden;}
.site-rating b {display:block; color:#0DB9DD; font-size: 15px; margin-top:2px;}
.site-rating small {display:block;color: #8f95a3;font-size: 10px;}
.site-rating .kinopoisk {position:relative; float:left; height:46px; padding:0 20px 0 50px;}
.site-rating .kinopoisk:before {top: 0px; left: 0px; content: ""; width: 46px; height: 46px; position: absolute;background: url(../images/kinopoisk.png) no-repeat 0 0; background-size:90%;}
.site-rating .imdb {position:relative; float:left; height:46px; padding:0 0 0 50px;}
.site-rating .imdb:before {top: 0px; left: 0px; content: ""; width: 46px; height: 46px; position: absolute;background: url(../images/imdb.png) no-repeat 0 0; background-size:90%;}


4. В папку images заливаем 2 картинки: kinopoisk.png и imdb.png;
5. Готово! Все вопросы по установке и настройке можете оставлять в комментарии.

Дополнительно:
1. Содержимое скрипта:
/**
  * jQuery Kinopoisk Plugin 0.5
  *
  * Kinopoisk is a jQuery plugin that let you easily add to your web page movie rating informer. This informer shows
  * movie rating from kinopois.ru and imdb.com. It does not use any server side scripts. It use javascript and css files only.
  *
  * @name kinopoisk
  * @version 0.6
  * @requires jQuery v1.5.0+
  * @author Dmitry Shamin <dmitry.shamin@gmail.com>
  * @license Dual licensed under the MIT or GPL Version 2 licenses.
  *
  * Copyright 2012-2013, Dmitry Shamin
  */
!function(t){var e={movie:!1,url:"http://rating.kinopoisk.ru",range:10,fix:1,order:["kinopoisk","imdb"],kinopoisk_template:'<span class="kinopoisk" data-toggle="tooltip" data-placement="bottom" data-original-title="Рейтинг Кинопоиск"><b>$rating</b> <small>$vote</small></span>',imdb_template:'<span class="imdb" data-toggle="tooltip" data-placement="bottom" data-original-title="Рейтинг IMDB"><b>$rating</b> <small>$vote</small></span></span>',cache_time:864e5,no_data:"Нет данных",show_zero_rating:!0},a={init:function(a){return this.each(function(){var r=t(this),n=t.extend({},e,r.data(),a);for(var i in n)if("movie"==i){var o=n[i].toString().split("/");o.length>1?n[i]=o[4]:n[i]=o[0]}r.data({params:n}),r.kinopoisk2("getRating")})},getRating:function(){var e=t(this),r=e.data("params");if(!r.movie)throw"Не указан идентификатор фильма на кинопоиске (data-movie).";var n=a._getCache(e,r.movie);return n?a._showRating(e,n):void t.ajax({type:"GET",url:"http://query.yahooapis.com/v1/public/yql?q="+encodeURIComponent('select * from xml where url="'+r.url+"/"+r.movie+'.xml"')+"&format=xml&callback=?",dataType:"json",success:function(t){return n=a._setCache(e,r.movie,t.results[0]),a._showRating(e,n)},error:function(e){console.log(e),t.error(e.responseText)}})},_getCache:function(e,a){var r=e.data("params"),n=(new Date).getTime(),i=localStorage.getItem("movie_"+a);if(!i)return!1;var o=t.parseXML(i),s=t(o);return n-s.find("cache_time").text()>r.cache_time?(localStorage.removeItem("movie_"+a),!1):i},_setCache:function(e,a,r){var n=e.data("params"),i=(new Date).getTime(),o=localStorage.getItem("movie_"+a),s="<result>"+r+"<cache_time>"+i+"</cache_time></result>";if(o){var p=t.parseXML(o),c=t(p);i-c.find("cache_time").text()>n.cache_time?localStorage.setItem("movie_"+a,s):s=o}else localStorage.setItem("movie_"+a,s);return s},_showRating:function(e,r){var n=e.data("params");if(!r)throw'Проверьте правильность url "'+n.url+'"';var i=t.parseXML(r),o=t(i),s=o.find("kp_rating"),p=o.find("imdb_rating");if(0==s.text()&&0==s.attr("num_vote"))return n.no_data?e.html('<span class="kp_container">'+n.no_data+"</span>"):e;s.text(a.__roundRating(s,n.fix)),p.text(a.__roundRating(p,n.fix)),s.stars=a._getStar(s.text(),n.range),p.stars=a._getStar(p.text(),n.range);var c=a._getTemplate(n.kinopoisk_template,s),l=a._getTemplate(n.imdb_template,p);0==n.show_zero_rating&&(0==s.text()&&(c=""),0==p.text()&&(l=""));var m={kinopoisk:c,imdb:l},_="";for(var u in n.order)n.order.hasOwnProperty(u)&&"undefined"!=typeof m[n.order[u]]&&(_+=m[n.order[u]]);return e.hide().html('<span class="kp_container">'+_+"</span>").fadeIn()},__roundRating:function(t,e){return Math.round(parseFloat(t.text())*Math.pow(10,e))/Math.pow(10,e)},_getTemplate:function(t,e){return t.replace("$rating",e.text()).replace("$vote",e.attr("num_vote")).replace("$stars",e.stars)},_getStar:function(t,e){for(var a="",r=Math.round(t*e/10),n=1;e>=n;n++)a+=r>=n?"<span>&#9733;</span>":"<span>&#9734;</span>";return a}};t.fn.kinopoisk2=function(e){try{if(a[e]){if("_"==e.charAt(0))throw"Нельзя вызывать приватный метод";return a[e].apply(this,Array.prototype.slice.call(arguments,1))}if("object"!=typeof e&&e)throw"Метод "+e+" не найден";return a.init.apply(this,arguments)}catch(r){t.error(r)}}}(jQuery),$(document).ready(function(){$(".kinopoisk2").kinopoisk2()});

2. Разберем скрипт:
<span class="kinopoisk" data-toggle="tooltip" data-placement="bottom" data-original-title="Рейтинг Кинопоиск"><b>$rating</b> <small>$vote</small></span>

Этот код отвечает за шаблон рейтинга Кинопоиска.
$rating - Общий рейтинг (число);
$vote - Это количество проголосовавших.
<span class="imdb" data-toggle="tooltip" data-placement="bottom" data-original-title="Рейтинг IMDB"><b>$rating</b> <small>$vote</small></span>

Этот код отвечает за шаблон рейтинга iMDB.
$rating - Общий рейтинг (число);
$vote - Это количество проголосовавших.

3. Вы так же можете вывести рейтинг в виде звездочек, заменив $rating на $stars в js скрипте.
kp_rating_imdb.zip [8.64 Kb] (cкачиваний: 62)

9.8
8 оценок
10.0
Дизайн:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
10.0
Функционал:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
10.0
Мобильность:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
9.0
Общая оценка:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Читайте также
SK1L3S
12 декабря 2017 05:39
+ 0 -
A можно и так и удобнее. Чтобы не добавлять в таблицу стилей CSS ))


na3uTuB4uk
13 декабря 2017 09:48
+ 0 -
Цитата: SK1L3S
A можно и так и удобнее. Чтобы не добавлять в таблицу стилей CSS ))

Можно, но я привык когда все на своих местах, так загрузка страницы происходит быстрее)
Nk-CS.Ru - The Best of Web!
еХе
19 декабря 2017 23:58
+ 0 -
na3uTuB4uk,

Мне вот интересно не смог никак обойти стороной, а обновятся он будет или какой рейтинг бы при добавлении когда добавлю фильм или все таки будет обновляться постоянно???
na3uTuB4uk
20 декабря 2017 08:36
+ 0 -
еХе,
Должен обновляться)
Nk-CS.Ru - The Best of Web!
еХе
9 января 2018 02:28
+ 0 -
Что-то пошло не так с рейтингом на моем сайте pensive pensive pensive
mever
9 января 2018 04:38
+ 0 -
еХе,
Что именно случилось? Ты покажи нам свой косяк, мы постараемся помочь)))
na3uTuB4uk
9 января 2018 17:59
+ 0 -
еХе,
По подробнее пожалуйста.
Nk-CS.Ru - The Best of Web!
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Авторизация
лучший сайт где можно скачать шаблоны для dle 11.3 бесплатно