$(document).ready(function() {
	// News Box \\
	$('.flap').click(function() {toggle_animation()});
	
	// TipTip \\
	$('#boxes input[type!=button], #boxes textarea, #boxes label, #boxes select').tipTip(); 
	
	// Newsletter \\
	$('#newsletter').tipTip({edgeOffset: 5, defaultPosition: "right"});
	
	// Navigation \\
	$('ul#nav').lavaLamp();
	
	// GMaps \\
	$("#gmap").gMap({ markers: [{ latitude: 47.371328,
								longitude: 9.676032,
								html: '<strong>Tanzschule Happy Dance GmbH</strong><br />Markus-Sittikus-Straße 20<br />6845 Hohenems, Vorarlberg<br /><a href="http://maps.google.ch/maps/place?ftid=0x479b1575b1478941:0x83a6f48370743bc1&q=hohenems,+Markus-Sittikus-Stra%DFe+20&hl=de&ved=0CA0Q-gswAA&sa=X&ei=HSOQTp-tB5ev_AbFp727DQ&sig2=HJyM6hbXY776nSFi-ZHdBQ"  target="_blank">Routenplaner</a>',
								popup: true }],
								zoom: 16 });
	// END document.ready()
	$("#mcs_container").mCustomScrollbar("vertical",400,"easeOutCirc",1.00,"auto","yes","no",15);
	$("#mcs2_container").mCustomScrollbar("vertical",400,"easeOutCirc",1.00,"auto","yes","no",15);
	
	$("#leftnav p.menu_head").click(function(){
	    $(this).next("div.menu_body").slideToggle(300).siblings("div.menu_body").slideUp("slow");
	});
	
	$("#order_btn").click(function() {
		$("#order").slideToggle('slow');
		
	});
	
	if(getURLParameter('m')){
		$('#'+getURLParameter('m').replace(/\s/g,'')).next("div.menu_body").slideToggle(300).siblings("div.menu_body").slideUp("slow");
	}
	if(getURLParameter('s')){
		$('#'+getURLParameter('s').replace(/\s/g,'')).next("div.menu_body").slideToggle(300).siblings("div.menu_body").slideUp("slow");
	}
	if(getURLParameter('l')){
		var param = getURLParameter('l');
		$('#'+getURLParameter('s').replace(/\s/g,'')).css('color', '#000');
		$('#'+getURLParameter('s').replace(/\s/g,'')+" a").css('color', '#000');
		$('#'+getURLParameter('m').replace(/\s/g,'')).css('color', '#000');
		$('#'+getURLParameter('m').replace(/\s/g,'')+" a").css('color', '#000');
		$('#'+getURLParameter('l').replace(/\s/g,'')).css('color', '#000');
		$('#'+getURLParameter('l').replace(/\s/g,'')+" a").css('color', '#000');
	}
	
	// GALLERY \\
	$('#gallery a').lightBox();
});

function toggle_animation(){
	if($(window).width() == $('#newsbox').position().left){
		$('#newsbox').animate({"right": "+=280px"}, 1000, function() { hide() });
	}else{
		$('#newsbox').animate({"right": "-=280px"}, 1000, function() { hide() });
	}
}

function hide(){
	if($('#newsbox').position().left > $(window).width()){
		$('#newsbox').css('right', -280);
	}else if(($(window).width() - $('#newsbox').position().left) >> 280){
		$('#newsbox').css('right', 0);
	}
}

function in_array (needle, haystack, argStrict) {
    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 emailtxt(id, focused){
	// DEFAULT
	if(!id || !focused){
		for(i=0; i<emailfields.length; i++){
			document.getElementById(emailfields[i]).value = emailfieldstxt[emailfields[i]];
			document.getElementById(emailfields[i]).style.color = "#999";
			document.getElementById(emailfields[i]).style.fontStyle = "italic";
			document.getElementById(emailfields[i]).className = "";
		}
	}else{
		
		if(focused == true){
			if(document.getElementById(id).value == emailfieldstxt[id]){
				document.getElementById(id).value = "";
			}
			document.getElementById(id).style.color = "#000";
			document.getElementById(id).style.fontStyle = "normal";
		}

		if(focused == 'false'){
			//alert(id+" "+focused);
			if(document.getElementById(id).value == ""){
				document.getElementById(id).value = emailfieldstxt[id];
				document.getElementById(id).style.color = "#999";
				document.getElementById(id).style.fontStyle = "italic";
			}
		}
	}
}

function sendmail(){
	var emailcontent = new Array();
		emailcontent['vorname'] = document.getElementById('vorname').value
		emailcontent['name'] = document.getElementById('name').value
		emailcontent['email'] = document.getElementById('email').value
		emailcontent['betreff'] = document.getElementById('betreff').value
		emailcontent['msg'] = document.getElementById('msg').value
	var errorcount = 0;
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-_])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	for(i=0; i<emailfields.length; i++){
		if(in_array(emailcontent[emailfields[i]], emailfieldstxt) || emailcontent[emailfields[i]] == ""){
			document.getElementById(emailfields[i]).className = "redglow";
			errorcount++;
		}
	}
	
	if (!filter.test(emailcontent['email'])) {
		document.getElementById('email').className = "redglow";
		errorcount++;
	}
	
	if(errorcount == 0){
	var params = "action=email&vorname="+emailcontent['vorname']+"&name="+emailcontent['name']+"&email="+emailcontent['email']+"&betreff="+emailcontent['betreff']+"&msg="+emailcontent['msg'];
	if(window.XMLHttpRequest){
		xmlhttp = new XMLHttpRequest();
	}else{
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange = function(){
		if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
			if(xmlhttp.responseText == "OK"){
				document.getElementById('emailsent').innerHTML = '<span style="color:#4A1;">Email erfolgreich gesendet!</span>';
				emailtxt();
			}else{
				document.getElementById('emailsent').innerHTML = '<span style="color:#F00;">'+xmlhttp.responseText+'</span>';
			}
		}else{
			document.getElementById('emailsent').innerHTML = '<span style="color:#FD1;">Email wird gesendet...</span>';
		}
	}
	xmlhttp.open("POST", "./includes/ajaxrequests.php", true);
	xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlhttp.send(params);
	}
}

function getURLParameter(name) {
    return decodeURI(
        (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
    );
}

function tanzpartner(){
	var str = document.getElementById('adresse');
	var ort = document.getElementById('plzort');
	
	var str_2 = document.getElementById('padresse');
	var ort_2 = document.getElementById('pplzort');
	
	var gleich = document.getElementById('gleich');
	
	if(gleich.checked == true){
		str_2.value = str.value;
		str_2.disabled = true;
		
		ort_2.value = ort.value;
		ort_2.disabled = true;
	}else{		
		str_2.disabled = false;
		ort_2.disabled = false;
	}
}

function tanzkursanmeldung(){
	for(i=0; i<kursfields.length; i++){
		if(kursfields[i] == "bemerkungen"){
			document.getElementById(kursfields[i]).className = "area";
		}else{
			document.getElementById(kursfields[i]).className = "";
		}
	}

	var kurscontent = new Array();
		kurscontent['kurs'] = document.getElementById('kurs').value;
		kurscontent['kursdate'] = document.getElementById('kursdate').value;
		kurscontent['vorname'] = document.getElementById('vorname').value;
		kurscontent['name'] = document.getElementById('name').value;
		kurscontent['geburt'] = document.getElementById('geburt').value;
		kurscontent['adresse'] = document.getElementById('adresse').value;
		kurscontent['plzort'] = document.getElementById('plzort').value;
		kurscontent['tel'] = document.getElementById('tel').value;
		kurscontent['mail'] = document.getElementById('mail').value;
		
		kurscontent['pvorname'] = document.getElementById('pvorname').value;
		kurscontent['pname'] = document.getElementById('pname').value;
		kurscontent['pgeburt'] = document.getElementById('pgeburt').value;
		kurscontent['padresse'] = document.getElementById('padresse').value;
		kurscontent['pplzort'] = document.getElementById('pplzort').value;
		kurscontent['ptel'] = document.getElementById('ptel').value;
		kurscontent['pmail'] = document.getElementById('pmail').value;
		
		kurscontent['bemerkungen'] = document.getElementById('bemerkungen').value;
		
	var errorcount = 0;
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-_])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	for(i=0; i<kurspflicht.length; i++){
		if(in_array(kurscontent[kurspflicht[i]], kursfieldstxt) || kurscontent[kurspflicht[i]] == ""){
			document.getElementById(kurspflicht[i]).className = "redglow";
			errorcount++;
		}
		if (!filter.test(kurscontent['mail'])) {
			document.getElementById('mail').className = "redglow";
			errorcount++;
		}
	}
	
	for(j=0; j<kurspflicht.length; j++){
		if(!in_array(kurscontent["p"+kurspflicht[j]], kursfieldstxt) && kurscontent["p"+kurspflicht[j]] != ""){
			for(k=0; k<kurspflicht.length; k++){
				if(in_array(kurscontent["p"+kurspflicht[k]], kursfieldstxt) || kurscontent["p"+kurspflicht[k]] == ""){
					document.getElementById("p"+kurspflicht[k]).className = "redglow";
					errorcount++;
				}
				if (!filter.test(kurscontent['pmail']) ) {
					document.getElementById('pmail').className = "redglow";
					errorcount++;
				}
			}
		}
	}
	
	if(errorcount == 0){
	var params = "action=anmeldung&category="+getURLParameter('s');
	
	for(var x = 0; x<kursfields.length; x++){
		params += "&"+kursfields[x]+"="+kurscontent[kursfields[x]];
	}	

	if(window.XMLHttpRequest){
		xmlhttp = new XMLHttpRequest();
	}else{
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange = function(){
		if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
			if(xmlhttp.responseText == "OK"){
				document.getElementById('anmeldestatus').innerHTML = '<span style="color:#4A1;">Anmeldung erfolgreich gesendet!</span>';
				kurstxt();
			}else{
				document.getElementById('anmeldestatus').innerHTML = '<span style="color:#F00;">'+xmlhttp.responseText+'</span>';
			}
		}else{
			document.getElementById('anmeldestatus').innerHTML = '<span style="color:#FD1;">Anmeldung wird verarbeitet...</span>';
		}
	}
	xmlhttp.open("POST", "./includes/ajaxrequests.php", true);
	xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlhttp.send(params);
	}
}

function kurstxt(id, focused){
	// DEFAULT
	if(!id || !focused){
		for(i=0; i<kursfields.length; i++){
			if(kursfields[i] != 'kursdate' && kursfields[i] != 'kurs'){
				document.getElementById(kursfields[i]).value = "";
				document.getElementById(kursfields[i]).value = kursfieldstxt[kursfields[i]];
				document.getElementById(kursfields[i]).style.color = "#999";
				document.getElementById(kursfields[i]).style.fontStyle = "italic";
				if(kursfields[i] == "bemerkungen"){
					document.getElementById(kursfields[i]).className = "area";
				}else{
					document.getElementById(kursfields[i]).className = "";
				}
			}
		}
	}else{
		
		if(focused == true){
			if(document.getElementById(id).value == kursfieldstxt[id]){
				document.getElementById(id).value = "";
			}
			document.getElementById(id).style.color = "#000";
			document.getElementById(id).style.fontStyle = "normal";
		}

		if(focused == 'false'){
			if(document.getElementById(id).value == ""){
				document.getElementById(id).value = kursfieldstxt[id];
				document.getElementById(id).style.color = "#999";
				document.getElementById(id).style.fontStyle = "italic";
			}
		}
	}
}

function ClassDelete(id){
	document.getElementById(id).className = "";
	document.getElementById(id).style.color = "#000";
	document.getElementById(id).style.borderColor = "#000";
	document.getElementById(id).style.fontStyle = "normal";
}

function ClassSet(id){
	document.getElementById(id).style.color = "#999";
	document.getElementById(id).style.fontStyle = "italic";
	document.getElementById(id).style.borderColor = "";
}

function InputTxtChange(arr, id, focused){
	// DEFAULT
	if(arr && id && !focused){
		document.getElementById(id).value = arr[id];
		document.getElementById(id).style.color = "#999";
		document.getElementById(id).style.fontStyle = "italic";
	}else{
		if(focused == true){
			if(document.getElementById(id).value == arr[id]){
				document.getElementById(id).value = "";
			}
			ClassDelete(id);
		}

		if(focused == 'false'){
			if(document.getElementById(id).value == ""){
				document.getElementById(id).value = arr[id];
				ClassSet(id);
			}
		}
	}
}

function NLSend(){
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-_])+\.)+([a-zA-Z0-9]{2,4})+$/;
	var nl = document.getElementById('newsletter');
	
	var email_send = nl.value;
	
	if (!filter.test(nl.value)) {
		nl.className = "redBG";
	}else{
		if(window.XMLHttpRequest){
			xmlhttp = new XMLHttpRequest();
		}else{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
		xmlhttp.onreadystatechange = function(){
			if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
				if(xmlhttp.responseText == "OK"){
					nl.style.color = "#060";
					nl.style.borderColor = "#090";
					nl.value = 'Emailadresse abonniert';
				}else{
					nl.style.color = "#900";
					nl.style.borderColor = "#800";
					nl.value = xmlhttp.responseText;
				}
			}else{
				nl.style.color = "#F90";
				nl.value = "Sende Daten...";
			}
		}
		xmlhttp.open("POST", "./includes/ajaxrequests.php", true);
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlhttp.send('action=newsletter&email='+email_send);
	}
}

function submitenter(myfield,e){
	var keycode;
	
	if (window.event) keycode = window.event.keyCode;
	else if (e) keycode = e.which;
	else return true;

	if (keycode == 13){
		NLSend();
		return false;
	}else{
		return true;
	}
}
