

// Begin XMLHttpRequest

var xmlFound=false;var xmlFoundChild=null;function xmlRequest(url,callbackStatus,callbackFinished){var req=null;if(url.indexOf("?")==-1){url+="?stamp="+new Date().getTime();}else{url+="&stamp="+new Date().getTime();}
if(window.XMLHttpRequest){req=new XMLHttpRequest();req.onreadystatechange=function(event){xmlRequestHandler(req,callbackStatus,callbackFinished);};req.open("GET",url,true);req.send(null);}else if(window.ActiveXObject){req=new ActiveXObject("Microsoft.XMLHTTP");if(req){req.onreadystatechange=function(event){xmlRequestHandler(req,callbackStatus,callbackFinished);};req.open("GET",url,true);req.send();}}}
function xmlRequestHandler(handle,callbackStatus,callbackFinished){if(callbackStatus!=null)callbackStatus(handle.readyState);if(handle.readyState==4&&handle.status==200){if(callbackFinished)callbackFinished(handle.responseXML);}}
function xmlFindChild(xml,name){xmlFound=false;xmlFoundLevel=0;xmlFoundChild=null;xmlFoundChildren=new Array();if(xml==null)return null;if(xml.childNodes.length==0)return null;for(var i=0;i<5;i++){xmlDigLevels(xml,name,i);if(xmlFound)return xmlFoundChild;}
return null;}
function xmlDigLevels(xml,name,levels){if(xml.childNodes.length==0)return;var children=xml.childNodes;for(var i=0;i<children.length;i++){if(levels==0){xmlDigOneLevel(xml,name);}else{xmlDigLevels(children[i],name,levels-1);}
if(xmlFound)return;}}
function xmlDigOneLevel(xml,name){if(xml.childNodes.length==0)return;var children=xml.childNodes;var child=null;for(var i=0;i<children.length;i++){child=children[i];if(child.nodeType==1){if(child.nodeName==name){xmlFound=true;xmlFoundChild=child;return;}}}}
function xmlDigOneValue(xml,name){var element=xml.getElementsByTagName(name);if(!element||element.length==0)return null;if(!element.childNodes||element.childNodes.length==0)return null;return element.firstChild.nodeValue;}

// Begin Highlight

var highlightSelected=-1;var highlightPosition=-1;var highlightClasses=Array();var highlightID=null;var highlightIDs=Array();function highlightInit(cssClassNames,selectedIndex){highlightPosition=-1;highlightSelected=-1;highlightID=null;highlightClasses=cssClassNames;if(selectedIndex)highlightPosition=selectedIndex;}
function highlightRow(element,highlight){highlightPosition=parseInt(element.id.split("_")[1]);if(highlightPosition==highlightSelected)return;var td=element.parentNode.childNodes;for(var i=0;i<td.length;i++){if(td[i].nodeName=="TD"){td[i].className=highlightClasses[highlight];}}}
function highlightSelect(id){if(highlightPosition==-1)return;if(id==null){if(highlightID==null||highlightID=="")return;id=highlightID;}else if(id.indexOf("_")==-1){id=highlightRetrieve(id);}else{if(highlightID!=null&&highlightID!=""){var td=document.getElementById(highlightID).parentNode.childNodes;for(var i=0;i<td.length;i++)td[i].className=highlightClasses[0];}
highlightSelected=highlightPosition;highlightStore(id);}
var td=document.getElementById(id).parentNode.childNodes;for(var i=0;i<td.length;i++){if(td[i].nodeName=="TD"){td[i].className=highlightClasses[2];}}}
function highlightStore(id){var prefix=id.split("_")[0];for(var i=0;i<highlightIDs.length;i++){if(prefix==highlightIDs[i][0]){highlightIDs[i][1]=id;highlightID=id;return;}}
var index=highlightIDs.length;highlightIDs[index]=Array();highlightIDs[index][0]=prefix;highlightIDs[index][1]=id;highlightID=id;}
function highlightRetrieve(id){var prefix=id.split("_")[0];for(var i=0;i<highlightIDs.length;i++){if(prefix==highlightIDs[i][0]){return document.getElementById(highlightIDs[i][1]);}}
return null;}

// Begin Common

function jaxCommonLoadingMessageHide(id){var element=document.getElementById(id);element.timer=clearInterval(element.timer);element.timer=setInterval("jaxEffectFadeElement('"+id+"', 'out')",30);}
function jaxCommonLoadingMessageReset(message_id,overlay_id){var element=document.getElementById(message_id);if(overlay_id!=null){var overlay=document.getElementById(overlay_id);element.style.height=overlay.offsetHeight+"px";element.style.width=overlay.offsetWidth+"px";}
element.style.position="absolute";jaxEffectSetOpacity(element,100);element.timer=clearInterval(element.timer);}
function jaxCommonFindTop(element){if(!element.offsetTop)return 0;var parent=element;var top=0;while(parent){top+=parent.offsetTop;parent=parent.offsetParent;}
alert(jaxCommonFindScrollHeight(element));return top;}
function jaxCommonFindLeft(element){if(!element.offsetLeft)return 0;var parent=element;var left=0;while(parent){left+=parent.offsetLeft;parent=parent.offsetParent;}
return left;}
function jaxCommonFindHeight(element){if(!element.offsetHeight)return 0;var parent=element;var height=0;while(parent){height+=parent.offsetHeight;parent=parent.offsetParent;}
return height;}
function jaxCommonFindWidth(element){if(!element.offsetWidth)return 0;var parent=element;var width=0;while(parent){width+=parent.offsetWidth;parent=parent.offsetParent;}
return width;}
function jaxCommonFindScrollHeight(element){if(!element.scrollHeight)return 0;var parent=element;var height=0;while(parent){height+=parent.scrollHeight;parent=parent.offsetParent;}
return height;}

// Begin Dialog

var jdAlreadyOpen=false;var jdParent="";var jdRootElement=null;function jaxDialogShow(parent,dialogBuilderCallback,offsetX,offsetY){if(parent==null){jdRootElement.parentNode.removeChild(jdRootElement);jdRootElement=null;jdAlreadyOpen=false;return;}
if(jdAlreadyOpen&&jdParent==parent.id){jdRootElement.parentNode.removeChild(jdRootElement);jdRootElement=null;jdAlreadyOpen=false;return;}
if(jdAlreadyOpen){jdRootElement.parentNode.removeChild(jdRootElement);jdRootElement=null;}
jdParent=parent.id;jdAlreadyOpen=true;jaxDialogAppend(parent,offsetX,offsetY);if(dialogBuilderCallback!=null)dialogBuilderCallback();}
function jaxDialogAppend(parent,offsetX,offsetY){jdRootElement=document.createElement("DIV");jdRootElement.id="jax_dialog_root";jdRootElement.zIndex="10";jdRootElement.style.position="absolute";jdRootElement.style.left=(jdGetX(parent)+offsetX)+"px";jdRootElement.style.top=(jdGetY(parent)+offsetY)+"px";jdRootElement.onmouseout=function(event){jaxDialogValidExit(event);};document.body.appendChild(jdRootElement);}
function jaxDialogValidExit(event){if(jdRootElement==null)return;target=document.getElementById("jax_dialog_root");var jdPoint1_X=jdGetX(target);var jdPoint1_Y=jdGetY(target);var jdPoint2_X=jdPoint1_X+target.offsetWidth;var jdPoint2_Y=jdPoint1_Y+target.offsetHeight;if(event==null)event=window.event;var mouseX=0;var mouseY=0;if(event.clientX){var root=document.documentElement||document.body;mouseX=event.clientX+root.scrollLeft;mouseY=event.clientY+root.scrollTop;}else{mouseX=event.pageX;mouseY=event.pageY;}
var inside=false;if(mouseX>jdPoint1_X){if(mouseX<jdPoint2_X-1){if(mouseY>jdPoint1_Y){if(mouseY<jdPoint2_Y-1)inside=true;}}}
if(inside)return;jdRootElement.parentNode.removeChild(jdRootElement);jdRootElement=null;jdAlreadyOpen=false;return;}
function jdGetX(obj){var X=0;if(obj.offsetParent){while(obj.offsetParent){X+=obj.offsetLeft;obj=obj.offsetParent;}}else if(obj.x){X+=obj.x;}
return X;}
function jdGetY(obj){var Y=0;if(obj.offsetParent){while(obj.offsetParent){Y+=obj.offsetTop;obj=obj.offsetParent;}}else if(obj.y){Y+=obj.y;}
return Y;}

// Begin Effect

function jaxEffectFadeElement(id,fadeInOrOut){var element=document.getElementById(id);if((fadeInOrOut=='in')&&(element.opacity==100)){element.timer=clearInterval(element.timer);return;}
if((fadeInOrOut=='out')&&(element.opacity==null||element.opacity==0)){element.timer=clearInterval(element.timer);element.style.visibility="hidden";return;}
if(fadeInOrOut=='in'){element.opacity+=10;}else{element.opacity-=10;}
element.style.opacity=element.opacity/100;if(window.ActiveXObject)element.style.filter="alpha(opacity="+element.opacity+")";}
function jaxEffectFadeIn(id){var element=document.getElementById(id);jaxEffectSetOpacity(element,0);element.timer=clearInterval(element.timer);element.timer=setInterval("jaxEffectFadeElement('"+id+"', 'in')",30);}
function jaxEffectFadeOut(id){var element=document.getElementById(id);jaxEffectSetOpacity(element,100);element.timer=clearInterval(element.timer);element.timer=setInterval("jaxEffectFadeElement('"+id+"', 'out')",30);}
function jaxEffectFadeReset(id,startInOrOut){var element=document.getElementById(id);element.timer=clearInterval(element.timer);if(startInOrOut==null||startInOrOut=='in'){jaxEffectSetOpacity(element,100);}else{jaxEffectSetOpacity(element,0);}}
function jaxEffectSetOpacity(element,opacity){element.opacity=opacity;element.style.opacity=element.opacity/100;element.style.visibility="visible";element.style.zIndex="10";if(window.ActiveXObject)element.style.filter="alpha(opacity="+element.opacity+")";}

// Begin Form

var jaxFormCallBack=null;var YEAR_START=2005;var YEAR_COUNT=10;function jaxFormRegister(url){jaxFormConvertDateFields();xmlRequest(url,null,jaxFormHandleRequest);}
function jaxFormHandleRequest(xml){var root=xml.getElementsByTagName("root")[0];var children=root.childNodes;var controls_input=null;var controls_select=null;var controls_id=null;for(var i=0;i<children.length;i++){if(children[i].nodeType==1){switch(children[i].nodeName){case"controls_input":controls_input=children[i];break;case"controls_select":controls_select=children[i];break;case"controls_id":controls_id=children[i];break;}}}
jaxFormMatchInput(controls_input);jaxFormMatchSelect(controls_select);jaxFormMatchId(controls_id);jaxFormUpdateDates();if(jaxFormCallBack!=null)jaxFormCallBack();}
function jaxFormMatchInput(controls_input){if(controls_input==null)return;var keys=new Array();var values=new Array();var xmlKeys=controls_input.getElementsByTagName("key");var xmlValues=controls_input.getElementsByTagName("value");if(xmlKeys.length==0)return;var counter=0;for(var i=0;i<xmlKeys.length;i++){if(xmlValues[i].childNodes.length>0){keys[counter]=xmlKeys[i].childNodes[0].nodeValue;values[counter]=xmlValues[i].childNodes[0].nodeValue;counter++;}}
var controls=new Array();var inputs=document.getElementsByTagName("INPUT");var textareas=document.getElementsByTagName("TEXTAREA");var selects=document.getElementsByTagName("SELECT");var marker=0;for(var i=0;i<inputs.length;i++){controls[marker++]=inputs[i];}
for(var i=0;i<textareas.length;i++){controls[marker++]=textareas[i];}
for(var i=0;i<selects.length;i++){controls[marker++]=selects[i];}
for(var i=0;i<controls.length;i++){for(var j=0;j<keys.length;j++){if(controls[i].name.toLowerCase()==keys[j].toLowerCase()){if(controls[i].nodeName=="TEXTAREA"){controls[i].innerHTML=values[j];break;}
if(controls[i].type=="text"||controls[i].type=="hidden"){controls[i].value=values[j];break;}
if(controls[i].type=="radio"){if(controls[i].value==values[j]){controls[i].checked=true;break;}}
if(controls[i].type=="checkbox"){if(values[j]=="Y"){controls[i].checked=true;break;}}
if(controls[i].type=="select-one"){var options=controls[i].getElementsByTagName("OPTION");;for(var k=0;k<options.length;k++){if(options[k].value==values[j]){options[k].selected=true;break;}}
break;}}}}}
function jaxFormMatchSelect(controls_select){if(controls_select==null)return;var keys=new Array();var values=new Array();var captions=new Array();var choices=new Array();var xmlKeys=controls_select.getElementsByTagName("key");var xmlValues=controls_select.getElementsByTagName("value");var xmlCaptions=controls_select.getElementsByTagName("captions");var xmlChoices=controls_select.getElementsByTagName("choices");if(xmlKeys.length==0)return;counter=0;for(var i=0;i<xmlKeys.length;i++){if(xmlValues[i].childNodes.length>0){keys[counter]=xmlKeys[i].childNodes[0].nodeValue;values[counter]=xmlValues[i].childNodes[0].nodeValue;if(xmlCaptions[i].childNodes.length>0){captions[counter]=xmlCaptions[i].childNodes[0].nodeValue;choices[counter]=xmlChoices[i].childNodes[0].nodeValue;}else{captions[counter]="";choices[counter]="";}
counter++;}}
var selects=document.getElementsByTagName("SELECT");var option=null;var text=null;var value=null;for(var i=0;i<selects.length;i++){for(var j=0;j<keys.length;j++){if(selects[i].name.toLowerCase()==keys[j].toLowerCase()){if(captions[j]!=""){text=captions[j].split("|");value=choices[j].split("|");for(var k=0;k<text.length;k++){option=document.createElement("OPTION");selects[i].options.add(option);option.innerHTML=text[k];option.value=value[k];}}
selects[i].value=values[j];break;}}}}
function jaxFormMatchId(controls_id){if(controls_id==null)return;var keys=new Array();var values=new Array();var xmlKeys=controls_id.getElementsByTagName("key");var xmlValues=controls_id.getElementsByTagName("value");if(xmlKeys.length==0)return;var counter=0;for(var i=0;i<xmlKeys.length;i++){if(xmlValues[i].childNodes.length>0){keys[counter]=xmlKeys[i].childNodes[0].nodeValue;values[counter]=xmlValues[i].childNodes[0].nodeValue;counter++;}}
for(var i=0;i<keys.length;i++){var element=document.getElementById(keys[i]);if(element!=null){if(element.nodeName=="IFRAME"){element.contentWindow.document.body.innerHTML=values[i];}else if(element.nodeName=="TEXTAREA"){if(element.innerText!=undefined){element.innerText=values[i];}else{element.textContent=values[i];}}else{element.innerHTML=values[i];}}}}
function jaxFormSetCallBack(onCompletion){jaxFormCallBack=onCompletion;}
function jaxFormConvertDateFields(){var elementDate=null;var id="";var name="";var className="";var months=",January,February,March,April,May,June,July,August,September,October,November,December".split(",");var value="";var description="";var dates=document.getElementsByTagName("INPUT");for(var i=0;i<dates.length;i++){if(dates[i].name.indexOf("date")>-1){elementDate=dates[i];elementDate.style.visibility="hidden";elementDate.style.display="none";name=elementDate.name;id=name;elementDate.id=name;className=elementDate.className;var html="\n";html+="<select id='"+id+"_month' name='"+name+"_month'>";for(var j=1;j<months.length;j++){value=j.toString();if(value.length==1)value="0"+value;html+="<option value='"+value+"'>"+months[j]+"</option>";}
html+="</select>\n";html+="<select id='"+id+"_day' name='"+name+"_day'>";for(var j=1;j<32;j++){value=j.toString();switch(j){case 1:description="1st";break;case 21:description="21st";break;case 31:description="31st";break;case 2:description="2nd";break;case 22:description="22nd";break;case 3:description="3rd";break;case 23:description="23rd";break;default:description=j+"th";}
if(value.length==1)value="0"+value;html+="<option value='"+value+"'>"+description+"</option>";}
html+="</select>\n";html+=", \n";html+="<select id='"+id+"_year' name='"+name+"_year'>";for(var j=YEAR_START;j<(YEAR_START+YEAR_COUNT);j++){html+="<option value='"+j+"'>"+j+"</option>";}
html+="</select>\n";html+=" at \n";html+="<select id='"+id+"_hour' name='"+name+"_hour'>";for(var j=1;j<=12;j++){value=j.toString();if(value.length==1)value="0"+value;html+="<option value='"+value+"'>"+j+"</option>";}
html+="</select>\n";html+=" : \n";html+="<select id='"+id+"_minute' name='"+name+"_minute'>";for(var j=0;j<=60;j+=5){value=j.toString();if(value.length==1)value="0"+value;html+="<option value='"+value+"'>"+value+"</option>";}
html+="</select>\n";html+="<select id='"+id+"_ampm' name='"+name+"_ampm'>";html+="<option value='AM'>AM</option>";html+="<option value='PM'>PM</option>";html+="</select>\n";var elementNew=document.createElement("SPAN");elementNew.className=className;elementNew.innerHTML=html;elementDate.parentNode.insertBefore(elementNew,elementDate);jaxFormDateFieldTrigger(id);break;}}}
function jaxFormDateFieldTrigger(id){document.getElementById(id).onchange=function(){jaxFormUpdateDateSelect(id);};document.getElementById(id+"_year").onchange=function(){jaxFormUpdateDateText(id);};document.getElementById(id+"_month").onchange=function(){jaxFormUpdateDateText(id);};document.getElementById(id+"_day").onchange=function(){jaxFormUpdateDateText(id);};document.getElementById(id+"_hour").onchange=function(){jaxFormUpdateDateText(id);};document.getElementById(id+"_minute").onchange=function(){jaxFormUpdateDateText(id);};document.getElementById(id+"_ampm").onchange=function(){jaxFormUpdateDateText(id);};}
function jaxFormUpdateDateText(id){var year=document.getElementById(id+"_year").value;var month=document.getElementById(id+"_month").value;var day=document.getElementById(id+"_day").value;var hour=document.getElementById(id+"_hour").value;var minute=document.getElementById(id+"_minute").value;var ampm=document.getElementById(id+"_ampm").value;if(month.length==1)month="0"+month;if(day.length==1)day="0"+day;if(hour.length==1)hour="0"+hour;if(minute.length==1)minute="0"+minute;document.getElementById(id).value=year+"-"+month+"-"+day+" "+hour+":"+minute+ampm;}
function jaxFormUpdateDateSelect(id){var element=document.getElementById(id);if(!element){return;}
var year=0;var month=0;var day=0;var hour=0;var minute=0;var ampm="";if(element.value==""){var today=new Date();year=today.getFullYear().toString();month=(today.getMonth()+1).toString();day=today.getDate().toString();hour="12";minute="00";ampm="PM";if(month.length==1)month="0"+month;if(day.length==1)day="0"+day;element.value=year+"-"+month+"-"+day+" "+hour+":"+minute+ampm;}else{var today=element.value;year=today.substring(0,4);month=today.substring(5,7);day=today.substring(8,10);hour=today.substring(11,13);minute=today.substring(14,16);ampm=today.substring(17);}
jaxFormMatchOption(id+"_year",year);jaxFormMatchOption(id+"_month",month);jaxFormMatchOption(id+"_day",day);jaxFormMatchOption(id+"_hour",hour);jaxFormMatchOption(id+"_minute",minute);jaxFormMatchOption(id+"_ampm",ampm);}
function jaxFormMatchOption(id,match){var element=document.getElementById(id);for(var i=0;i<element.options.length;i++){if(match==element.options[i].value){element.selectedIndex=i;break;}}}
function jaxFormUpdateDates(){var dates=document.getElementsByTagName("INPUT");for(var i=0;i<dates.length;i++){if(dates[i].name.indexOf("_date")>-1){jaxFormUpdateDateSelect(dates[i].id);}}}

// Begin Scoreboard

var jsOnClickForwardToUrl=null;function jaxScoreboardRegister(url,id){jaxScoreboardBuildBoard(id);xmlRequest(url,null,jaxScoreboardHandleXML);}
function jaxScoreboardBuildBoard(id){var html="\n\n";var html_innings="";var html_scores_guest="";var html_scores_home="";html+="<div class=\"scoreboard\">\n";if(jsOnClickForwardToUrl!=null){html+="\t<div class=\"scoreboard_title\"><a id=\"scoreboard_link\" class=\"scoreboard_link\" href=\""+jsOnClickForwardToUrl+"\">SCOREBOARD</a></div>\n";}else{html+="\t<div class=\"scoreboard_title\">SCOREBOARD</div>\n";}
for(var i=1;i<8;i++){html_innings+="\t\t\t<td class=\"scoreboard_inning\">"+i+"</td>\n";html_scores_guest+="\t\t\t<td class=\"scoreboard_score\">&nbsp;</td>\n";html_scores_home+="\t\t\t<td class=\"scoreboard_score\">&nbsp;</td>\n";}
html_innings="\t\t\t<td class=\"scoreboard_rhe\">&nbsp;</td>\n"+html_innings+"\t\t\t<td>&nbsp;</td>\n";html_innings+="\t\t\t<td class=\"scoreboard_inning\">R</td>\n";html_innings+="\t\t\t<td class=\"scoreboard_inning\">H</td>\n";html_innings+="\t\t\t<td class=\"scoreboard_inning\">E</td>\n";html_scores_guest="\t\t\t<td class=\"scoreboard_rhe\"></td>\n"+html_scores_guest+"\t\t\t<td>&nbsp;</td>\n";html_scores_guest+="\t\t\t<td class=\"scoreboard_score\" id=\"scoreboard_guest_r\"></td>\n";html_scores_guest+="\t\t\t<td class=\"scoreboard_score\" id=\"scoreboard_guest_h\"></td>\n";html_scores_guest+="\t\t\t<td class=\"scoreboard_score\" id=\"scoreboard_guest_e\"></td>\n";html_scores_home="\t\t\t<td class=\"scoreboard_rhe\"></td>\n"+html_scores_home+"\t\t\t<td>&nbsp;</td>\n";html_scores_home+="\t\t\t<td class=\"scoreboard_score\" id=\"scoreboard_home_r\"></td>\n";html_scores_home+="\t\t\t<td class=\"scoreboard_score\" id=\"scoreboard_home_h\"></td>\n";html_scores_home+="\t\t\t<td class=\"scoreboard_score\" id=\"scoreboard_home_e\"></td>\n";html+="\t<table class=\"scoreboard_table\"><tbody>\n";html+="\t\t<tr>\n";html+=html_innings;html+="\t\t</tr>\n";html+="\t\t<tr id=\"scoreboard_row_guest\">\n";html+=html_scores_guest;html+="\t\t</tr>\n";html+="\t\t<tr id=\"scoreboard_row_home\">\n";html+=html_scores_home;html+="\t\t</tr>\n";html+="\t</tbody></table>\n\n";html+="\t<div id=\"scoreboard_message\">\n";html+="\t\t<div id=\"scoreboard_row_guest_total\">&nbsp;</div>\n";html+="\t\t<div id=\"scoreboard_row_home_total\">&nbsp;</div>\n";html+="\t\t<div id=\"scoreboard_date\">&nbsp;</div>\n\n";html+="\t</div>\n";html+="<div id=\"scoreboard_loading\">Loading</div>\n";html+="</div>\n\n";document.getElementById(id).style.visibility="visible";document.getElementById(id).innerHTML=html;jaxCommonLoadingMessageReset("scoreboard_loading","scoreboard_message");}
function jaxScoreboardHandleXML(xml){jaxCommonLoadingMessageHide("scoreboard_loading");if(xml.getElementsByTagName("meta").length==0){document.getElementById("scoreboard_date").innerHTML="No game to display";return;}
jaxScoreboardShowMeta(xml);jaxScoreboardXMLtoBoard(xml,"guest","scoreboard_row_guest");jaxScoreboardXMLtoBoard(xml,"home","scoreboard_row_home");}
function jaxScoreboardXMLtoBoard(xml,name_xml,name_td){var team_xml=xml.getElementsByTagName(name_xml)[0].childNodes;var team_td=document.getElementById(name_td).getElementsByTagName("TD");var counter=1;for(var i=0;i<team_xml.length;i++){if(team_xml[i].nodeType==1){if(counter<8){team_td[counter++].innerHTML=team_xml[i].firstChild.nodeValue;}}}}
function jaxScoreboardShowMeta(xml){var meta=xml.getElementsByTagName("meta")[0].childNodes;document.getElementById("scoreboard_date").innerHTML="Played: "+xmlDigOneValue(xml,"scheduled_date");var message="";message+=xmlDigOneValue(xml,"guest_name")+": ";message+=xmlDigOneValue(xml,"guest_runs");document.getElementById("scoreboard_row_guest_total").innerHTML=message;message="";message+=xmlDigOneValue(xml,"home_name")+": ";message+=xmlDigOneValue(xml,"home_runs");document.getElementById("scoreboard_row_home_total").innerHTML=message;document.getElementById("scoreboard_guest_r").innerHTML=xmlDigOneValue(xml,"guest_runs");document.getElementById("scoreboard_guest_h").innerHTML=xmlDigOneValue(xml,"guest_hits");document.getElementById("scoreboard_guest_e").innerHTML=xmlDigOneValue(xml,"guest_errors");document.getElementById("scoreboard_home_r").innerHTML=xmlDigOneValue(xml,"home_runs");document.getElementById("scoreboard_home_h").innerHTML=xmlDigOneValue(xml,"home_hits");document.getElementById("scoreboard_home_e").innerHTML=xmlDigOneValue(xml,"home_errors");}
function jaxScoreboardOnClickForwardToUrl(url){jsOnClickForwardToUrl=url;}

// Begin Calendar

var calDate=new Date();var calYear=calDate.getFullYear();var calMonth=calDate.getMonth();var calMonthStart=0;var calMonthEmpty=true;var calMonthJump=0;var calMessageDays=null;var calMessageTitles=null;var calMessageDescriptions=null;var calURL="";var calVisible=false;function jaxCalendarRegister(url,id){calURL=url;jaxCalendarBuildCalendar(id);jaxCalendarPopulateDaysOfMonth();}
function jaxCalendarBuildCalendar(id){var html="\n";html+="";html+="<div id=\"calendar_message\" class=\"calendar_message\"></div>\n";html+="<div class=\"calendar\">\n";html+="\t<div id=\"calendar_month\">&nbsp;</div>\n";html+="\t<table class=\"calendar_days\">\n";html+="\t\t<tr><th>S</th><th>M</th><th>T</th><th>W</th><th>T</th><th>F</th><th>S</th></tr>\n";html+="\t\t<tr>\n";var day_id="";for(var i=0;i<42;i++){day_id="calendar_"+i;html+="\t\t <td id=\""+day_id+"\">&nbsp;</td>\n";if(i%7==6)html+="\t\t</tr>\n\t\t<tr>\n";}
html+="\t\t</tr>\n";html+="\t\t<tr>\n";html+="\t\t\t<td id=\"calendar_scroll_left\" onClick=\"\">&lt;</td>\n";html+="\t\t\t<td id=\"calendar_loading\" colspan=\"5\"></td>\n";html+="\t\t\t<td id=\"calendar_scroll_right\" onClick=\"\">&gt;</td>\n";html+="\t\t</tr>\n";html+="\t</table>\n";html+="</div>\n";document.getElementById(id).innerHTML=html;document.getElementById(id).style.visibility="visible";}
function jaxCalendarPopulateDaysOfMonth(){var days="31,28,31,30,31,30,31,31,30,31,30,31".split(",");if(calYear%4==0)days="31,29,31,30,31,30,31,31,30,31,30,31".split(",");var month_days=days[parseInt(calMonth)];var month_start=new Date(calYear,calMonth,1);calMonthStart=month_start.getDay();var id="";var element=null;var counter=1;for(var i=0;i<42;i++){id="calendar_"+i;element=document.getElementById(id);if((i>=parseInt(calMonthStart))&&(i<(parseInt(month_days)+parseInt(calMonthStart)))){element.innerHTML=counter++;}else{element.innerHTML="&nbsp;";}
element.className="";element.onclick=null;}
var months="January,February,March,April,May,June,July,August,September,October,November,December".split(",");document.getElementById("calendar_month").innerHTML=months[calMonth]+" "+calYear;document.getElementById("calendar_loading").innerHTML="Loading";jaxEffectFadeReset("calendar_loading","in");jaxCalendarBlockNewRequestBlock();var url=calURL+"&year="+calYear+"&month="+(calMonth+1);xmlRequest(url,null,jaxCalendarHandleXML);}
function jaxCalendarBumpMonth(months){if(calMonth+months<0){calDate.setFullYear(calYear-1,(calMonth+months)+12,1);}else if(calMonth+months>11){calDate.setFullYear(calYear+1,(calMonth+months)-12,1);}else{calDate.setFullYear(calYear,calMonth+months,1);}
calYear=calDate.getFullYear();calMonth=calDate.getMonth();jaxCalendarPopulateDaysOfMonth();}
function jaxCalendarBumpMonthNoRequest(months){calMonthJump+=months;}
function jaxCalendarCheckForBump(){if(calMonthJump==0)return;var months=calMonthJump;calMonthJump=0;jaxCalendarBumpMonth(months);}
function jaxCalendarHandleXML(xml){calMessageDays=xml.getElementsByTagName("day");calMessageTitles=xml.getElementsByTagName("title");calMessageDescriptions=xml.getElementsByTagName("description");var length=calMessageDays.length;var day="";var message="";var id="";var element=null;calMonthEmpty=false;if(length==0){calMonthEmpty=true;document.getElementById("calendar_loading").innerHTML="<span class=\"calendar_noevents\">No events</span>";}else{jaxEffectFadeOut("calendar_loading");}
for(var i=0;i<length;i++){day=calMessageDays[i].firstChild.nodeValue;if(day.length==2&&day.indexOf("0")==0)day=day.substring(1);message=calMessageDescriptions[i].firstChild.nodeValue;id="calendar_"+(parseInt(calMonthStart)+(parseInt(day)-1));element=document.getElementById(id);element.className="calendar_day";element.onclick=function(event){jaxCalendarShowMessage(this);};}
jaxCalendarAllowNewRequest();jaxCalendarCheckForBump();}
function jaxCalendarShowMessage(element){if(calMonthEmpty==true)return;if(element==null)return;var html="";html+="<div class=\"calendar_message_exit\" onClick=\"jaxCalendarHideMessage();\">X</div>\n";var day=(parseInt(element.id.split("_")[1])+1)-parseInt(calMonthStart);var months="January,February,March,April,May,June,July,August,September,October,November,December".split(",");var month=months[calMonth]+" "+day;html+="\t<h4 class=\"calendar_message_month\">"+month+"</h4>\n";var xmlDay=null;var xmlTitle=null;var xmlDescription=null;var length=calMessageDays.length;for(var i=0;i<length;i++){xmlDay=calMessageDays[i].firstChild.nodeValue;if(xmlDay==day){xmlTitle=calMessageTitles[i].firstChild.nodeValue;xmlDescription=calMessageDescriptions[i].firstChild.nodeValue;html+="\t<h5 class=\"calendar_message_title\">"+xmlTitle+"</h5>\n";html+="\t<p class=\"calendar_message_description\">"+xmlDescription+"</p>\n";}}
document.getElementById("calendar_message").innerHTML=html;if(!calVisible)jaxEffectFadeIn("calendar_message");calVisible=true;}
function jaxCalendarHideMessage(){jaxEffectFadeOut('calendar_message');calVisible=false;}
function jaxCalendarBlockNewRequestBlock(){document.getElementById("calendar_scroll_left").onclick=function(){jaxCalendarBumpMonthNoRequest(-1);};document.getElementById("calendar_scroll_right").onclick=function(){jaxCalendarBumpMonthNoRequest(1);};}
function jaxCalendarAllowNewRequest(){document.getElementById("calendar_scroll_left").onclick=function(){jaxCalendarBumpMonth(-1);};document.getElementById("calendar_scroll_right").onclick=function(){jaxCalendarBumpMonth(1);};}

// Begin Slideshow

var ssParent=null;var ssFooter=null;var ssPrime=null;var ssSlide=null;var ssTitles=null;var ssPaths=null;var ssTimeout=null;var ssIndex=0;var ssCenter=null;var ssWaitForFooter=500;var ssWaitForNewSlide=4500;var ssWaitFooterHold=1500;function jaxSlideshowRegister(url,id){jaxSlideshowBuild(id);xmlRequest(url,null,jaxSlideshowHandleXML);}
function jaxSlideshowBuild(id){var html="\n\n";html+="<div id='slideshow_main'>\n";html+="\t<div id='slideshow_footer'></div>\n";html+="\t<div id='slideshow_loading'>Loading</div>\n";html+="\t\t<img id='slideshow_prime' src='' style='position: absolute; visibility: hidden; display: none;' />\n";html+="\t\t<img id='slideshow_slide' src='' style='position: absolute; visibility: hidden; display: none;' />\n";html+="</div>\n\n";document.getElementById(id).innerHTML=html;ssParent=document.getElementById("slideshow_main");ssFooter=document.getElementById("slideshow_footer");ssPrime=document.getElementById("slideshow_prime");ssSlide=document.getElementById("slideshow_slide");ssFooter.style.top=(ssParent.clientHeight-ssFooter.clientHeight)+"px";ssPrime.height=ssParent.clientHeight;ssSlide.height=ssParent.clientHeight;jaxCommonLoadingMessageReset("slideshow_loading","slideshow_main");}
function jaxSlideshowHandleXML(xml){var titles=xml.getElementsByTagName("title");var paths=xml.getElementsByTagName("path");var length=titles.length;if(length==0)return;ssTitles=new Array(length);ssPaths=new Array(length);for(var i=0;i<titles.length;i++){ssTitles[i]=titles[i].firstChild.nodeValue;ssPaths[i]=paths[i].firstChild.nodeValue;jaxSlideshowImagePreload(ssPaths[i]);}
ssTimeout=setTimeout("jaxSlideshowNewImage();",50);jaxCommonLoadingMessageHide("slideshow_loading");}
function jaxSlideshowImagePreload(src){var element=null;element=document.createElement('img');element.src=src;element.style.visibility="hidden";element.style.display="none";element.style.height="0px";element.style.width="0px";document.body.appendChild(element);}
function jaxSlideshowNewImage(){var firstpass=(ssTimeout!=null);if(firstpass){ssTimeout=clearTimeout(ssTimeout);ssPrime.src=ssPaths[0];ssPrime.style.display="block";ssPrime.timer=setInterval('jaxSlideshowFirstPassComputeLeft()',60);ssSlide.style.opacity=0;ssSlide.style.display="block";}
ssFooter.innerHTML=ssTitles[ssIndex];ssFooter.opacity=0;ssFooter.style.opacity=ssFooter.opacity/100;if(window.ActiveXObject)ssFooter.style.filter="alpha(opacity="+ssFooter.opacity+")";ssFooter.timer=setTimeout("clearTimeout(ssFooter.timer); ssFooter.timer = setInterval('jaxSlideshowOpacityFooterIncrement()', 50);",ssWaitForFooter);ssIndex++;if(ssIndex>=ssPaths.length)ssIndex=0;if(!firstpass){ssPrime.visibility="hidden";ssPrime.src=ssSlide.src;ssPrime.style.marginLeft=ssSlide.style.marginLeft;ssPrime.visibility="visible";}
ssSlide.style.visibility="hidden";ssSlide.src=ssPaths[ssIndex];ssSlide.style.marginLeft=null;jaxSlideshowComputeLeft(ssSlide);ssSlide.opacity=0;ssSlide.style.opacity=0;if(window.ActiveXObject)ssSlide.style.filter="alpha(opacity=0)";ssSlide.timer=setTimeout("clearTimeout(ssSlide.timer); ssSlide.timer = setInterval('jaxSlideshowOpacityImageIncrement()', 100);",ssWaitForNewSlide);}
function jaxSlideshowFirstPassComputeLeft(){jaxSlideshowComputeLeft(ssPrime);if(ssPrime.style.marginLeft)clearInterval(ssPrime.timer);}
function jaxSlideshowComputeLeft(element){if(element.style.marginLeft)return;var width=element.clientWidth;var parentWidth=element.parentNode.clientWidth;var center=parentWidth/2;var left=(parentWidth-width)/2;if(center!=left){element.style.marginLeft=left+"px";element.style.visibility="visible";}}
function jaxSlideshowOpacityFooterIncrement(){if(ssFooter.opacity==100){ssFooter.timer=clearInterval(ssFooter.timer);ssFooter.timer=setTimeout("clearTimeout(ssFooter.timer); ssFooter.timer = setInterval('jaxSlideshowOpacityFooterDecrement()', 60);",ssWaitFooterHold);return;}
ssFooter.style.visibility="visible";ssFooter.opacity+=10;ssFooter.style.opacity=ssFooter.opacity/100;if(window.ActiveXObject)ssFooter.style.filter="alpha(opacity="+ssFooter.opacity+")";}
function jaxSlideshowOpacityFooterDecrement(){if(ssFooter.opacity==0){ssFooter.timer=clearInterval(ssFooter.timer);return;}
ssFooter.opacity-=5;ssFooter.style.opacity=ssFooter.opacity/100;if(window.ActiveXObject)ssFooter.style.filter="alpha(opacity="+ssFooter.opacity+")";}
function jaxSlideshowOpacityImageIncrement(){if(ssSlide.opacity==100){ssSlide.timer=clearInterval(ssSlide.timer);jaxSlideshowNewImage();return;}
ssSlide.opacity+=5;ssSlide.style.opacity=ssSlide.opacity/100;if(window.ActiveXObject)ssSlide.style.filter="alpha(opacity="+ssSlide.opacity+")";jaxSlideshowComputeLeft(ssSlide);}

// Begin Editor

var isIE=false;var isGecko=false;var isSafari=false;var isKonqueror=false;var jeEditor=null;var jeRange=null;var jePath="";var jeIsRichText=false;var jeHasDesignMode=false;var jeFolderURL=null;var jeFolderURL_View=null;var jeFolderURL_Save=null;function jaxEditorRegister(path,id){jePath=path;jaxEditorSniffUA();jaxEditorBuildButtons(id);jaxEditorBuildTextArea(id);}
function jaxEditorSniffUA(){var ua=navigator.userAgent.toLowerCase();isIE=((ua.indexOf("msie")!=-1)&&(ua.indexOf("opera")==-1)&&(ua.indexOf("webtv")==-1));isGecko=(ua.indexOf("gecko")!=-1);isSafari=(ua.indexOf("safari")!=-1);isKonqueror=(ua.indexOf("konqueror")!=-1);if(document.getElementById&&document.designMode){jeHasDesignMode=true;jeIsRichText=true;}
if(isIE==true){document.onmouseover=raiseButton;document.onmouseout=normalButton;document.onmousedown=lowerButton;document.onmouseup=raiseButton;}}
function jaxEditorBuildButtons(id){var html="";if(jeIsRichText){html+="<table class=\"edit_table\" id=\""+id+"_buttons_1\">\n";html+=" <tr>\n";html+="  <td>\n";html+="   <span class=\"edit_select_title\">Heading</span><br />\n";html+="   <select id=\"formatblock_"+id+"\" onchange=\"jaxEditorSelectFont('"+id+"', this.id);\">\n";html+="    <option value=\"<p>\" selected>Paragraph &lt;p&gt;</option>\n";html+="    <option value=\"<h1>\">Heading 1 &lt;h1&gt;</option>\n";html+="    <option value=\"<h2>\">Heading 2 &lt;h2&gt;</option>\n";html+="    <option value=\"<h3>\">Heading 3 &lt;h3&gt;</option>\n";html+="    <option value=\"<h4>\">Heading 4 &lt;h4&gt;</option>\n";html+="    <option value=\"<h5>\">Heading 5 &lt;h5&gt;</option>\n";html+="    <option value=\"<h6>\">Heading 6 &lt;h6&gt;</option>\n";html+="   </select>\n";html+="  </td>\n";html+="  <td>\n";html+="   <span class=\"edit_select_title\">Font</span><br />\n";html+="   <select id=\"fontname_"+id+"\" onchange=\"jaxEditorSelectFont('"+id+"', this.id)\">\n";html+="    <option value=\"Arial, Helvetica, sans-serif\" selected>Arial</option>\n";html+="    <option value=\"Courier New, Courier, mono\">Courier New</option>\n";html+="    <option value=\"Times New Roman, Times, serif\">Times New Roman</option>\n";html+="    <option value=\"Verdana, Arial, Helvetica, sans-serif\">Verdana</option>\n";html+="   </select>\n";html+="  </td>\n";html+="  <td>\n";html+="   <span class=\"edit_select_title\">Size</span><br />\n";html+="   <select unselectable=\"on\" id=\"fontsize_"+id+"\" onchange=\"jaxEditorSelectFont('"+id+"', this.id);\">\n";html+="    <option value=\"1\" selected>1</option>\n";html+="    <option value=\"2\">2</option>\n";html+="    <option value=\"3\">3</option>\n";html+="    <option value=\"4\">4</option>\n";html+="    <option value=\"5\">5</option>\n";html+="    <option value=\"6\">6</option>\n";html+="    <option value=\"7\">7</option>\n";html+="   </select>\n";html+="  </td>\n";html+="  <td width=\"100%\"></td>\n";html+=" </tr>\n";html+="</table>\n";html+="<table class=\"edit_table\" id=\""+id+"_buttons_2\">\n";html+=" <tr>\n";html+=getButton(id,"font_bold","bold","Bold");html+=getButton(id,"font_italic","italic","Italic");html+=getButton(id,"font_underline","underline","Underline");html+=getSeparator();html+=getButton(id,"align_left","justifyleft","Align Left");html+=getButton(id,"align_centre","justifycenter","Center");html+=getButton(id,"align_right","justifyright","Align Right");html+=getButton(id,"align_full","justifyfull","Justify Full");html+=getSeparator();html+=getButton(id,"list_ordered","insertorderedlist","Ordered List");html+=getButton(id,"list_unordered","insertunorderedlist","Unordered List");html+=getSeparator();html+=getButton(id,"indent_out","outdent","Outdent");html+=getButton(id,"indent_in","indent","Indent");html+=getSeparator();if(jeFolderURL!=null){html+="  <td><img class=\"edit_button\" id=\"insert_link\" src=\""+jePath+"image/insert_link.gif\" alt=\"Insert Link\" title=\"Insert Link\" onClick=\"jaxEditorSetRange(); jaxDialogShow(this, jaxEditorBuildFolderDialog, -20, 25);\"></td>\n";html+="  <td><img class=\"edit_button\" id=\"insert_image\" src=\""+jePath+"image/insert_image.gif\" alt=\"Add Image\" title=\"Add Image\" onClick=\"jaxEditorSetRange(); jaxDialogShow(this, jaxEditorBuildImageDialog, -20, 25);\"></td>\n";}
html+="  <td width=\"100%\"></td>\n";html+=" </tr>\n";html+="</table>\n\n";html+="<iframe class=\"edit_text\" id=\""+id+"_editor\" src=\"\"></iframe>\n";html+="<input type=\"hidden\"   id=\""+id+"_hidden\" name=\""+id+"\" value=\"\">\n";}else{html+="<textarea class=\"edit_text\" name=\""+id+"\" id=\""+id+"_text\"></textarea>\n";}
form=document.getElementsByTagName("FORM")[0];form.onsubmit=function(event){return jaxEditorTranslateToStorage(id);};document.getElementById(id).innerHTML=html;}
function getButton(id,button,command,title){var html="";html+="\t\t<td>";html+="<img class=\"edit_button\" ";html+="id=\""+button+"\" src='"+jePath+"image/"+button+".gif' ";html+="title=\""+title+"\" alt=\""+title+"\" ";html+="onClick=\"jaxEditorCommand('"+command+"', '')\">";html+="</td>\n";return html;}
function getSeparator(){return"\t\t<td><div class=\"edit_separator\" alt=\"\"></div></td>\n";}
function jaxEditorBuildTextArea(id){var html="<html>\n";html+="<head>\n";html+="<style>\n";html+="body {\n";html+=" background: #FFFFFF;\n";html+=" margin: 10px;\n";html+=" padding: 0px;\n";html+="}\n";html+="</style>\n";html+="</head>\n";html+="<body id=\"body_new\">\n";html+="</body>\n";html+="</html>\n";var editor=id+"_editor";var hidden=id+"_hidden";if(document.all){jeEditor=document.frames[editor];jeEditor.document.open();jeEditor.document.write(html);jeEditor.document.close();document.all[hidden].value="";jeEditor.document.designMode="On";jeEditor.document.attachEvent("onkeypress",function evt_ie_keypress(event){ieKeyPress(event,editor);});}else{try{document.getElementById(editor).contentDocument.designMode="on";try{jeEditor=document.getElementById(editor).contentWindow;jeEditor.document.open();jeEditor.document.write(html);jeEditor.document.close();document.getElementById(hidden).value="";}catch(e){alert("Error preloading content.");}}catch(e){if(jeHasDesignMode){setTimeout("jaxEditorBuildTextArea('"+id+"');",10);}else{return false;}}}}
function jaxEditorSelectFont(editor,selectname){var index=document.getElementById(selectname).selectedIndex;if(index!=0){var selected=document.getElementById(selectname).options[index].value;var command=selectname.replace('_'+editor,'');jaxEditorCommand(command,selected);document.getElementById(selectname).selectedIndex=0;}}
function jaxEditorCommand(command,option){try{jeEditor.focus();jeEditor.document.execCommand(command,false,option);jeEditor.focus();}catch(e){alert("Command "+command+" not supported by your browser.");}}
function jaxEditorTranslateToStorage(id){if(!jeIsRichText)return true;if(jeFolderURL){jeEditor.document.body.innerHTML=jaxEditorReplaceText(jeEditor.document.body.innerHTML,"href=\""+jeFolderURL_View,"href=\""+jeFolderURL_Save);jeEditor.document.body.innerHTML=jaxEditorReplaceText(jeEditor.document.body.innerHTML,"src=\""+jeFolderURL_View,"src=\""+jeFolderURL_Save);}
document.getElementById(id+"_hidden").value=jeEditor.document.body.innerHTML;return true;}
function jaxEditorTranslateFromStorage(){if(!jeIsRichText)return true;if(jeFolderURL){jeEditor.document.body.innerHTML=jaxEditorReplaceText(jeEditor.document.body.innerHTML,"href=\""+jeFolderURL_Save,"href=\""+jeFolderURL_View);jeEditor.document.body.innerHTML=jaxEditorReplaceText(jeEditor.document.body.innerHTML,"src=\""+jeFolderURL_Save,"src=\""+jeFolderURL_View);}}
function jaxEditorReplaceText(html,search,replace){return html;}
function ieKeyPress(evt,editor){var key=(evt.which||evt.charCode||evt.keyCode);var stringKey=String.fromCharCode(key).toLowerCase();}
function raiseButton(e){var el=window.event.srcElement;className=el.className;if(className=='editorImage'||className=='editorImageLowered'){el.className='editorImageRaised';}}
function normalButton(e){var el=window.event.srcElement;className=el.className;if(className=='editorImageRaised'||className=='editorImageLowered'){el.className='editorImage';}}
function lowerButton(e){var el=window.event.srcElement;className=el.className;if(className=='editorImage'||className=='editorImageRaised'){el.className='editorImageLowered';}}
function jaxEditorBuildFolderDialog(){jaxTreeSetNodeClickEvent(jaxEditorFolderDialogCallback);jaxTreeRegister(jeFolderURL,"jax_dialog_root");}
function jaxEditorFolderDialogCallback(title,folder,path){var html=" <a href=\""+path+"\">"+title+"</a> ";if(document.all){try{jeEditor.focus();jeRange.pasteHTML(html);jeRange.collapse(false);jeRange.select();}catch(e){alert(e.message);}}else{jeEditor.document.execCommand('insertHTML',false,html);}
jaxDialogShow();jeEditor.focus();}
function jaxEditorBuildImageDialog(){jaxTreeSetNodeClickEvent(jaxEditorImageDialogCallback);jaxTreeRegister(jeFolderURL,"jax_dialog_root");}
function jaxEditorImageDialogCallback(title,folder,path){var html="&nbsp;<img src=\""+path+"\" title=\""+title+"\">&nbsp;";if(document.all){try{jeEditor.focus();jeRange.pasteHTML(html);jeRange.collapse(false);jeRange.select();}catch(e){alert(e.message);}}else{jeEditor.document.execCommand('insertHTML',false,html);}
jaxDialogShow();jeEditor.focus();}
function jaxEditorSetRange(){jeEditor.focus();if(document.all){var selection=jeEditor.document.selection;if(selection!=null)jeRange=selection.createRange();}else{var selection=jeEditor.getSelection();jeRange=selection.getRangeAt(selection.rangeCount-1).cloneRange();}}
function jaxEditorTranslateHTML(html){var buffer="";for(var i=0;i<html.length;i++){var character=html.substring(i,i+1);if(character=="<"){buffer+="&lt;";}else if(character==">"){buffer+="&gt;";}else if(character=="\n"){buffer+="<br>\n";}else if(character=="\t"){buffer+="&nbsp;";}else if(character==" "){buffer+="&nbsp;";}else{buffer+=character;}}
document.getElementById("translate").innerHTML=buffer;}
function jaxEditorSetFolderURL(url,viewUrl,saveUrl){jeFolderURL=url;jeFolderURL_View=viewUrl;jeFolderURL_Save=saveUrl;}

// Begin Table

var jaxTableHeight=0;var jaxTableWidth=0;var jaxTableSortID=null;var jaxTableSortIndex=-1;var jaxTableSortDown=false;var jaxTableTitles=null;var jaxTableRecords=null;var jaxTableFolderEditURL=null;var jaxTableFolderDeleteURL=null;var jaxTableSuppressId=false;var jaxTableLinkColumn=-1;var jaxTableLinkURL="";var jaxTableDateColumn=-1;var jaxTableDateClassName="";function jaxTableRegister(contentURL,id){jaxTableBuildContainer(id);xmlRequest(contentURL,null,jaxTableReturnXML);}
function jaxTableBuildContainer(id){var html="";html+="<div id=\"table_loading\">Loading</div>";html+="<div id=\"table_container\"></div>";document.getElementById(id).innerHTML=html;jaxCommonLoadingMessageReset("table_loading","table_container");}
function jaxTableReturnXML(xml){jaxCommonLoadingMessageHide("table_loading");if(xml.getElementsByTagName("list_titles").length==0){document.getElementById("table_container").innerHTML="<p>No records to display</p>";return;}
jaxTableReadTitles(xml);jaxTableReadData(xml);jaxTableCreateTable();jaxTableDecorateTable();jaxTableSort(jaxTableSortID);var x=Array("table_td","table_td_highlight");highlightInit(x,0);}
function jaxTableReadTitles(xml){var titles=xmlFindChild(xml,"list_titles");var records=titles.getElementsByTagName("record");jaxTableTitles=Array();for(var i=0;i<records.length;i++){if(records[i].nodeType==1){jaxTableTitles[jaxTableTitles.length]=records[i].firstChild.nodeValue;}}}
function jaxTableReadData(xml){var data=xmlFindChild(xml,"list_data");var records=data.getElementsByTagName("record");var tag="";jaxTableRecords=Array();for(var i=0;i<records.length;i++){jaxTableRecords[i]=Array();for(var j=0;j<jaxTableTitles.length;j++){tag="a"+j.toString();if(records[i].getElementsByTagName(tag)[0].firstChild){jaxTableRecords[i][j]=records[i].getElementsByTagName(tag)[0].firstChild.nodeValue;}}}}
function jaxTableAlertTable(){var message="";for(var i=0;i<jaxTableRecords.length;i++){for(var j=0;j<jaxTableRecords[i].length;j++){message+=jaxTableRecords[i][j]+", ";}
message+="\n";}
alert(message);}
function jaxTableCreateTable(){var html="";var html_titles="";var html_content="";var html_anchor="";var addButtonColumn=false;if(!(jaxTableFolderEditURL==null&&jaxTableFolderDeleteURL==null))addButtonColumn=true;html_titles+="<tr>";for(var i=0;i<jaxTableTitles.length;i++){if(i>0||(!jaxTableSuppressId)){html_titles+="<th>"+jaxTableTitles[i]+"</th>";}}
if(addButtonColumn)html_titles+="<td></td>";html_titles+="</tr>\n";for(var i=0;i<jaxTableRecords.length;i++){html_content+="<tr>";for(var j=0;j<jaxTableTitles.length;j++){if(j>0||(!jaxTableSuppressId)){html_content+="<td></td>";}}
html_anchor="";html_content+=html_anchor+"</tr>\n";}
html+="<table><tbody>\n"+html_titles+html_content+"</tbody></table>\n";document.getElementById("table_container").innerHTML=html;}
function jaxTableDecorateTable(){var div=document.getElementById("table_container");var table=div.getElementsByTagName("TABLE")[0];var th=table.getElementsByTagName("TH");var tr=table.getElementsByTagName("TR");var td=tr[1].getElementsByTagName("TD");var id="";var counter=-1;jaxTableHeight=tr.length-1;jaxTableWidth=td.length;for(var i=0;i<jaxTableWidth;i++){if(th[i].innerHTML!=""){id="table_title_"+i;th[i].onclick=function(event){jaxTableSort(this.id);};th[i].id=id;th[i].className="table_title";}}
for(var i=1;i<jaxTableHeight+1;i++){td=tr[i].getElementsByTagName("TD");for(var j=0;j<jaxTableWidth;j++){id="table_td_"+(i-1)+"_"+j;td[j].className="table_td";td[j].onmouseover=function(event){highlightRow(this,1);};td[j].onmouseout=function(event){highlightRow(this,0);};td[j].id=id;}}}
function jaxTableSort(id){if(id==null)id="table_title_0";if(jaxTableSortID==id){jaxTableSortDown=!jaxTableSortDown;}else{jaxTableSortDown=true;}
jaxTableSortID=id;jaxTableSortIndex=id.split("_")[2];if(jaxTableSuppressId)jaxTableSortIndex++;if(jaxTableSortDown){jaxTableRecords.sort(jaxTableSortDescending);}else{jaxTableRecords.sort(jaxTableSortAscending);}
if(jaxTableSuppressId)jaxTableSortIndex--;jaxTableSortSetHeaders();jaxTableAddContent();}
function jaxTableSortDescending(a,b){if(a[jaxTableSortIndex]<b[jaxTableSortIndex]){return-1;}
else if(a[jaxTableSortIndex]>b[jaxTableSortIndex]){return 1;}
else{return 0;}}
function jaxTableSortAscending(a,b){if(a[jaxTableSortIndex]>b[jaxTableSortIndex]){return-1;}
else if(a[jaxTableSortIndex]<b[jaxTableSortIndex]){return 1;}
else{return 0;}}
function jaxTableSortSetHeaders(){var div=document.getElementById("table_container");var table=div.getElementsByTagName("TABLE")[0];var th=table.getElementsByTagName("TH");for(var i=0;i<th.length;i++){if(i==jaxTableSortIndex){if(jaxTableSortDown){th[i].className="table_title_down";}else{th[i].className="table_title_up";}}else{th[i].className="table_title";}}}
function jaxTableAddContent(){var div=document.getElementById("table_container");var table=div.getElementsByTagName("TABLE")[0];var tr=table.getElementsByTagName("TR");var td=null;var message="";var addButtonColumn=false;if(!(jaxTableFolderEditURL==null&&jaxTableFolderDeleteURL==null))addButtonColumn=true;for(var i=0;i<jaxTableHeight;i++){td=tr[i+1].getElementsByTagName("TD");for(var j=0;j<jaxTableWidth;j++){if(addButtonColumn&&j==td.length-1){}else{if(jaxTableSuppressId){td[j].innerHTML=jaxTableRecords[i][j+1];}else{td[j].innerHTML=jaxTableRecords[i][j];}
if(j==jaxTableDateColumn&&j==jaxTableLinkColumn){td[j].innerHTML="<span class=\""+jaxTableDateClassName+"\">"+"<a href=\""+jaxTableLinkURL+jaxTableRecords[i][0]+"\">"+jaxTableTranslateDate(td[j].innerHTML)+"</a></span>";}else if(j==jaxTableDateColumn){td[j].innerHTML="<span class=\""+jaxTableDateClassName+"\">"+jaxTableTranslateDate(td[j].innerHTML)+"</span>";}else if(j==jaxTableLinkColumn){td[j].innerHTML="<a href=\""+jaxTableLinkURL+jaxTableRecords[i][0]+"\">"+td[j].innerHTML+"</a>";}}}}}
function jaxTableTranslateDate(sourceDate){year=sourceDate.substring(0,4);month=sourceDate.substring(5,7);day=sourceDate.substring(8,10);hour=sourceDate.substring(11,13);minute=sourceDate.substring(14,16);ampm=sourceDate.substring(17);var months=",January,February,March,April,May,June,July,August,September,October,November,December".split(",");return months[parseInt(month)]+" "+day+", "+year;}
function jaxTableShowEdit(url){alert("This function not yet working - id's not being located for edit url pass!");jaxTableFolderEditURL=url}
function jaxTableShowDelete(url){alert("This function not yet working - id's not being located for delete url pass!");jaxTableFolderDeleteURL=url;}
function jaxTableSetSuppressId(){jaxTableSuppressId=true;}
function jaxTableSetLinkColumn(column,url){jaxTableLinkColumn=column;jaxTableLinkURL=url;}
function jaxTableSetDateColumn(column,className){jaxTableDateColumn=column;jaxTableDateClassName=className;}
function jaxTableSetSortColumn(column){jaxTableSortID="table_title_"+column;}

// Begin Tree

var jtNodeArray=null;var jtParentsArray=null;var jtNodeList=null;var jtFileViewURL=null;var jtFolderAddURL=null;var jtFolderEditURL=null;var jtFolderMoveUpURL=null;var jtFolderMoveDownURL=null;var jtFolderDeleteURL=null;var jtShowFoldersOnly=false;var jtOpenRoot=false;var jtNodeClick=null;function jaxTreeNode(xmlArrayRecord){this.id=xmlArrayRecord[0];this.parent_id=xmlArrayRecord[1];this.is_leaf=xmlArrayRecord[2];this.title=xmlArrayRecord[3];this.path=xmlArrayRecord[4];this.children=new Array();}
function jaxTreeRegister(contentURL,id){var html="";html+="<div id=\"tree_loading\">Loading</div>";html+="<div id=\"tree_container\"></div>";document.getElementById(id).innerHTML=html;jaxCommonLoadingMessageReset("tree_loading","tree_container");xmlRequest(contentURL,null,jaxTreeBuild);}
function jaxTreeBuild(xml){jaxCommonLoadingMessageHide("tree_loading");if(xml.getElementsByTagName("record").length==0){document.getElementById("tree_container").innerHTML="<p>No records to display</p>";return;}
jaxTreeConvertXMLToArray(xml);jaxTreeConvertArrayToTree();document.getElementById("tree_container").innerHTML=jaxTreeBuildHtml(jtNodeList,"",0,1);document.getElementById("tree_container").childNodes[0].className+=" tree_root";jaxTreeInitializeJavascriptEvents();}
function jaxTreeConvertXMLToArray(xml){jtNodeArray=new Array();jtParentsArray=new Array();var children=xml.getElementsByTagName("record");var child=null;var counter=-1;var record=new Array();var hasPath=false;var node=null;var depth=0;var depthParents=new Array();for(var i=0;i<children.length;i++){child=children[i];record[0]=child.getElementsByTagName("id")[0].childNodes[0].nodeValue;record[1]=child.getElementsByTagName("parent_id")[0].childNodes[0].nodeValue;record[2]=child.getElementsByTagName("is_leaf")[0].childNodes[0].nodeValue;record[3]=child.getElementsByTagName("title")[0].childNodes[0].nodeValue;if(i==0){if(child.getElementsByTagName("path").length>0){hasPath=true;}}
if(hasPath){record[4]=child.getElementsByTagName("path")[0].childNodes[0].nodeValue;}else{record[4]="";}
node=new jaxTreeNode(record);jtNodeArray[++counter]=node;if(node.is_leaf!="Y")jtParentsArray[jtParentsArray.length]=node;}}
function jaxTreeConvertArrayToTree(){var node=null;var parent=null;var counter=null;jtNodeList=jtNodeArray[0];for(var i=1;i<jtNodeArray.length;i++){node=jtNodeArray[i];for(var j=0;j<jtParentsArray.length;j++){if(node.parent_id==jtParentsArray[j].id){parent=jtParentsArray[j];parent.children[parent.children.length]=node;break;}}}}
function jaxTreeBuildHtml(node,tabs,index,siblings){if(node.is_leaf=="Y"){if(!jtShowFoldersOnly){return jaxTreeBuildHtmlRow(node,tabs,index,siblings);}
return"";}
var html="";html+=tabs+"<div class=\"tree\">\n";html+=jaxTreeBuildHtmlRow(node,tabs,index,siblings);var length=node.children.length;for(var i=0;i<length;i++){html+=jaxTreeBuildHtml(node.children[i],tabs+"\t",i,length);}
html+=tabs+"</div>\n\n";return html;}
function jaxTreeBuildHtmlRow(node,tabs,index,siblings){var className=null;var id=null;var displayAdd=false;var displayEdit=false;var displayMoveUp=false;var displayMoveDown=false;var displayDelete=false;if(node.is_leaf!="Y"){className="tree_open";id="tree_"+node.id;if(jtFolderAddURL!=null)displayAdd=true;if(jtFolderEditURL!=null)displayEdit=true;if(jtFolderMoveUpURL!=null&&index!=0)displayMoveUp=true;if(jtFolderMoveDownURL!=null&&index!=siblings-1)displayMoveDown=true;if(jtFolderDeleteURL!=null){if(node.children.length==0&&node.parent_id!=0){displayDelete=true;}}}else{className="tree_node";id="tree_node_"+node.id;if(jtFolderEditURL!=null)displayEdit=true;if(jtFolderMoveUpURL!=null&&index!=0)displayMoveUp=true;if(jtFolderMoveDownURL!=null&&index!=siblings-1)displayMoveDown=true;if(jtFolderDeleteURL!=null)displayDelete=true;}
var html="\n";html+=tabs+"\t<div class=\""+className+"\" id=\""+id+"\">\n";html+=tabs+"\t\t<table>\n";html+=tabs+"\t\t\t<tr>\n";html+=tabs+"\t\t\t\t<td class=\"tree_td_text\">"+node.title+"</td>\n";html+=tabs+"\t\t\t\t<td class=\"tree_td_anchor\">";html+=jaxTreeBuildButton(displayAdd,jtFolderAddURL,"add",node.id,"Add New Node","tree_add","+");html+=jaxTreeBuildButton(displayEdit,jtFolderEditURL,"edit",node.id,"Edit Node","tree_edit","e");html+=jaxTreeBuildButton(displayMoveUp,jtFolderMoveUpURL,"moveup",node.id,"Move Node Up","tree_move","u");html+=jaxTreeBuildButton(displayMoveDown,jtFolderMoveDownURL,"movedown",node.id,"Move Node Down","tree_move","d");html+=jaxTreeBuildButton(displayDelete,jtFolderDeleteURL,"delete",node.id,"Delete Node","tree_delete","x");html+="</td>\n";html+=tabs+"\t\t\t</tr>\n";html+=tabs+"\t\t</table>\n";html+=tabs+"\t</div>\n";return html;}
function jaxTreeBuildButton(display,url,request,id,title,className,sign){if(url==null)return"";if(!display)return" <span class=\""+className+"\">"+sign+"</span>";return" <a href=\""+url+"?request="+request+"&id="+id+"\" title=\""+title+"\" class=\""+className+"\">"+sign+"</a>";}
function jaxTreeInitializeJavascriptEvents(){var divs=document.getElementsByTagName("DIV");for(var i=0;i<divs.length;i++){if(divs[i].className=="tree_open"||divs[i].className=="tree_close"){divs[i].style.cursor="pointer";divs[i].onmouseover=function(event){jaxTreeHighlight(this,true);};divs[i].onmouseout=function(event){jaxTreeHighlight(this,false);};divs[i].onselectstart=function(event){return false;};divs[i].onclick=function(event){jaxTreeExpand(this);};jaxTreeExpand(divs[i]);}else if(divs[i].className=="tree_node"){divs[i].onmouseover=function(event){jaxTreeHighlight(this,true);};divs[i].onmouseout=function(event){jaxTreeHighlight(this,false);};if(jtNodeClick){divs[i].onclick=function(event){jtNodeClick(jaxTreeGetFileTitle(this),jaxTreeGetRelativeFolder(this),jaxTreeGetFilePath(this));};divs[i].style.cursor="pointer";}}}
if(document.getElementById("tree_"+jtNodeList.id)){jaxTreeExpand(document.getElementById("tree_"+jtNodeList.id));}}
function jaxTreeExpand(element){var display="";var state=element.className;if(state.indexOf("tree_open")>-1)display="none";var found=false;var children=element.parentNode.childNodes;for(var i=0;i<children.length;i++){if(children[i].nodeType==1&&children[i].nodeName=="DIV"){if(children[i].className!=state){children[i].style.display=display;found=true;}}}
if(!found){element.className="tree_empty";element.style.cursor="";element.onclick=null;}else if(state.indexOf("tree_open")>-1){if(state.indexOf("highlight")>-1){element.className="tree_close_highlight";}else{element.className="tree_close";}}else{if(state.indexOf("highlight")>-1){element.className="tree_open_highlight";}else{element.className="tree_open";}}
return false;}
function jaxTreeHighlight(element,highlight){if(element.className==null)return;if(highlight){if(element.className.indexOf("tree_open")>-1)element.className="tree_open_highlight";if(element.className.indexOf("tree_close")>-1)element.className="tree_close_highlight";if(element.className.indexOf("tree_empty")>-1)element.className="tree_empty_highlight";if(element.className.indexOf("tree_node")>-1)element.className="tree_node_highlight";}else{if(element.className.indexOf("tree_open")>-1)element.className="tree_open";if(element.className.indexOf("tree_close")>-1)element.className="tree_close";if(element.className.indexOf("tree_empty")>-1)element.className="tree_empty";if(element.className.indexOf("tree_node")>-1)element.className="tree_node";}}
function jaxTreeGetFileTitle(element){var td=element.getElementsByTagName("TD");for(var i=0;i<td.length;i++){if(td[i].className=="tree_td_text"){return td[i].innerHTML;}}}
function jaxTreeGetFilePath(element){var id=element.id.substring(10);for(var i=0;i<jtNodeArray.length;i++){if(jtNodeArray[i].id==id){return jtNodeArray[i].path;}}
return"";}
function jaxTreeGetRelativeFolder(element){var folder="";while(element.id!=null&&element.id!="tree_container"){element=element.parentNode;if(element.className=="tree"){folder=jaxTreeGetFileTitle(element)+"/"+folder;break;}}
return folder;}
function jaxTreeSetFileViewURL(url){jtFileViewURL=url;}
function jaxTreeShowAdd(url){jtFolderAddURL=url;}
function jaxTreeShowEdit(url){jtFolderEditURL=url;}
function jaxTreeShowMoveUp(url){jtFolderMoveUpURL=url;}
function jaxTreeShowMoveDown(url){jtFolderMoveDownURL=url;}
function jaxTreeShowDelete(url){jtFolderDeleteURL=url;}
function jaxTreeShowFoldersOnly(){jtShowFoldersOnly=true;}
function jaxTreeOpenRootElement(){jtOpenRoot=true;}
function jaxTreeSetNodeClickEvent(onclick){jtNodeClick=onclick;}