Seditio Source
Root |
./othercms/xenForo 2.2.8/js/xf/rating.min.js
'use strict';!function(h,m,n,p){XF.Rating=XF.Element.newHandler({options:{theme:"fontawesome-stars",initialRating:null,ratingHref:null,readonly:!1,deselectable:!1,showSelected:!0},ratingOverlay:null,$widget:null,$ratings:null,init:function(){var a=this.$target,b=this.options,c=b.initialRating,d=b.showSelected,k=b.readonly;a.barrating({theme:b.theme,initialRating:c,readonly:k?!0:!1,deselectable:b.deselectable?!0:!1,showSelectedRating:d?!0:!1,onSelect:XF.proxy(this,"ratingSelected")});b=a.next(".br-widget");
var g=b.find("[data-rating-text]");this.$widget=b;this.$ratings=g;c&&a.val(c);d&&b.addClass("br-widget--withSelected");if(!k){d=a.attr("id");a=null;d&&(d=h('label[for="'+d+'"]'),d.length&&(a=d.xfUniqueId()));b.attr({role:"radiogroup","aria-labelledby":a});g.each(function(){var e=h(this),f=c&&e.attr("data-rating-value")==c;e.attr({role:"radio","aria-checked":f?"true":"false","aria-label":e.attr("data-rating-text"),tabindex:f?0:-1})});c||g.first().attr("tabindex",0);var l=this;g.on("keydown",function(e){var f=
!1;switch(e.keyCode){case 37:case 38:f=!0;l.keySelectPrevious();break;case 39:case 40:f=!0,l.keySelectNext()}f&&(e.preventDefault(),e.stopPropagation())})}},keySelect:function(a){var b=this.$target,c=b.val();if(a=b.find('option[value="'+c+'"]')[a]())a=a.val(),b.barrating("set",a),this.$ratings.filter('[data-rating-value="'+a+'"]').focus()},keySelectPrevious:function(){this.keySelect("prev")},keySelectNext:function(){this.keySelect("next")},ratingSelected:function(a,b,c){this.options.readonly||(this.$ratings.attr({"aria-checked":"false",
tabindex:-1}),a?this.$ratings.filter('[data-rating-value="'+a+'"]').attr({"aria-checked":"true",tabindex:0}):this.$ratings.first().attr("tabindex",0),this.options.ratingHref&&(this.ratingOverlay&&this.ratingOverlay.destroy(),this.$target.barrating("clear"),XF.ajax("get",this.options.ratingHref,{rating:a},XF.proxy(this,"loadOverlay"))))},loadOverlay:function(a){if(a.html){var b=this;XF.setupHtmlInsert(a.html,function(c,d){c=XF.getOverlayHtml({html:c,title:d.h1||d.title});b.ratingOverlay=XF.showOverlay(c)})}}});
XF.Element.register("rating","XF.Rating")}(jQuery,window,document);