var recBar={effectDuration:200,buttonsEffectDuration:200,needDataUpdate:false,firstClick:true,state:0,currentItem:{},setDefaultState:function(state){this.state=parseInt(state);},baseInit:function(){if(!this.inited){this.init();this.inited=true;if(this.currentItem.vote>0){this.getRemoteData();}}},setCurrentItem:function(itemObj){this.currentItem=itemObj;},init:function(){var instance=this;$(function(){instance.baseContainer=$("#ajax-recbar");instance.buttonBar=instance.baseContainer.find("#recbar-show");instance.container=instance.baseContainer.find("#recbar-container");instance.loadingBar=instance.baseContainer.find("#loading-bar");instance.defaultMessage=instance.baseContainer.find("#default-message");instance.notFoundMessage=instance.baseContainer.find("#no-results-message");instance.recBar=instance.baseContainer.find("#recbar");instance.currentItemContainer=instance.baseContainer.find(".my-rec-title-area");instance.oppositeBarContainer=instance.baseContainer.find(".rec-opposite-bar-container");instance.similarBarContainer=instance.baseContainer.find(".rec-similar-bar-container");instance.recomendedItemsBarContainer=instance.baseContainer.find(".rec-items-bar-container");instance.currentItemContainerView=instance.currentItemContainer.find(".rec-cur-item-bar");instance.oppositeBar=instance.oppositeBarContainer.find(".rec-opposite-bar");instance.similarBar=instance.similarBarContainer.find(".rec-similar-bar");instance.recomendedItemsBar=instance.recomendedItemsBarContainer.find(".rec-items-bar");instance.buttonBar.bind("click",function(){instance.barToogle();});instance.baseContainer.find("#recbar-close").bind("click",function(){instance.barToogle();});if(instance.state==1){instance.container.show();instance.buttonBar.hide();}else{instance.buttonBar.show();instance.container.hide();}instance.baseContainer.show();});},barToogle:function(){var instance=this;if(this.state!=1){this.buttonBar.hide(this.buttonsEffectDuration,function(){if(instance.needDataUpdate){instance.getRemoteData();}instance.container.show(instance.effectDuration);instance.state=1;$.get("/recbar/save-state/state/1");});}else{this.container.hide(this.effectDuration,function(){instance.buttonBar.show(instance.buttonsEffectDuration);instance.state=0;$.get("/recbar/save-state/state/0");});}},getInfo:function(itemId,vote){if(this.firstClick){this.defaultMessage.hide();this.firstClick=false;}if(vote>0){this.currentItem.id=itemId,this.currentItem.vote=vote;this.needDataUpdate=true;if(this.state==1){this.getRemoteData();}}},getRemoteData:function(){this.recBar.hide();this.loadingBar.show();var instance=this;$.getJSON("/recbar/get-data/item_id/"+this.currentItem.id+"/vote/"+this.currentItem.vote,function(data){instance.drawInfo(data);});},drawInfo:function(data){this.setCurrentItem(data.currentItem);this.needDataUpdate=false;this.recBar.show();this.loadingBar.hide();this.oppositeBar.empty();this.similarBar.empty();this.recomendedItemsBar.empty();this.notFoundMessage.show();this.oppositeBarContainer.hide();this.similarBarContainer.hide();this.recomendedItemsBarContainer.hide();if(data.trueRec){this.recomendedItemsBarContainer.find(".rec-title").html("They Recommend:");}else{this.recomendedItemsBarContainer.find(".rec-title").html("Your Top Twins Recommend:");}this.currentItemContainerView.empty();this.createMyItemBlock(this.currentItem).appendTo(this.currentItemContainerView);for(var i in data.oppositeUsers){if(typeof data.oppositeUsers[i]!="function"){this.createUserBlock(data.oppositeUsers[i]).appendTo(this.oppositeBar);this.oppositeBarContainer.show();this.notFoundMessage.hide();}}for(var i in data.sameUsers){if(typeof data.sameUsers[i]!="function"){this.createUserBlock(data.sameUsers[i]).appendTo(this.similarBar);this.similarBarContainer.show();this.notFoundMessage.hide();}}for(var i in data.recomendedItems){if(typeof data.recomendedItems[i]!="function"){this.createItemBlock(data.recomendedItems[i]).appendTo(this.recomendedItemsBar);this.recomendedItemsBarContainer.show();this.notFoundMessage.hide();}}},createUserBlock:function(userObj){var container=$('<div class="rec-image-container"/>');var link=$('<a href="/profile/'+userObj.nickname+'"/>');if((!userObj.facebook_id&&userObj.avatar_image!=null&&userObj.avatar_image.length>0)||(userObj.facebook_id&&userObj.avatar_small.length>0)){var icon;if(!userObj.facebook_id){icon=$('<img class="image-hover" src="/resources/uploads/user_avatar/small/'+userObj.avatar_image+'" title="'+userObj.nickname+'" width="45"/>');}else{icon=$('<img class="image-hover" src="'+userObj.avatar_small+'" title="'+userObj.nickname+'" width="45"/>');}icon.appendTo(link);var largeContainer=$('<div class="rec-image-large" style="display:none;"/>');largeContainer.appendTo(container);var largeHref=$('<a href="/profile/'+userObj.nickname+'"/>');largeHref.appendTo(largeContainer);var largeImage;if(!userObj.facebook_id){largeImage=$('<img src="/resources/uploads/user_avatar/large/'+userObj.avatar_image+'" title="'+userObj.nickname+'" />');}else{largeImage=$('<img src="'+userObj.avatar_big+'" title="'+userObj.nickname+'" />');}largeImage.appendTo(largeHref);}else{var largeHref=$('<a href="/profile/'+userObj.nickname+'"/>');$('<img src="/resources/images/placeholder/blank_male_micro.gif" width="25" height="25" /><br />').appendTo(largeHref);largeHref.appendTo(container);var name=userObj.nickname;if(name.length>6){name=name.substr(0,6)+"...";}link.html(name);}link.appendTo(container);return container;},createItemBlock:function(itemObj){var container=$('<div class="rec-image-container" />');var link=$('<a href="/item/view/'+itemObj.id+'"/>');if(itemObj.item_image&&itemObj.item_image.length==0){var icon=$("<span/>");var center=$("<center/>").appendTo(icon);var title=itemObj.title;if(title.length>20){title=title.substr(0,20)+"...";}$("<span/>").html(title).appendTo(center);}else{var icon=$('<img class="image-hover" src="/resources/uploads/item_image/small/'+itemObj.item_image+'" title="'+itemObj.title+'" width="50"/>');var largeContainer=$('<div class="rec-image-large" style="display:none;"/>');largeContainer.appendTo(container);var largeHref=$('<a href="/item/view/'+itemObj.id+'" />');largeHref.appendTo(largeContainer);var largeImage=$('<img src="/resources/uploads/item_image/large/'+itemObj.item_image+'" />');largeImage.appendTo(largeHref);}icon.appendTo(link);link.appendTo(container);return container;},createMyItemBlock:function(itemObj){var container=$('<div class="my-item-container" />');var title=itemObj.title;if(title.length>20){title=title.substr(0,20)+"...";}$("<span/>").html(title).appendTo(container);return container;}};$(function(){$(".rec-image-container .image-hover").live("mouseover",function(){var largeImage=getLargeImage($(this).parents("div.rec-image-container"));largeImage.stop(true,true);showLarge(this,largeImage);});$(".rec-image-container .image-hover").live("mouseout",function(){var largeImage=getLargeImage($(this).parents("div.rec-image-container"));largeImage.stop(true,true);hideLarge(largeImage);});});function getLargeImage(container){return $(container).find(".rec-image-large");}function showLarge(e,largeImage){largeImage.css("bottom","41px");var offset=$(e).offset();var imageWidth=(Math.round(largeImage.width()/2));var imageOffset=offset.left-imageWidth+30+"px";largeImage.css("left",imageOffset);largeImage.animate({height:"toggle",opacity:"toggle"},{duration:200});}function hideLarge(largeImage){largeImage.animate({height:"toggle",opacity:"toggle"},{duration:"fast"});}$(function(){recBar.init();});