//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	// notify()
	//
	//
function notify(msg, loc) {
	var where_to=confirm(msg);
	if (where_to==true){
		window.location=loc;
	}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// prepareExternalLinks()
	//
	//
	//
function prepareExternalLinks() {
	var links = document.getElementsByTagName("a");
	for(var i=0; i<links.length; i++) {
		var rel = links[i].getAttribute("rel");
		if(rel == "external") {
			links[i].setAttribute("target", "_blank");
		}
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	//hightLightPage()
	//
	//
	//
function highLightPage() {
	if(!document.getElementsByTagName) return false;
	if(!document.getElementById) return false;
	if(!document.getElementById("navMain")) return false;
	var navs = [document.getElementById("navMain"), document.getElementById("navSub")];

	for(var j=0; j<navs.length; j++) {
		var links = navs[j].getElementsByTagName("a");
	
		for(var i=0; i<links.length; i++) {
			if(links[i].getAttribute("href")) {
				var linkurl = links[i].getAttribute("href").toLowerCase();
				var currenturl = window.location.href.toLowerCase();
				if(currenturl.indexOf(linkurl) != -1) {
					addClass(links[i].parentNode, "here");
				}	
			}
		}
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// preparePageScroll(navId)
	//
	//
	//
function preparePageScroll(navId) {
	if(!document.getElementById(navId)) return false;
	var nav = document.getElementById(navId);
	var links = nav.getElementsByTagName('a');
	for(var i=0; i < links.length; i++) {
		links[i].destination = links[i].getAttribute('href').split('#')[1];
		links[i].onclick = function() {
			pageScroll(this.destination);
			return false;
		}
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// prepareTopLinks()
	//
	//
	//
function prepareTopLinks() {
	var links = getElementsByClassName('toTop');
	for(var i=0; i < links.length; i++) {
		links[i].destination = links[i].getAttribute('href').split('#')[1];
		links[i].onclick = function() {
			pageScroll(this.destination);
			return false;
		}
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// pageScroll()
	//
	//
	//
function pageScroll(element) {
	new Effect.ScrollTo(element);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// clearDivs()
	//
	//
	//
function clearDivs() {
	var fieldsets = document.getElementsByTagName('fieldset');
	for(var i=0; i<fieldsets.length; i++) {
		var clearDiv = document.createElement("div");
		clearDiv.setAttribute("class", "clearDiv");
		clearDiv.appendChild(document.createTextNode(" "));
		fieldsets[i].appendChild(clearDiv);
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// addClass()
	//
	//
	//
function addClass(element, value) {
	if(!element.className) {
		element.className = value;	
	}else{
		newClassName = element.className;
		newClassName+= " ";
		newClassName+= value;
		element.className = newClassName;
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// getElementsByClassName()
	//
	//
	//
function getElementsByClassName(value) {
	var selectedElems = new Array();
	var allElems = document.getElementsByTagName("*");
	for(var i=0; i<allElems.length; i++) {
		if(allElems[i].className == value) {
			selectedElems.push(allElems[i]);
		}
	}
	return selectedElems;
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	// swfTextReplace()
	//
	//
function swfTextReplace() {
	if(!document.getElementsByTagName) return false;
	
	var swfWidth = 346;
	var swfHeight = 38;
	var counter = 0;
	
	var theElems = getElementsByClassName("sectionHeader");
	for(var i=0; i<theElems.length; i++) {		
		counter++;
		var textValue = theElems[i].firstChild.nodeValue;
		var embedId = "sectionHeader" + counter;
		theElems[i].setAttribute("id", embedId);
		
		writeFlashContent('swf/headingSideBox.swf', embedId, '9', 'transparent', embedId, swfWidth, swfHeight, 'heading', textValue)
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	//writeFlashContent()
	//
	//
	//
function writeFlashContent(swfPath, embedId, version, backgroundColor, containerId, swfWidth, swfHeight, argName, argValue) {
	if(!document.getElementById) return false;
	
	var swfPath = swfPath;
	var embedId = embedId;
	var version = version;
	var backgroundColor = backgroundColor;
	var containerId = containerId;
	var swfWidth = swfWidth;
	var swfHeight = swfHeight;

	if(!document.getElementById(containerId)) return false;
	
	var swfContainer = document.getElementById(containerId);
	
	var so = new SWFObject(swfPath, embedId, swfWidth, swfHeight, version, backgroundColor);
	so.addParam("scale", "noscale");
	so.addParam("menu","false");
	so.addParam("salign", "tl");
	if(backgroundColor == 'transparent') {
		so.addParam("wmode", "transparent");
	}
	if(argName && argValue) {
		so.addVariable(argName, argValue);
	}
	so.write(swfContainer);	
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// embedSetHomePhotos()
	//
	//
	//
function embedSetHomePhotos() {
	if(document.getElementById('btmHeadShotsSet')) {
		var elem = document.getElementById('btmHeadShotsSet');
		var hsId = elem.className;
		writeFlashContent('swf/photoSpreadLg_set.swf', 'photoSpreadLg', '9', 'transparent', 'btmHeadShotsSet', '745', '164', 'hsId', hsId);
	}
	if(document.getElementById('topHeadShotsSet')) {
		var elem = document.getElementById('topHeadShotsSet');
		var hsId = elem.className;
		writeFlashContent('swf/photoSpreadSm_set.swf', 'photoSpreadSm', '9', '#FFFFFF', 'topHeadShotsSet', '550', '114', 'hsId', hsId);
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// disableBookingInputs()
	//
	//
	//
	function disabledBookingInputs() {
		if(!document.getElementById('bookingNoInputs')) return false;
		var element = document.getElementById('bookingNoInputs');
		var inputs = element.getElementsByTagName('input');
		for(var i=0; i < inputs.length; i++) {
			inputs[i].disabled = 'disabled';
		}
	}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	// booking agreement form
	//
	//
	//
function prepareBookAgreeForm() {
	if(!document.getElementById('bookingPrices')) return false;
	if(document.getElementById('bookingNoInputs')) return false;
	
	///////////////////////////////////////////////////////////
		//
		// grab all inputs
		//
	var rateDays = document.getElementById('rateDays');
	var rateAmount = document.getElementById('rateAmount');
	var rateSubTotal = document.getElementById('rateSubTotal');
	
	var otDays = document.getElementById('otDays');
	var otHours = document.getElementById('otHours');
	var otAmount = document.getElementById('otAmount');
	var otSubTotal = document.getElementById('otSubTotal');
	
	var trainingDays = document.getElementById('trainingDays');
	var trainingAmount = document.getElementById('trainingAmount');
	var trainingSubTotal = document.getElementById('trainingSubTotal');
	
	var airAmount = document.getElementById('airAmount');
	var airSubTotal = document.getElementById('airSubTotal');
	
	var hotelDays = document.getElementById('hotelDays');
	var hotelAmount = document.getElementById('hotelAmount');
	var hotelSubTotal = document.getElementById('hotelSubTotal');
	
	var diemDays = document.getElementById('diemDays');
	var diemAmount = document.getElementById('diemAmount');
	var diemSubTotal = document.getElementById('diemSubTotal');
	
	var transAmount = document.getElementById('transAmount');
	var transSubTotal = document.getElementById('transSubTotal');
	
	var netPay = document.getElementById('netPay');
	
	var recalculate = document.getElementById('recalculate');
	
	///////////////////////////////////////////////////////////
		//
		// calculate day * amount fields
		//
	var dayAmountRows = [
						[rateDays, rateAmount, rateSubTotal],
						[trainingDays, trainingAmount, trainingSubTotal],
						[hotelDays, hotelAmount, hotelSubTotal],
						[diemDays, diemAmount, diemSubTotal]
						];
	
	var subTotals = [rateSubTotal, otSubTotal, trainingSubTotal, airSubTotal, hotelSubTotal, diemSubTotal, transSubTotal];
	
	for(var i=0; i < dayAmountRows.length; i++) {
		var t = dayAmountRows[i][1];
		
		t.days =  dayAmountRows[i][0];
		t.subTotal = dayAmountRows[i][2];
		t.onchange = function() {
			this.subTotal.value = Math.round((this.value * this.days.value)*100)/100;
			calculateAgreeTotal(subTotals, netPay);
			if(this == rateAmount) {
				updateOTrate(otAmount, otDays, this.value, this.days.value);
			}
		}
	}
	///////////////////////////////////////////////////////////
		//
		// calculate amount only rows
		//
	var amountOnlyRows = [
					[airAmount, airSubTotal],
					[transAmount, transSubTotal]
					]
	for(var i=0; i < amountOnlyRows.length; i++) {
		var t = amountOnlyRows[i][0];
		t.subTotal = amountOnlyRows[i][1];
		t.onchange = function() {
			this.subTotal.value = Math.round(this.value*100)/100;
			calculateAgreeTotal(subTotals, netPay);
		}
	}
	///////////////////////////////////////////////////////////
		//
		// calculate overtime row
		//
	otHours.onchange = function() {
		otSubTotal.value = otHours.value * otAmount.value;
		calculateAgreeTotal(subTotals, netPay);
	}
///////////////////////////////////////////////////////////
	//
	// recalculate = brute force attack
	//	
	recalculate.onclick = function() {
		rateSubTotal.value = rateDays.value * rateAmount.value;
		if(rateDays != "") {
			otDays.value = rateDays.value;
		}
		otAmount.value = Math.round((rateAmount.value/8)*100)/100;
		if(otHours != "") {
			otSubTotal.value = Math.round((otHours.value * otAmount.value) *100)/100;
		}
		
		airSubTotal.value = airAmount.value;
		trainingSubTotal.value = trainingDays.value * trainingAmount.value;
		hotelSubTotal.value = hotelDays.value * hotelAmount.value;
		diemSubTotal.value = diemDays.value * diemAmount.value;
		transSubTotal.value = transAmount.value;
		
		calculateAgreeTotal(subTotals, netPay);
		return false;
	}
}

function updateOTrate(theAmountField, theDaysField, theAmount, theDays) {
	theAmountField.value = Math.round((theAmount/8) * 100)/100;
	theDaysField.value = theDays;
}

function calculateAgreeTotal(values, targetElem) {
	var total = 0;
	for(var i = 0; i < values.length; i++) {
		if(values[i].value != "") {
			var curTotal = values[i].value * 1;
			total += curTotal;
		}
	}
	targetElem.value = Math.round(total*100)/100;
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	//addLoadEvent()
	//
	//
	//
function addLoadEvent(func) {
	var oldonload = window.onload;
	if(typeof window.onload != 'function') {
		window.onload = func;
	}else{
		window.onload = function() {
			oldonload();
			func();
		}
	}
}
////////////////////////////////////////////////////////////////////////////////////////////////
	//
	//
	//
	//call functions on page load with addLoadEvent
	//
	//
	//
addLoadEvent(function(){
	writeFlashContent('swf/photoSpreadSm.swf', 'photoSpreadSm', '9', '#FFFFFF', 'topHeadShots', '550', '114');
	writeFlashContent('swf/photoSpreadLg.swf', 'photoSpreadLg', '9', 'transparent', 'btmHeadShots', '740', '164');
	embedSetHomePhotos();
	prepareBookAgreeForm();
	swfTextReplace();
	preparePageScroll('teamNav');
	prepareTopLinks();
	clearDivs();
	prepareExternalLinks();
	highLightPage();
	disabledBookingInputs();
});
