var ie = document.all;
var ns = document.getElementById && !document.all;

// Example:
// simplePreload( '01.gif', '02.gif' ); 
function simplePreload()
{ 
  var args = simplePreload.arguments;
  document.imageArray = new Array(args.length);
  for(var i=0; i<args.length; i++)
  {
    document.imageArray[i] = new Image;
    document.imageArray[i].src = args[i];
  }
}

function swap (imgName,swapTo) {
	document.images[imgName].src = swapTo;
	}
	
function rollover (imgName) {
	if (arguments.length > 1 && arguments[1].length > 1) {
		imgSource = arguments[1];
		// look for image sub-node w/ arg 2 as src
		if (imgName.childNodes) {	// DOM
			c = imgName.childNodes;
		} else {	// IE
			c = imgName.children;
		}
		for (i=0; i < c.length; i++) {
			if (c[i].tagName == "IMG" && c[i].getAttribute("SRC").indexOf(imgSource) > -1) {
				s = c[i];
				break;
			}
		}
	} else {
		s = document.images[imgName];
	}
	if (s.src.indexOf("_over") > 0) {
		s.src = s.src.replace(/_over/,"");
	} else {
		if (s.src.indexOf(".jpg") > 0) {
			s.src = s.src.replace(/\.jpg/,"_over.jpg");
		}
		if (s.src.indexOf(".gif") > 0) {
			s.src = s.src.replace(/\.gif/,"_over.gif");
		}
	}
}
	
function show(divname) {
	document.getElementById(divname).style.display = "block";
	}
	
function hide(divname) {
	document.getElementById(divname).style.display = "none";
	}
	
function toggle(divname) {
	d = document.getElementById(divname+"_info");
	if (d.style.display == "block") {
		d.style.display = "none";
	} else {
		d.style.display = "block";
	}
	d = document.getElementById(divname);
	if (d.innerHTML.indexOf("click to open") > -1) {
		temp = d.innerHTML.replace(/click to open/,"click to close");
	} else {
		temp = d.innerHTML.replace(/click to close/,"click to open");
	}
	d.innerHTML = temp; 
	init();
}

function fixFlash() {
	theObjects = document.getElementsByTagName("object");
	for (var i = 0; i < theObjects.length; i++) {
		theObjects[i].outerHTML = theObjects[i].outerHTML;
	}
}

// for divScroll
var moveTotal = Array();

function toggle_menu(dv) {
	sign = 0;
	factor = 1;		// bigger factor equals faster moves
	arrow = dv.replace(/-submenu/,"-arrow");
	if (document.getElementById(dv).childNodes[1]) {
		// childNodes[1] because [0] is the line break text node
		amount = document.getElementById(dv).childNodes[1].offsetHeight;
	} else {	// IE, use children
		amount = document.getElementById(dv).children[0].offsetHeight;
	}
	if (document.getElementById(dv).offsetHeight == 0 || sign == -1) {	// open
		sign = 1;
		document.getElementById(arrow).src = document.getElementById(arrow).src.replace(/-down/,"-up");
	} else {	// close
		sign = -1;
		document.getElementById(arrow).src = document.getElementById(arrow).src.replace(/-up/,"-down");
	}
	
	if (typeof(moveTotal[dv])=="undefined") {
		moveTotal[dv] = 0;
	}
	
	if (moveTotal[dv] != 0) { clearInterval(slide); }
	
	slide = setInterval("div_glide('" + dv + "', " + sign + ", " + amount + ", " + factor + ")",1);
}


function div_glide(dv, sign, amount, factor) {
	p = document.getElementById(dv);
	
	mv = Math.ceil(Math.sqrt(Math.abs(Math.abs(moveTotal[dv]) - amount)) * factor);
	if (mv < 2) { mv=2; }
	mv = mv * sign;
	
	if ((moveTotal[dv] >= amount && sign > 0) ||		// done w/ positive move
		(moveTotal[dv] <= amount*sign && sign < 0)		// done w/ negative move
		) {
		moveTotal[dv] = 0;
		clearInterval(slide);
	} else {
		if (p.offsetHeight+mv > amount) { 	// too tall
			mv = amount - p.offsetHeight;
			moveTotal[dv] = 0;
			clearInterval(slide);
		}
		if (p.offsetHeight + mv < 0) {		// too small
			mv = 0 - p.offsetHeight;
			moveTotal[dv] = 0;
			clearInterval(slide);
		}
		p.style.height = (p.offsetHeight + mv) + "px";
		moveTotal[dv] += mv;
	}
}

function forty_years() {
	L = $('#main').offset().left + 871;
	t = $('#main').offset().top - 50;
	$('#forty-years').css( { 'position': 'absolute', 'left': L + 'px', 'top': t + 'px' } );
}

$(document).ready( function() {
	simplePreload('/images/arrow-down_over.gif','/images/arrow-up_over.gif','/images/feature-box-bg_over.gif','/images/highlight-bottom_over.gif','/images/highlight-top_over.gif','/images/logo_over.gif');
	
	$(window).resize( function() { forty_years(); } );
	
	// history timeline
	if ( $('ol.timeline').length > 0 ) {
		$('#content li:odd').css( 'background-color', '#fff2ee' );
	}
	
});


$(window).load( function() {
	// position 40 years diamond
	forty_years();
});
