/*
HTTP Host: b.static.ak.fbcdn.net
Generated: March 11th 2010 6:35:48 PM PST
Machine: 10.16.139.107
Locale: nu_ll
Path: js/homefeed.js
*/

if (window.CavalryLogger) { CavalryLogger.start_js(["js\/homefeed.js"]); }

function HomeFeed(d,f,a,i,h,e,c,g,b){HomeFeed.instance=this;this.resetState();this.oldestStoryTime=f||0;this.newestStoryTime=d||0;this.lastNewestStoryTime=0;this.lastLocalNewestTime=(new Date()).getTime();this.cdnTimeSyncFrequency=0;this.submenuShown=false;this.requestCount=0;this.akamaiRequestCount=0;this.akamaiTotalLatency=0;this.akamaiTotalStories=0;this.sendTime=0;this.requestLastSeen=0;this.currentDelay=HomeFeed.defaultDelay;this.supportsCdn=false;this.canSupportCdn=true;this.logModeOptionShown=g;this.logMode=c;this.resetRefreshCount();this.setAutoRefresh(a);this.tabset=i;this.nonTabId=e;this.tabIds=h;this.timerHandle=null;this.newStoriesClass=null;this.widgetAppId=null;this.widgetStreamId=null;this.widgetApiKey=null;this.feedbackTargets={};this.gmtOffsetMinutes=null;this.liveCommentUpdating=false;this.maxStoriesInDom=null;this.skipCDNTillNextStory=false;this.showLoggedOutError=true;this.embeddedWidget=b;this.widgetLocale=null;this.minimumReloadFrequency=0;if(this.embeddedWidget)LinkController.registerHandler(HomeFeed.newWindowLinkController,null,true);PageTransitions.registerHandler(HomeFeed.pageTransitionHandler);}HomeFeed.getInstance=function(){return HomeFeed.instance;};HomeFeed.defaultDelay=10*1000;HomeFeed.inactiveDelay=300*1000;HomeFeed.defaultRefreshes=90;HomeFeed.intermittentDelay=7*1000;HomeFeed.LOC_REPLACE=1;HomeFeed.LOC_PREPEND=2;HomeFeed.LOC_APPEND=3;HomeFeed.TAB_TOP_STORIES=1;HomeFeed.TAB_LIVE_FEED=2;HomeFeed.TAB_STATUS=3;HomeFeed.TAB_PHOTOS=4;HomeFeed.TAB_POSTED_ITEMS=5;HomeFeed.TAB_LIVEWIDGET_FRIENDS=7;HomeFeed.TAB_LIVEWIDGET_EVERYONE=8;HomeFeed.pageTransitionHandler=function(g){var c=HomeFeed.getInstance();var d=g.getPath();if(d=='/'||d=='/home.php'||d=='/widgets/livefeed.php'){var e=g.getQueryData();if(c){c.clearFeedbackTargets();if('logged_out' in e||'login' in e)return false;if('tab' in e){c.resetState();c.setTab(e.tab);if(e.tab==HomeFeed.TAB_LIVE_FEED){c.setAutoRefresh(true);c.showLogModeOption(true);c.refreshLogMode(c.logMode);}else if(e.tab==HomeFeed.TAB_LIVEWIDGET_FRIENDS||e.tab==HomeFeed.TAB_LIVEWIDGET_EVERYONE){c.setAutoRefresh(true);}else c.refreshLogMode(false);if(c.tabset)c.tabset.selectTab(c.tabIds[e.tab]);if(c.nonTabId)CSS.removeClass($(c.nonTabId),'HomeFeed_selected');c.refresh(HomeFeed.LOC_REPLACE,{new_request:1},true,true);return true;}else{var a=e.app_id||0;var f=e.stream_id||0;var b=e.fl||0;if(a||b){if(c.tabset)c.tabset.unselect();if(c.nonTabId)CSS.addClass($(c.nonTabId),'HomeFeed_selected');c.resetState();c.refreshLogMode(false);c.showLogModeOption(false);if(a)c.setApp(a);if(f)c.setWidgetStreamId(f);if(b)c.setFriendList(b);c.refresh(HomeFeed.LOC_REPLACE,{new_request:1},true,true);return true;}}}}return false;};HomeFeed.newWindowLinkController=function(a){var c=new URI(a.href);var b=c.getPath();if(b!='/'&&b!='/home.php'&&b!='/widgets/livefeed.php'&&b!='/logout.php'){window.open(c);return false;}return true;};HomeFeed.setDefaultRefreshes=function(a){HomeFeed.defaultRefreshes=a;};HomeFeed.prototype.openLiveWidgetLoginPopup=function(b){if(!b)b='/login.php';var d=new URI(b);d.addQueryData({api_key:this.widgetApiKey,fbconnect:1,iframe_widget:1});var c='iframe_widget_login';var a='toolbar=0,status=0,resizable=0,width=500,height=430';window.open(d.toString(),c,a);};HomeFeed.prototype.resetState=function(){this.apps=[];this.friendLists=[];this.tabId=null;this.oldestStoryTime=0;this.newestStoryTime=0;this.lastNewestStoryTime=0;if(this.timerSet)clearTimeout(this.timerHandle);this.timerSet=false;this.timerHandle=null;this.storyQueue=[];this.queueTimerHandle=null;this.newStoriesClass=null;this.supportsCdn=false;this.clearStoryQueue();this.resetRefreshCount();this.setAutoRefresh(false);return this;};HomeFeed.prototype.resetRefreshCount=function(){this.currentRefreshes=HomeFeed.defaultRefreshes;return this;};HomeFeed.prototype.refreshLogMode=function(a){var b=$('newsfeed_wrapper');if(a){CSS.addClass(b,'log_mode');CSS.removeClass(b,'full_mode');}else{CSS.addClass(b,'full_mode');CSS.removeClass(b,'log_mode');}return this;};HomeFeed.prototype.addApp=function(a){if(a)if(this.apps.indexOf(a)==-1)this.apps.push(a);return this;};HomeFeed.prototype.removeApp=function(a){if(this.apps.indexOf(a)!=-1)this.apps.remove(a);return this;};HomeFeed.prototype.clearApps=function(){if(this.apps.length>0)this.apps=[];return this;};HomeFeed.prototype.setApp=function(a){this.clearApps().addApp(a);return this;};HomeFeed.prototype.setWidgetApp=function(a){this.widgetAppId=a;return this;};HomeFeed.prototype.setWidgetStreamId=function(a){this.widgetStreamId=a;return this;};HomeFeed.prototype.setWidgetApiKey=function(a){this.widgetApiKey=a;return this;};HomeFeed.prototype.addFriendList=function(a){if(this.friendLists.indexOf(a)==-1)this.friendLists.push(a);return this;};HomeFeed.prototype.removeFriendList=function(a){if(this.friendLists.indexOf(a)!=-1)this.friendLists.remove(a);return this;};HomeFeed.prototype.clearFriendLists=function(){this.friendLists=[];return this;};HomeFeed.prototype.setFriendList=function(a){this.clearFriendLists().addFriendList(a);return this;};HomeFeed.prototype.setTab=function(a){this.tabId=a;return this;};HomeFeed.prototype.getTab=function(){return this.tabId;};HomeFeed.prototype.clearTab=function(){this.tabId=null;return this;};HomeFeed.prototype.setWidgetLocale=function(a){this.widgetLocale=a;return this;};HomeFeed.prototype.setReloadVersion=function(a){this.reloadVersion=a;return this;};HomeFeed.prototype.setMinimumReloadFrequency=function(a){this.minimumReloadFrequency=a;return this;};HomeFeed.prototype.setGmtOffsetMinutes=function(a){this.gmtOffsetMinutes=a;return this;};HomeFeed.prototype.clearFeedbackTargets=function(){this.feedbackTargets={};return this;};HomeFeed.prototype.getFeedbackTargets=function(){return this.feedbackTargets;};HomeFeed.prototype.showSubmenu=function(a){set_inner_html($('newsfeed_submenu_content'),a);if(!this.submenuShown)$('newsfeed_submenu').removeClass('hidden_elem');this.submenuShown=true;this.refreshLogModeOption();return this;};HomeFeed.prototype.hideSubmenu=function(){if(this.submenuShown)$('newsfeed_submenu').addClass('hidden_elem');this.submenuShown=false;return this;};HomeFeed.prototype.showLogModeOption=function(a){this.logModeOptionShown=a;return this;};HomeFeed.prototype.refreshLogModeOption=function(){var a=ge('newsfeed_submenu_log_mode_option');var b='log_mode_selected';var d=ge('newsfeed_submenu_headlines_only');var c=ge('newsfeed_submenu_full_stories');if(d&&c)if(this.logMode){d.addClass(b);c.removeClass(b);}else{d.removeClass(b);c.addClass(b);}if(a)if(this.logModeOptionShown){a.removeClass('hidden_elem');}else a.addClass('hidden_elem');return this;};HomeFeed.prototype.loadOlder=function(){var a={oldest:this.oldestStoryTime};this.refresh(HomeFeed.LOC_APPEND,a,true,false);return this;};HomeFeed.prototype.loadNewer=function(){var b={newest:this.newestStoryTime};if(this.canSupportCdn&&this.supportsCdn){if(this.newestStoryTime==this.lastNewestStoryTime){var c=(new Date()).getTime();var a=parseInt((c-this.lastLocalNewestTime)/1000);this.newestStoryTime+=a;this.lastLocalNewestTime=c;}this.lastNewestStoryTime=this.newestStoryTime;}this.refresh(HomeFeed.LOC_PREPEND,b,false,false);return this;};HomeFeed.prototype.setCdnTimeSyncFrequency=function(a){this.cdnTimeSyncFrequency=parseInt(a);return this;};HomeFeed.prototype.setSkipCDNTillNextStory=function(a){this.skipCDNTillNextStory=a;return this;};HomeFeed.prototype.setCanSupportCdn=function(a){this.canSupportCdn=a;return this;};HomeFeed.prototype.isCdnEnabled=function(){var a=this.canSupportCdn&&this.supportsCdn&&!this.skipCDNTillNextStory;return a;};HomeFeed.prototype.syncNewestStoryTime=function(){var c={};c.widget_app_id=this.widgetAppId;c.widget_stream_id=this.widgetStreamId;c.ak_r_ct=this.akamaiRequestCount;if(this.akamaiRequestCount>0){c.ak_av_lat=parseInt(this.akamaiTotalLatency/this.akamaiRequestCount);c.ak_av_stor=parseInt(this.akamaiTotalStories/this.akamaiRequestCount);}c.min_reload_freq=this.minimumReloadFrequency;if(this.tabId==HomeFeed.TAB_LIVEWIDGET_EVERYONE&&this.widgetLocale)c.locale=this.widgetLocale;this.akamaiRequestCount=0;this.akamaiTotalLatency=0;this.akamaiTotalStories=0;var d=function(e){var f=e.getPayload();if(f&&'lastestTime' in f){this.newestStoryTime=parseInt(f.lastestTime);this.lastLocalNewestTime=(new Date()).getTime();}if(f&&'cdnSyncFrequency' in f)this.setCdnTimeSyncFrequency(f.cdnSyncFrequency);};var b=function(e){};var a=new AsyncRequest().setReadOnly(true).setOption('retries',0).setMethod('GET').setData(c).setHandler(bind(this,d)).setErrorHandler(b).setTransportErrorHandler(b).setURI('/ajax/live_feed_last_action.php').send();};HomeFeed.prototype.loadMore=function(b){var a={story_keys:b};this.refresh(HomeFeed.LOC_APPEND,a,false,false);return this;};HomeFeed.prototype.autoRefreshFire=function(){this.timerSet=false;this.timerHandle=null;if(!this.autoRefresh)return;this.loadNewer();};HomeFeed.prototype.autoRefreshHandler=function(){if(!this.autoRefresh||this.timerSet||!this.currentDelay)return;var a=this.currentDelay;if(this.currentRefreshes<=0){a=HomeFeed.inactiveDelay;}else this.currentRefreshes--;if(!this.supportsCdn)a=parseInt(a*(.75+.5*Math.random()));this.timerSet=true;this.timerHandle=setTimeout(this.autoRefreshFire.bind(this),a);};HomeFeed.prototype.setAutoRefresh=function(a){if(!a&&this.timerSet){clearTimeout(this.timerHandle);this.timerHandle=null;}this.autoRefresh=a;this.autoRefreshHandler();return this;};HomeFeed.prototype.refresh=function(e,b,f,d){var c=this.autoRefresh;e=e||HomeFeed.LOC_REPLACE;f=(f===undefined)?true:f;d=d||false;var a=function(h){if(f&&!ge('feed_loading_image')){var l=document.createElement('img');l.src="/images/loaders/indicator_blue_large.gif";l.id="feed_loading_image";var q=$('newsfeed_wrapper');if(e==HomeFeed.LOC_APPEND){q.parentNode.appendChild(l);}else q.parentNode.insertBefore(l,q);}this.requestCount++;var p=this.requestCount;var m=function(r){var v=r.getPayload();if(v){if('newDelay' in v)this.currentDelay=v.newDelay;if('newRefreshCount' in v)HomeFeed.defaultRefreshes=v.newRefreshCount;if('newStoriesClass' in v)this.newStoriesClass=v.newStoriesClass;this.supportsCdn=false;if('enableCdn' in v&&this.canSupportCdn){this.supportsCdn=v.enableCdn;if(this.requestCount&&this.cdnTimeSyncFrequency&&(this.requestCount%this.cdnTimeSyncFrequency)==0)this.syncNewestStoryTime(false);if('n_stories' in v)this.akamaiTotalStories+=v.n_stories;}if(this.sendTime){this.akamaiTotalLatency+=(new Date()).getTime()-this.sendTime;this.sendTime=0;}if(p!=this.requestCount)return;this.removeLoadingImage();this.removeErrorMessage();this.updateLastSeen(p);var za=$('newsfeed_wrapper');var t=v.html||null;var y=v.stories||[];if(t||(y&&y.length)){this.setSkipCDNTillNextStory(false);if('newestStoryTime' in v&&v.newestStoryTime>this.newestStoryTime){this.newestStoryTime=v.newestStoryTime;this.lastLocalNewestTime=(new Date()).getTime();}if('lastestTime' in v)this.lastestTime=parseInt(v.lastestTime);if('oldestStoryTime' in v&&(this.oldestStoryTime==0||v.oldestStoryTime<this.oldestStoryTime))this.oldestStoryTime=v.oldestStoryTime;if('submenuText' in v){this.showSubmenu(v.submenuText);}else this.hideSubmenu();this.refreshLogModeOption();this.removeStoryStatusMessage();if(y&&y.length){this._addStoriesToQueue(y);}else if(t)this.updateStoriesHTML(t,this.newStoriesClass,e);}if('storiesCount' in v&&v.storiesCount){var x=ge('standard_status');if(x)hide(x);}if('livefeedBottomMessage' in v){var z=v.livefeedBottomMessage;var s=ge('livefeed_bottom_message');if(s)s.setContent(z);if(z.length>=70){CSS.addClass(s,'long_bottom_message');}else CSS.removeClass(s,'long_bottom_message');var u=ge('livefeed_main_item');if(u)if(z.length>0){CSS.addClass(u,'with_bottom_message');}else CSS.removeClass(u,'with_bottom_message');}if('maxStoriesInDom' in v&&v.maxStoriesInDom){this.maxStoriesInDom=v.maxStoriesInDom;this.truncateStories();}if(this.reloadVersion&&'reloadVersion' in v&&v.reloadVersion>this.reloadVersion&&'reloadRangeInSeconds' in v){this.setReloadVersion(v.reloadVersion);var w=Math.max(10000,Math.random()*1000*v.reloadRangeInSeconds);setTimeout(function(){window.location.reload();},w);}}if(c)this.autoRefreshHandler();}.bind(this);if(e!=HomeFeed.LOC_PREPEND){var j=ge('feed_bottom_links');if(j)j.parentNode.removeChild(j);}var o=(typeof b=='object')?b:{};if(this.apps.length)o.apps=this.apps;if(this.friendLists.length)o.fl=this.friendLists;if(this.tabId)o.tab=this.tabId;if(this.minimumReloadFrequency)o.min_reload_freq=this.minimumReloadFrequency;var n='GET';if(this.feedbackTargets&&this.liveCommentUpdating){var k=values(this.feedbackTargets);if(k.length){o.feedback_targets=JSON.encode(k);n='POST';}}if(this.widgetAppId)o.widget_app_id=this.widgetAppId;if(this.widgetStreamId)o.widget_stream_id=this.widgetStreamId;if(this.tabId==HomeFeed.TAB_LIVEWIDGET_EVERYONE&&this.widgetLocale)o.locale=this.widgetLocale;if(this.reloadVersion)o.reload_version=this.reloadVersion;if(this.gmtOffsetMinutes!=null)o.gmt_offset_minutes=this.gmtOffsetMinutes;var i=new AsyncRequest().setReadOnly(true).setOption('retries',0).setMethod(n).setData(o).setHandler(m).setErrorHandler(bind(this,this._refreshErrorHandler,e,p)).setTransportErrorHandler(bind(this,this._refreshErrorHandler,e,p)).setFinallyHandler(function(){if(d)PageTransitions.transitionComplete();});if(this.isCdnEnabled()){this.akamaiRequestCount++;i.setOption('jsonp',true);o.jsonp=true;i.setURI('http://livefeed.facebook.com/ajax/feed.php');this.sendTime=(new Date()).getTime();}else i.setURI('/ajax/feed.php');if(this.tabset)i.setContextData('src_tab_name',this.tabset.lastSelected).setContextData('dst_tab_name',this.tabset.selectedId).setNectarActionData();i.send();}.bind(this);var g=$('newsfeed_wrapper');if(e==HomeFeed.LOC_REPLACE)set_inner_html(g,'');a();};HomeFeed.prototype.truncateStories=function(){if(this.maxStoriesInDom){var g=$('newsfeed_wrapper');var b=DOM.scry(g,'div.feed_item');for(var c=b.length-1;c>=this.maxStoriesInDom;c--){var a=b[c];a.parentNode.removeChild(a);}var e=keys(this.feedbackTargets);var f=e.length-this.maxStoriesInDom;for(var c=0;c<f;c++){var d=e[c];delete this.feedbackTargets[d];}}};HomeFeed.prototype.removeLoadingImage=function(){this._removeElementWithId('feed_loading_image');return this;};HomeFeed.prototype.removeErrorMessage=function(){this._removeElementWithId('feed_error_wrapper');return this;};HomeFeed.prototype._removeElementWithId=function(b){var a=ge(b);if(a)a.parentNode.removeChild(a);return this;};HomeFeed.prototype.updateLastSeen=function(a){if(this.requestLastSeen<a)this.requestLastSeen=a;};HomeFeed.prototype._addStoriesToQueue=function(a){this.storyQueue=this.storyQueue.concat(a);this.startStoryQueue();};HomeFeed.prototype.startStoryQueue=function(){if(this.queueTimerHandle)return;this._handleStoryQueue();};HomeFeed.prototype.clearStoryQueue=function(){if(this.queueTimerHandle)clearTimeout(this.queueTimerHandle);this.storyQueue=[];};HomeFeed.prototype._handleStoryQueue=function(){if(this.storyQueue.length){var b=this.storyQueue.length;var e=Math.ceil(b/3);var d=this.storyQueue.splice(0,e);var a=d.join('');var c=document.createElement('div');set_inner_html(c,a);c.style.overflow='hidden';CSS.addClass(c,this.newStoriesClass);this.updateWrapper(HomeFeed.LOC_PREPEND,c,true);this.queueTimerHandle=null;if(this.storyQueue.length>0)this.queueTimerHandle=setTimeout(this._handleStoryQueue.bind(this),HomeFeed.intermittentDelay);}};HomeFeed.prototype._refreshErrorHandler=function(c,h,i){if(h!=this.requestCount)return;this.removeLoadingImage();this.updateLastSeen(h);var a=i.getError();var d;if(this.embeddedWidget){var g='HomeFeed.getInstance().openLiveWidgetLoginPopup();';d='<a href="#" onClick="'+g+'">'+_tx("log in")+'</a>';}else d='<a href="'+login_url+'">'+_tx("log in")+'</a>';if(a==kError_Async_NotLoggedIn){var j=_tx("Session Timeout");var e=_tx("Your session has timed out. Please {login}.",{login:d});new ErrorDialog().showError(j,e);return;}if(c==HomeFeed.LOC_PREPEND)return;var b=document.createElement('div');b.id='error';CSS.addClass(b,'error');set_inner_html(b,_tx("Korrontea ez dago eskuragarri une honetan. Mesedez saiatu geroxeago."));var f=document.createElement('div');f.id='feed_error_wrapper';f.appendChild(b);this.updateWrapper(c,f,false);return;};HomeFeed.prototype.removeStoryStatusMessage=function(){var a=(ge('error')||ge('standard_status'));if(a)a.parentNode.removeChild(a);};HomeFeed.prototype.updateWrapper=function(c,b,a){var f=$('newsfeed_wrapper');if(c==HomeFeed.LOC_APPEND){f.appendContent(b);}else if(c==HomeFeed.LOC_PREPEND){f.prependContent(b);var e='#FFF9D7';var d='#FFFBE7';if(a){animation(b).to('background',e).from(e).to('height','auto').from(0).ease(animation.ease.both).show().duration(500).to('opacity',0).from(0).checkpoint().to('opacity',1).from(0).ease(animation.ease.both).duration(750).checkpoint().to('background',d).from(e).duration(5000).checkpoint().duration(20000).checkpoint().to('background','#fff').from(d).duration(5000).go();}else show(b);}else f.setContent(b);return this;};HomeFeed.prototype.banUser=function(e,a,c,h){var d={app_id:a,banned_user:c};var g=function(i){var j=DOM.findParentByClass(e,'feed_item');if(j)j.parentNode.removeChild(j);};var f=function(i){aiert("Could not ban this user");};var b=new AsyncRequest().setMethod('POST').setData(d).setHandler(bind(this,g)).setErrorHandler(bind(this,f)).setURI('/ajax/live_feed_ban.php').send();return this;};HomeFeed.prototype.updateStoriesHTML=function(a,d,b){this.newStoriesClass=d;if(typeof(b)=='undefined')b=HomeFeed.LOC_APPEND;var c=document.createElement('div');set_inner_html(c,a);c.style.overflow='hidden';CSS.addClass(c,d);this.updateWrapper(b,c,false);};onloadRegister(function(){var a=function(){var b=HomeFeed.getInstance();if(b){b.resetRefreshCount();b.setAutoRefresh(b.autoRefresh);}};window.onfocus=chain(window.onfocus,a);window.onclick=chain(window.onclick,a);window.onmouseover=chain(window.onmouseover,a);});

if (window.Bootloader) { Bootloader.done(["js\/homefeed.js"]); }