
var _ExclusiveObjectControllerArray=new Array();function ExclusiveObjectController()
{this._ExclusiveArticleArray=new Array();this._ExclusiveContainerArray=new Array();this._TimerEvent=null;this._TimerInterval;this._TimerReset;this._TotalRotations=0;this._MaxRotations=0;this._UseTimer=false;this._UseReset=true;this._LastIndex=-1;this._usesHeaderTextAlternate=false;}
function GetObjectById(objectId)
{if(objectId&&objectId.id)
return objectId;var result=null;if(document.getElementById)
result=document.getElementById(objectId);if(result!=null)
return result;else
return false;}
function IsObjectValid(object)
{if(object==null||object==false)
return false;else
return true;}
function ExclusiveObject()
{this.objectId="";this.mouseOutClass="";this.mouseHitClass="";this.cssClassOn="";this.cssClassOff="";this.imageOn="";this.imageOff="";this.isSelected=false;this.cssClassTabInnerDivOn="";this.cssClassTabInnerDifOff="";this.headerTextAlternate="";this.headerLinkAlternate="";this.cssClassHeaderTextAlternate="";this.isShowWhenAutoFlipping=true;}
function AddExclusiveObjects(objectArticle,objectContainer,exclusiveObjectControllerIndex)
{var Article=GetObjectById(objectArticle.objectId);var LinkContainer=GetObjectById(objectContainer.objectId);if(Article&&LinkContainer)
{Article.IsShowWhenAutoFlipping=objectArticle.isShowWhenAutoFlipping;_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray.length]=Article;if(objectContainer.imageOff)
{var imageOff=new Image();imageOff.src=objectContainer.imageOff;LinkContainer.ImageOff=imageOff;}
if(objectContainer.imageOn)
{var imageOn=new Image();imageOn.src=objectContainer.imageOn;LinkContainer.ImageHit=imageOn;}
LinkContainer.MouseOverOff=objectContainer.mouseOutClass;LinkContainer.MouseOverHit=objectContainer.mouseHitClass;LinkContainer.CssClassOff=objectContainer.cssClassOff;LinkContainer.CssClassOn=objectContainer.cssClassOn;LinkContainer.IsSelected=objectContainer.isSelected;LinkContainer.CssClassTabInnerDivOn=objectContainer.cssClassTabInnerDivOn;LinkContainer.CssClassTabInnerDivOff=objectContainer.cssClassTabInnerDivOff;LinkContainer.HeaderTextAlternate=objectContainer.headerTextAlternate;LinkContainer.HeaderLinkAlternate=objectContainer.headerLinkAlternate;LinkContainer.CssClassHeaderTextAlternate=objectContainer.cssClassHeaderTextAlternate;_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveContainerArray[_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveContainerArray.length]=LinkContainer;if((objectContainer.headerTextAlternate&&(objectContainer.headerTextAlternate!=""))||(objectContainer.headerLinkAlternate&&(objectContainer.headerLinkAlternate!=""))||(objectContainer.cssClassHeaderTextAlternate&&(objectContainer.cssClassHeaderTextAlternate!="")))
{_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._usesHeaderTextAlternate=true;}}}
function InitializeTimer(interval,reset,exclusiveObjectControllerIndex)
{InitializeTimer(interval,reset,0,0,exclusiveObjectControllerIndex);}
function InitializeTimer(interval,reset,maxRotations,exclusiveObjectControllerIndex)
{InitializeTimer(interval,reset,maxRotations,0,exclusiveObjectControllerIndex);}
function InitializeTimer(interval,reset,maxRotations,currentlySelectedTabIndex,exclusiveObjectControllerIndex)
{if(!currentlySelectedTabIndex)
{currentlySelectedTabIndex=0;}
if(!exclusiveObjectControllerIndex)
{exclusiveObjectControllerIndex=0;}
_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._MaxRotations=maxRotations;_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._UseTimer=true;_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerInterval=interval*1000;_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex=currentlySelectedTabIndex;if(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex<0)
{_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex=0;}
if(reset<=0)
_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._UseReset=false;else
_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerReset=reset*1000;StartTimer(exclusiveObjectControllerIndex);}
function StartTimer(exclusiveObjectControllerIndex)
{if(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent)
clearTimeout(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent);_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent=setTimeout('TimedSwitch('+exclusiveObjectControllerIndex+')',_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerInterval);}
function TimedSwitch(exclusiveObjectControllerIndex)
{var newIndex=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex+1;clearTimeout(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent);if(newIndex>=0&&newIndex<_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray.length)
{var isShowFlip=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[newIndex].IsShowWhenAutoFlipping;if(isShowFlip==false)
newIndex=newIndex+1;}
if(newIndex>=0&&newIndex<_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray.length)
{SwitchArticle(newIndex,exclusiveObjectControllerIndex);SwitchContainer(newIndex,exclusiveObjectControllerIndex);_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex=newIndex;}
else
{SwitchArticle(0,exclusiveObjectControllerIndex);SwitchContainer(0,exclusiveObjectControllerIndex);_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex=0;}
if((_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._MaxRotations==0)||(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TotalRotations<_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._MaxRotations))
{_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TotalRotations++;_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent=setTimeout('TimedSwitch('+exclusiveObjectControllerIndex+')',_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerInterval);}}
function NonExclusiveSwitch(index,exclusiveObjectControllerIndex,isUserClick)
{var objectContainer=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveContainerArray[index];var depth;if(objectContainer.IsSelected==true)
{HideObject(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[index].id);var temp=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveContainerArray[index];var tempImage=temp.childNodes[0];depth=0;while(depth++<=3)
{if(tempImage&&tempImage.src&&temp.ImageOff)
{tempImage.src=temp.ImageOff.src;break;}
else if(!tempImage)
break;tempImage=tempImage.childNodes[0];}
temp.IsSelected=false;temp.className="";if(temp.CssClassOff)
temp.className=temp.CssClassOff;else if(temp.MouseOverOff)
temp.className=temp.MouseOverOff;if(temp.CssClassTabInnerDivOff&&temp.childNodes[0])
{temp.childNodes[0].className=temp.CssClassTabInnerDivOff;}}
else
{ShowObject(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[index].id);depth=0;var image=objectContainer.childNodes[0];while(depth++<=3)
{if(image&&image.src&&objectContainer.ImageHit)
{image.src=objectContainer.ImageHit.src;break;}
else if(!image)
break;image=image.childNodes[0];}
objectContainer.IsSelected=true;if(objectContainer.CssClassOn)
objectContainer.className=objectContainer.CssClassOn;else if(objectContainer.MouseOverHit)
objectContainer.className=objectContainer.MouseOverHit;if(objectContainer.CssClassTabInnerDivOn&&objectContainer.childNodes[0])
{objectContainer.childNodes[0].className=objectContainer.CssClassTabInnerDivOn;}}}
function ExclusiveSwitch(index,exclusiveObjectControllerIndex)
{ExclusiveSwitch(index,exclusiveObjectControllerIndex,false);}
function Previous(exclusiveObjectControllerIndex)
{var lastIndex=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex;var newIndex=lastIndex-1;if(lastIndex>0)
{var isShowFlip=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[newIndex].IsShowWhenAutoFlipping;if(isShowFlip==false)
newIndex=newIndex-1;ExclusiveSwitch(newIndex,exclusiveObjectControllerIndex,true);}}
function Next(exclusiveObjectControllerIndex)
{var lastIndex=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex;if(lastIndex==-1)
lastIndex=0;var newIndex=lastIndex+1;if(newIndex<_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray.length)
{var isShowFlip=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[newIndex].IsShowWhenAutoFlipping;if(isShowFlip==false)
newIndex=newIndex+1;ExclusiveSwitch(newIndex,exclusiveObjectControllerIndex,true);}}
function Pause(exclusiveObjectControllerIndex)
{if(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent)
clearTimeout(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent);}
function Play(exclusiveObjectControllerIndex)
{StartTimer(exclusiveObjectControllerIndex);}
function ExclusiveSwitch(index,exclusiveObjectControllerIndex,isUserClick)
{SwitchArticle(index,exclusiveObjectControllerIndex);SwitchContainer(index,exclusiveObjectControllerIndex);if(isUserClick==false)
{if(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._UseTimer&&_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent)
{_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex=index;clearTimeout(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent);if(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._UseReset)
_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent=setTimeout('StartTimer('+exclusiveObjectControllerIndex+')',_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerReset);}}
else
{_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._LastIndex=index;clearTimeout(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._TimerEvent);}}
function SwitchArticle(index,exclusiveObjectControllerIndex)
{for(var i=0;i<_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray.length;i++)
HideObject(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[i].id);ShowObject(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveArticleArray[index].id);}
function SwitchContainer(index,exclusiveObjectControllerIndex)
{var objectContainer=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveContainerArray[index];var depth;for(var i=0;i<_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveContainerArray.length;i++)
{var temp=_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._ExclusiveContainerArray[i];var tempImage=temp.childNodes[0];depth=0;while(depth++<=3)
{if(tempImage&&tempImage.src&&temp.ImageOff)
{tempImage.src=temp.ImageOff.src;break;}
else if(!tempImage)
break;tempImage=tempImage.childNodes[0];}
temp.IsSelected=false;temp.className="";if(temp.CssClassOff)
temp.className=temp.CssClassOff;else if(temp.MouseOverOff)
temp.className=temp.MouseOverOff;if(temp.CssClassTabInnerDivOff&&temp.childNodes[0])
{temp.childNodes[0].className=temp.CssClassTabInnerDivOff;}}
depth=0;var image=objectContainer.childNodes[0];while(depth++<=3)
{if(image&&image.src&&objectContainer.ImageHit)
{image.src=objectContainer.ImageHit.src;break;}
else if(!image)
break;image=image.childNodes[0];}
objectContainer.IsSelected=true;if(objectContainer.CssClassOn)
objectContainer.className=objectContainer.CssClassOn;else if(objectContainer.MouseOverHit)
objectContainer.className=objectContainer.MouseOverHit;if(objectContainer.CssClassTabInnerDivOn&&objectContainer.childNodes[0])
{objectContainer.childNodes[0].className=objectContainer.CssClassTabInnerDivOn;}
if(_ExclusiveObjectControllerArray[exclusiveObjectControllerIndex]._usesHeaderTextAlternate&&objectContainer.parentNode&&objectContainer.parentNode.id)
{var parentTr=document.getElementById(objectContainer.parentNode.id);if(parentTr)
{var headerTextAlternateLink=parentTr.childNodes[parentTr.childNodes.length-1].childNodes[0]
if(!headerTextAlternateLink)
{headerTextAlternateLink=parentTr.childNodes[parentTr.childNodes.length-2].childNodes[0]}
if(headerTextAlternateLink)
{if(objectContainer.HeaderTextAlternate&&objectContainer.HeaderLinkAlternate)
{headerTextAlternateLink.innerText=objectContainer.HeaderTextAlternate;headerTextAlternateLink.innerHtml=objectContainer.HeaderTextAlternate;headerTextAlternateLink.textContent=objectContainer.HeaderTextAlternate;if(headerTextAlternateLink.firstChild)
{headerTextAlternateLink.firstChild.nodeValue=objectContainer.HeaderTextAlternate;}
headerTextAlternateLink.className=objectContainer.CssClassHeaderTextAlternate;headerTextAlternateLink.href=objectContainer.HeaderLinkAlternate;}
else
{headerTextAlternateLink.innerText='';headerTextAlternateLink.innerHtml='';headerTextAlternateLink.textContent='';headerTextAlternateLink.className='';headerTextAlternateLink.href='';}}}}}
function HideObjectArray(objectArray)
{if(!IsObjectValid(objectArray))
return;for(var i=0;i<objectArray.length;i++)
HideObject(objectArray[i]);}
function ShowObjectArray(objectArray)
{if(!IsObjectValid(objectArray))
return;for(var i=0;i<objectArray.length;i++)
ShowObject(objectArray[i]);}
function AddObjectClass(objectId,className)
{var object=GetObjectById(objectId);if(!IsObjectValid(object))
return;var currClassList=object.className;if(currClassList=="")
object.className=className;else if(currClassList.indexOf(className)<0)
object.className+=" "+className;}
function RemoveObjectClass(objectId,className)
{var object=GetObjectById(objectId);if(!IsObjectValid(object))
return;var currClassList=object.className;currClassList=currClassList.replace(" "+className,"");currClassList=currClassList.replace(className+" ","");currClassList=currClassList.replace(className,"");object.className=currClassList;}
function HideObject(objectId)
{var object=GetObjectById(objectId);if(!IsObjectValid(object))
return;FadeObject(objectId,100,0);var status=object.style.display;if(status!='none')
object.style.display='none';}
function ShowObject(objectId)
{var object=GetObjectById(objectId);if(!IsObjectValid(object))
return;FadeObject(objectId,0,100);var status=object.style.display;if(status!='')
object.style.display='';}
function FadeObject(objectId,opacStart,opacEnd)
{var millisec=1500;var speed=Math.round(millisec/100);var timer=0;if(opacStart>opacEnd){for(i=opacStart;i>=opacEnd;i=i-3){opacityTimer=setTimeout("ChangeOpacity('"+objectId+"', "+i+")",(timer*speed));timer++;}}
else if(opacStart<opacEnd)
{for(i=opacStart;i<=opacEnd;i=i+3)
{opacityTimer=setTimeout("ChangeOpacity('"+objectId+"', "+i+")",(timer*speed));timer++;}}}
function ChangeOpacity(objectId,opacity)
{var object=document.getElementById(objectId).style;object.opacity=(opacity/100);object.MozOpacity=(opacity/100);object.KhtmlOpacity=(opacity/100);object.filter="alpha(opacity="+opacity+")";}
function HideObjectArrayWithNoFade(objectArray)
{if(!IsObjectValid(objectArray))
return;for(var i=0;i<objectArray.length;i++)
HideObjectWithNoFade(objectArray[i]);}
function ShowObjectArrayWithNoFade(objectArray)
{if(!IsObjectValid(objectArray))
return;for(var i=0;i<objectArray.length;i++)
ShowObjectWithNoFade(objectArray[i]);}
function HideObjectWithNoFade(objectId)
{var object=GetObjectById(objectId);if(!IsObjectValid(object))
return;var status=object.style.display;if(status!='none')
object.style.display='none';}
function ShowObjectWithNoFade(objectId)
{var object=GetObjectById(objectId);if(!IsObjectValid(object))
return;var status=object.style.display;if(status!='')
object.style.display='';}