var Archivedbook=Archivedbook||{};(function($){Archivedbook.Tracking=function(controller){this.controller=controller;};Archivedbook.Tracking.prototype.start=function(){$(this.controller).bind({loadFeed:function(event,id,connectionId){if(typeof _gaq!='undefined'){_gaq.push(['_trackEvent',"Feed","Connection",connectionId]);}},selectSort:function(event,sortId){if(typeof _gaq!='undefined'){_gaq.push(['_trackEvent',"Feed","Sort",sortId]);}}});$.each(Archivedbook.Tracking.TRACKED_CLICK_EVENTS,function(index,value){$('body').delegate(value.selector,'click',function(){console.log('_trackEvent',value.category,value.action);});});};Archivedbook.Tracking.TRACKED_CLICK_EVENTS=[];})(jQuery);;var Archivedbook=Archivedbook||{};Archivedbook.Login=function(appID,startProfileID,startConnectionType,permissions,connectButtonSelectors){console.log('Archivedbook.Login',appID,startProfileID,startConnectionType);this.startProfileID=startProfileID;this.startConnectionType=startConnectionType;var tracking=new Archivedbook.Tracking().start();FB.init({appId:appID,status:true,cookie:true,xfbml:false,oauth:true});$(connectButtonSelectors).click($.proxy(function(event){event.preventDefault();this.login(permissions);},this));};Archivedbook.Login.prototype.login=function(permissions){console.log('Archivedbook.Login.login');FB.login($.proxy(this.launchApp,this),{scope:permissions});};Archivedbook.Login.prototype.launchApp=function(response){console.log('Archivedbook.Login.launchApp',response);if(response.authResponse){if(this.startProfileID){location.href='/'+this.startProfileID+(this.startConnectionType?'/'+this.startConnectionType:'');}else{this.getConnectedUserID(function(id){location.href='/'+id;});}}else{console.error("User cancelled login or did not fully authorize.");}};Archivedbook.Login.prototype.getConnectedUserID=function(callback){FB.api('/me',function(response){if(response.error){console.error(response.error.message);}
console.log('Archivedbook.Login.prototype.getConnectedUserID',response);var id=response.username?response.username:response.id;callback.call(this,id);});};
