﻿/* Toyota js menu v7 - 2006-12-06 */
var W=window,D=document,T=true,F=false,Z=0,N=null,E='',S=' '
var JMIP='/Images/',JM_SP=JMIP+'spacer.gif'
var sitePath='/',theTree,pageName,pageRefer,countryDisplayed,menuAttributes,framed=F,rsb

/* IE for Mac fix */
p=Array.prototype
if(!p.push){p.push=function(a){var o=this;o[o.length]=a}}

function TreeItem(a){this.attributes=a;this.children=[]}
function Tree(a,b){
	var o,i,v,par,id,vc,ac,tmp,ss,s1,parentPage,vv,pn=pageName
	if(!pn){
		pn=getPath(location.href)
		if(sHas(pn,'sys/frame')){pn=getPath(W.parent.location.href);framed=T}
		if (pn.charAt(pn.length-1)=='/' || pn.length==0) pn+='index.asp'
		pageName=pn
	}
	o=this.items=[]
	ac=this.activeCandidates=[]
	o['ROOT']=new TreeItem('ROOT',E)
	s1=pn.split('/');ss=pn.split('/');--ss.length;parentPage=ss.join('/')+'/index.asp'
	for(i=Z;i<a.length;i++){
		v=a[i].split('|');id=v[2];par=v[3];vc=this.items[par].children
		vc[vc.length]=id;this.items[id]=new TreeItem(v)
		vv=v[5]
		mypageName=pn
		if(pn.indexOf('.asp?')>Z && !rsb)mypageName=pn.substr(Z,pn.indexOf("?"))
		vv=(rs(vv,' ',E))
		if(vv.indexOf('.asp?')>Z && !rsb)vv=vv.substr(Z,vv.indexOf("?"))
		if(sLC(vv)==mypageName)ac[ac.length]=id
		if(pageRefer!=E && vv==pageRefer)this.refer=id
		if(vv==parentPage)this.parentPageItem=id
	}
	this.activeItem=getActiveItem(this,b)
	if(this.activeItem==N){
		if(this.parentPageItem==N)return
		this.activeItem=this.parentPageItem
	}
	vc=o[this.activeItem];i=Z
	while(vc && i<20){
		id=vc.attributes[2];par=vc.attributes[3];vc.active=T;i++
		if(par>E){vc=o[par];if(vc!=N)vc.activeItem=id}
		else vc=N
	}
}
p=Tree.prototype
p.get=function(a){
	var o=this,oc=o.items['ROOT'].children,i
	for(i=Z;i<oc.length;i++){if(o.items[oc[i]].attributes[4]==a)return oc[i]}
}
p.getItem=function(a,b,c,d){return sReplace(getItemHTML(a,b,c,this),'$CHILDREN',d)}
p.getTree=function(start,count,gui,par,curItem,curLevel){
	var o,tmp,v,lo,parent,expandAll,active,v1,tmp1,hidewhen
	o=this.items[curItem?curItem:'ROOT']
	start=(start==N)?Z:start
	count=(count==N)?99:count
	curLevel=curLevel?curLevel:Z
	par=par?par:E
	expandAll=(sHas(par,'expand=all'))?T:F
	hidewhen=sSub(par,'hidewhen=',';')
	active=(typeof o.activeItem=='undefined')?F:T
	if(start>E)return(active==F)?E:this.getTree(start-1,count,gui,par,o.activeItem,curLevel+1)
	lo=((curLevel<gui.length)?gui[curLevel]:gui[gui.length-1]).split('::')
	tmp=lo[Z]
	for(var i=Z;i<o.children.length;i++){
		v=this.items[o.children[i]]
		if(i==0 && v.active && this.mode=='showroom' && curLevel==0)tmp+=this.getShowroom(v,showroomGUI)
		else{
			tmp1=getItemHTML(v,gui,curLevel,this)
			if (hidewhen!=E && sHas(v.attributes[10],hidewhen)) tmp1=E;
			if(v.children.length>Z && count>Z && needsChildren(par,o,v))tmp1=rs(tmp1,'$CHILDREN',this.getTree(start,count-1,gui,par,o.children[i],curLevel+1))
			else tmp1=rs(tmp1,'$CHILDREN',E)
			tmp+=tmp1
		}
	}
	if(tmp==lo[Z])return E
	else return tmp+lo[3]
}
p.getShowroom=function(p,gui){
	var o=theTree,oi=o.items,v=E,vv=E,i,oc,gg,op,ac,ag
	v=getItemHTML(p,gui,Z,o)
	gg=gui[0].split('::')
	oc=p.children
	ag=o.activeGroup
	for(i=Z;i<oc.length;i++){
		op=oi[oc[i]]
		ac=E
		op.active=F
		if(ag>E && sHas(op.attributes[10],'group='+ag)){
			op.active=T
			ac=jmCarGroupModels(ag,gui)
			o.groupLink=replaceValues('<a href="$LINK">$LABEL</a>',op)
		}
		else if (ag==' ' && i==Z) op.active=T;
		
		
		vv+=rs(getItemHTML(op,gui,1,o),'$CHILDREN',ac)
	}
	return rs(v,'$CHILDREN',gg[Z]+vv+gg[3])
}

function getActiveItem(a,b){
	var ac=a.activeCandidates,o=a.items,vc,i,ax,tp,ax1,pn=pageName
	if(ac.length>1){f=1;for (i=0;i<ac.length;i++) if(o[ac[i]].attributes[10].indexOf('priority')>=0)f=i;return ac[f]}
	if(ac.length==1)return ac[Z]
	if(ac.length==Z && a.refer!=N)return a.refer
	if(a.refer==N)return ac[Z]
	vc=o[a.refer];i=Z
	while(vc && i<20){
		id=vc.attributes[2];par=vc.attributes[3];vc.active=T;i++
		if(par>E){vc=o[par];if(vc!=N)vc.activeItem=id}
		else vc=N
	}
	ax=a.getTree(N,N,['::$LINK||$ID\n::$LINK||$ID\n$CHILDREN::'])
	vc=o[a.refer];i=Z
	while(vc && i<20){
		id=vc.attributes[2];par=vc.attributes[3];vc.active=F;i++
		if(par>E){vc=o[par];if(vc!=N)vc.activeItem=N}
		else vc=N
	}
	ax1=(ax.indexOf(sitePath+pn+"||"))?ax.substr(ax.lastIndexOf(sitePath+pn+"||")):ax
	tp=gss(ax1,sitePath+pn+'||','\n')
	return (tp==E)?a.refer:tp
}

function needsChildren(def,parent,o){
	if(sHas(def,'expand=all'))return T
	if(sHas(o.attributes[10],'hidechildren=Y'))return F
	if(parent.activeItem && parent.activeItem==o.attributes[2])return T
	return F
}

function getItemHTML(o,gui,curLevel,a,b) {
	var tmp=E,lo=((curLevel<gui.length)?gui[curLevel]:gui[gui.length-1]).split('::'),loi
	if(o.active){
		if(o.activeItem && a.items[o.activeItem].attributes[9]=='1')loi=lo[1]
		else loi=lo[2]
	}
	else loi=lo[1]
	if(o.attributes[4]==E)return E
	if(o.attributes[5]==E && lo.length>3)loi=lo[4]
	return replaceValues(loi,o,b,curLevel)
}

function replaceValues(a,b,c){
	var v=a,lnk=b.attributes[5],trg=b.attributes[6],w
	v=rs(v,"$LABEL",b.attributes[4])
	newlnk=((sBegins(lnk,'#') || sBegins(lnk,'http://') || sBegins(sLC(lnk),'javascript:'))?E:sitePath)+lnk
	opt=b.attributes[10]
	if(opt.indexOf("popup=")==Z){
		if(sHas(lnk,'applications/mm/')&&W.mmCar){newlnk="javascript:mmPopNew('"+lnk+"')"}
		else{
			G_day=new Date()
			G_seed=G_day.getTime()
			iRand=parseInt(((G_seed - (parseInt(G_seed/1000,10) * 1000))/10)/100*100000 + 1,10)
			max=(opt.indexOf(";;;")>Z)?opt.indexOf(";;;"):opt.length
			opt=opt.substr(6,max-6)
			var o=opt.split(',')
			w=jm_nn(o[Z],200)
			h=jm_nn(o[1],200)
			n=jm_nn(o[2],iRand)
			s=jm_nn(o[3],'yes')
			winleft=(screen.width-w)/2
			winUp=(screen.height-h)/2
			t=jm_nn(o[4],winUp)
			l=jm_nn(o[5],winleft)
			newlnk="javascript:window.open(\'"+newlnk+"\',\'"+n+"\',\'scrollbars="+s+",width="+w+",height="+h+",left="+l+",top="+t+"\');void null;"
		}
	}
	v=rs(v,"$LINK",newlnk)
	v=rs(v,"$TARGET",(trg==E)?E:' target="'+trg+'"')
	v=rs(v,"$ID",b.attributes[2])
	if(sHas(opt,'visible=N'))v=E
	return v
}

function getPath(a){if(sitePath!='/'){return grs((a+E).toLowerCase(),sitePath)}else{return grs((a+E).toLowerCase(),location.host+sitePath)}}

function replaceSubVal(a,b){var v=a;v=rs(v,"$LABEL",b[Z]);v=rs(v,"$LINK",sitePath+b[1]);return v}

function redirect(a){
	var v=sSub(a,'$','/')
	if(window[v])location=rs(a,'$'+v+'/',window[v])
	else alert('ERROR in '+a+':\nVariable "'+v+'" does not exist.')
}
function pop(sLink){openpopup(sLink,750,500)}
function openpopup(sLink,iWidth,iHeight,left,name){
	if(left==N)left=Z
	G_day=new Date()
	G_seed=G_day.getTime()
	iRand=parseInt(((G_seed-(parseInt(G_seed/1000,10)*1000))/10)/100*100000+1,10)
	if(name!=N)iRand=name
	winleft=((screen.width-iWidth)/2)-left
	winUp=(screen.height-iHeight)/2
	W.open(sLink,iRand,'resizable=yes,scrollbars=yes,width='+iWidth+',height='+iHeight+',left='+winleft+',top='+winUp)
}

var CMSG='Sorry, this feature is only supported in Internet Explorer'
function bookmarkPage(){if(D.all)W.external.AddFavorite(D.location.href,D.title);else alert(CMSG)}
function printPage(){if(D.all)W.print();else alert(CMSG)}

function switchCountry(){
	var FLASH='/images/',v
	if(!countryDisplayed){
		v='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'
		v+=' codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"'
		v+=' width="188" height="254" id="emap" >'
		v+='<param name="movie" value="'+FLASH+'map.swf?strXMLAddress='+FLASH+'countries.txt">'
		v+='<param name="quality" value="high"><param name="bgcolor" value="#ffffff">'
		v+='<param name="wmode" value="transparent">'
		v+='<embed src="'+FLASH+'map.swf?strXMLAddress='+FLASH+'countries.txt" wmode="transparent" quality="high" bgcolor="#ffffff" width="188" height="254" name="europemap" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>'
		countryDisplayed=T
	}else{
		v=jm_hTb('<tr valign=top><td align="left" valign="top" width="188">'+jm_hI(JM_SP,7,3)+'<br>'+jm_hI(JMIP+'v4_menu_arrow_red.gif')+'<a class="menuBottom" href="javascript:switchCountry()">Show the map</a></td></tr><tr><td>'+jm_hI(JM_SP,7,3)+'<br>'+jm_hI(JMIP+'v4_menu_nav_dot01.gif',188,1,'top')+'</td></tr>')
		countryDisplayed=F
	}
	carconfig.innerHTML=v
}

if(D.all){layerRef='document.all';styleRef='.style.'}
else if(D.layers){layerRef='document.layers';styleRef='.'} 

function showthumb(theLayer){
	var tmpDiv=D.tmpDiv.tmpDiv.value
	if(D.getElementById){
		if(tmpDiv != "0"){
			var obj=D.getElementById(tmpDiv)
			obj.style.visibility="hidden"
		}
        	var obj=D.getElementById(theLayer)
		obj.style.visibility="visible" 
	}else{
		if(tmpDiv != "0")eval(layerRef+'[tmpDiv]'+styleRef+'visibility="hidden"')
		eval(layerRef+'[theLayer]'+styleRef+'visibility="visible"')
	}
	D.tmpDiv.tmpDiv.value=theLayer
}
function switchlang(url){popupWin01=W.open(url+'?pagename='+location.href,'_new','width=400,height=300')}

function setDocumentLocation(a){if(W.survey_url){set_submit()};D.location.href=a}

function doResize(evnt){location.reload(T)}

function jm_nn(a,b){return (a!=N)?a:b}
function jm_hTb(a,b,w){return '<table'+((b!=N)?' '+b:'')+' border="0" cellspacing="0" cellpadding="0"'+((w!=N)?' width="'+w+'"':'')+'>'+a+'</table>'}
function jm_hI(s,w,h,a,l,i,n){return '<img border="0" src="'+s+'"'+((w!=N)?' width="'+w+'"':'')+((h!=N)?' height="'+h+'"':'')+((a!=N)?' align="'+a+'"':'')+((l!=N)?' alt="'+l+'"':'')+((i!=N)?' id="'+i+'"':'')+((n!=N)?' name="'+n+'"':'')+'>'}
function mmPopNew(a){var v='/cars/new_cars/'+W.mmCar+'/multimedia.html?type='+sSub(a+';','mediatype=',';'),t;mmLaunch(v)}
function mmLaunch(a){W.mmWin=W.open(a,'','width=620,height=390,resizable=yes,scrollbars=yes,scrolling=yes')}

function lds(a){allText+=a+'\n'}
function ds(a){D.writeln(a)}
function rs(a,b,c){return (a!=N && a!="")?a.split(b).join(c):E}
function grs(a,b){var o=a.split(b);if(o.length>1)return o[1];else return E}
function gss(a,b,c){var o=a.split(b);if(o.length>1)return (o[1]+c).split(c)[Z];else return E}

/* New Brand Extra Functions Toyota js menu v7 - 2005-06-03 */
theTree=new Tree(jsMenu)
jmSetMenuAttributes()
function jmSetMenuAttributes(){
	var o=theTree,v=o.get('MENUATTRIBUTES')
	if(v)menuAttributes=o.items[v].attributes[10]
}

showroomGUI=[
'<ul>::<li><img src="'+JMIP+'v4_menu_arrow_red.gif"><a href="$LINK">$LABEL</a>$CHILDREN</li>::<li><img src="'+JMIP+'v4_menu_arrow_red_down.gif"><b><a href="$LINK">$LABEL</a></b>$CHILDREN</li>::</ul>',
'<ul>::<li><a href="$LINK">$LABEL</a>$CHILDREN</li>::<li><b><a href="$LINK">$LABEL</a></b>$CHILDREN</li>::</ul>'
]
showroomsubGUI=[
'<ul>::<li><img src="'+JMIP+'v4_menu_arrow_red.gif"><a href="$LINK">$LABEL</a>$CHILDREN</li>::<li><img src="'+JMIP+'v4_menu_arrow_red_down.gif"><b><a href="$LINK">$LABEL</a></b>$CHILDREN</li>::</ul>',
'<ul>::<li><img src="'+JMIP+'v4_menu_arrow_999999.gif"><a href="$LINK">$LABEL</a>$CHILDREN</li>::<li><img src="'+JMIP+'v4_menu_arrow_999999.gif"><b><a href="$LINK">$LABEL</a></b>$CHILDREN</li>::</ul>'
]
leftGUI=[
'<div style="BACKGROUND: #fff"><ul>::<li><img src="'+JMIP+'v4_menu_arrow_red.gif"><a href="$LINK">$LABEL</a>$CHILDREN</li>::<li><img src="'+JMIP+'v4_menu_arrow_red_down.gif"><b><a href="$LINK">$LABEL</a></b>$CHILDREN</li>::</ul></div>',
'<ul>::<li><img src="'+JMIP+'v4_menu_arrow_999999.gif"><a href="$LINK">$LABEL</a>$CHILDREN</li>::<li><img src="'+JMIP+'v4_menu_arrow_999999.gif"><b><a href="$LINK">$LABEL</a></b>$CHILDREN</li>::</ul>'
]

var COMBO_GUI=['<select id="jmCarCombo" onChange="jmSelect();">::<option value="$LINK">$LABEL</option>::<option value="$LINK" selected="selected">$LABEL</option>::</select>']

submenuGUI=['::<a href="$LINK">$LABEL</a>::<a href="$LINK" id="on">$LABEL</a>::']

subsubmenuGUI=['<img src="'+JMIP+'carsub_div1.gif">::<a href="$LINK">$LABEL</a><img src="'+JMIP+'carsub_div1.gif">::<a href="$LINK" id="on">$LABEL</a><img src="'+JMIP+'carsub_div1.gif">::::']

function jmNavTop(){
	var o=theTree,oi=o.items,oo=o.get('TOP'),v='<table cellspacing="0">',i,n=Z
	oo=oi[oo].children
	for(i=Z;i<oo.length;i++){
		v+=(n==Z)?'<tr>':E
		v+=replaceValues('<td><a href="$LINK">$LABEL</a></td>',oi[oo[i]])
		n++;if(n==3){n=Z;v+='</tr>'}
	}
	v+=(n!=Z)?'</tr>':E
	ds(v+'</table>')
}

function jmNavBot(){
	var o=theTree,oi=o.items,oo=o.get('BOTTOM'),i,ar=[],op,oa,v
	oo=oi[oo].children
	for(i=Z;i<oo.length;i++){
		op=oi[oo[i]];oa=op.attributes
		v=(oa[13]!='')?'<a href="$LINK"><img src="'+JMIP+oa[13]+'" alt="$LABEL" align="absmiddle" border="0"></a>':E
		v=replaceValues(v+'<a href="$LINK" class="directaccess">$LABEL</a>',op)
		ar.push(v)
	}
	ds(ar.join('<img border="0" alt="" src="'+JMIP+'icon_dotv4.gif" width="9" height="16" align="absmiddle">'))
}

function showSearch(){
	var o=theTree,oi=o.items,oo=o.get('SEARCH'),i,ar=[],op,oa,v,vv
	vv='<div id="lnsearch">'
	oo=oi[oo].children
	for(i=Z;i<oo.length-1;i++){
		op=oi[oo[i]];oa=op.attributes
		v=(oa[13]!='')?'<a href="$LINK"><img src="'+JMIP+oa[13]+'" alt="$LABEL" align="absmiddle" border="0"></a>':E
		v=replaceValues(v+'<a href="$LINK" class="directaccess">$LABEL</a>',op)
		ar.push('<td>'+v+'</td>')
	}
	v=ar.join('<td valign="top"><img border="0" alt="" src="'+JMIP+'v4_menu_vdot_10px.gif" width="9" height="10"></td>')
	vv+=jm_hTb('<tr>'+v+'</tr>')
	v='<tr><td><input id="searchBox" name="query" size="20"></td><td valign="middle" align="right"><input type="submit" id="searchButton" value="'+oi[oo[oo.length-1]].attributes[4]+'"></td></tr>'
	vv+='<form action="/site_tools/searchresult.asp" method="post" name="search">'+jm_hTb(v,'style="margin:2px 0;width:184px"')+'</form>'

	vv+='</div>'
	ds(vv)
}

function showRoom(){
	var v='<div id="carconfig"></div>'
	v+=jmCarCombo()
	v+='<div id="showroom">'
	//v+='<div class="hs3"></div>'
	jmSetActiveGroup()
	v+=jmCars()
	v+='</div>'
	ds(v)
	countryDisplayed=(sLC(pageName)=='index.asp')?F:T
	if(sHas(menuAttributes,'countryselector=Y'))switchCountry()
}

function jmSetActiveGroup(){
	var o=theTree,oi=o.items,am=jmGetActiveModel(),gg,gc,ag
	if(am){
		gg=sSub(am.attributes[10],'groups=',';')
		if(gg.split(',').length==1)o.activeGroup=gg
		else{gc=hGetCookie('cargroup');if(sHas(gg,gc))o.activeGroup=gc}
	}
	else{
		ag=jmGetActiveGroup()
		if(ag){
			ag=sSub(ag.attributes[10],'group=',';')
			hSetCookie('cargroup',ag)
			if (ag==E) ag=' ';
			o.activeGroup=ag
		}
	}
}

function jmGetActiveModel(){
	var o=theTree,oi=o.items,oc=jmCarModels(),i,op
	for(i=Z;i<oc.length;i++){op=o.items[oc[i]];if(op.active)return op}
	return N
}

function jmGetActiveGroup(){
	var o=theTree,oi=o.items,p=o.get('CARCHOOSER'),oc,i,op
	oc=oi[oi[p].children[Z]].children
	for(i=Z;i<oc.length;i++){op=oi[oc[i]];if(op.active)return op}
	
	return N
}

function jmCars(){
	var o=theTree,oi=o.items,p=o.get('CARCHOOSER'),oc,i,op,v,mg=showroomsubGUI,mgg,mg2
	o.mode='showroom'
	v=o.getTree(0,N,mg,N,p)
	o.mode=N
	return v
}

function jmCarGroupModels(a,b){
	var o=theTree,oi=o.items,mg=b,v=E,o2,i,p,oop,mgg
	o2=jmCarModels()
	mgg=mg[1].split('::')
	for(i=Z;i<o2.length;i++){
		p=oi[o2[i]]
		oop=p.attributes
		if(sHas(sSub(oop[10],'groups=',';'),a))v+=o.getItem(p,mg,2,E)
	}
	return mgg[0]+v+mgg[3]
}

function jmCarModels(){
	var o=theTree,oi=o.items,p=o.get('CARCHOOSER')
	p=oi[p].children[0];p=oi[p].children[0]
	return oi[p].children
}

function jmCarCombo(){
	var o=theTree,oi=o.items,p=o.get('CARCHOOSER'),v
	p=oi[p].children[0];p=oi[p].children[0]
	v=o.getTree(0,N,COMBO_GUI,N,p)
	return(v)
}

function jmSelect(){var o=D.getElementById('jmCarCombo');if (!framed){location.href=o.value}else{W.parent.location.href=o.value}}

function showMenu(){
	var o=theTree,p=o.get('LEFT')
	ds(o.getTree(Z,N,leftGUI,N,p))
}

function jsTrail(){
	var o=theTree,p,v='',pp,ar=[]
	if(!o.activeItem)return
	p=o.items[o.activeItem]
	if(jsNotInMenu(p))ar.push(replaceValues('<a href="$LINK">$LABEL</a>',p))
	while(p.attributes[3]!='ROOT'){
		p=o.items[p.attributes[3]]
		switch(p.attributes[4]){
			case 'LEFT':break
			case 'BOTTOM':break
			case 'TOP':break
			case 'CARCHOOSER':
				if(ar.length>1 && o.groupLink){
					ar[ar.length-2]=o.groupLink
				}
			break
			default: ar.push(replaceValues('<a href="$LINK">$LABEL</a>',p))
		}
	}
	ar.reverse()
	ds(ar.join(' > '))
}

function showSubMenu(){
	var o=theTree,v
	v='<div><p id="carmenu">'+o.getTree(4,N,submenuGUI)+'</p>'
	v+='<p id="carsubmenu">'+o.getTree(5,N,subsubmenuGUI)+'</p></div>'
	ds(v)
}

function jsNotInMenu(a){return !sHas(sLC(pageName),sLC(a.attributes[5]))}

function sHas(a,b){return a.indexOf(b)>-1}
function sBegins(a,b){return a.indexOf(b)==Z}
function sLC(a){return a.toLowerCase()}
function sSub(a,b,c){var o=a.split(b);return(o.length>1)?o[1].split(c)[Z]:E}
function sReplace(a,b,c){return a.split(b).join(c)}
function hGet(a){return(D.getElementById)?D.getElementById(a):N}
function hSetCookie(a,b,c){var v=a+'='+escape(b)+';path=/',d;if(c){d=new Date();d.setTime(d.getTime()+(c*86400000));v+=';expires='+d.toGMTString()};D.cookie=v}
function hGetCookie(a){return sSub(D.cookie,a+'=',';')}
function hMoveTo(obj,left,top){
	var o=obj.style
}

function pop_glos(a){W.open(a,'popup_window','width=410,height=300,resizable=yes,scrollbars=yes')}
function pfsLaunch(a){
   var v=D.getElementById('pfs_zip'),q=a
   v=v?v.value:'';if(v!='')q+='?searchvalue='+v
   W.open(q, '', 'left=50,top=50,height=500,width=800,menubar=1,location=1,toolbar=1,status=1,resizable=1,scrollbars=1')
}

/* Overlayer - efw update 21/09/2006 */
$=function(a){return document.getElementById(a)}
$px=function(a){return parseInt(a)+'px'}

$effect={
split:function(a,max,time,fn){
	var o=this
	a.style.width=0;a.posX=a.offsetLeft;a.max=max;a.start=o.time();a.end=time
	a.step=function(){
		var t=o.time()-a.start,q,aa=a.style
		if(t>a.end){aa.width=$px(a.max);aa.left=a.posX;o.stop(a);if(fn)fn()}
		else{q=parseInt($effect.fn(t/a.end)*a.max);aa.width=$px(q);aa.left=$px(a.posX+(a.max-q)/2)}
	}
	a.timer=setInterval(a.step,10)
},
time:function(){return new Date().getTime()},
stop:function(a){clearInterval(a.timer);a.timer=null},
fn:function(a){return(0.5-Math.cos(a*Math.PI)/2)}
}

function OverlayObj(){this.movies={}}
p=OverlayObj.prototype

p.showCurtain=function(mode,bg){
	var o=this,os=hGet('overlayer').style
	o.hideElements(mode)
	os.width='100%'
	os.height=hGet('pgCanvas').offsetHeight
	if(D.all)os.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true,sizingMethod=scale src="/Images/back.png")'
	else os.background='url(/Images/back.png)'
	os.display=mode?'block':'none'
}

p.hideElements=function(mode){
	var o=this,oa=D.getElementsByTagName('select'),i,oh=mode?'hidden':'visible'
	for(i=Z;i<oa.length;i++)oa[i].style.visibility=oh
}
p.show=function(fmn){
	var o=this,om=o.movies[fmn],oo=hGet('ovl_flash'),ww,wh,os=oo.style
	W.scrollTo(0,0);o.current=om.name
	if(om.white_background){o.showOvl();return}
	o.showCurtain(om.hide_page);
	if (om.flash_popup){om.width=parseInt(om.width)+2;om.height=parseInt(om.height)+34;om.flashvars+='&sub='+om.file+'&title='+om.title;om.file='Images/flash_popup.swf';om.flash_popup=false;}
	os.width=om.width;os.height=om.height
	if(om.top){os.top=om.top}else{if(D.all)wh=D.body.clientHeight;else wh=W.innerHeight;os.top=(wh-om.height)/2}
	if(om.left){os.left=om.left}else{if(D.all)ww=D.body.clientWidth;else ww=W.innerWidth;os.left=(ww-om.width)/2}
	o.render()
}
p.showOvl=function(){
	var o=this,q=$('overlayer'),qs=q.style,p=$('pgCanvas'),oo=$('ovl_flash').style
	qs.left=6;oo.left=6;qs.top=90;oo.top=90
	qs.width=770;qs.height=$px(p.offsetHeight-90)
	qs.background='#fff';qs.filter='';qs.display='block'
	o.hideElements(T)
	$effect.split(q,770,700,this.render)
}
p.render=function(a){
	var o=OVL,om=o.movies[o.current],oo=hGet('ovl_flash'),v
	v='<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="'+om.width+'" height="'+om.height+'">'
	if(om.flashvars)v+='<param name="flashVars" value="'+om.flashvars+'" />'
	v+='<param name="allowScriptAccess" value="sameDomain" />'
	v+='<param name="movie" value="'+om.file+'" />'
	v+='<param name="quality" value="high" />'
	v+='<param name="bgcolor" value="#ffffff" />'
	v+='<param name="wmode" value="transparent">'
	v+='<embed src="'+om.file+'"'
	if(om.flashvars)v+=' flashVars="'+om.flashvars+'"'
	v+=' quality="high" bgcolor="#ffffff" width="'+om.width+'" height="'+om.height+'" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />'
	v+='</object>'
	oo.style.display='block'
	oo.innerHTML=v
	o.allow_drag=om.allow_drag
	//o.track('WT.cg_n=E_Overlayer&WT.pn='+om.name+'&WT.pc=opened')
}
p.track=function(a){
	var o=this,om=o.movies[o.current]
	if(om.webtrends && W.dcsTrk)dcsTrk('WT.cg_n=E_Overlayer&WT.pc=flash&WT.cg_s='+om.name+'&WT.pn='+a)
}
p.exec=function(command,args,target){
	var o=this,oo=hGet('ovl_flash'),on=o.current,v,om=o.movies[on]
	switch(command){
	case'close':
		oo.innerHTML='&nbsp;'
		oo.style.display='none'
		//o.track('closed')
		o.current=''
		if(om.hide_page)o.showCurtain(F)
		break
	case'jump':
		o.track(args,target)
		D.location.href=args
		break
	case'tag':
		o.track(args)
		break
	case'moveTo':
		v=args.split(',')
		oo.style.left=v[0]
		oo.style.top=v[1]
		break
	case'startDrag':
		mouseXo=mouseX
		mouseYo=mouseY
		overY=parseInt(oo.style.top)
		overX=parseInt(oo.style.left)
		o.overDrag=o.allow_drag
		o.hideElements(o.allow_drag)
		break
	case'stopDrag':
		o.overDrag=F
		o.hideElements(F)
		break
	}
}

OVL=new OverlayObj()

if(!D.all)D.captureEvents(Event.MOUSEMOVE)
D.onmousemove=getMouseXY

var mouseX,mouseY,mouseXo,mouseYo,overX,overY
function getMouseXY(e){
	var o=hGet('ovl_flash')
	if(D.all){
		mouseX=event.clientX+D.body.scrollLeft
		mouseY=event.clientY+D.body.scrollTop
	}
	else{mouseX=e.pageX;mouseY=e.pageY}
	if(mouseX<0)mouseX=0;if(mouseY<0)mouseY=0
	if(OVL.overDrag){
		o.style.top=(overY-(mouseYo-mouseY))+"px"
		o.style.left=(overX-(mouseXo-mouseX))+"px"
	}
	return true
}

function ovl_do(command,args,target){OVL.exec(command,args,target)}
function showOverLayer(fmn){OVL.show(fmn)}

/* open minisites */
function msLaunch(a,b){
	try{window.open(a,'minisite','menubar=0,status=0,scrollbars='+(b?b:0)).focus()}
	catch(e){alert('You have to allow popups to open a minisite.')}
}
/* Flash Detection */

var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function ControlVersion()
{
	var version;var axo;var e;
	try {axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");version = axo.GetVariable("$version");} catch (e) {}
	if (!version){try {axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");version = "WIN 6,0,21,0";axo.AllowScriptAccess = "always";version = axo.GetVariable("$version");} catch (e) {}}
	if (!version){try {axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");version = axo.GetVariable("$version");} catch (e) {}}
	if (!version){try {axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");version = "WIN 3,0,18,0";} catch (e) {}}
	if (!version){try {axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");version = "WIN 2,0,0,11";} catch (e) {version = -1;}}
	return version;
}

function GetSwfVer(){
	var flashVer = -1;
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
			var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;			
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			if ( descArray[3] != "" ) {
				tempArrayMinor = descArray[3].split("r");
			} else {
				tempArrayMinor = descArray[4].split("r");
			}
			var versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
			var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
		}
	}
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer = ControlVersion();
	}	
	return flashVer;
}

function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr = GetSwfVer();
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		if(isIE && isWin && !isOpera) {
			tempArray         = versionStr.split(" "); 	
			tempString        = tempArray[1];			
			versionArray      = tempString.split(",");	
		} else {
			versionArray      = versionStr.split(".");
		}
		var versionMajor      = versionArray[0];
		var versionMinor      = versionArray[1];
		var versionRevision   = versionArray[2];
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionRevision >= parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}

var hasFlash=DetectFlashVer(7, 0, 0);
var doFlashAlert=true;

function ajaxpage(url, containerid){
	var page_request = false
	if (window.XMLHttpRequest){page_request = new XMLHttpRequest()}else if (window.ActiveXObject){try {page_request = new ActiveXObject("Msxml2.XMLHTTP")}catch (e){try{page_request = new ActiveXObject("Microsoft.XMLHTTP")}catch (e){}}
	}else return false;
	page_request.onreadystatechange=function(){loadpage(page_request, containerid)}
	page_request.open('GET', url, true)
	page_request.send(null)
}

function loadpage(page_request, containerid){
	if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))containerid.innerHTML=page_request.responseText
}

function showFlashAlert(){
	if (doFlashAlert){doFlashAlert=false;FlashLayer = document.createElement('div');FlashLayer.className = 'flashalert';ajaxpage('/sys/flash_detection.asp', FlashLayer);document.body.appendChild(FlashLayer);}}

function hideFlashAlert(){FlashLayer.style.display='none'}

/* unobtrusive flash */

SWF={
param:function(a,b){return $tag('param',N,{name:a,value:b})},
get:function(a){
	var o=this,ar=[],v,ve,q
	a.wmode='transparent'
	v={classid:'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000', codebase:'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0'}
	ve={pluginspage:'http://www.macromedia.com/go/getflashplayer',type:'application/x-shockwave-flash'}
	for(q in a){
		switch(q){
		case 'movie':ve.src=a[q];ar.push(o.param('movie',a[q]));break
		case 'id':ve.name=a[q];v[q]=a[q];break
		case 'width':case 'height':ve[q]=a[q];v[q]=a[q];break
		default:ve[q]=a[q];ar.push(o.param(q,a[q]))
		}
	}
	return $tag('object',ar.join(E)+$tag('embed',E,ve),v)
},
write:function(a,b){
	if (hasFlash){
		$get(b).innerHTML='<!-- flash -->'+this.get(a)
		}else{showFlashAlert()}
	}
}


/* Ajax poll */

AjxPoll={
	prepare:function(a){
		var o=this,oo=a.parentNode.parentNode,v,oa
		a.onsubmit=function(){
			v=AjxRemote.post(a.action+'&ajaxid='+o.getAjxId(a),o.getFields(a))
			$fill(oo,v.responseText)
			return F
		}
		oa=$tags(a,'a')
		if(oa.length>0){
			oa=oa[oa.length-1]
			oa.onclick=function(){
				v=AjxRemote.get(oa.href+'&ajaxid='+o.getAjxId(a))
				$fill(oo,v.responseText)
				return F
			}
		}
	},
	getAjxId:function(a){
		var o=$tags(a,'input'),i
		for(i=Z;i<o.length;i++){if(o[i].name=="ajaxid"){return o[i].value}}
		return ""
	},
	getFields:function(a){
		var o=$tags(a,'input'),i,v=[]
		for(i=Z;i<o.length;i++){
			switch(o[i].type){
				case 'radio':if(o[i].checked)v.push($escape(o[i].name)+'='+$escape(o[i].value));break
				case 'hidden':v.push($escape(o[i].name)+'='+$escape(o[i].value));break
			}
		}
		return v.join('&')
	}
}

AjxRemote={_reg:[],
	_request:function(){
		var o=this
		return W.XMLHttpRequest?new XMLHttpRequest():W.ActiveXObject?new ActiveXObject('Microsoft.XMLHTTP'):N
	},
	get:function(a){
		var o=this,r=o._request(),oo
		r.open('GET',a,F)
		r.send(N)
		return r
	},
	post:function(a,b){
		var o=this,r=o._request(),oo
		r.open('POST',a,F)
		r.setRequestHeader('Content-Type','application/x-www-form-urlencoded')
		r.send(b)
		return r
	}
}

Tme={
	openFull:function(lnk,sb,nm){
	var n='no',y='yes',s=screen,sw=s.availWidth-0,sh=s.availHeight-0,l,t
	sb=sb.toString().replace(0,n).replace(1,y)
	l=parseInt((sw-s.availWidth-10)/2);	if(l<0){w=sw-10;l=0;sb=y}
	t=parseInt((sh-s.availHeight-10)/2);if(t<0){h=sh-30;t=0;sb=y}
	window.open(lnk,nm,'resizable=no,scrollbars='+sb+',width='+w+',height='+h+',left='+l+',top='+ t)
	}
}

function $escape(a){return encodeURIComponent(a)}
function $tags(a,b){return a.getElementsByTagName(b)}
function setBox(a,b,c){if(b!=N)$fill($getTag(a,'h4'),b);if(c!=N)$fill($getTag(a,'div'),c)}
function $getTag(a,b){return $tags(a,b)[0]}
function $fill(a,b){a.innerHTML=b}
function $get(a){return D.getElementById(a)}
function $tag(a,b,c){var v=['<'+a],q;if(c){for(q in c)v.push(S+q+'="'+c[q]+'"')};v.push((b!=N)?'>'+b+'</'+a+'>':' />');return v.join(E)}

/* carconfig */
function open_fullscreen(lnk,wd,ht,wn,parms){
	var strSb='scrollbars', strSt='status', strRsz='resizable', n='no',y='yes',s=screen,sw=s.availWidth-0,sh=s.availHeight-0,l,t,wp,sb='no'
	
	if(parms){wp = parms;} 
	else if (parms == undefined) {wp = strRsz+'='+n+', '+strSb+'='+n;}
	l=parseInt((sw-s.availWidth-10)/2);	if(l<0){w=sw-10;l=0;sb=y}
	t=parseInt((sh-s.availHeight-10)/2);if(t<0){h=sh-35;t=0;sb=y}
	if (sb==y){
	  if(parms.indexOf(strSb)!=-1){wp=wp.replace((strSb+'='+y),(strSb+'='+y))}
	  else {wp+= ', '+strSb+'='+y}}

	if (wp.indexOf(strRsz+'='+y) !=-1){wp+=','+strSt+'='+y;h=h-26}
        else{wp+=','+strSt+'='+n}

	window.open(lnk,wn,wp+',width='+w+',height='+h+',left='+l+',top='+t)
}
