function newsletter_onload(){

	//DECLARE AND SET DEFAULT VALUES
	var defaultValue = "Enter Email Address";
	var errValue = "Invalid Email Address";
	var successValue = "Thank you for subscribing";
	var exceptionValue = "An error occurred. Please subscribe again.";
	var enteredValue = "";
	$("email").value = defaultValue;
	
	
	//IF JAVASCRIPT ENABLED DO THE FOLLOWING
	$("newsletter_submit").style.display = "none";
	$("subscribe-btn").style.display = "block";
	
	
	//REGISTER EVENTS
	$("email").onfocus = emailEvt;
	$("email").onkeypress = emailEvt;
	$("subscribe-btn").onclick = subscribeBtnEvt;
	$("newsletter-form").onsubmit = function(){
		subscribeEvt();
		$("subscribe-btn").focus();
		return false;
		
	}
	
	
	//SUBSCRIBE EVENT
	function subscribeEvt(){
		$("email").style.color = "#a32e00";
		if ($isEmail($("email").value)){
			var req = new AjaxRequest({
				r:newsletter_action,
				f:"/assets/includes/lib/act_ajax_wrapper.cfm",
				a:"ajax_type=3&email=" + $("email").value + "&smc=" + $("smc").value
				
			});
			$("email").value = "Processing request...";
									
		}else{
			if($("email").value != defaultValue && $("email").value != errValue && $("email").value != successValue){
				enteredValue = $("email").value;
			
			}
			$("email").value = errValue;
						
		}
		
	}
	
	
	//EMAIL TEXT INPUT EVENTS
	function emailEvt(){
		var e = arguments[0] || window.event;
	
		if(e.type == "focus"){
			this.style.color = "#000";
			
			if(this.value == defaultValue || this.value == successValue || this.value == errValue && enteredValue == ""){
				this.value = "";
						
			}
			if(this.value == errValue && enteredValue != ""){
				this.value = enteredValue;
			
			}
						
		}
				
	}
	
	
	//SUBSCRIBE BUTTON EVENTS
	function subscribeBtnEvt(){
		var e = arguments[0] || window.event;
	
		if(e.type == "click"){
			subscribeEvt();
								
		}
		
	}
	
	
	//AJAX RESPONSE
	function newsletter_action() {
		var xml = arguments[0];
		var newsletter = xml.getElementsByTagName("newsletter")[0];
		var response = newsletter.childNodes[0].firstChild.nodeValue;
		
		if(response == "Yes"){
			$("email").value = successValue;
			$("email").style.color = "#000";
			enteredValue = "";
			
			// REGISTER THE CLICK WITH GA
			pageTracker._trackPageview("/Newsletter Subscribe");
			
			// GA EVENT TRACKING
			pageTracker._trackEvent('General', 'Form', 'eNews Signup');
			
			// INCLUDE THE CPT IMAGE TO FLAG THIS NEWSLETTER SUBSCRIPTION REQUEST
			var div = document.getElementById('cpt_img');
			var img = document.createElement('img');
			img.src = 'http://travel.abercrombiekent.com/assets/app/CPT/cpt.cfm?siteid=36&flagID=10';
			div.appendChild(img);
				
		}
		if(response == "No"){
			$("email").value = exceptionValue;
			$("email").style.color = "#a32e00";
			
		}
		if(response == "Invalid Email"){
			$("email").value = errValue;
			$("email").style.color = "#a32e00";
			
		}
		
	}
	
	/*var message = $("newsletter-message");
	
	if(response == "Yes"){
	
		message.innerHTML = "You have been subscribed successfully!";
	} else if ( response == "No" ) {
		message.innerHTML = "An error occurred while attempting to subscribe your email. Please try again.";
	} else if ( response == "Invalid Email") {
		message.innerHTML = "Invalid Email Address";
	}*/
		
	/*$("subscribe-btn").onclick = function() {
		var email = $("email");
		var smc = $("smc");
		//var message = $("newsletter-message");
		
		
		// CLEAR MESSAGE
		//message.innerHTML = "Processing...";
		
		if ( $isEmail(email.value) ) {
			// AJAX STUFF
			var delegate = this;
			var req = new AjaxRequest({
				r:newsletter_action,
				f:"/assets/includes/lib/act_ajax_wrapper.cfm",
				a:"ajax_type=3&email=" + email.value + "&smc=" + smc.value			
			});
		} else {
			// INVALID EMAIL STUFF
			//message.innerHTML = "Invalid Email Address";
			$("email").value = "Invalid Email Address";
			$("email").style.color = "#ff0000";
			
		}
		return false;
			
	}*/
	
}

//------------------------------

function make_a_reservation_onload() {
	
	$("add_tc").onclick = addtcEvent;
	
	$("inquiry_form").onsubmit = inquiryFormEvent;
	
	$("submit-questions").onclick = function() {
		var valid = inquiryFormEvent();
		if ( valid == true ) {
			$("inquiry_form").submit();
			return false;
		}
	}
	
	$("ti_tour_name").onchange = function() {
		var delegate = this;
		var req = new AjaxRequest({
			r:expedition_dates,
			f:"/assets/includes/lib/act_ajax_wrapper.cfm",
			a:"ajax_type=1&packageid=" + delegate.value						
		});
	}
	
	// HIDE THE STATE/REGION OTHER LI BY DEFAULT
	$("ci_state_region_other").parentNode.style.display = "none";
	
	// HIDE THE HTML SUBMIT BUTTON AND SHOW THE SUBMIT IMAGE
	$("btn_submit").parentNode.style.display = "none";
	$("submit-questions").parentNode.style.display = "block";
	
	// SHOW THE ADD TRAVEL COMPANION LINK
	$("add_tc").style.display = "inline";
	
	// DISPLAY OR HIDE THE STATE/REGION DROPDOWN AND STATE/REGION OTHER LIS DEPENDING ON THE COUNTRY FIELD
	$("ci_country").onchange = function() {
		if (this.value == "USA" || this.value == "CAN" || this.value == "AUS") {
			$("ci_state_region").parentNode.style.display = "block";
			$("ci_state_region_other").parentNode.style.display = "none";
		} else {
			$("ci_state_region").parentNode.style.display = "none";
			$("ci_state_region_other").parentNode.style.display = "block";
		}
	}
}

function request_a_brochure_onload() {
	
	$("brochure_form").onsubmit = brochureFormEvent;
	
	$("submit-brochure").onclick = function() {
		var valid = brochureFormEvent();
		if ( valid == true ) {
			$("brochure_form").submit();
			return false;
		}
	}
	
	// HIDE THE STATE/REGION OTHER LI BY DEFAULT
	$("ci_state_region_other").parentNode.style.display = "none";
	
	// HIDE THE HTML SUBMIT BUTTON AND SHOW THE SUBMIT IMAGE
	$("btn_submit").parentNode.style.display = "none";
	$("submit-brochure").parentNode.style.display = "block";
	
	// DISPLAY OR HIDE THE STATE/REGION DROPDOWN AND STATE/REGION OTHER LIS DEPENDING ON THE COUNTRY FIELD
	$("ci_country").onchange = function() {
		if (this.value == "USA" || this.value == "CAN" || this.value == "AUS") {
			$("ci_state_region").parentNode.style.display = "block";
			$("ci_state_region_other").parentNode.style.display = "none";
		} else {
			$("ci_state_region").parentNode.style.display = "none";
			$("ci_state_region_other").parentNode.style.display = "block";
		}
	}
}

function contact_us_onload() {
	
	$("contact_form").onsubmit = contactFormEvent;
	
	$("submit-inquiry").onclick = function() {
		var valid = contactFormEvent();
		if ( valid == true ) {
			$("contact_form").submit();
			return false;
		}
	}
	
	// HIDE THE STATE/REGION OTHER LI BY DEFAULT
	$("ci_state_region_other").parentNode.style.display = "none";
	
	// HIDE THE HTML SUBMIT BUTTON AND SHOW THE SUBMIT IMAGE
	$("btn_submit").parentNode.style.display = "none";
	$("submit-inquiry").parentNode.style.display = "block";
	
	// DISPLAY OR HIDE THE STATE/REGION DROPDOWN AND STATE/REGION OTHER LIS DEPENDING ON THE COUNTRY FIELD
	$("ci_country").onchange = function() {
		if (this.value == "USA" || this.value == "CAN" || this.value == "AUS") {
			$("ci_state_region").parentNode.style.display = "block";
			$("ci_state_region_other").parentNode.style.display = "none";
		} else {
			$("ci_state_region").parentNode.style.display = "none";
			$("ci_state_region_other").parentNode.style.display = "block";
		}
	}
}

function expeditions_onload() {
	if (document.getElementsByTagName) {
		var dts = $$("dt");
		for ( var i = 0; i < dts.length; i++ ) {
			var a = dts[i].getElementsByTagName("a");
			if ( a.length >= 1 ) {
				a[0].onmouseover = function() {
					
					var top_edge = this.offsetTop + this.offsetHeight + 10;
					var bottom_edge = top_edge + $("legend-parent").offsetHeight;
					var left_edge = this.offsetLeft + this.offsetWidth - $("legend-parent").offsetWidth;
					
					var scrollY = $getViewportScrollY();
					
					if (window.innerHeight) { //
						var window_top = window.innerHeight + scrollY;
					} else {
						var window_top = document.body.parentNode.clientHeight + scrollY;
					}
					
					if (window_top < bottom_edge) {
						top_edge = this.offsetTop - $("legend-parent").offsetHeight - 10;
					}
					
					top_edge = top_edge.toFixed(2) / 10;
					left_edge = left_edge.toFixed(2) / 10;
					
					$("legend-parent").style.top =  top_edge + 'em';
					$("legend-parent").style.left = left_edge + 'em';
					
					$("legend-parent").style.visibility = "visible";
				}
				a[0].onmouseout = function() {
					$("legend-parent").style.visibility = "hidden";
				}
			}
		}
	}
}

function expedition_onload() {
	
	// DIFFICULTY OVERLAY
	if (document.getElementsByTagName) {
		var ul = $("e-c");
		var a = ul.getElementsByTagName("a");
		if ( a.length >= 1 ) {
			a[0].onmouseover = function() {
				
				var top_edge = this.offsetTop + this.offsetHeight + 10;
				var bottom_edge = top_edge + $("legend-parent").offsetHeight;
				var left_edge = this.offsetLeft + this.offsetWidth - $("legend-parent").offsetWidth;
				
				var scrollY = $getViewportScrollY();
				
				if (window.innerHeight) { //
					var window_top = window.innerHeight + scrollY;
				} else {
					var window_top = document.body.parentNode.clientHeight + scrollY;
				}
				
				if (window_top < bottom_edge) {
					top_edge = this.offsetTop - $("legend-parent").offsetHeight - 10;
				}
				
				top_edge = top_edge.toFixed(2) / 10;
				left_edge = left_edge.toFixed(2) / 10;
				
				$("legend-parent").style.top =  top_edge + 'em';
				$("legend-parent").style.left = left_edge + 'em';
				
				$("legend-parent").style.visibility = "visible";
			}
			a[0].onmouseout = function() {
				$("legend-parent").style.visibility = "hidden";
			}
		}
	}
	
	$("make_reservation").onclick = function() {
		if ($("packageDateID").value != '') {
			$("dates_form").submit();
			return false;
		} else {
			alert('Please select a Departure Date');
			return false;
		}
	}
		
	// HIDE THE HTML SUBMIT BUTTON AND SHOW THE SUBMIT IMAGE
	$("btn_submit").style.display = "none";
	$("make_reservation").style.display = "block";
	
}

function search_onload() {
	var evt = [
		'document.getElementById("c-srch-btn").onclick = cSrchBtnEvt',
		'document.getElementById("o-srch-btn").onclick = oSrchBtnEvt',
		'document.getElementById("by-continent-btn").onclick = srchTabsBtnEvt',
		'document.getElementById("by-difficulty-btn").onclick = srchTabsBtnEvt',
		'document.getElementById("by-month-btn").onclick = srchTabsBtnEvt'
			
	];
	
	//REGISTER NON GROUP EVENTS
	for(var i=0; i<evt.length; i++){
		try{
			eval(evt[i]);
								
		}catch(e){}
		
	}
	
	//REGISTER BY CONTINENT EVENTS
	var o = document.getElementById("by-continent").getElementsByTagName("ul")[0];
	for(var i=0; i<o.childNodes.length; i++){
		if(o.childNodes[i].nodeName.toLowerCase() === "li"){
			o.childNodes[i].onclick = function(){
				var e = arguments[0] || window.event;
				this.getElementsByTagName("input")[0].checked = true;
				
				// REMOVE ANY SEARCH RESULTS
				$removeChildNodes("results-data");
				
				// CHANGE RESULTS STATUS
				$("results-count").innerHTML = "Searching...";
				
				// AJAX SEARCH
				var delegate = this.getElementsByTagName("input")[0];
				var req = new AjaxRequest({
					r:displaySearchResults,
					f:"/assets/includes/lib/act_ajax_wrapper.cfm",
					a:"ajax_type=2&by_continent_grp=" + delegate.value						
				});
							
			}
								
		}
							
	}
	
	//REGISTER BY DIFFICULTY EVENTS
	var o = document.getElementById("by-difficulty").getElementsByTagName("ul")[0];
	for(var i=0; i<o.childNodes.length; i++){
		if(o.childNodes[i].nodeName.toLowerCase() === "li"){
			o.childNodes[i].onclick = function(){
				var e = arguments[0] || window.event;
				this.getElementsByTagName("input")[0].checked = true;
				
				// REMOVE ANY SEARCH RESULTS
				$removeChildNodes("results-data");
				
				// CHANGE RESULTS STATUS
				$("results-count").innerHTML = "Searching...";
				
				// AJAX SEARCH
				var delegate = this.getElementsByTagName("input")[0];
				var req = new AjaxRequest({
					r:displaySearchResults,
					f:"/assets/includes/lib/act_ajax_wrapper.cfm",
					a:"ajax_type=2&by_difficulty_grp=" + delegate.value						
				});
				
			}
								
		}
							
	}
	
	//REGISTER BY MONTH EVENTS SET 1
	var o = document.getElementById("by-month").getElementsByTagName("ul")[0];
	for(var i=0; i<o.childNodes.length; i++){
		if(o.childNodes[i].nodeName.toLowerCase() === "li"){
			o.childNodes[i].onclick = function(){
				var e = arguments[0] || window.event;
				this.getElementsByTagName("input")[0].checked = true;
				
				// REMOVE ANY SEARCH RESULTS
				$removeChildNodes("results-data");
				
				// CHANGE RESULTS STATUS
				$("results-count").innerHTML = "Searching...";
				
				// AJAX SEARCH
				var delegate = this.getElementsByTagName("input")[0];
				var req = new AjaxRequest({
					r:displaySearchResults,
					f:"/assets/includes/lib/act_ajax_wrapper.cfm",
					a:"ajax_type=2&by_month_grp=" + delegate.value						
				});
				
			}
								
		}
							
	}
	
	//REGISTER BY MONTH EVENTS SET 2
	var o = document.getElementById("by-month").getElementsByTagName("ul")[1];
	for(var i=0; i<o.childNodes.length; i++){
		if(o.childNodes[i].nodeName.toLowerCase() === "li"){
			o.childNodes[i].onclick = function(){
				var e = arguments[0] || window.event;
				this.getElementsByTagName("input")[0].checked = true;
				
				// REMOVE ANY SEARCH RESULTS
				$removeChildNodes("results-data");
				
				// CHANGE RESULTS STATUS
				$("results-count").innerHTML = "Searching...";
				
				// AJAX SEARCH
				var delegate = this.getElementsByTagName("input")[0];
				var req = new AjaxRequest({
					r:displaySearchResults,
					f:"/assets/includes/lib/act_ajax_wrapper.cfm",
					a:"ajax_type=2&by_month_grp=" + delegate.value						
				});
				
			}
								
		}
							
	}
}

function tell_a_friend_onload() {
	
	$("add_friend").onclick = addFriendEvent;
	
	$("friend_form").onsubmit = friendFormEvent;
	
	$("submit-friend").onclick = function() {
		var valid = friendFormEvent();
		if ( valid == true ) {
			$("friend_form").submit();
			return false;
		}
	}
	
	$("ti_tour_name").onchange = function() {
		var delegate = this;
		var req = new AjaxRequest({
			r:expedition_dates,
			f:"/assets/includes/lib/act_ajax_wrapper.cfm",
			a:"ajax_type=1&packageid=" + delegate.value						
		});
	}
	
	// HIDE THE HTML SUBMIT BUTTON AND SHOW THE SUBMIT IMAGE
	$("btn_submit").parentNode.style.display = "none";
	$("submit-friend").parentNode.style.display = "block";
	
	// SHOW THE ADD TRAVEL COMPANION LINK
	$("add_friend").style.display = "inline";
}


function feedback_onload() {
	
	$("feedback_form").onsubmit = feedbackFormEvent;
	
	$("submit-plain").onclick = function() {
		var valid = feedbackFormEvent();
		if ( valid == true ) {
			$("feedback_form").submit();
			return false;
		}
	}
	
	// HIDE THE HTML SUBMIT BUTTON AND SHOW THE SUBMIT IMAGE
	$("btn_submit").parentNode.style.display = "none";
	$("submit-plain").parentNode.style.display = "block";
	
}

function newsletter_opt_out_onload() {
	$("newsletter_opt_out").onsubmit = optOutFormEvent;
	
	$("submit-opt-out").onclick = function() {
		var valid = optOutFormEvent();
		if (valid == true) {
			$("newsletter_opt_out").submit();
			return false;
		}
	}
	
	// SHOW THE SUBMIT IMAGE
	$("submit-opt-out").style.display = "block";
}

function map_display_onload() {
	//REGISTER LOCAL VARIABLES
	var parent = $("focus-parent");
	var mapBtn = $("expedition-map");
	var map = (isIE6) ? $("map-ie") : $("map");
	var marker = $("marker");
	  
			 
	//INIT MAP LOCATION
	map.style.left = parent.offsetLeft + mapBtn.offsetLeft + mapData[mapBtn.rel].x + "px";
	map.style.top = parent.offsetTop + mapBtn.offsetTop + mapData[mapBtn.rel].y + "px";
	
	
	//INIT MARKER LOCATION
	marker.style.left = parent.offsetLeft + mapBtn.offsetLeft + mapData[mapBtn.rel].x + "px";
	marker.style.top = parent.offsetTop + mapBtn.offsetTop + mapData[mapBtn.rel].y + "px";
			
	
	//SETS MAP IMAGE SRC
	if(isIE6){
		map.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + baseImgPath + mapData[mapBtn.rel].p + ", sizingMethod=scale)";
					
	}else{
		map.src = baseImgPath + mapData[mapBtn.rel].p;
	
	}
	
	
	//REGISTER MAPBTN ONCLICK EVENT
	mapBtn.onclick = mapBtnEvt;
}

function openInNewWindow() {
	if (!document.getElementsByTagName) return;
	var anchors = $$("a");
	// LOOP THROUGH ALL ANCHOR TAGS ON THE PAGE
	for (var i=0; i<anchors.length; i++) {
		var anchor = anchors[i];
		// IF THE CURRENT ANCHOR HAS THE HREF SPECIFIED AND THE REL ATTRIBUTE SET TO "_blank" SET THE TARGET ATTRIBUTE
		if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "_blank") {
			anchor.target = "_blank";
			var href = anchor.href;
			anchor.onclick = function() {
				// REGISTER THE CLICK WITH GA
				pageTracker._trackPageview(geo_domain + "/external link/?url=" + href);
			}
		}
	} 
}