

var mrexcited = null;
var mrexcited2 = null;
var TimeoutDelay = 20; // delay between mouse leaving item and menu disappearing
var timer = 0; 
var timer2 = 0; 


function nav_over(d) {
	if (d.excited) return;
	if (mrexcited && d != mrexcited) _hide();
	var img = d.theimage;//d.firstChild.firstChild;
	if (!img) {	
		var a;
		for (var i = 0; a = d.childNodes[i], a.nodeType != 1; i++);
		for (var i = 0; img = a.childNodes[i], img.nodeType != 1; i++);
		d.theimage = img;
	}
	if (!img.overlight) {
		var u = new iurl(img.src);
		img.overlight = u.path + u.name+ '_o' + u.ext;
	}
	d.style.zIndex = 100;
	img.osrc = img.src;
	img.src =  img.overlight;
}
function nav_out(d) {
	var img = d.theimage; //firstChild.firstChild;
	img.src = img.osrc;
	d.style.zIndex = 0;
}

function menu_over(d) {
	d.hold = true;
	if (d.excited) return;
	if (mrexcited && d != mrexcited) _hide();
	var img = d.theimage; 
	if (!img) {	
	var a;
		for (var i = 0; a = d.childNodes[i], (a.nodeType != 1 && a.nodeName != 'a'); i++);
		for (var i = 0; img = a.childNodes[i], (img.nodeType != 1 && img.nodeName != 'img'); i++);
		d.theimage = img;
	}

	if (!img.overlight) {
		var u = new iurl(img.src);
		img.overlight = u.path + u.name+ '_o' + u.ext;
	}
	d.style.zIndex = 100;
	img.osrc = img.src;
	img.src =  img.overlight;
	var sub = d.bone;
	// find next node that ain't a text node
	if (!sub) {
	for (var i = 0; i < d.childNodes.length; i++) {
		if (d.childNodes[i].nodeName.toLowerCase() == 'div') {
			sub = d.childNodes[i];
			break;
		}
	}
	sub.dog = d;
	d.bone = sub;
	}
	sub.style.display = 'block';
	d.hold = true;
	d.excited = true;
	mrexcited = d;
}

function smenu_over(d) {
	d.hold = true;
	if (d.excited) return;
	if (mrexcited2 && d != mrexcited2) _hide2();
	d.style.zIndex = 100;
	var sub = d.bone;
	if (!sub) {
		for (var i = 0; i < d.childNodes.length; i++) {
			if (d.childNodes[i].nodeName.toLowerCase() == 'div') {
				sub = d.childNodes[i];
				break;
			}
		}
		d.bone = sub;
		sub.dog = d;
	}
	sub.style.display = 'block';
	d.hold = true;
	d.excited = true;
	mrexcited2 = d;
}
function smenu_out(d) {
	mrexcited2 = d;
	d.hold = false;
	_set2();
}

function menu_out(d) {
	mrexcited = d;
	d.hold = false;
	_set();
}

function snav_in(s) {
	_unset();
	s.dog.hold = true;
}

function snav_out(s) {
	s.dog.hold = false;
	_set();
}


function _set() {
	clearTimeout(timer);
	timer = setTimeout('_hide()', TimeoutDelay);
}

function _unset(){
	clearTimeout(timer);
}

function _hide() {
	d = mrexcited;
	if (d.hold) return;
	d.bone.style.display = 'none';
	var img = d.theimage; //firstChild.firstChild;
	img.src = img.osrc;
	d.style.zIndex = 0;
	d.excited = false;
}
function _set2() {
	clearTimeout(timer2);
	timer2 = setTimeout('_hide2()', TimeoutDelay);
}

function _unset2(){
	clearTimeout(timer2);
}

function _hide2() {
	d = mrexcited2;
	if (d.hold) return;
	d.bone.style.display = 'none';
	d.style.zIndex = 0;
	d.excited = false;
}


function iurl(s) {
	re = /http:\/\/([a-z0-9\:\.\-]+)\/(.+)/i;
	a = re.exec(s);
	this.host = a[1];
	p= a[2];
	re = /([a-z0-9_\/]+)\/([a-z0-9_]+)(\.(gif|jpg))/i;
	a = re.exec(p);
	this.name = a[2];
	this.file =a[2] + a[3];
	this.ext = a[3];
	this.path = '/' + a[1] + '/';
	re = /(nav\d\d_[a-z]+)(_(s|o))?$/i; 
	a = re.exec(this.name);
	this.name = a[1];
}

function gebi(i) { 
	return  document.getElementById(i); 
}

/* except this, not by me, by them macromedia folks. thanks guys. */
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}


function popup(u, h) {
	if (!h) h = 400;
	window.open(u, 'dandad_popup', "width=660,height="+h+",toolbar=no,statusbar=no,scrollbars=yes");
}


MM_preloadImages('/i/nav01_news.gif', '/i/nav02_about.gif', '/i/nav03_congress.gif', '/i/nav04_awards.gif', '/i/nav05_education.gif', '/i/nav06_development.gif', '/i/nav07_membership.gif', '/i/nav06_inspi', '/i/nav08_buy.gif', '/i/nav09_talentpool.gif');

// ========= 


var events = new Array();
var mns = new Array('January','Febuary','March','April','May','June','July','August','September','October','November','December');
var dns = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
function register_event(id, sdate, edate, type) {
	//alert(id);
	events[events.length] = new Event(id, sdate, edate, type);
}

function search_events() {
	var out = gebi('results');
	
	var d = p_d();
	if (d != '-1') {
		d = g_d(d).valueOf();
	}
	var t = p_t();
	var r = new Array();
	var dd = new Diy(p_d()); 
	var tt = new Tipe(t);
	var s = '<b>You searched for:<\/b> ' + dd.fd + ', Event type: ' + tt.fd;
	for (i = 0; i < events.length; i++) {
		if ((d == '-1' || (events[i].time <= d && events[i].etime >= d)) && (t == '-1' || events[i].type == t)) r[r.length] = events[i];
	}
	if (r.length > 0) {
		var hd = -1;
		r.sort(e_compare);
		for (i = 0; i < r.length; i++) {
			s += '<div style="margin-top:25px;">';
			if (r[i].time != hd) {
				hd = r[i].time;
				s += '<h4 class="congress">' + r[i].fd() + '<\/h4>';
			}
			s += gebi(r[i].id).innerHTML;
			s += '<\/div>';
		}
	} else {
		s += '<div style="margin-top:25px">Sorry, no events were found matching that critera<\/div>';
	}
	out.innerHTML = s;
}

function p_t() {
	return p_s('select_type');
}
function p_d() {
	return p_s('select_date');
}
function p_s(id) {
	var s = gebi(id);
	return s.options[s.selectedIndex].value;
}

function g_d(s) {
	var p = s.split('-');
	var a = new Date(p[0], p[1]-1, p[2], 12, 0, 0);
	return a;
}
function Diy(s) {
	if (s == '-1') {
		this.fd = 'Any day';
	} else {
		this.a = g_d(s);
		this.fd = this.a.getUTCDate()+' '+mns[this.a.getMonth()];
	}
}

function Tipe(s) {
	if (s == '-1') {
		this.fd = 'all';
	} else {
		this.fd = s;
	}
}
function Event(i, sd, ed, t) {
	this.id = i;
	this.start = sd;
	this.end = ed;
	this.type = t;
	this.a = g_d(sd);
	this.time = this.a.valueOf();
	this.b = g_d(ed);
	this.etime = this.b.valueOf();
	this.fd = _format_date;
}

function _format_date() {
	var un = '';
	if (this.etime != this.time) {
		un = ' - ' + dns[this.b.getDay()]+' '+this.b.getUTCDate()+' '+mns[this.b.getMonth()];
	}
	return dns[this.a.getDay()]+' '+this.a.getUTCDate()+' '+mns[this.a.getMonth()] + un;
}

function e_compare(a, b) {
	return a.time - b.time;
}


function centerX(width) { 
	if (is_nav4 || is_nav5up) {
		return parseInt((screen.width/2)-(width/2))
	} else {
		return parseInt((screen.availWidth/2)-(width/2));
	}
}
function centerY(height) { 
	if (is_nav4 || is_nav5up) {
		return parseInt((screen.height/2)-(height/2))
	} else {
		//alert(height);
		return parseInt((screen.availHeight/2)-(height/2));
	}
}
