From 6eaec3e79b3a809e2b7f147bf3ed26b8131847b2 Mon Sep 17 00:00:00 2001 From: Kartik Visweswaran Date: Sat, 17 May 2014 00:38:03 +0530 Subject: [PATCH] Fix #11: Refresh rating corrected --- js/star-rating.js | 5 ++++- js/star-rating.min.js | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/js/star-rating.js b/js/star-rating.js index 4df8fd0..bed7927 100644 --- a/js/star-rating.js +++ b/js/star-rating.js @@ -41,6 +41,7 @@ // Rating public class definition var Rating = function (element, options) { this.$elementOrig = $(element); + this.refreshRating = false; if (isSliderSupported) { this.init(options); } @@ -148,9 +149,10 @@ */ init: function (options) { this.options = options; - if (!this.$elementOrig.is(":visible")) { + if (!this.$elementOrig.is(":visible") && !this.refreshRating) { return; } + this.refreshRating = false; if (typeof this.$element == 'undefined') { this.initSlider(options); } @@ -321,6 +323,7 @@ refresh: function (options) { var self = this; if (arguments.length) { + this.refreshRating = true; var cap = ''; self.init($.extend(self.options, options)); if (self.showClear) { diff --git a/js/star-rating.min.js b/js/star-rating.min.js index 74d010a..0fffeb2 100644 --- a/js/star-rating.min.js +++ b/js/star-rating.min.js @@ -7,4 +7,4 @@ * * For more JQuery plugins visit http://plugins.krajee.com * For more Yii related demos visit http://demos.krajee.com - */(function(e){var t=0;var n=5;var r=.5;var i=function(){var e=document.createElement("input");e.setAttribute("type","range");return e.type!=="text"};var s=i();var o=function(t,n){return typeof t==="undefined"||t===null||t===undefined||t==[]||t===""||n&&e.trim(t)===""};var u=function(e,t,n){var r=o(e.data(t))?e.attr(t):e.data(t);if(r){return r}return n[t]};var a=function(){return"kvstar-"+Math.round((new Date).getTime()+Math.random()*100)};var f=function(t,n){this.$elementOrig=e(t);if(s){this.init(n)}else{var r=n.starCaptions;this.polyfill(r)}};f.prototype={constructor:f,_parseAttr:function(e,i){var s=this,a=s.$elementOrig;if(a.attr("type")==="range"||a.attr("type")==="number"){var f=u(a,e,i);var l=r;if(e==="min"){l=t}else if(e==="max"){l=n}else if(e==="step"){l=r}var c=o(f)?l:f;return parseFloat(c)}return parseFloat(i[e])},listen:function(){var t=this;t.$element.on("change",function(e){if(!t.inactive){t.setStars();t.$elementOrig.val(t.$element.val());t.$elementOrig.trigger("change");t.$elementOrig.trigger("rating.change",[t.$element.val(),t.$caption.html()])}});t.$clear.on("click",function(e){if(!t.inactive){t.clear()}});e(t.$elementOrig[0].form).on("reset",function(e){if(!t.inactive){t.reset()}})},initSlider:function(i){var s=this,u=o(s.$elementOrig.attr("id"))?a():"kvstar-"+s.$elementOrig.attr("id");if(o(s.$elementOrig.val())){s.$elementOrig.val(0)}s.initialValue=s.$elementOrig.val();s.min=typeof i.min!=="undefined"?i.min:s._parseAttr("min",i);s.max=typeof i.max!=="undefined"?i.max:s._parseAttr("max",i);s.step=typeof i.step!=="undefined"?i.step:s._parseAttr("step",i);if(isNaN(s.min)||o(s.min)){s.min=t}if(isNaN(s.max)||o(s.max)){s.max=n}if(isNaN(s.step)||o(s.step)||s.step==0){s.step=r}s.$elementOrig.clone(true).attr({id:u,name:u,type:"range"}).insertBefore(s.$elementOrig);s.$elementOrig.removeAttr("class");s.$element=e("#"+u);s.$element.attr({min:s.min,max:s.max,step:s.step,disabled:s.disabled,readonly:s.readonly});s.$element.val(s.$elementOrig.val());s.$elementOrig.hide()},polyfill:function(t){var n=this,r=e(""),i=n.$element;i.before(r);for(var s in t){r.append(e("