function show_logistics_location(el) {
	var location = document.getElementById('location_details');
	
	location.style.display = '';
	populate_logistics_location(el);
}

function show_location(el) {
	var location = document.getElementById('location_details');
	
	location.style.display = '';
	populate_location(el);
}

function restore_location() {
	var location = document.getElementById('location_details');
	location.innerHTML = '';
	location.style.display = 'none';
}

function show_globe(el) {
	var globe = document.getElementById('globe');
	globe.src = 'media/images/globe_' + el + '.jpg';
}

function restore_globe() {
	var globe = document.getElementById('globe');
	globe.src = 'media/images/globe.jpg';
}

function show_history(el) {
	var history_panel = document.getElementById('history_panel');
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('history_panel').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","history_panel.php?year=" + el,true);
		xmlHttp.send(null);
	
}

function restore_history() {
	var history_panel = document.getElementById('history_panel');
	history_panel.innerHTML = '';
}





function validate_contact_form() {
	
	var error_container = document.getElementById('error_container');
	error_container.innerHTML = '';
	
	var error_message = '<div class="message_negative"><p>Some of the information appears to be missing:</p><ul class="no_bullet">';
	var errors = 0;
	
	var title = document.getElementById('title');
	var firstname = document.getElementById('firstname');
	var lastname = document.getElementById('lastname');
	var position = document.getElementById('position');
	var department = document.getElementById('department');
	var company = document.getElementById('company');
	var email = document.getElementById('email');
	var tel = document.getElementById('tel');
	var address = document.getElementById('address');
	var post_code = document.getElementById('post_code');
	var country = document.getElementById('country');
	var business = document.getElementById('business');
	var came_from = document.getElementsByName('came_from');
	var advertisement = document.getElementById('advertisement');
	var exhibition = document.getElementById('exhibition');
	var other = document.getElementById('other');

	
	if ( title.value == '' ) {
		error_message += '<li>You have not entered a <a href="#title">title</a></li>';
		errors = 1;
	}

	if ( firstname.value == '' ) {
		error_message += '<li>You have not entered a <a href="#firstname">first name</a></li>';
		errors = 1;
	}
	
	if ( lastname.value == '' ) {
		error_message += '<li>You have not entered a <a href="#lastname">surname</a></li>';
		errors = 1;
	}	

	if ( position.value == '' ) {
		error_message += '<li>You have not entered a <a href="#position">position held</a></li>';
		errors = 1;
	}

	if ( department.value == '' ) {
		error_message += '<li>You have not entered a <a href="#department">department</a></li>';
		errors = 1;
	}
	
	if ( company.value == '' ) {
		error_message += '<li>You have not entered a <a href="#company">company name</a></li>';
		errors = 1;
	}	
	
	if ( email.value == '' ) {
		error_message += '<li>You have not entered an <a href="#email">email address</a></li>';
		errors = 1;
	}	

	if ( email.value != '' && ! (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value)) ) {
		error_message += '<li>The <a href="#email">email address</a> you entered does not appear to be correct</li>';
		errors = 1;
	}	

	if ( tel.value == '' ) {
		error_message += '<li>You have not entered an <a href="#tel">phone number</a></li>';
		errors = 1;
	}	

	if ( address.value == '' ) {
		error_message += '<li>You have not entered an <a href="#address">address</a></li>';
		errors = 1;
	}
	
	
	if ( post_code.value == '' ) {
		error_message += '<li>You have not entered a <a href="#post_code">post code/zip code/p.o. box number</a></li>';
		errors = 1;
	}

	if ( country.value == '0' ) {
		error_message += '<li>You have not selected a <a href="#country">country</a></li>';
		errors = 1;
	}	

	if ( business.value == '' ) {
		error_message += '<li>You have not selected a <a href="#business">type of business</a></li>';
		errors = 1;
	}	

	var came_from_checked = 0;
	var came_from_value = '';
	for ( var i = 0; i < came_from.length; i++ ) {
		if ( came_from[i].checked == true ) {
			came_from_checked = 1;
			came_from_value = came_from[i].value;
		}
	}

	if ( came_from_checked == 0 ) {
		error_message += '<li>You have not stated <a href="#came_from">how you heard about Avtrade</a></li>';
		errors = 1;
	}
	switch ( came_from_value ) {
		
		case 'Advertisement' :
			if ( advertisement.value == '' ) {
				error_message += '<li>You have not stated <a href="#came_from">where you saw our advertisement</a></li>';
				errors = 1;
			}
			break;
			
		case 'Exhibition' :
			if ( exhibition.value == '' ) {
				error_message += '<li>You have not stated <a href="#came_from">which exhibition you saw us at</a></li>';
				errors = 1;
			}
			break;
		
		
		case 'Other' :
			if ( other.value == '' ) {
				error_message += '<li>You have not stated <a href="#came_from">how you heard about Avtrade</a></li>';
				errors = 1;
			}
			break;
		
		
	
	}

	
	if ( errors == 1 ) {
		error_message += '</ul></div>';
		error_container.innerHTML = error_message;
		return false;
	} else {
		return true;
	}

}

function show_came_from_detail(el) {
	
	var came_from_detail_advertisement = document.getElementById('came_from_detail_advertisement');
	var came_from_detail_exhibition = document.getElementById('came_from_detail_exhibition');
	var came_from_detail_other = document.getElementById('came_from_detail_other');
	
	came_from_detail_advertisement.style.display = 'none';
	came_from_detail_exhibition.style.display = 'none';
	came_from_detail_other.style.display = 'none';
	
	switch ( el ) {
		
		case 'advertisement' :
			came_from_detail_advertisement.style.display = '';
			break;
			
		case 'exhibition' :
			came_from_detail_exhibition.style.display = '';
			break;
		
		case 'other' :
			came_from_detail_other.style.display = '';
			break;
	
	}	

}

function show_chart(el) {
	var business_card = document.getElementById('business_card');
	if ( business_card.style.display == 'inline' ) {
		return false;
	} else {
		var chart = document.getElementById('org_chart_image');
		chart.src = 'media/images/org_' + el + '.jpg';
	}
}

function restore_chart() {
	var business_card = document.getElementById('business_card');
		var chart = document.getElementById('org_chart_image');
		chart.src = 'media/images/org_chart.jpg';
		business_card.style.display = 'none';
}






function activate_chart(el) {
	var business_card = document.getElementById('business_card');
	var chart = document.getElementById('org_chart_image');
	
		business_card.style.display = 'inline';
		chart.src = 'media/images/org_' + el + '.jpg';
		populate_org_position(el);
		//	right align
			switch (el) {
			
			case 'comm-dir' :
			case 'sales-mark-dir' :
			case 'asset-dir' :
			case 'contract-dir' :
			case 'biz-dev-man' :
			case 'stores-man' :
			case 'mro-man' :
				business_card.style.marginLeft = '430px';
				break;
			
			default :
				business_card.style.marginLeft = '0px';
		
		}

	

}

function deactivate_chart() {
return false;
	var business_card = document.getElementById('business_card');
	var chart = document.getElementById('org_chart_image');
		business_card.innerHTML = '';
		business_card.style.display = 'none';	
		chart.src = 'media/images/org_chart.jpg';		
}

function show_outfit_thumb( section, id, image, title ) {

	var large_image = document.getElementById('large_outfit');
	var large_image_link = document.getElementById('large_outfit_link');
	var outfit_product_link = document.getElementById('outfit_product_link');
	
	large_image.src = 'media/uploads/' + image + '_large.jpg';
	large_image.title = title;

	switch( section ) {
	
		case 'lotm' :
			large_image_link.href = 'look_of_the_month.php?outfit=' + id;
			large_image_link.title = title;
			outfit_product_link.href = 'look_of_the_month.php?outfit=' + id;
			outfit_product_link.title = title;
			break;
		
		case 'outfit_ideas' :
			large_image_link.href = 'outfit_ideas.php?outfit=' + id;
			large_image_link.title = title;
			outfit_product_link.href = 'outfit_ideas.php?outfit=' + id;
			outfit_product_link.title = title;
			break;		
		
		case 'new_styles' :
			large_image_link.href = 'new_styles.php?outfit=' + id;
			large_image_link.title = title;
			outfit_product_link.href = 'new_styles.php?outfit=' + id;
			outfit_product_link.title = title;
			break;		
	
	}

}


function show_applies_to() {
	
	var radio_catalogue = document.getElementById('applies_catalogue');
	var radio_category = document.getElementById('applies_category');
	var radio_product = document.getElementById('applies_product');
	
	var select_category = document.getElementById('select_category');
	var select_product = document.getElementById('select_product');

	if ( radio_catalogue.checked == true ) {
		select_category.style.display = 'none';
		select_product.style.display = 'none';
	}
	
	if ( radio_category.checked == true ) {
		select_category.style.display = '';
		select_product.style.display = 'none';
	}

	if ( radio_product.checked == true ) {
		select_category.style.display = 'none';
		select_product.style.display = '';
	}

}

function show_blog( selected, id_list ) {
	
	var id_array = id_list.split(',');
	for ( var x = 0; x < id_array.length; x++ ) {
		document.getElementById('entry_'+id_array[x]).style.display = 'none';
		document.getElementById('thumb_'+id_array[x]).style.opacity = '0.5';
		document.getElementById('thumb_'+id_array[x]).style.filter = 'alpha(opacity=50)';
		
	}
	document.getElementById('entry_'+selected).style.display = '';
	document.getElementById('thumb_'+selected).style.opacity = '1';
	document.getElementById('thumb_'+selected).style.filter = 'alpha(opacity=100)';

}

function show_latest_blog() {

	var blog_container = document.getElementById('latest_blog_container');
	var blog_link = document.getElementById('blog_link');
	
	var y_pos = getY(blog_link);
	var new_top = 0;
	new_top = y_pos - 170.5;
	
	if ( blog_container.style.display == 'none' ) {
		blog_container.style.display = '';
		blog_container.style.top = new_top + 'px';
	} else {
		blog_container.style.display = 'none';
	}
	
}

function getY( oElement ) {
	var iReturnValue = 0;
	while( oElement != null ) {
		iReturnValue += oElement.offsetTop;
		oElement = oElement.offsetParent;
	}
	return iReturnValue;
}

function set_star( name, i ) {
	for ( var x = 1; x <= 5; x++ ) {
		document.getElementById(name + '_star_' + x).className = 'star_off';
	}
	for ( var x = 1; x <= i; x++ ) {
		document.getElementById(name + '_star_' + x).className = 'star_on';
	}
}

function reset_stars( name ) {
	for ( var x = 1; x <= 5; x++ ) {
		document.getElementById(name + '_star_' + x).className = 'star_off';
	}
	var star_field = document.getElementById(name);
	if ( parseInt( star_field.value ) >= 1 ) {
		for ( var z = 1; z <= star_field.value; z++ ) {
			document.getElementById(name + '_star_' + z).className = 'star_on';
		}	
	}
}

function choose_star( name, i ) {
	var star_field = document.getElementById(name);
	star_field.value = i;
	for ( var x = 1; x <= i; x++ ) {
		document.getElementById(name + '_star_' + x).className = 'star_on';
	}
}

function set_square( name, i ) {
	for ( var x = 1; x <= 5; x++ ) {
		document.getElementById(name + '_square_' + x).className = 'square_off';
	}
	for ( var x = 1; x <= i; x++ ) {
		document.getElementById(name + '_square_' + x).className = 'square_on';
	}
}

function reset_squares( name ) {
	for ( var x = 1; x <= 5; x++ ) {
		document.getElementById(name + '_square_' + x).className = 'square_off';
	}
	var square_field = document.getElementById(name);
	if ( parseInt( square_field.value ) >= 1 ) {
		for ( var z = 1; z <= square_field.value; z++ ) {
			document.getElementById(name + '_square_' + z).className = 'square_on';
		}	
	}
}

function choose_square( name, i ) {
	var square_field = document.getElementById(name);
	square_field.value = i;
	for ( var x = 1; x <= i; x++ ) {
		document.getElementById(name + '_square_' + x).className = 'square_on';
	}
}

function validate_review_form() {

	var overall = document.getElementById('overall');
	var would_recommend_yes = document.getElementById('would_recommend_product_yes');
	var would_recommend_no = document.getElementById('would_recommend_product_no');
	var nickname = document.getElementById('nickname');
	
	var error_container = document.getElementById('review_error_container');
	var error_message = '<div class="message_negative"><p>Some of the information appears to be missing:</p><ul>';
	var errors = 0;
	
	error_container.innerHTML = '';
	
	
	if ( overall.value == '0' ) {
		error_message += '<li>You have not selected an <a href="#overall_anchor">overall rating</a></li>';
		errors = 1;
	}
	if ( would_recommend_yes.checked == false && would_recommend_no.checked == false ) {
		error_message += '<li>You have not said whether you would <a href="#recommend_anchor">recommend this product to a friend</a></li>';
		errors = 1;
	}
	if ( nickname.value == '' ) {
		error_message += '<li>You have not entered a <a href="#nickname_anchor">nickname</a></li>';
		errors = 1;
	}
	
	if ( errors == 1 ) {
		error_message += '</ul></div>';
		error_container.innerHTML = error_message;
		return false;
	} else {
		return true;
	}

}

function review_from_profile( county, age, gender, orders ) {

	var from_profile = document.getElementById('from_profile');

	
	var location_field = document.getElementById('location');
	var age_field = document.getElementById('age');
	var gender_field = document.getElementById('gender');
	var shopped_field = document.getElementById('shopped');
	
	if ( from_profile.checked == true ) {
	
		location_field.value = county;
		gender_field.value = gender;
		if ( age < 25 ) {
			age_field.value = 'Under 25';
		} else if ( age >= 25 && age < 35 ) {
			age_field.value = '25 to 34';
		} else if ( age >= 35 && age < 45 ) {
			age_field.value = '35 to 44';
		} else if ( age >= 45 && age < 55 ) {
			age_field.value = '45 to 54';
		} else if ( age >= 55 && age < 65 ) {
			age_field.value = '55 to 64';
		} else if ( age >= 65 ) {
			age_field.value = '65 and over';
		} else {
			age_field.value = '';
		}
		if ( orders == 0 ) {
			shopped_field.value = 'None';
		} else if ( orders == 1 ) {
			shopped_field.value = '1';
		} else if ( orders == 2 ) {
			shopped_field.value = '2';
		} else if ( orders >= 3 && orders <= 5 ) {
			shopped_field.value = '3 to 5';
		} else if ( orders > 5 ) {
			shopped_field.value = 'More than 5';
		} else {
			shopped_field.value = '';
		}
		
		
	} else {
		
		location_field.value = '';
		age_field.value = '';
		gender_field.value = '';
		shopped_field.value = '';
	
	}
	
}

function update_dob() {
	
	var dob_day = document.getElementById('dob_day');
	var dob_month = document.getElementById('dob_month');
	var dob_year = document.getElementById('dob_year');
	var dob = document.getElementById('dob');
	
	dob.value = dob_year.value + '-' + dob_month.value + '-' + dob_day.value;

}

function choose(el) {
	
	var choose_login = document.getElementById('choose_login');
	var choose_register = document.getElementById('choose_register');
	var choose_reminder = document.getElementById('choose_reminder');
	var login_form = document.getElementById('login_form');
	var register_form = document.getElementById('register_form');
	var reminder_form = document.getElementById('reminder_form');
	
	switch(el) {
	
		case 'login' :
			
			choose_login.style.opacity = '1.0';
			choose_login.style.filer = 'alpha(opacity=100)';
			choose_register.style.opacity = '0.5';
			choose_register.style.filer = 'alpha(opacity=50)';
			choose_reminder.style.opacity = '0.5';
			choose_reminder.style.filer = 'alpha(opacity=50)';
			login_form.style.display = '';
			register_form.style.display = 'none';
			reminder_form.style.display = 'none';
			document.getElementById('e').focus();
			break;
			
		case 'register' :
		
			choose_login.style.opacity = '0.5';
			choose_login.style.filer = 'alpha(opacity=50)';
			choose_register.style.opacity = '1.0';
			choose_register.style.filer = 'alpha(opacity=100)';
			choose_reminder.style.opacity = '0.5';
			choose_reminder.style.filer = 'alpha(opacity=50)';
			login_form.style.display = 'none';
			register_form.style.display = '';
			reminder_form.style.display = 'none';
			document.getElementById('title').focus();
			break;
			
		case 'reminder' :
		
			choose_login.style.opacity = '0.5';
			choose_login.style.filer = 'alpha(opacity=50)';
			choose_register.style.opacity = '0.5';
			choose_register.style.filer = 'alpha(opacity=50)';
			choose_reminder.style.opacity = '1.0';
			choose_reminder.style.filer = 'alpha(opacity=100)';
			login_form.style.display = 'none';
			register_form.style.display = 'none';
			reminder_form.style.display = '';
			document.getElementById('email_reminder').focus();
			break;
	
	}

}

function validate_login_form() {

	var e = document.getElementById('e');
	var p = document.getElementById('p');
	var error_container = document.getElementById('login_form_error');
	var error_message = '<div class="message_negative"><ul>';
	var errors = 0;
	
	error_container.innerHTML = '';
	
	if ( e.value == '' ) {
		error_message += '<li>You did not enter your email address</li>';
		errors = 1;
	}
	if ( e.value != '' && ! (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(e.value)) )	{
		error_message += '<li>The email address you entered doesn\'t look correct</li>';
		errors = 1;
	}
	if ( p.value == '' ) {
		error_message += '<li>You did not enter a password</li>';
		errors = 1;
	}
	
	if ( errors == 1 ) {
		error_message += '</ul></div>';
		error_container.innerHTML = error_message;
		return false;	
	} else {
		return true;	
	}
	
}


function validate_register_form() {
	
	var firstname = document.getElementById('firstname');
	var lastname = document.getElementById('lastname');
	var address_1 = document.getElementById('address_1');
	var county = document.getElementById('county');
	var post_code = document.getElementById('post_code');
	var country = document.getElementById('country');
	var telephone = document.getElementById('tel');
	var email = document.getElementById('email');
	var password = document.getElementById('password');
	var confirm_password = document.getElementById('confirm_password');
	var terms = document.getElementById('terms');

	var error_container = document.getElementById('register_form_error');
	var error_message = '<div class="message_negative"><ul>';
	var errors = 0;

	error_container.innerHTML = '';

	if ( country.value != 'gb' ) {
		
		error_message += '<li>Sorry, but if you wish to order from outside the UK,<br />please <a href="contact_us.php" title="Contact us">contact us</a>.</li>';
		errors = 1;
	
	} else {
	
	if ( firstname.value == '' ) {
		error_message += '<li>You did not enter your <a href="#firstname" title="Firstname">firstname</a></li>';
		errors = 1;
	}
	if ( lastname.value == '' ) {
		error_message += '<li>You did not enter your <a href="#lastname" title="Lastname">lastname</a></li>';
		errors = 1;
	}
	if ( address_1.value == '' ) {
		error_message += '<li>You did not enter the <a href="#address_1" title="Address 1">first line of your address</a></li>';
		errors = 1;
	}
	if ( county.value == '' ) {
		error_message += '<li>You did not enter your <a href="#county" title="County">county</a></li>';
		errors = 1;
	}	
	if ( post_code.value == '' ) {
		error_message += '<li>You did not enter your <a href="#post_code" title="Post Code">post code</a></li>';
		errors = 1;
	}
	if ( country.value == '' ) {
		error_message += '<li>You did not select your <a href="#country" title="Country">country</a></li>';
		errors = 1;
	}			
	if ( telephone.value == '' ) {
		error_message += '<li>You did not enter your <a href="#telephone" title="Telephone">telephone number</a></li>';
		errors = 1;
	}	
	if ( email.value == '' ) {
		error_message += '<li>You did not enter your <a href="#email" title="Email">email address</a></li>';
		errors = 1;
	}
	if ( email.value != '' && ! (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value)) ) {
		error_message += '<li>The <a href="#email" title="Email">email address</a> you entered doesn\'t look correct</li>';
		errors = 1;
	}
	if ( password.value == '' ) {
		error_message += '<li>You did not enter a <a href="#password" title="Password">password</a></li>';
		errors = 1;
	}
	if ( confirm_password.value == '' ) {
		error_message += '<li>You did not <a href="#confirm_password" title="Confirm your password">confirm your password</a></li>';
		errors = 1;
	}
	if ( password.value != confirm_password.value ) {
		error_message += '<li>The two <a href="#password" title="Password">passwords</a> you entered do not match</li>';
		errors = 1;
	}
	if ( terms.checked === false ) {
		error_message += '<li>You have not agreed to our <a href="#terms" title="Terms">Terms &amp; Conditions</a></li>';
		errors = 1;
	}
	
	}

	if ( errors == 1 ) {
		error_message += '</ul></div>';
		error_container.innerHTML = error_message;
		return false;	
	} else {
		return true;	
	}
	
}

function validate_reminder_form() {
	
	var e = document.getElementById('email_reminder');
	var error_container = document.getElementById('reminder_form_error');
	var error_message = '<div class="message_negative"><ul>';
	var errors = 0;
	
	error_container.innerHTML = '';
	
	if ( e.value == '' ) {
		error_message += '<li>You did not enter your email address</li>';
		errors = 1;
	}
	if ( e.value != '' && ! (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(e.value)) )	{
		error_message += '<li>The email address you entered doesn\'t look correct</li>';
		errors = 1;
	}
	
	if ( errors == 1 ) {
		error_message += '</ul></div>';
		error_container.innerHTML = error_message;
		return false;	
	} else {
		return true;	
	}
	
}

function validate_address_book_form() {
	
	var firstname = document.getElementById('firstname');
	var lastname = document.getElementById('lastname');
	var address_1 = document.getElementById('address_1');
	var county = document.getElementById('county');
	var post_code = document.getElementById('post_code');
	var country = document.getElementById('country');
	var telephone = document.getElementById('tel');
	var email = document.getElementById('email');

	var error_container = document.getElementById('address_book_form_error');
	var error_message = '<div class="message_negative"><ul>';
	var errors = 0;

	error_container.innerHTML = '';

	if ( country.value != 'gb' ) {
		
		error_message += '<li>Sorry, but if you wish to delivery to outside the UK,<br />please <a href="contact_us.php" title="Contact us">contact us</a>.</li>';
		errors = 1;
	
	} else {
	
	if ( firstname.value == '' ) {
		error_message += '<li>You did not enter your <a href="#firstname" title="Firstname">firstname</a></li>';
		errors = 1;
	}
	if ( lastname.value == '' ) {
		error_message += '<li>You did not enter your <a href="#lastname" title="Lastname">lastname</a></li>';
		errors = 1;
	}
	if ( address_1.value == '' ) {
		error_message += '<li>You did not enter the <a href="#address_1" title="Address 1">first line of your address</a></li>';
		errors = 1;
	}
	if ( county.value == '' ) {
		error_message += '<li>You did not enter your <a href="#county" title="County">county</a></li>';
		errors = 1;
	}	
	if ( post_code.value == '' ) {
		error_message += '<li>You did not enter your <a href="#post_code" title="Post Code">post code</a></li>';
		errors = 1;
	}
	if ( country.value == '' ) {
		error_message += '<li>You did not select your <a href="#country" title="Country">country</a></li>';
		errors = 1;
	}			
	if ( telephone.value == '' ) {
		error_message += '<li>You did not enter your <a href="#telephone" title="Telephone">telephone number</a></li>';
		errors = 1;
	}	
	if ( email.value != '' && ! (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value)) ) {
		error_message += '<li>The <a href="#email" title="Email">email address</a> you entered doesn\'t look correct</li>';
		errors = 1;
	}
	
	}

	if ( errors == 1 ) {
		error_message += '</ul></div>';
		error_container.innerHTML = error_message;
		return false;	
	} else {
		return true;	
	}
	
}


function select_product( product_id, product_availability_id ) {


	var selected_items_field = document.getElementById('selected_items');
	var stock_cell = document.getElementById('stock_cell_' + product_availability_id);
	var item_code = product_id + '|' + product_availability_id;
	var current_items_array = selected_items_field.value.split(",");
	var add_to_bag = document.getElementById('add_to_bag');
	var add_to_wishlist = document.getElementById('add_to_wishlist');
	
	// check for login
	var use_wishlist = 0;
	var loggedin = getCookie('loggedin');
	if ( loggedin != '' && parseInt( loggedin ) > 0 ) {
		use_wishlist = 1;
	}
	
	//	item_code not in current_items_array, add it and change cell class to selected
		if ( in_array( item_code, current_items_array ) === false ) {

			selected_items_field.value += ',' + item_code;
			stock_cell.className = 'selected_stock_cell';

	//	item is in current_items_array, remove ist and change cell class to unselected
		} else {
			
			selected_items_field.value = selected_items_field.value.replace(item_code,'');
			stock_cell.className = 'unselected_stock_cell';		
		
		}

	//	check if any items are selected
		selected_items_field.value = selected_items_field.value.replace(',,',',');
		if ( selected_items_field.value == ',' ) selected_items_field.value = '';
		
	//	enable or disable cart and wishlist buttons
		if ( selected_items_field.value == '' ) {
			add_to_bag.disabled = true;
			add_to_bag.style.opacity = '0.5';
			add_to_bag.style.filter =  'alpha(opacity=50)';
			add_to_wishlist.disabled = true;
			add_to_wishlist.style.opacity = '0.5';
			add_to_wishlist.style.filter =  'alpha(opacity=50)';
		} else {
			add_to_bag.disabled = false;
			add_to_bag.style.opacity = '1.0';
			add_to_bag.style.filter =  'alpha(opacity=100)';
			if ( use_wishlist == 1 ) {
				add_to_wishlist.disabled = false;
				add_to_wishlist.style.color = '#FFFFFF';			
				add_to_wishlist.style.opacity = '1.0';
				add_to_wishlist.style.filter =  'alpha(opacity=100)';
			} else {
				add_to_wishlist.disabled = true;
			}
		}
	
}

function show_product_detail(el) {
	
	var tab_description = document.getElementById('tab_description');
	var tab_further_information = document.getElementById('tab_further_information');
	var tab_delivery = document.getElementById('tab_delivery');
	
	var description = document.getElementById('description');
	var further_information = document.getElementById('further_information');
	var delivery = document.getElementById('delivery');

	tab_description.className = '';
	tab_further_information.className = '';
	tab_delivery.className = '';
	description.style.display = 'none';
	further_information.style.display = 'none';
	delivery.style.display = 'none';
	
	document.getElementById('tab_' + el).className = 'selected';
	document.getElementById(el).style.display = '';

}


function show_image_fields(id) {
	
	var title_text = document.getElementById('title_text_' + id);
	var title_field = document.getElementById('title_field_' + id);
	var main_text = document.getElementById('main_text_' + id);
	var main_field = document.getElementById('main_field_' + id );
	
	title_text.style.display = "none";
	title_field.style.display = "";
	main_text.style.display = "none";
	main_field.style.display = "";


}

function show_status_options() {

	var status_field = document.getElementById('status');
	var expected_date_container = document.getElementById('expected_date_container');
	var num_available_container = document.getElementById('num_available_container');
	
	switch ( status_field.value ) {
	
		case 'pending' :

			expected_date_container.style.display = "";
			num_available_container.style.display = "";
			break;
			
		case 'in stock' :
		
			expected_date_container.style.display = "none";
			num_available_container.style.display = "";
			break;

		case 'out of stock' :
		
			expected_date_container.style.display = "none";
			num_available_container.style.display = "none";
			break;
	
	}

}


function suggest_identifier() {
	var title = document.getElementById('title').value;
	title = title.replace(/ /g, "_");
	title = title.replace(/\?/g, "");
	title = title.replace(/\!/g, "");
	title = title.replace(/@/g, "");
	title = title.replace(/\(/g, "");
	title = title.replace(/\)/g, "");
	title = title.replace(/\*/g, "");
	title = title.replace(/&/g, "");
	title = title.replace(/\./g, "");
	title = title.replace(/\"/g, "" );
	title = title.replace(/\'/g, "" );
	document.getElementById('identifier').value = title.toLowerCase();
}



function expand_categories(id) {

	var link_container = document.getElementById('show_sub_categories_' + id);
	link_container.innerHTML = '<a href="javascript:;" onclick="contract_categories(\'' + id + '\')">collapse &uarr;</a>';
	
	var rows = document.getElementsByTagName('tr');
	for ( var x = 0; x < rows.length; x++ ) {
		var current_id = rows[x].id;
		var current_id_array = current_id.split('_');
		if ( current_id_array[0] == 'sub' && current_id_array[1] == id ) {
			rows[x].className = 'show_sub_categories';
		}
	}
	
	document.cookie = "show_category=" + id + ";";

}

function contract_categories(id) {
	
	var link_container = document.getElementById('show_sub_categories_' + id);
	link_container.innerHTML = '<a href="javascript:;" onclick="expand_categories(\'' + id + '\')">expand &darr;</a>';

	
	var rows = document.getElementsByTagName('tr');
	for ( var x = 0; x < rows.length; x++ ) {
		var current_id = rows[x].id;
		var current_id_array = current_id.split('_');
		if ( current_id_array[0] == 'sub' && current_id_array[1] == id ) {
			rows[x].className = 'hide_sub_categories';
		}
	}

	document.cookie = "show_category=0;";
	
}

function expand_all_categories() {

	var link_container = document.getElementById('expand_all_categories');
	link_container.innerHTML = '<a href="javascript:;" onclick="contract_all_categories()">Contract all categories &uarr;</a>';
	
	var rows = document.getElementsByTagName('tr');
	for ( var x = 0; x < rows.length; x++ ) {
		var current_id = rows[x].id;
		var current_id_array = current_id.split('_');
		if ( current_id_array[0] == 'sub' ) {
			rows[x].className = 'show_sub_categories';
		}
	}

	var divs = document.getElementsByTagName('div');
	for ( var x = 0; x < divs.length; x++ ) {
		var current_id = divs[x].id;
		var current_id_array = current_id.split('_');
		if ( current_id_array[0] == 'show' ) {
			divs[x].innerHTML = '<a href="javascript:;" onclick="contract_categories(\'' + current_id_array[3] + '\')">collapse &uarr;</a>';
		}
	}
	
	document.cookie = "show_all_category=true;";

}

function contract_all_categories() {

	var link_container = document.getElementById('expand_all_categories');
	link_container.innerHTML = '<a href="javascript:;" onclick="expand_all_categories()">Expand all categories &darr;</a>';
	
	var rows = document.getElementsByTagName('tr');
	for ( var x = 0; x < rows.length; x++ ) {
		var current_id = rows[x].id;
		var current_id_array = current_id.split('_');
		if ( current_id_array[0] == 'sub' ) {
			rows[x].className = 'hide_sub_categories';
		}
	}

	var divs = document.getElementsByTagName('div');
	for ( var x = 0; x < divs.length; x++ ) {
		var current_id = divs[x].id;
		var current_id_array = current_id.split('_');
		if ( current_id_array[0] == 'show' ) {
			divs[x].innerHTML = '<a href="javascript:;" onclick="expand_categories(\'' + current_id_array[3] + '\')">expand &darr;</a>';
		}
	}
		
	document.cookie = "show_all_category=false;";

}

function validate_ticket_num() {
	var qty_field_array = document.getElementsByName('qty[]');
	var qty_ordered = 0;
	var current_qty = 0;
	var error_container = document.getElementById('error_container');
	error_container.innerHTML = '';
	for ( var a = 0; a < qty_field_array.length; a++ ) {
		current_qty = parseInt( qty_field_array[a].value );
		qty_ordered = qty_ordered + current_qty;	
	}
	if ( qty_ordered > 5 ) {
		var error_message = '<div class="message_negative"><p>Sorry, you can only order a maximum of 5 tickets.</p></div>';
		error_container.innerHTML = error_message;
		return false;
	} else {
		return true;
	}
}

function update_ticket_qty(n,sel) {
	var qty_field = document.getElementById(n);
	if ( qty_field.value == "" ) qty_field.value = 1;
}

function show_tab(tab) {
	var music = document.getElementById('tab_music');
	var arts = document.getElementById('tab_arts');
	var family = document.getElementById('tab_family');
	music.src = 'media/images/tab_music.jpg';
	arts.src = 'media/images/tab_arts.jpg';
	family.src = 'media/images/tab_family.jpg';
	switch ( tab ) {
		
		case 'music' :
			arts.src = 'media/images/tab_arts_o.jpg';
			family.src = 'media/images/tab_family_o.jpg';
			break;
			
		case 'arts' :
			music.src = 'media/images/tab_music_o.jpg';
			family.src = 'media/images/tab_family_o.jpg';
			break;
		
		case 'family' :
			music.src = 'media/images/tab_music_o.jpg';
			arts.src = 'media/images/tab_arts_o.jpg';
			break;

	}
}

function restore_tab(tab) {
	var music = document.getElementById('tab_music');
	var arts = document.getElementById('tab_arts');
	var family = document.getElementById('tab_family');
	var nav = get_current_page();
	music.src = 'media/images/tab_music.jpg';
	arts.src = 'media/images/tab_arts.jpg';
	family.src = 'media/images/tab_family.jpg';
	
	switch ( nav ) {
			case 'music' :
				music.src = 'media/images/tab_music.jpg';
				arts.src = 'media/images/tab_arts_o.jpg';
				family.src = 'media/images/tab_family_o.jpg';
				break;				
			
			case 'arts' :
				music.src = 'media/images/tab_music_o.jpg';
				arts.src = 'media/images/tab_arts.jpg';
				family.src = 'media/images/tab_family_o.jpg';
				break;						
			
			case 'family' :
				music.src = 'media/images/tab_music_o.jpg';
				arts.src = 'media/images/tab_arts_o.jpg';
				family.src = 'media/images/tab_family.jpg';
				break;				
			
			case 'event' :
				var section_type = get_url_parameter('type');
				music.src = 'media/images/tab_music_o.jpg';
				arts.src = 'media/images/tab_arts_o.jpg';
				family.src = 'media/images/tab_family_o.jpg';
				document.getElementById('tab_' + section_type).src = 'media/images/tab_' + section_type + '.jpg';
				break;
	
	
	
	}
	
}

function show_tools(el) {
	var tools = document.getElementById('website_tools');
	tools.src = 'media/images/tools_' + el + '.gif';
}

function reset_tools() {
	var tools = document.getElementById('website_tools');
	tools.src = 'media/images/tools.gif';
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

//	bookmark a page
	function bookmark_page( url, title ) {
if (window.sidebar) // firefox
	window.sidebar.addPanel(title, url, "");
else if(window.opera && window.print){ // opera
	var elem = document.createElement('a');
	elem.setAttribute('href',url);
	elem.setAttribute('title',title);
	elem.setAttribute('rel','sidebar');
	elem.click();
} 
else if(document.all)// ie
	window.external.AddFavorite(url, title);
}


function bookmarksite(title,url){
if (window.sidebar) // firefox
	window.sidebar.addPanel(title, url, "");
else if(window.opera && window.print){ // opera
	var elem = document.createElement('a');
	elem.setAttribute('href',url);
	elem.setAttribute('title',title);
	elem.setAttribute('rel','sidebar');
	elem.click();
} 
else if(document.all)// ie
	window.external.AddFavorite(url, title);
}

//	limit number of characters in a textarea field
	function limit_characters( limit_field, limit_count_field, limit_num ) {
		limit_field = document.getElementById(limit_field);
		limit_count_field = document.getElementById(limit_count_field);
		if ( limit_field != undefined ) {
			if ( limit_field.value.length > limit_num ) {
				limit_field.value = limit_field.value.substring( 0, limit_num );
			} else {
				limit_count_field.innerHTML	= (limit_num - limit_field.value.length) + ' characters remaining';
			}		
		}	
	}


//	show events on the home page
		function show_events(type) {
			var tab_summary = document.getElementById('tab_summary');
			var tab_water = document.getElementById('tab_water');
			var tab_ashore = document.getElementById('tab_ashore');
			var container_summary = document.getElementById('event_summary');
			var container_water = document.getElementById('event_water');
			var container_ashore = document.getElementById('event_ashore');
			switch ( type ) {
				case 'water' :
					tab_summary.className = 'off';
					tab_water.className = 'on';
					tab_ashore.className = 'off';
					container_summary.style.display = 'none';
					container_water.style.display = '';
					container_ashore.style.display = 'none';
					break;
				case 'ashore' :
					tab_summary.className = 'off';
					tab_water.className = 'off';
					tab_ashore.className = 'on';
					container_summary.style.display = 'none';
					container_water.style.display = 'none';
					container_ashore.style.display = '';
					break;
				default :
					tab_summary.className = 'on';
					tab_water.className = 'off';
					tab_ashore.className = 'off';
					container_summary.style.display = '';
					container_water.style.display = 'none';
					container_ashore.style.display = 'none';
					break;
					
			}
		}


//	when the search field gets the focus
	function search_focus() {
		var search = document.getElementById('search_field');
		if ( search.value == 'Search' ) {
			search.value = '';
		} else {
			search.select();
		}
	}
	
//	when the search field loses the focus
	function search_blur() {
		var search = document.getElementById('search_field');
		if ( search.value == '' ) {
			search.value = 'Search';
		}
	}


//	when the signup field gets the focus
	function signup_focus() {
		var signup = document.getElementById('signup_field');
		if ( signup.value == 'Email Address' ) {
			signup.value = '';
		} else {
			signup.select();
		}
	}
	
//	when the signup field loses the focus
	function signup_blur() {
		var signup = document.getElementById('signup_field');
		if ( signup.value == '' ) {
			signup.value = 'Email Address';
		}
	}


// 	retrieve a url parameter
	function get_url_parameter( name ) {
		name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
		var regexS = "[\\?&]"+name+"=([^&#]*)";
		var regex = new RegExp( regexS );
		var results = regex.exec( window.location.href );
		if( results == null ) {
			return "";
		} else {
			return results[1];
		}
	}

//	preload images
	function preload_images () {
		arImageSrc = new Array ();
		arImageList = new Array ();
		for (counter in arImageSrc) {
			arImageList[counter] = new Image();
			arImageList[counter].src = arImageSrc[counter];
		}
	}

//	convert date and time to unixtimestamp
	function date_to_unixtime(target_field, month_el, day_el, year_el, hour_el, minute_el) {
		var target = document.getElementById(target_field);
		var year = document.getElementById(year_el).value;
		var month = document.getElementById(month_el).value;
		var day = document.getElementById(day_el).value;
		var hour = document.getElementById(hour_el).value;
		var minute = document.getElementById(minute_el).value;
		var second = '01';
		
		var errors = 0;
		var error_message = 'The following elements appear to be missing or incorrect' + "\n";
		if ( year.length != 4 ) {
			error_message += ' - you must enter a 4 digit year' + "\n";
			errors = 1;
		}
		if ( month > 12 ) {
			error_message += ' - the month must be between 1 and 12' + "\n";
			errors = 1;
		}
		if ( day > 31 ) {
			error_message += ' - the day must be between 1 and 31' + "\n";
			errors = 1;
		}
		if ( hour > 24 ) {
			error_message += ' - the hour must be 24 hour (e.g. 13 = 1pm)' + "\n";
			errors = 1;
		}
		if ( minute > 59 ) {
			error_message += ' - the minutes must be between 0 and 59' + "\n";
			errors = 1;
		}
		if ( errors == 1 ) {
			alert( error_message );
		} else {
			var humDate = new Date(Date.UTC(year, (nozeros(month)-1), nozeros(day), nozeros(hour), nozeros(minute), nozeros(second))); 
			target.value = (humDate.getTime()/1000.0);
		}
	
	}

//	get the current page
	function get_current_page() {
		var fullpath = location.pathname;
		var patharray = fullpath.split('/');
		var folderposition = patharray.length - 1;
		var filename = patharray[folderposition];
		var filearray = filename.split('.');
		var nav = filearray[0];
		return nav;
	}

//	check if in admin area
	function in_admin_area() {
		var fullpath = window.location.href.split('/');
		if ( in_array( 'admin', fullpath ) ) {
			return true;
		} else {
			return false;
		}
	}

//	open external links in a new window - replaces target="_blank"
	function externalLinks () { 
		if ( ! document.getElementsByTagName ) return; 
		var anchors = document.getElementsByTagName("a"); 
		for ( var i=0; i < anchors.length; i++ ) { 
			var anchor = anchors[i]; 
			if ( anchor.getAttribute("href") && anchor.getAttribute("rel") == "external" ) anchor.target = "_blank"; 
		} 
	} 

//	add given page to favourites (bookmark)
	function setBookmark ( url, str ) {
		if ( str == '' ) str = url;
		if ( document.all ) window.external.AddFavorite( url, str );
		else alert( 'Sorry, this function only works in Internet Explorer.\n\nPlease press CTRL and D to add a bookmark to \n"' + str + '".' );
	}

//	toggle a given elements visibility
	function toggle (el) {
		if ( document.getElementById(el) == undefined ) return false;
		if ( document.getElementById(el).style.display == 'none' ) {
			document.getElementById(el).style.display = '';
		} else {
			document.getElementById(el).style.display = 'none';
		}
		return true;
	}

//	show a given element
	function show (el) {
		if ( document.getElementById(el) != undefined ) document.getElementById(el).style.display = '';
	}

//	hide a given element
	function hide (el) {
		if ( document.getElementById(el) != undefined ) document.getElementById(el).style.display = 'none';
	}

//	manage the show/hide buttons
	function showhide( source_el, target_el ) {
		var source = document.getElementById(source_el);
		var target = document.getElementById(target_el);
		toggle(target_el);
		if ( target.style.display == 'none' ) {
			source.innerHTML = 'Show &darr;';
			source.className = 'showhide';
		} else {
			source.innerHTML = 'Hide &uarr;';
			source.className = 'hideshow';
		}
	}


//	activate the correct navigation
	function activate_nav() {

	var music = document.getElementById('tab_music');
	var arts = document.getElementById('tab_arts');
	var family = document.getElementById('tab_family');
			
		var nav = get_current_page();
		if ( nav == '' ) {
			nav = 'index';
		}
		
		
		if ( nav == 'search' || nav == 'email' ) {
			nav = 'blank';
		}

		//	show the expanded menu
		if ( in_admin_area() === true ) {
			if ( document.getElementById('nav_' + nav) != undefined ) document.getElementById('nav_' + nav).parentNode.style.display = 'inline';
		}

		var parent_page = nav;
		if ( document.getElementById('nav_' + parent_page) != undefined ) document.getElementById('nav_' + parent_page).className = 'selected';
		
		//	sho sub menus
		var sub_nav_about = document.getElementById('sub_nav_about');
		var sub_nav_products = document.getElementById('sub_nav_products');
		var sub_nav_component = document.getElementById('sub_nav_component');
		var sub_nav_contact = document.getElementById('sub_nav_contact');

		switch ( parent_page ) {
		
			case 'about_avtrade' :
			case 'the_company' :
			case 'ethos_history' :
			case 'people_places' :
			case 'partners' :
			case 'careers' :
				sub_nav_about.style.display = '';
				document.getElementById('nav_about_avtrade').className='heading_expanded selected';
				break;
				
			case 'products_services' :
			case 'engineering_support' :
			case 'global_logistics' :
			case 'aog_support' :
			case 'avnet' :
				sub_nav_products.style.display = '';
				document.getElementById('nav_products_services').className='heading_expanded selected';
				break;
				
			case 'component_support' :
			case 'pbh' :
			case 'leasing' :
			case 'mro' :
			case 'trading' :
				sub_nav_products.style.display = '';
				sub_nav_component.style.display = '';
				document.getElementById('nav_products_services').className='heading_expanded selected';
				document.getElementById('nav_component_support').className='heading_expanded selected';
				break;
				
			case 'contact_avtrade' :
			case 'headquarters' :
			case 'divisions' :
			case 'global' :
			case 'customer_contact' :
			case 'avnet_contact' :
				sub_nav_contact.style.display = '';
				document.getElementById('nav_contact_avtrade').className='heading_expanded selected';
				break;

		}
		

	}

//	make a textarea grow
	function extend_textarea(el) {
		if ( document.getElementById(el) == undefined ) return false;
		el = document.getElementById(el);
		if ( el.value.length > 150 ) {
			el.style.height = "100px";
		} else {
			el.style.height = "50px";
		}
		return true;
	}


//	populate a preview welcome
	function populate_preview_welcome() {

		
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('preview_welcome').innerHTML=xmlHttp.responseText;
				
				var title = document.getElementById('welcome_title');
				var message = document.getElementById('welcome_message');
				
				var preview_title = document.getElementById('preview_title_container');
				var preview_message = document.getElementById('preview_message_container');
				
				preview_title.innerHTML = title.value;
				preview_message.innerHTML = message.value;
			}
		}
		xmlHttp.open("GET","preview_welcome.php",true);
		xmlHttp.send(null);
	}



//	populate a availability form
	function populate_availability_form(title, item_color, identifier, product_id,size_id,option_id) {
		var xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('availability_container').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","availability_form.php?title=" + title + "&item_color=" + item_color + "&identifier=" + identifier + "&product_id=" + product_id + "&size_id=" + size_id + "&option_id=" + option_id,true);
		xmlHttp.send(null);
	}


//	populate a location
	function populate_logistics_location(id) {
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('location_details').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","logistics_location.php?loc=" + id,true);
		xmlHttp.send(null);
	}

//	populate a location
	function populate_location(id) {
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('location_details').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","location.php?loc=" + id,true);
		xmlHttp.send(null);
	}


//	populate a history
	function populate_history(id) {
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('history_panel').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","history_panel.php?year=" + id,true);
		xmlHttp.send(null);
	}


//	populate a org_position
	function populate_org_position(id) {
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('business_card').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","business_card.php?position=" + id,true);
		xmlHttp.send(null);
	}


//	populate a ticket type
	function populate_ticket_type(id,type,time) {
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('ticket_type_dropdown').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","ticket_type.php?id=" + id + "&type=" + type + "&time=" + time,true);
		xmlHttp.send(null);
	}


//	populate a event section
	function populate_event_section(type,active_page,genre,venue,town) {
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('event_container').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","event_list.php?type=" + type + "&genre=" + genre + "&venue=" + venue + "&town=" + town + "&active_page=" + active_page,true);
		xmlHttp.send(null);
	}

//	populate a business card
	function populate_business_card(card_id,card_type) {
		xmlHttp = initiate_ajax();
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				document.getElementById('business_card_content').innerHTML=xmlHttp.responseText;
			}
		}
		xmlHttp.open("GET","business_card.php?card_id=" + card_id + "&card_type=" + card_type,true);
		xmlHttp.send(null);
	}



//	initialise an httpRequest object
	function initiate_ajax() {
		var xmlHttp;
		try {

			// Firefox, Opera 8.0+, Safari
			xmlHttp=new XMLHttpRequest();
		}
		catch (e) {

			// Internet Explorer
			try {
				xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch (e) {
				try {
					xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
				}
				catch (e) {
					alert("Your browser does not support AJAX!");
					return false;
				}
			}
		}
		return xmlHttp;
	}


function in_array (needle, haystack, argStrict) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: vlado houba
    // +   input by: Billy
    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: in_array('van', ['Kevin', 'van', 'Zonneveld']);
    // *     returns 1: true
    // *     example 2: in_array('vlado', {0: 'Kevin', vlado: 'van', 1: 'Zonneveld'});
    // *     returns 2: false
    // *     example 3: in_array(1, ['1', '2', '3']);
    // *     returns 3: true
    // *     example 3: in_array(1, ['1', '2', '3'], false);
    // *     returns 3: true
    // *     example 4: in_array(1, ['1', '2', '3'], true);
    // *     returns 4: false

    var key = '', strict = !!argStrict;

    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {
                return true;
            }
        }
    } else {
        for (key in haystack) {
            if (haystack[key] == needle) {
                return true;
            }
        }
    }

    return false;
}

function urlencode(str) {
	return escape(str).replace(/\+/g,'%2B').replace(/%20/g, '+').replace(/\*/g, '%2A').replace(/\//g, '%2F').replace(/@/g, '%40');
}



function basename (path, suffix) {
    // Returns the filename component of the path  
    // 
    // version: 910.820
    // discuss at: http://phpjs.org/functions/basename
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Ash Searle (http://hexmen.com/blog/)
    // +   improved by: Lincoln Ramsay
    // +   improved by: djmix
    // *     example 1: basename('/www/site/home.htm', '.htm');
    // *     returns 1: 'home'
    // *     example 2: basename('ecra.php?p=1');
    // *     returns 2: 'ecra.php?p=1'
    var b = path.replace(/^.*[\/\\]/g, '');
    
    if (typeof(suffix) == 'string' && b.substr(b.length-suffix.length) == suffix) {
        b = b.substr(0, b.length-suffix.length);
    }
    
    return b;
}



function populate_email_link() {
	
	if ( document.getElementById('nav_email') != undefined ) {
		
		var email_nav = document.getElementById('nav_email');
		var email_link = '';
		
		email_link += 'email.php?';
		email_link += 'fr=' + urlencode( basename( location.href ).replace(/&/g, '~~~') );
		email_link += '&ft=' + urlencode( document.title );
	
		email_nav.href = email_link;
	
	}
	
}


function getCookie(c_name) {
if (document.cookie.length>0)
  {
  c_start=document.cookie.indexOf(c_name + "=");
  if (c_start!=-1)
    {
    c_start=c_start + c_name.length+1;
    c_end=document.cookie.indexOf(";",c_start);
    if (c_end==-1) c_end=document.cookie.length;
    return unescape(document.cookie.substring(c_start,c_end));
    }
  }
return "";
}


//	perform the following functions when the page loads
	window.onload = function(e) {
		populate_email_link();
		externalLinks();
		activate_nav();
		initiate_ajax();


if (/msie/i.test (navigator.userAgent)) //only override IE
{
  document.nativeGetElementById = document.getElementById; 
  document.getElementById = function(id)
  {
    var elem = document.nativeGetElementById(id);
    if(elem)
    {
      //make sure that it is a valid match on id
      if(elem.attributes['id'].value == id)
      {
        return elem;
      }
      else
      {
        //otherwise find the correct element
        for(var i=1;i<document.all[id].length;i++)
        {
          if(document.all[id][i].attributes['id'].value == id)
          {
            return document.all[id][i];
          }
        }
      }
    }
    return null;
  }
}
		
	}
