var LikeButton=function(){var self=this;this.unlike_disabled=true;this.text={like:"I Like It!",liking:"Liking",unliking:"Unliking",unlike:"Not Likey"};this.classes={like:"btn-like-sm",liking:"btn-liking-sm",unliking:"btn-unliking-sm",unlike:"btn-unlike-sm"};this.initialize=function(el,obj_type,obj_id){this.el=$(el);this.obj={type:obj_type,id:obj_id};this.originalClass=this.el.attr("class");this.originalText=this.el.text();this.originalCount=this.el.parent().find("div.likes-num:first").text();this.el.click(this.clicked);this.status=self.el.attr("status")};this.clicked=function(e){if($(e.target).hasClass(self.classes.liking)||(self.status=="unlike"&&self.unlike_disabled)){return false}self.sendingRequest();$.ajax({type:"GET",dataType:"json",url:"/likes/"+self.status+"/",data:{obj_type:self.obj.type,obj_id:self.obj.id},success:self.parseResponse});return false};this.sendingRequest=function(){this.el.text(this.status=="like"?this.text.liking:this.text.unliking);this.el.attr("class",this.status=="like"?this.classes.liking:this.classes.unliking)};this.parseResponse=function(json){if(json.result=="fail"){return self.failed(json)}self.success(json)};this.success=function(json){this.status=this.status=="like"?"unlike":"like";this.el.attr("status",this.status);this.el.parent().find("div.likes-num:first").fadeOut("slow",function(){new_like_count=json.like_count;if(new_like_count==$(this).text()){new_like_count++}$(this).text(new_like_count);$(this).fadeIn("slow")});if(json.wow&&json.wow==1){userbar_message("action","like")}this.el.text(this.text[this.status]);this.el.attr("class",this.classes[this.status])};this.failed=function(json){alert(json.note);this.el.text(this.text[this.status]);this.el.attr("class",this.classes[this.status])}};$(document).ready(function(){$('a[class$="like-sm"][show_login!="true"]').each(function(x,el){var button=new LikeButton();button.initialize(el,$("#obj_type").val(),$("#obj_id").val())})});