
var rssoutputscript="rssbox/main.php"
function rssdisplaybox(RSS_id, divId, divClass){
this.loadingHTML='<img src="'+rssoutputscript.replace('main.php', '')+'/loading.gif" /> Initializing Accident and InjuryNews from David...' 
this.RSS_id=RSS_id 
this.boxid=divId 
this.boxclass=divClass 
this.cachetime=30 
this.template=""
this.paginatemode="auto" 
this.pos_or_div="bottom" 
document.write('<div id="'+divId+'-maincontainer"></div>') 
}
rssdisplaybox.getvirtualpaginate=function(){} 
rssdisplaybox.getvirtualpaginate.prototype=virtualpaginate.prototype
rssdisplaybox.prototype=new rssdisplaybox.getvirtualpaginate
rssdisplaybox.prototype.constructor=rssdisplaybox
rssdisplaybox.prototype.set_items_shown=function(items_fetched, items_shown_per_page){
this.utotalitems=parseInt(items_fetched) 
if (typeof items_shown_per_page!="undefined" && (items_shown_per_page<items_fetched || items_fetched==0))
this.uchunksize=parseInt(items_shown_per_page) 
}
rssdisplaybox.prototype.set_template=function(tname){
this.template=tname.toLowerCase()
}
rssdisplaybox.prototype.set_cache_time=function(minutes){
this.cachetime=parseInt(minutes)
}
rssdisplaybox.prototype.setpagination=function(paginatemode, pos_or_div){
this.paginatemode=paginatemode
this.pos_or_div=pos_or_div
}
rssdisplaybox.prototype.start=function(){
var rssboxhtml='<div id="'+this.boxid+'" class="'+this.boxclass+'"></div>'
if (typeof this.uchunksize!="undefined" && this.paginatemode=="auto") 
document.getElementById(this.boxid+'-maincontainer').innerHTML=this.rssboxhtmlauto(rssboxhtml, this.pos_or_div)
else 
document.getElementById(this.boxid+'-maincontainer').innerHTML=rssboxhtml
if (typeof this.uchunksize!="undefined")
this.paginatedivid=(this.paginatemode=="auto")? this.boxid+"-paginatediv" : this.pos_or_div
this.ajaxobj=createAjaxObj()
this.getAjaxcontent()
}
rssdisplaybox.prototype.getAjaxcontent=function(){
if (this.ajaxobj){
var instanceOfBox=this
var parameters="id="+encodeURIComponent(this.RSS_id)+"&cachetime="+this.cachetime+"&limit="+this.utotalitems+"&template="+this.template+"&bustcache="+new Date().getTime()
document.getElementById(this.boxid).innerHTML=this.loadingHTML
this.loadingHTML=null
this.ajaxobj.onreadystatechange=function(){instanceOfBox.initialize()}
this.ajaxobj.open('GET', rssoutputscript+"?"+parameters, true)
this.ajaxobj.send(null)
}
}


rssdisplaybox.prototype.initialize=function(){ 
if (this.ajaxobj.readyState == 4){ 
if (this.ajaxobj.status==200){ 
var rsscontent=this.ajaxobj.responseText
if (typeof this.uchunksize!="undefined"){ 
document.getElementById(this.boxid).style.visibility="hidden" 
document.getElementById(this.boxid).innerHTML=rsscontent
this.gatheritems() 
}
else
document.getElementById(this.boxid).innerHTML=rsscontent
}
else 
document.getElementById(this.boxid).innerHTML=this.ajaxobj.responseText
}
}


rssdisplaybox.prototype.gatheritems=function(){
var rssdivtags=document.getElementById(this.boxid).getElementsByTagName("div") 
this.pieces=[] 
for (var i=0; i<rssdivtags.length; i++){ 
if (rssdivtags[i].className=="rsscontainer")
this.pieces[this.pieces.length]=rssdivtags[i] 
}
this.pagecount=Math.ceil(this.pieces.length/this.uchunksize) 
for (var i=0; i<this.pieces.length; i++)
this.pieces[i].style.display="none" 
this.chunksize=(this.uchunksize>0 && this.uchunksize <this.pieces.length)? this.uchunksize : this.pieces.length 
this.pagecount=Math.ceil(this.pieces.length/this.chunksize) 
this.showpage(-1) 
this.currentpage=0 
this.showpage(this.currentpage) 
if (this.chunksize!=this.pieces.length) 
this.buildpagination(this.paginatedivid)
else
document.getElementById(this.paginatedivid).style.display="none" 
document.getElementById(this.boxid).style.visibility="visible"
}



function createAjaxObj(){
var httprequest=false
if (window.XMLHttpRequest){
httprequest=new XMLHttpRequest()
}
else if (window.ActiveXObject){ 
try {
httprequest=new ActiveXObject("Msxml2.XMLHTTP");
} 
catch (e){
try{
httprequest=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){}
}
}
return httprequest
}


