

CMS = new Object();
CMS.use_local = (typeof(JSON) == 'object' && typeof(localStorage) == 'object')? 1: 0;
CMS.CSS = [];
CMS.pLD = [];
CMS.rowMapKey = null;
CMS.includes = [];
CMS.includes['js'] = [];
CMS.includes['css'] = [];
CMS.INLINE_SCRIPTS = '';

STACKS = [];
PLI=[];

function distro_error(val){
	if(IS_DISTRO){
		alert("distro says:"+val);
	}
}

function mapsChange(iID,rIND,LsID){
	var lat = document.getElementById('lat'+LsID).value;
	var lng = document.getElementById('lng'+LsID).value;
	var center = lat+","+lng;

	var obj = {};
	obj.options = [];
	obj.options[0] = {};
	obj.options[0].value = center;
	obj.selectedIndex = 0;
	
	mapChange(2,1,rIND,obj);
	mapChange(3,2,rIND,obj);
}

function mapChange(mode,iID,rIND,obj){
	var modes = ['zoom','heading','center','location'];
	var map = document.getElementById('map-'+rIND+'-'+iID);
	var split = map.src.split("&");
	var newSrc = split[0];
	var val = obj.options[obj.selectedIndex].value;
	var key = modes[mode];
	for(var x in split){
		if(x == 0){continue;}
		var parts = split[x].split('=');
		if(parts[0] == key){
			newSrc += '&'+parts[0] + '=' + val;
		}else{
			newSrc += '&'+split[x];
		}
	}
	map.src = newSrc;
}

function mapsSave(iID,rIND,LsID){
	var rec_id = document.getElementById('record_id').value;
	top.document.getElementById('child-address-0-'+rec_id+'-lat').value = document.getElementById('lat'+LsID).value;
	top.document.getElementById('child-address-0-'+rec_id+'-long').value = document.getElementById('lng'+LsID).value;
	top.closeWindow(" ");
}

function social_link(a,b,c){

	// alert("a("+a+") b("+b+") c("+c+")");

	window.open(STACKS["SOCIAL"][a][b][c][0]);
}

function clear_login(obj,val){
	if(obj.value == val){obj.value="";}
}

function getScrollY(){
	return window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop;
}

function getViewportWidth(){
	return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
}

function getViewportHeight(){
	return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
}

function imgLoad(obj){
	obj.style.visibility = 'visible';
	obj.parentNode.style.backgroundImage = 'none';
}

var offsets = new Object();
offsets.x=-60;
offsets.y=20;
var ie=document.all
var ns6=document.getElementById && !document.all
var enabletip=false
var relative_to_object = 0;
var tipobjInd = 0;
var tipobjMode = 0;
var tipobj=[];

function initHelp(){
	if(ie||ns6){
		tipobj[0]=document.all?document.all["dhtmltooltip"]:document.getElementById?document.getElementById("dhtmltooltip"):"";
		tipobj[1]=document.all?document.all["helptip"]:document.getElementById?document.getElementById("helptip"):"";
	}
}

function getOffset2(what, offsettype){
	var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
	var parentEl=what.offsetParent;
	while (parentEl!=null){
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}

function imgSwap(obj,target,scale){
	var img = document.getElementById(target);
	var src = obj.src;
	var ind = src.indexOf("?");
	if(ind > 0){
		src = src.substr(0,ind);	
	}
	src += "?w=" + scale;
	img.src = src;
}

function ddrivetip(thisObj,t,c,w,x2,y2,i,obj){
	tipobjMode=i;
	if(x2){offsets.x=x2;}
	if(y2){offsets.y=y2;}
	if(!(ns6||ie)){return;}
	if(typeof w!="undefined"&&w){tipobj[i].style.width=w+"px";}
	if(typeof c!="undefined"&&c!=""){tipobj[i].style.backgroundColor=c;}
	if(ARW != null && ARW[0]){
		var id = thisObj.id.split("-");
		tipobjInd = id[1];
		if(ARW[id[1]]){
			var content = ARW[id[1]].title;
		}else{
			var content = t;		
		}
	}else{
		var content = t;
	}

	if(tipobjMode==0){
		tipobj[i].innerHTML=content;
	}else{
		tipobj[i].childNodes[3].innerHTML=content;
	}

	relative_to_object=obj;
	enabletip=true;
	return false;
}

function positiontip(e){
	i = tipobjMode;
	if(!enabletip){return}
	var B=(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;
	var curX=(ns6)?e.pageX:event.x+B.scrollLeft;
	var curY=(ns6)?e.pageY:event.y+B.scrollTop;
	var re=ie&&!window.opera? B.clientWidth-event.clientX-offsets.x:window.innerWidth-e.clientX-offsets.x-20
	var be=ie&&!window.opera? B.clientHeight-event.clientY-offsets.y:window.innerHeight-e.clientY-offsets.y-20
	var le=(offsets.x<0)? offsets.x*(-1):-1000;
	if(re<tipobj[i].offsetWidth){
		tipobj[i].style.left=ie? B.scrollLeft+event.clientX-tipobj[i].offsetWidth+"px":window.pageXOffset+e.clientX-tipobj[i].offsetWidth+"px";
	}else if(curX<le){
		tipobj[i].style.left="5px";
	}else{
		tipobj[i].style.left=curX+offsets.x+"px";
	}

	if(typeof(relative_to_object) == 'object'){ // this was done to patch ishop at home calendar rollovers...
		var offTop = getOffset2(relative_to_object,"top");
		var offLeft = getOffset2(relative_to_object,"left");

		//document.getElementById('dashboard_message').innerHTML = offTop + " - " + offLeft;

		if(1==1){
			tipobj[i].style.position = 'absolute';
			tipobj[i].style.top=offTop+50+"px";				
			tipobj[i].style.left=(offLeft-50)+"px";		
			if(re<tipobj[i].offsetWidth){
				tipobj[i].style.left=ie? B.scrollLeft+event.clientX-tipobj[i].offsetWidth+"px":window.pageXOffset+e.clientX-tipobj[i].offsetWidth+"px";
			}else if(curX<le){
				tipobj[i].style.left="5px";
			}
		}else{
			tipobj[i].style.top=offTop+offsets.y+50+"px";
		}		
	}else{
		tipobj[i].style.top=curY+offsets.y+"px"		
	}

	//	tipobj[i].style.top=curY+offsets.y+"px"
	tipobj[i].style.visibility="visible";
	//	alert(tipobj[i].style.top);
	//	alert(tipobj[i].style.left);
}

function hideddrivetip(i){
	if(ns6||ie){
		tipobjMode=i;
		enabletip=false;
		tipobj[i].style.visibility="hidden";
		tipobj[i].style.left="-1000px";
		tipobj[i].style.backgroundColor='';
		tipobj[i].style.width='';
	}
}

document.onmousemove=positiontip;

if(typeof(XMLHttpRequest) == "undefined"){
  XMLHttpRequest = function() {
    try{return new ActiveXObject("Msxml2.XMLHTTP.6.0");}catch(e){}
    try{return new ActiveXObject("Msxml2.XMLHTTP.3.0");}catch(e){}
    try{return new ActiveXObject("Msxml2.XMLHTTP");}catch(e){}
    try{return new ActiveXObject("Microsoft.XMLHTTP");}catch(e){}
  };
}

CART = new Object();

function slideCart(dir){
	CART.ramp++;
	var unit = CART.ramp + CART.ramp;
	if((CART.cartSlideLeft - unit) < 1){
		unit = CART.cartSlideLeft;
	}
	CART.cartSlideLeft = (CART.cartSlideLeft - unit);
	var leftOff = parseInt(CART.cartInner.style.left);
	CART.cartInner.style.left = (dir == 'R') ?(leftOff + unit) + 'px': (leftOff - unit) + 'px';
	if(CART.cartSlideLeft < 1){
		window.clearInterval(CART.interval);
		var string = (dir == 'R')? ['S','H','O','W','&nbsp;','C','A','R','T']: ['H','I','D','E','&nbsp;','C','A','R','T'];
		for(x in CART.cartButton.childNodes){
			CART.cartButton.childNodes[x].innerHTML = string[x];
		}
		if(dir == 'R'){CART.cart.style.zIndex = 1;}
		try{
			var req = new XMLHttpRequest();
			var command = (dir == 'R')? 'hide': 'show';
			req.open("GET",'index.php?trans=crt|'+command);
			req.send("");
		}catch(e){}
	}
}

function hide_cart(obj,w,h){
	window.clearInterval(CART.interval);
	CART.cart = document.getElementById("cartCon");
	CART.cartInner = document.getElementById("cartInnerCon");
	CART.cartButton = document.getElementById("cartButH");
	CART.leftOff = getOffset2(CART.cart,'left');
	CART.leftOffInner = getOffset2(CART.cartInner,'left');
	CART.cartSlideLeft = w;
	CART.ramp = 3;
	var dir = (CART.leftOff == CART.leftOffInner)? 'R': 'L';
	if(dir == 'L'){CART.cart.style.zIndex = 40;}
	CART.interval = window.setInterval('slideCart("'+dir+'");',5);
}

function setCartStyle(){
	var bottomMarker = document.getElementById('cartStretchMarker');
	var offSetT = getOffset2(bottomMarker,'top');
	if(offSetT > (jH-250)){
		document.getElementById('searchCon').style.position = 'absolute';
		document.getElementById('cartCon').style.position = 'absolute';		
	}
	return false;
}


// COMPATIBILITY IS AN ISSUE... I AM NOT MOVING OVER THE FRAME CONTROLLER UNTIL IT'S BETTER TESTED...

function framePrint(id){
	var item = document.getElementById(id);

	top[id].focus();
	top[id].print();	

	//item.focus();
	//item.print();
}


TICKERS=[];

function initTicker(i){
	var id = 'mMCPID-'+i+'-47';
	var ticker = document.getElementById(id);
	if(ticker.id == id){
		TICKERS[i]=[];
		TICKERS[i][0]=1;
		TICKERS[i][1]=ticker;
		setTimeout("moveTicker("+i+");",50);
	}
}

function switchTicker(i,status){
	try{
		TICKERS[i][0] = status;
	}catch(e){}
}

function moveTicker(i){
	if(TICKERS[i][0] == 1){
		ticker = TICKERS[i][1];
		var right_to_left = false;
		ticker.scrollLeft += (right_to_left)? -1: 1;
		if(right_to_left && ticker.scrollLeft <= 0){
			ticker.scrollLeft = ticker.scrollWidth - ticker.offsetWidth;
		}else if(!right_to_left && (ticker.scrollLeft >= (ticker.scrollWidth - ticker.offsetWidth))){
			ticker.scrollLeft = 0;
		}
	}
	setTimeout("moveTicker("+i+");",50);
}



function initSearch(){

	try{var s = document.getElementById("search"); if(s.value.replace(/^\s+|\s+$/g,"")=="" && jW > 1000 && ((document.documentElement.scrollTop || window.pageYOffset || 0) < 50)){s.focus();}}catch(e){}

}






// THESE ARE NOW DUPLICATED IN THE MAIN CONTROLLER

var cal_only = 0;
var is_nav = 0;
var Events = [];

function set_day(day){

	if(cal_only==1){
		mt = document.getElementById('month');
		yr = document.getElementById('year');
		deptCond = window.opener.document.getElementById('deptDateCondensed');
		deptCond.value = yr.value + '/' + mt.value + '/' + day;
		window.close();
	}else if(is_nav!=1){
		clearTravelContent();
	}else{ // is_nav must equal one
		document.getElementById('mini_cal').submit();
	}

	return true;
}

function set_cal(y,m,d){
	if(m != 0){
		var mS = document.getElementById('month');
		var yS = document.getElementById('year');
		var mI = mS.selectedIndex;
		var yI = yS.selectedIndex;
		var yL = yS.options.length-1;
		var mV = mI + m;
		var yV = yI + y;
		if(mV > 11){
			mV = 0;
			yV++;
		}else if(mV < 0){
			mV = 11;
			yV--;
		}
		if(yV < 0){
			yV = yL;
		}else if(yV > yL){
			yV = 0;
		}
		mS.selectedIndex = mV;
		yS.selectedIndex = yV;
	}
	set_month();
	return false;
}


function set_year(eventform){
	populateCalEvents(0,1,eventform);
}

function get_mycalFilter(){
	try{
		var MapKey = document.getElementById('mycal_filter').value;
	}catch(e){
		var MapKey = 'Events';
	}
	return MapKey;
}

function populateCalEvents(dir,update_only,eventform){
	// don't pass the month get it from the select box
	var yearId = '';
	var monthId = '';
	if(eventform == 1){
		var yearId = 'Submit';
		var monthId = 'Submit';		
		var y=document.getElementById('year'+yearId);
		var m=document.getElementById('month'+monthId);	
	}else{
		var y=document.getElementById('year');
		var m=document.getElementById('month');	
		
	}

	var mth=m.options[m.selectedIndex].value;
	var yr=y.options[y.selectedIndex].value;
	var MapKey = get_mycalFilter();
	if(!update_only){
		if(dir){//add
			mth++;
			if(mth>12){mth=1;yr++;}
		}else{
			mth--;
			if(mth==0){mth=12;yr--;}
		}
	}

	pm=mth;
	if(mth<10){mth="0"+mth;}
	ind = yr + "" + mth;
	p=-1;

	if(is_nav==1){
		for(x=0;x< Events[MapKey].length;x++){
			if(Events[MapKey][x][0]==ind){
				p=x;break;
			}
		}
		eventArr=(p!=-1)? Events[MapKey][p][1]: [];
		stampArr=(p!=-1)? Events[MapKey][p][2]: [];
		write_month(yr,mth,0,eventArr,stampArr);
	}
	
	// set the month and year box ... if your in event submit mode you have two of them to set...
	for(x=0;x < m.options.length;x++){
		if(m.options[x].value == pm){m.selectedIndex=x;}
	}
	for(x=0;x < y.options.length;x++){
		if(y.options[x].value == yr){y.selectedIndex=x;}
	}	

	if(eventform == 1){
		var y=document.getElementById('year');
		var m=document.getElementById('month');
		for(x=0;x < m.options.length;x++){
			if(m.options[x].value == pm){m.selectedIndex=x;}
		}
		for(x=0;x < y.options.length;x++){
			if(y.options[x].value == yr){y.selectedIndex=x;}
		}			
	}else{
		try{
			var y=document.getElementById('yearSubmit');
			var m=document.getElementById('monthSubmit');
			for(x=0;x < m.options.length;x++){
				if(m.options[x].value == pm){m.selectedIndex=x;}
			}
			for(x=0;x < y.options.length;x++){
				if(y.options[x].value == yr){y.selectedIndex=x;}
			}			
		}catch(e){
			//alert('failed');		
		}		
	}


	if(is_nav!=1){
		set_month(1);
	}

}

function set_month(update_only,is_event_form){
	if(cal_only==1 || is_nav==1){
		populateCalEvents(0,1,is_event_form);
		return true;
		//m=document.getElementById('mini_cal');m.submit();return true;
	}
	var m=document.getElementById('month');
	var year=document.getElementById('year');
	var mth = m.value;
	if(mth.length==1){mth="0"+mth;}
	var yr=year.value;
	var highlight = [];
	var dept=(default_dept=='')?[document.getElementById('leavingFrom').value]:default_dept.split('|');
	var dest=document.getElementById('goingTo');
	DEST=(dest==null)? default_dest.split("|") : dest.value.split("|");
	s_i= yr+""+mth;
	var f = -1;
	var cL=0;
	var cR=0;
	for(d in DEST){
		for(w=0;w < dept.length;w++){
			for(x=0;x < Dept[pcfl][dept[w]].length;x++){
				if(Dept[pcfl][dept[w]][x][0] == DEST[d]){
					for(y=0;y < Dept[pcfl][dept[w]][x][4][0].length;y++){
						if(Dept[pcfl][dept[w]][x][4][0][y] == s_i){
							for(z in Dept[pcfl][dept[w]][x][4][1][y]){						
								highlight.push(Dept[pcfl][dept[w]][x][4][1][y][z]);
							}
							break;
						}
					}
					if(cL && cL > Dept[pcfl][dept[w]][x][4][2][0] || !cL){cL=Dept[pcfl][dept[w]][x][4][2][0];}
					if(cR && cR < Dept[pcfl][dept[w]][x][4][2][1] || !cR){cR=Dept[pcfl][dept[w]][x][4][2][1];}
					break;
				}
			}
		}
	}
	aR=document.getElementById('nav-month-right');
	aL=document.getElementById('nav-month-left');
	aL.style.display=(cL >= s_i || dest.value == 0)?'none':'inline';
	aR.style.display=(cR <= s_i || dest.value == 0)?'none':'inline';
	m.value = parseFloat(mth);
	year.value = yr;
	write_month(yr,mth,'POST',highlight);
	return true;
}

function isLeap(year){
	return ((year%400==0)||((year%4==0)&&(year%100!=0)))? 1:0;
}

Date.prototype.daysInMonth = function () {
   return new Date(this.getFullYear(),this.getMonth()+1,0).getDate();
}

// 1292821200 - 1292832000
// http://www.sitebyjames.com/distro/distros/source/index.php?page=mycal&pane=day_view&rec_id=1292832000&page_only=1

TIMEZONE = 28800; // PST

function write_month(yr,mth,mode,eventArr,stampArr){

	var page_only = (top.location.href.indexOf('page_only=1') > 0)? 1: 0;
	var day_href = 'index.php?page=mycal&pane=day_view&rec_id=';
	var d = new Date();
	var nD = d.getUTCDate(); // may need timezone adjustments...
	var nY = d.getFullYear();
	var nM = d.getMonth()+1;

	var myDate = new Date();
	myDate.setFullYear(yr,mth-1,1);

	var theFirst = myDate.getDay();
	ML = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	dayMax = ((mth-1)==1 && isLeap(yr))? ML[mth-1]+1: ML[mth-1];

	page_only = (page_only)? '&page_only=1': '';

	day=0;
	var grid = [];
	for(z = 1; z < 43; z++){
		c=document.getElementById('cal-'+z);
		c.className = "empty_day_cell";
		c.innerHTML = '';
		if(z > theFirst && day < dayMax){
			day++;
			c.className = (yr == nY && mth == nM && day == nD)? "today_cell": "day_cell";
			var href = day_href + Date.UTC(yr,mth-1,day,0,0,TIMEZONE).toString().substring(0,10);
			c.innerHTML = '<span class="title_txt"><a href="'+href+''+page_only+'">'+day+'</a></span>';
			grid[day] = z;
		}
	}

	for(x in eventArr){
		if(typeof(eventArr[x]) !== 'number'){
			continue;
		}
		var day = eventArr[x];
		var stamp = stampArr[x];
		var z = grid[day];
		c = document.getElementById('cal-'+z);
		c.className = (yr == nY && mth == nM && day == nD)? "today_cell": "travel_cell";
		if(mode == 'POST'){
			c.innerHTML = "<input class='day_cell_input' type='submit' name='day' onclick='set_day("+day+");' value='"+day+"' />";
		}else{
			var href = day_href + Date.UTC(yr,mth-1,day,0,0,TIMEZONE).toString().substring(0,10);
			c.innerHTML = '<span class="title_txt"><a href="'+href+''+page_only+'">'+day+'</a></span>';
		}
	}

}

function get_mini_cal(){
	if(document.getElementById){
		dept = document.getElementById('leavingFrom');
		if(default_dest!=''){
			destination = default_dest;
		}else{
			dest = document.getElementById('goingTo');
			destination = dest.value;
		}
		if(pcfl=='pc'){
			pack = document.getElementById('package_code');
		}else{
			pack = document.getElementById('flight_return');
		}
		if(!(dept.value  == '' || dept.value == 0) && !(destination == '' || destination == 0)){
			DeptDest = '&dept='+dept.value+'&dest='+destination+'&pcfl='+pcfl+'&pack='+pack.value;
		}else{
			DeptDest = '&dept=all&dest=all';
		}
	}
	window.open('index.php?page=mini_calendar'+DeptDest,'mini_cal', 'toolbar=no,width=250,height=200');
}

function submitMonthYear() {
	document.monthYear.method = "post";
	document.monthYear.action = "index.php?month=" + document.monthYear.month.value + "&year=" + document.monthYear.year.value;
	document.monthYear.submit();
}

function postMessage(day, month, year) {
	var month = document.getElementById('month').value;
	var year = document.getElementById('year').value;	
	try{
		var day = document.getElementById('day').value;			
	}catch(e){
		var day = document.getElementById('today').value;
	}
	eval("page" + day + " = window.open('index.php?page=calendar&mode=post&d=" + day + "&m=" + month + "&y=" + year + "', 'postScreen', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=340,height=400');");
}

function openPosting(pId){
	eval("page" + pId + " = window.open('index.php?page=calendar&mode=display&id=" + pId + "', 'mssgDisplay', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=340,height=400');");
}

function editPosting(pId){
	eval("page" + pId + " = window.open('index.php?page=calendar&mode=eventform&id=" + pId + "', 'mssgDisplay', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=340,height=400');");
}

function editReminder(pId){ // took this out for now...
	var MapKey = get_mycalFilter();
	eval("page" + pId + " = window.open('index.php?page=calendar&filter="+MapKey+"&mode=reminder&id=" + pId + "', 'mssgDisplay', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=340,height=400');");
}

//function deleteConfirm(eid,day,get_str){
//	var msg = "Are you Sure?";
//	var get_str = (get_str != 'undefined')? get_str: '';
//	y=document.getElementById('year');
//	m=document.getElementById('month');
//	mth=m.options[m.selectedIndex].value;
//	yr=y.options[y.selectedIndex].value;
//	if(confirm(msg)){
//		window.location = "index.php?"+get_str+"&mode=eventsubmit&flag=delete&id=" + eid + "&month="+mth+"&year="+yr+"&day="+day;
//	}else{
//		return;
//	}
//}

function getDates(){ //v3.0
	formDept = document.getElementById('leavingFrom');
	formDest = document.getElementById('goingTo');
	formOpt = document.getElementById('type_opt');
	formDur = document.getElementById('duration');
	dept = formDept.options[formDept.selectedIndex].value;
	if(formDest.options){
		dest = formDest.options[formDest.selectedIndex].value;
	}else{
		alert('Has No Options');
		dest = formDest.value;
	}
	if(formOpt.options){
		opt = formOpt.options[formOpt.selectedIndex].value;
		ro=1;
	}else{
		opt='';
		if(formOpt.checked){
			ro=formDur.value;
			formDur.style.visibility='visible';
		}else{
			ro='0';
			formDur.style.visibility='hidden';
		}
	}
}

var cssdropdown={aa:250,ab:false,ac:1,dmo:null,ie:document.all,ff:document.getElementById&&!document.all,st:undefined,bc:0,g:function(w,ot){var to=(ot=="left")?w.offsetLeft:w.offsetTop;
var p=w.offsetParent;return to=(ot=="left")? to+p.offsetLeft:to+p.offsetTop;},se:function(){if(this.bc<parseInt(this.dmo.offsetHeight)){this.bc+=10+(this.bc/10);
this.dmo.style.clip="rect(0 auto "+this.bc+"px 0)";}else{return;
}this.st=setTimeout("cssdropdown.se()",10);},sh:function(obj,e){if(this.ie||this.ff){this.dmo.style.left=this.dmo.style.top="-500px"}
if(e.type=="click"&&obj.visibility==hidden||e.type=="mouseover"){if(this.ac==1){if(typeof this.st!="undefined"){clearTimeout(this.st);}obj.clip="rect(0 auto 0 0)";
this.bc=0;this.se();}obj.visibility="visible";
}else if(e.type=="click"){obj.visibility="hidden";
}else if(e.type=="focus"){obj.visibility="visible";
}},iec:function(){return(document.cm&&document.cm!="BackCompat")?document.documentElement:document.body;
},ce:function(obj,w){var ed=0;
if(w=="rightedge"){var we=this.ie&&!window.opera?this.iec().scrollLeft+this.iec().clientWidth-15:window.pageXOffset+window.innerWidth-15;
this.dmo.cm=this.dmo.offsetWidth;
if (we-this.dmo.x < this.dmo.cm){ed=this.dmo.cm-obj.offsetWidth;
}}else{var te=this.ie && !window.opera? this.iec().scrollTop:window.pageYOffset;
var we=this.ie && !window.opera? this.iec().scrollTop+this.iec().clientHeight-15:window.pageYOffset+window.innerHeight-18;
this.dmo.cm=this.dmo.offsetHeight;
if (we-this.dmo.y < this.dmo.cm){ed=this.dmo.cm+obj.offsetHeight;
if((this.dmo.y-te)<this.dmo.cm);
ed=this.dmo.y+obj.offsetHeight-te;
}}return ed;
},di:function(obj,e,did){if(this.dmo!=null){this.dmo.style.visibility="hidden";
}this.ch();
if(this.ie||this.ff){obj.onmouseout=function(){cssdropdown.dhm()};

this.dmo=document.getElementById(did);
obj.onmousedown=function(){setTimeout("cssdropdown.dmo.style.visibility='hidden';",50);return !cssdropdown.ab;};

this.dmo.onmouseover=function(){cssdropdown.ch()};
this.dmo.onmouseout=function(e){cssdropdown.dh(e)};
this.dmo.onclick=function(){cssdropdown.dhm()};
this.sh(this.dmo.style, e);
this.dmo.x=this.g(obj.parentNode,"left");
this.dmo.y=(typeof DDMFIXEDOFFSETHEIGHT == "undefined")?this.g(obj,"top"):this.g(obj.parentNode.parentNode,"top");
this.dmo.style.left=this.dmo.x-this.ce(obj,"rightedge")+"px";
var chromemenuT = document.getElementById("chromemenu");
var bottomEdgeTest = this.ce(obj,"bottomedge");
var topPos = (typeof DDMFIXEDTOP == "undefined")? chromemenuT.offsetTop:DDMFIXEDTOP;
var offSetHeight = (typeof DDMFIXEDOFFSETHEIGHT == "undefined")? obj.offsetHeight: DDMFIXEDOFFSETHEIGHT;
this.dmo.style.top=topPos+obj.offsetTop+offSetHeight+1+"px";
/* PUT BOTTOM TEST <--- BACK FOR SNAP TO TOP if(bottomEdgeTest != 0){this.dmo.style.left = parseInt(this.dmo.style.left) + 150 + "px";}*/
}},cff:function(a,b){while(b.parentNode){if((b=b.parentNode)==a){return true;
}}return false;
},dh:function(e){var evtobj=window.event?window.event:e;
if(this.ie&&!this.dmo.contains(evtobj.toElement)){this.dhm();
}else if (this.ff&&e.currentTarget!= evtobj.relatedTarget&& !this.cff(evtobj.currentTarget,evtobj.relatedTarget)){this.dhm();
}},dhm:function(){this.delayhide=setTimeout("cssdropdown.dmo.style.visibility='hidden';",this.aa);
},ch:function(){if (this.delayhide!="undefined"){clearTimeout(this.delayhide);
}},startchrome:function(){for(var ids=0;
ids<arguments.length;
ids++){var mi=document.getElementById(arguments[ids]).getElementsByTagName("a");
for(var i=0;i<mi.length; i++){if(mi[i].getAttribute("rel")){
mi[i].onfocus=function(e){var event=typeof e!="undefined"?e:window.event;
cssdropdown.di(this,event,this.getAttribute("rel"));
}
mi[i].onmouseover=function(e){var event=typeof e!="undefined"?e:window.event;
cssdropdown.di(this,event,this.getAttribute("rel"));
}}}}}};


function ddmsClick(obj){
	var con = obj.parentNode.parentNode;
	var opts = con.childNodes[1];
	opts.style.display = (opts.style.display == 'block') ? 'none':'block';
}

function ddmsCC(obj){
	var con = obj.parentNode.parentNode;
	var opts = con.childNodes[1];
	var choice = con.childNodes[0].childNodes[0];
	var hidden = con.childNodes[0].childNodes[2];

	opts.style.display = 'none';

	choice.innerHTML = obj.innerHTML;
	choice.value = obj.value;
	hidden.value = obj.value;
}












var INP_BORDER_NORMAL = "solid 2px #CCC";var INP_BORDER_ERROR = "solid 2px #F00";var INP_BACKGROUND_NORMAL = "#fff";var INP_BACKGROUND_ERROR = "#BFD3E6";var IS_DISTRO = false;function inpblur(o){o.style.background=INP_BACKGROUND_NORMAL;}function inpfocus(o){o.style.background=INP_BACKGROUND_ERROR;}
