/**
 * Hides/Show elements with respect to the selected category
 * Called in the download-center view 
 * @author Frc
 * langId = language id, 22 = german, 24 = english
 */
function filterCategories(langId) {
	
	var selectedIndex = document.downloadCenterForm.categories.selectedIndex;
	var numberOfTables = document.downloadCenterForm.categories.length;
	var hits = 0;
	
	for (var i = 1; i < numberOfTables; i++) {
		hits += parseInt(document.getElementById("group_"+i+"_info").innerHTML);
		var element = document.getElementById("group_"+i);
		if(i != selectedIndex && selectedIndex != 0){
			$("#group_"+i).fadeOut();
			if(element != null)
				element.style.display = 'none';
			hits -= parseInt(document.getElementById("group_"+i+"_info").innerHTML);
		}
		else{
			$("#group_"+i).fadeIn();
			if(element != null)
				element.style.display = '';
		}
	}
	if (hits == 0) {
		if(langId == 22)
			document.getElementById("notice").innerHTML = "<br><i>Keine Elemente der Kategorie \""+ document.downloadCenterForm.categories.options[selectedIndex].text +"\" gefunden!</i>";
		else
			document.getElementById("notice").innerHTML = "<br><i>No elements from category \""+ document.downloadCenterForm.categories.options[selectedIndex].text +"\" found!</i>";
	}
	else{
		document.getElementById("notice").innerHTML = "";
	}
}
/**
 * Navigates to the WERBEFORM of the selected magazine
 * Is called from a graphic link teaser block.
 * @author Frc
 */
function gotoSelectedMagazine(){
	var href = document.reservationDescription_form.reservationDescription_select.options[document.reservationDescription_form.reservationDescription_select.selectedIndex].value;
	if(href == '#')
		return;
	else
		document.location.href = href;
}
/**
 * Initialises the looped slider in the articles-"WERBEFORMEN" tab 
 * @author Frc
 */
$(function(){
	
	$('#advertisingSlide').loopedSlider({
		autoStart: 0,
		restart:0,
		containerClick: false
	});
});
/**
 * @author Frc
 */
function getSelectedArticleAdvert(){
	 var selIndex = document.articleWerbeformenAdvertForm.werbeformSelect.selectedIndex;
	 if(selIndex == 0 || document.getElementById("selectedAdvert").innerHTML.toLowerCase() == document.articleWerbeformenAdvertForm.werbeformSelect.options[selIndex].text.toLowerCase()){
		 document.articleWerbeformenAdvertForm.werbeformSelect.selectedIndex = 0;
		 return;
	 }
	 document.articleWerbeformenAdvertForm.submit();
}
/**
 * @author Frc
 
$(function(){
	$(".gallery:first a[rel^='prettyPhoto']").prettyPhoto({animationSpeed:'slow',theme:'light_square'});
	$(".gallery:gt(0) a[rel^='prettyPhoto']").prettyPhoto({animationSpeed:'fast',theme:'light_square',slideshow:10000});
});
*/
/***Contactform processing starts here***/
function openContactformWindow(){
	var selectedIndex = document.getElementById('contactPersonInterests').selectedIndex;
	
	if(selectedIndex == 0)
		return;
	else{
		var value = document.getElementById('contactPersonInterests').options[selectedIndex].value;
		var splitValue = value.split('__');
		if(splitValue.length < 2){
			alert('Javascript error: Please reload page!');
			return;
		}
		document.ansprechpartnerContactForm.fieldOfInterest.value = splitValue[1];
		if(splitValue[0] == '1'){
			document.getElementById("articleSelectRow").style.display = '';
			document.ansprechpartnerContactForm.showMagazines.value = '1';
		}
		else{
			document.getElementById("articleSelectRow").style.display = 'none';
			document.ansprechpartnerContactForm.showMagazines.value = '0';
		}
		document.getElementById('contactPersonInterests').options[0].selected = true;
	}
	document.ansprechpartnerContactForm.fieldOfInterest.value = splitValue[1];
	document.getElementById("interest").innerHTML = value = document.getElementById('contactPersonInterests').options[selectedIndex].text;
	$("#showContactForm").trigger('click');
}

function sendContactForm(langId){
	var valid = validateContactForm(langId);
	if(valid){
		document.ansprechpartnerContactForm.messageSent.value = '1';
		document.ansprechpartnerContactForm.submit();
		tb_remove();
	}
}

function sendContactFormLivePaper(langId){
	var valid = validateContactFormLivePaper(langId);
	if(valid){
		document.ansprechpartnerContactForm.messageSent.value = '1';
		document.ansprechpartnerContactForm.submit();
		tb_remove();
	}
}

function validateContactFormLivePaper(langId){
	if (!validateContactForm(langId)) {
		return false;
	}
	
	// also validate postal address for printed price lists request
	// street
	var obj = document.ansprechpartnerContactForm.street;
	if (jQuery.trim(obj.value) == ""){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie ihre Straße und Hausnummer ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter your street and house number!";
		obj.focus();
		return false;
	} else {
		obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
		document.getElementById("contactformErrorNote").innerHTML = "";
	}

	// postcode
	var obj = document.ansprechpartnerContactForm.postcode;
	if (jQuery.trim(obj.value) == "" || isNaN(obj.value) || obj.value.length != 5){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie eine gültige Postleitzahl ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter a valid postcode!";
		obj.focus();
		return false;
	} else {
		obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
		document.getElementById("contactformErrorNote").innerHTML = "";
	}

	// city
	var obj = document.ansprechpartnerContactForm.city;
	if (jQuery.trim(obj.value) == ""){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie ihren Ort ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter your city!";
		obj.focus();
		return false;
	} else {
		obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
		document.getElementById("contactformErrorNote").innerHTML = "";
	}

	// go on with 'normal' validation
	return true;
}

function validateContactForm(langId){
	var obj = document.ansprechpartnerContactForm.surname;
	if (jQuery.trim(obj.value) == ""){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie ihren Namen ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter your name!";
		obj.focus();
		return false;
	}
	else{
		obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
		document.getElementById("contactformErrorNote").innerHTML = "";
	}
	obj = document.ansprechpartnerContactForm.company;
	if (jQuery.trim(obj.value) == ""){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie Ihren Firmennamen ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter your company name!";
		obj.focus();
		return false;
	}
	else{
		obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
		document.getElementById("contactformErrorNote").innerHTML = "";
	}
	obj = document.ansprechpartnerContactForm.name;
	if (jQuery.trim(obj.value) == ""){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie Ihren Vornamen ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter your first name!";
		obj.focus();
		return false;
	}
	else{
		obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
		document.getElementById("contactformErrorNote").innerHTML = "";
	}
	obj = document.ansprechpartnerContactForm.email;
	if (jQuery.trim(obj.value) == ""){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie Ihre E-Mail Adresse ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter your e-mail adress!";
		obj.focus();
		return false;
	}
	else{
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
		if(reg.test(obj.value) == false){
			obj.style.borderColor = "#FF0000";
			if(langId == 22)
				document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie eine g&uuml;ltige E-Mail Adresse ein!";
			else
				document.getElementById("contactformErrorNote").innerHTML = "Please enter a valid e-mail adress!";
			obj.focus();
			return false;
		}
		else{
			obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
			document.getElementById("contactformErrorNote").innerHTML = "";
		}
	}
	obj = document.ansprechpartnerContactForm.message;
	if (jQuery.trim(obj.value) == ""){
		obj.style.borderColor = "#FF0000";
		if(langId == 22)
			document.getElementById("contactformErrorNote").innerHTML = "Bitte geben Sie Ihre Nachricht ein!";
		else
			document.getElementById("contactformErrorNote").innerHTML = "Please enter your message!";
		obj.focus();
		return false;
	}
	else{
		obj.style.borderColor = "#AAADB2 #DBDEE3 #E2E9EF #E3E3EB";
		document.getElementById("contactformErrorNote").innerHTML = "";
	}
	
	return true;
}

function setContactformMessageWordCounter(textArea, limitNum, eventCode, langId){
	if(textArea.value.length >= limitNum){
		textArea.value = textArea.value.substring(0, limitNum);
		if(langId == 22)
			document.getElementById('contactformMessageWordCounter').innerHTML = "(Erlaubte Zeichengrenze erreicht!)";
		else
			document.getElementById('contactformMessageWordCounter').innerHTML = "(Character boundry reached!)";
	}
	else
		if(langId == 22)
			document.getElementById('contactformMessageWordCounter').innerHTML = "("+ parseInt(textArea.value.length) + "/" + limitNum + " Zeichen)";
		else
			document.getElementById('contactformMessageWordCounter').innerHTML = "("+ parseInt(textArea.value.length) + "/" + limitNum + " Characters)";
}

function clearContactFormEntries(){
	var obj = document.ansprechpartnerContactForm.surname;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.company;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.name;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.email;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.message;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.street;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.postcode;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.city;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.article;
	obj.options[0].selected = true;
	
	obj = document.ansprechpartnerContactForm.fieldOfInterest;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.showMagazines;
	obj.value = "";
	obj = document.ansprechpartnerContactForm.messageSent;
	obj.value = "";
}

function cancelContactForm(){
	document.getElementById("contactformErrorNote").innerHTML = "";
	tb_remove();
}
/***Contactform processing ends here***/

function handleClickedAnsprechpartner(emailPrefix, emailSuffix){
	self.location.href = 'mailto: '+emailPrefix+'@'+emailSuffix;
}
