dojo.provide("js.ratingsWrapper");RatingsInterval=function(B,C,D,A){this.numDots=B;this.descr=C;this.minRate=D;this.maxRate=A};RatingsCreator=function(A){var B=dojo.i18n.getLocalization("my.app","websiteText");this.constants={ratingIntrvl:null,MAXRATE_0:0,MAXRATE_1:10,MAXRATE_2:50,MAXRATE_3:Infinity,RATE0_DESCR:B.ratings.RATE0_DESCR,RATE1_DESCR:B.ratings.RATE1_DESCR,RATE2_DESCR:B.ratings.RATE2_DESCR,RATE3_DESCR:B.ratings.RATE3_DESCR,ALREADY_RATED_TXT:B.ratings.ALREADY_RATED_TXT,GUEST_TXT:B.ratings.NOT_LOGGED_IN,SELF_TXT:B.ratings.SELF_TXT,OWN_MEDIA:B.ratings.OWN_MEDIA};this.usingPage=A;this.ratingIntrvl=new Array();this.ratingIntrvl[0]=new RatingsInterval(0,this.constants.RATE0_DESCR,0,this.constants.MAXRATE_0);this.ratingIntrvl[1]=new RatingsInterval(1,this.constants.RATE1_DESCR,this.constants.MAXRATE_0+1,this.constants.MAXRATE_1);this.ratingIntrvl[2]=new RatingsInterval(2,this.constants.RATE2_DESCR,this.constants.MAXRATE_1+1,this.constants.MAXRATE_2);this.ratingIntrvl[3]=new RatingsInterval(3,this.constants.RATE3_DESCR,this.constants.MAXRATE_2+1,this.constants.MAXRATE_3)};RatingsCreator.prototype.createRankElement=function(E,O,J,N,L){dojo.requireLocalization("my.app","websiteText");dojo.requireLocalization("my.app","buttonLoc");var C=dojo.i18n.getLocalization("my.app","websiteText");var K=dojo.i18n.getLocalization("my.app","buttonLoc");var F=0;var P=false;var G="";var B=O.rate;var I="false";if(L!="Gst"){I=this.hasUserRated(O,J);if(I=="true"&&(B==0||B=="0")){B="1"}}if(N==""){N="rank_overlay_left"}var D="../images/i/ratings/btn_rating";var H=(I=="true")?"_already.png":"_notyet.png";while(F<this.ratingIntrvl.length&&!P){if(B<=this.ratingIntrvl[F].maxRate){P=true;if(B>=this.ratingIntrvl[F].minRate){var A=E.id+"_popup";if(B==0){imgStr=G+="<img onmouseover=\"show('"+A+'\');" src="'+D+"0"+H+'" />'}else{imgStr=G+="<img onmouseover=\"show('"+A+'\');" src="'+D+F+H+'" />'}G+='<div id="'+A+'" onmouseover="show(\''+A+"');\" onmouseout=\"hide('"+A+'\');" class="'+N+'" style="text-decoration: none;">'+this.ratingIntrvl[F].descr+"<br />";if(I=="true"){G+='<span class="already">'+this.constants.ALREADY_RATED_TXT+"</span>"}else{if(J=="Usr"&&IdentityData.identity!=null&&O.id==IdentityData.identity.id){G+='<span class="already">'+this.constants.SELF_TXT+"</span>"}else{if(J=="CMd"&&IdentityData.identity!=null&&O.userId==IdentityData.identity.id){G+='<span class="already">'+this.constants.OWN_MEDIA+"</span>"}else{if(L=="Gst"){G+='<span class="already">'+this.constants.GUEST_TXT+"</span>"}else{var M=this;G+='<img class="btn_recommend" src="'+K.recommend.recommendBtn+"\" alt='"+C.buttonText.recommendBtn+"' onclick=\"recommendItem('"+E.id+"','"+O.id+"',"+O.rate+",'"+J+"','"+N+"','"+this.usingPage+"');\"/>"}}}}G+="</div>"}}F++}if(E.sendHTML){return G}else{E.innerHTML=G}};RatingsCreator.prototype.hasUserRated=function(E,D){var C="false";var B=[];if(D=="CMd"){B=IdentityData.mediaRatings}else{if(D=="Usr"){B=IdentityData.userRatings}else{B=IdentityData.linksRatings}}for(var A=0;A<B.length;A++){if(B[A].id==E.id&&B[A].type==D){C="true"}}return C};function recommendItem(C,K,B,H,D,I){var J={type:H,id:K};J.rate=B+1;if(H=="CMd"){IdentityData.mediaRatings.push(J);if(I=="publicProfile"){var G=PublicProfileView.mediaItems;for(var F=0;F<G.length;F++){if(G[F].id==K){G[F].rate=J.rate}}}else{if(I=="photoGallery"){var G=pgData.images;for(var F=0;F<G.length;F++){if(G[F].id==K){G[F].rate=J.rate}}}}}else{if(H=="Usr"){IdentityData.userRatings.push(J);if(I=="publicProfile"){PublicProfileData.identity.rate=J.rate}}else{IdentityData.linksRatings.push(J)}}var A=serverUrl+"/FCBSTWeb/RateServlet";var E={url:A+"?user.id="+IdentityData.identity.id+":ent.id="+K+":ent.tp="+H+":ent.rt=1",load:dojo.hitch(this,function(M,L){var N=new RatingsCreator(I);N.createRankElement(dojo.byId(C),J,H,D,"Usr")}),handleAs:"text",error:dojo.hitch(this,function(M,L){var N=dojo.i18n.getLocalization("my.app","websiteText");console.log("###Error Occured while rating of type: "+M.message+" ###");logger.displayError(dojo.string.substitute(N.errorMsg.serviceDown,[N.services.rating]))}),timeout:logger.ajaxTimeout};dojo.xhrGet(E)};