var ForumSpyRemoter=Class.create({numColumns:1,cat53Mode:false,ignoreStickies:false,categoryIds:new Array(),topForumActionCatId:53,topVLifeCategoryId:215,vLifeCategories:$A([84,206,207,37,219,220,221,222,223]),hiddenCategories:null,opts:{namespace:"",col1Template:"spyRowCol1Template",col2Template:"spyRowCol2Template",col3Template:"spyRowCol3Template",spyHdr:"spyHdrRow",rowClass:"spyPrePopulated",tssFormat:"HMIL:MINUTE",tssFormat3Col:"TO[MONTH-DAY-SHORTYEAR] HMIL:MINUTE",tssFormat1Col:"MONTH/DAY/YEAR HMIL:MINUTE",firstColCss:""},ps:{row:"spyrow_",picAndVid:"spyrow_picandvid_",pic:"spyrow_pic_",vid:"spyrow_vid_",sticky:"spyrow_sticky_",bulletin:"spyrow_bulletin_",photoRating:"spyrow_photoRat_",timestamp:"spyrow_ts_",photoRate:"photoRating_",col1:"spyCol1_",col2:"spyCol2_",col3:"spyCol3_"},initialize:function(a){a=a||{};
this.opts=Object.extend(Object.clone(this.opts),a);this.ps=Object.clone(this.ps);if(this.opts.namespace){Object.keys(this.ps).each(function(b){this.ps[b]=this.opts.namespace+"_"+this.ps[b]}.bind(this))}if(a.numColumns!=null){this.numColumns=a.numColumns}if(a.threeColMode!=null){this.numColumns=3}if(a.categoryIds){this.categoryIds=$A(a.categoryIds)}if(a.hiddenCategories){this.hiddenCategories=$A(a.hiddenCategories)}if(a.ignoreStickies!=null){this.ignoreStickies=a.ignoreStickies}if(this.categoryIds.size()==1){if(this.categoryIds[0]==this.topForumActionCatId){this.categoryIds[0]=-1;this.cat53Mode=true}else{if(this.categoryIds[0]==this.topVLifeCategoryId){this.categoryIds=this.vLifeCategories}}}Event.observe(window,"load",this.setup.bindAsEventListener(this))},setup:function(){Event.observe(window,"unload",this.unsubscribe.bindAsEventListener(this));
document.observe("forumSpy:newForumPost",this.newPost.bindAsEventListener(this));this.categoryIds.each(function(a){ForumSpyManager.subscribeToCategory(a)})},unsubscribe:function(){this.categoryIds.each(function(a){ForumSpyManager.unSubscribeFromCategory(a)})},newPost:function(a){var c=a.memo;if(c==null){return}var b=JSON.parse(c);this.handleNewPost(b)},handleNewPost:function(a){if((a==null||a.topicId<=0)||(this.categoryIds.indexOf(-1)<0&&this.categoryIds.indexOf(a.categoryId)<0)||(this.cat53Mode&&(this.hiddenCategories!=null&&this.hiddenCategories.indexOf(a.categoryId)>-1))||(a.sticky&&this.ignoreStickies)){return}this.removeRow(a.topicId);this.renderNewRow(a);this.renderNewPostImages(a);var b=$(this.ps.row+a.topicId);b.effect=new Effect.Highlight(b,{duration:6,startcolor:"#440000",endcolor:"#000000"})
},removeRow:function(d){var b=$(this.ps.row+d);if(b!=null){if(!this.table){this.table=b.up("table")}b.remove()}else{var c=$$("."+this.opts.rowClass);if(c!=null&&c.size()>0){var a=c[c.size()-1];a.remove()}}},renderNewRow:function(h){var g=$(this.opts.spyHdr)||this.findFirstRow();var j=new Element("tr",{id:this.ps.row+h.topicId});var f=new Element("td",{id:this.ps.col1+h.topicId,"class":this.opts.firstColCss});var e=null;var d=null;j.insert(f);if(this.numColumns>1){e=new Element("td",{id:this.ps.col2+h.topicId});j.insert(e)}else{}if(this.numColumns==3){d=new Element("td",{id:this.ps.col3+h.topicId});j.insert(d)}var i=this.getInsertionPointTopicId(h);if(i<=0){if(g){g.insert({before:j})}}else{var c=$(this.ps.row+i);if(c!=null){c.insert({before:j})}}$Templates().process(f.id,this.opts.col1Template,h);if(this.numColumns>1){$Templates().process(e.id,this.opts.col2Template,h)
}if(this.numColumns>2){$Templates().process(d.id,this.opts.col3Template,h)}var a=$(this.ps.timestamp+h.topicId);if(a!=null){var b=null;if(this.numColumns==2){b=formatDateTimeTss(h.tssLastPostDateParams,this.opts.tssFormat)}else{if(this.numColumns==3){b=formatDateTimeTss(h.tssLastPostDateParams,this.opts.tssFormat3Col)}else{if(this.numColumns==1){b=formatDateTimeTss(h.tssLastPostDateParams,this.opts.tssFormat1Col)}}}a.innerHTML=b}j.addClassName(this.opts.rowClass)},getInsertionPointTopicId:function(h){var l=0;if(!h.sticky){var d=$$("."+this.opts.rowClass);var e=-1;var n=-1;for(var f=0;f<=d.length-1;f++){var a=d[f].id;var g=a.substring(this.ps.row.length,a.length);var k=false;if(e<=0){var j=$(this.ps.sticky+g);if(j!=null){var b=j.getStyle("display");if(b=="none"){e=g}else{k=true}}else{e=g}}if(n<=0&&k==false){var c=$(this.ps.bulletin+g);
if(c!=null){var m=c.getStyle("display");if(m=="none"){n=g}}else{n=g}}if(e>=0&&n>=0){break}}if(h.bulletin&&e>0&&!this.cat53Mode){l=e}else{if(n>0){l=n}else{l=0}}}return l},renderNewPostImages:function(b){if(b.attach&&b.video){var g=$(this.ps.picAndVid+b.topicId);if(g!=null){g.show()}}else{if(b.video){var a=$(this.ps.vid+b.topicId);if(a!=null){a.show()}}else{if(b.attach){var c=$(this.ps.pic+b.topicId);if(c!=null){c.show()}}}}if(b.sticky){var d=$(this.ps.sticky+b.topicId);if(d!=null){d.show()}}if(b.bulletin){var f=$(this.ps.bulletin+b.topicId);if(f!=null){f.show()}}if(b.photoRating){var e=$(this.ps.photoRating+b.topicId);if(e!=null){e.show()}}},findFirstRow:function(){if(this.table){return this.table.down("tr")}return null}});
