// element of crime | functions.js

var DOM = (document.getElementById);

	function submit_theform(){
		var alerttext = "";

		// email
		var zeichen="/ ;:,δόφ<>";
		eingabe = document.getElementById("email_id").value;
		laenge = eingabe.length;
		for(i=0; i<laenge; i++) {
	  		badchar = eingabe.charAt(i);
	  		if (zeichen.indexOf(badchar)>-1) {
				alerttext += "\nDeine Email enthaelt ungueltige Zeichen.";
			}
		}   		
     	var PosEt = document.getElementById("email_id").value.indexOf("@");
     	var PosPt = document.getElementById("email_id").value.indexOf(".", PosEt);
     	if ((document.getElementById("email_id").value == '') || (PosPt == -1) || (PosPt - PosEt < 2) || (document.getElementById("email_id").value.length - PosPt < 3) || (PosEt == -1) || (PosEt == 0) || (document.getElementById("email_id").value.indexOf("@", PosEt + 1) > PosEt)) {
			alerttext += "\nDeine Email ist ungueltig.";	
		}


		var zeichen="/;:,<>";


		// pers_firstname_id   
        if (document.getElementById("pers_firstname_id").value == ""){      
			alerttext += "\nDein Vorname fehlt."; 
        }
		eingabe = document.getElementById("pers_firstname_id").value;
		laenge = eingabe.length;
		for(i=0; i<laenge; i++) {
	  		badchar = eingabe.charAt(i);
	  		if (zeichen.indexOf(badchar)>-1) {
				alerttext += "\nDein Vorname enthaelt ungueltige Zeichen.";
			}
		}

		/*
		// pers_street_cityname_id  
        if (document.getElementById("pers_street_cityname_id").value == ""){      
			alerttext += "\nCity missing."; 
        }
		*/
		
		// listname_id_1 + listname_id_2
 		if (document.getElementById('listname_id_1').checked==false && document.getElementById('listname_id_2').checked==false) { 
			alerttext += "\n\nWillst Du den Element Of Crime - Newsletter gleich mitbestellen?"; 
		}

		// final check
		if (alerttext != "") {
			alerttext = "Fehler, bitte ueberpruefe:\n" + alerttext;
			alert(alerttext);
			return false;
		} else {
			// alerttext = "No errors :)";
			// alert(alerttext);

			document.getElementById('submit_id').disabled = true;			
			document.getElementById('submit_id').value = 'Bitte warten ...';
			return true;
		}
	}


function winopen(url,name,style) { 
	var newWin = window.open(url,name,style);
	newWin.focus();
}


toggle_simple = function(id) {		
	if (DOM) {
		node = document.getElementById(id);

		if (node) {					
   			if (node.style.display == "") {
				// ausschalten
   				node.style.display = "none";
   			} else {
				// einschalten
   				node.style.display = "";
  			}
 		}
	}
}


toggle = function(id, toggle_id, toggle_basename) {		
	if (DOM) {
		node = document.getElementById(id);

		if (node) {					
   			if (node.style.display == "") {
				// ausschalten
   				node.style.display = "none";
				if (document.images) {
					document.getElementById(toggle_id).src = "images/icons/" + toggle_basename + "_off.gif";
				}	
   			} else {
				// einschalten
   				node.style.display = "";
				if (document.images) {
					document.getElementById(toggle_id).src = "images/icons/" + toggle_basename + "_on.gif";
				}
  			}
 		}
	}
}


function getHash() {
	var reqString = "";
	var hashString = window.location.hash;
	/*
	if (hashString){
		hashString = hashString.slice(hashString.indexOf('#') +1);			
		var hashArray = hashString.split('&');	
		if (hashArray.length > 0){
			for (var i=0; i<hashArray.length; i++ ) {
				var hashPair = hashArray[i].split( '=' );				
				var hashName = (escape(hashPair[0])).toLowerCase();
				var hashValue = escape(hashPair[1]);
				if (hashName && hashValue && hashName != undefined && hashValue != undefined) {
					reqString += "&" + hashName + "=" + hashValue;
				}
			}				
		}
	}	
	return reqString;
	*/
	if (hashString){
		hashString = hashString.slice(hashString.indexOf('#') +1);
	}
	return hashString;
}


function show(id) {
	document.getElementById(id).style.display = "";
}


function ShowEffect(element){
	obj = document.getElementById(element);
    new Effect.Appear(obj, {duration:1, from:0, to:1.0});
}


function hide(id) {
	document.getElementById(id).style.display = "none";
}


function HideEffect(id){
    new Effect.Appear(id, {duration:1, from:1.0, to:0, afterFinish:function() { hide(id); }  });
}


function BUEffect(id){
	new Effect.BlindUp(id, {duration:2});
}


function ecard() {
	// alert( "ecard()" );
	
	// check input:
	
	// firstname
	var zeichen=";<>";
	eingabe = document.getElementById("ecardform").firstname.value;
	if (eingabe == "") {
		alert("Dein Vorname fehlt!");
		return false;
	}
	laenge = eingabe.length;
	for(i=0; i<laenge; i++) {
	  	badchar = eingabe.charAt(i);
	  	if (zeichen.indexOf(badchar)>-1) {
			alert("Dein Vorname enthaelt ungueltige Zeichen.");
			return false;
		}
	}
	
	// email_from
	var zeichen="/ ;:,δόφ<>";
	eingabe = document.getElementById("ecardform").email_from.value;
	laenge = eingabe.length;
	for(i=0; i<laenge; i++) {
	  	badchar = eingabe.charAt(i);
	  	if (zeichen.indexOf(badchar)>-1) {
			alert("Deine Email enthaelt ungueltige Zeichen.");
			return false;
		}
	}   		
    var PosEt = eingabe.indexOf("@");
    var PosPt = eingabe.indexOf(".", PosEt);
    if ((eingabe == '') || (PosPt == -1) || (PosPt - PosEt < 2) || (eingabe.length - PosPt < 3) || (PosEt == -1) || (PosEt == 0) || (eingabe.indexOf("@", PosEt + 1) > PosEt)) {
		alert("Deine Email ist ungueltig.");
		return false;
	}

	// email_to
	var zeichen="/:δόφ<>";
	eingabe = document.getElementById("ecardform").email_to.value;
	laenge = eingabe.length;
	for(i=0; i<laenge; i++) {
	  	badchar = eingabe.charAt(i);
	  	if (zeichen.indexOf(badchar)>-1) {
			alert("Die Empfaenger-Email enthaelt ungueltige Zeichen.");
			return false;
		}
	}
	/*
    var PosEt = eingabe.indexOf("@");
    var PosPt = eingabe.indexOf(".", PosEt);
    if ((eingabe == '') || (PosPt == -1) || (PosPt - PosEt < 2) || (eingabe.length - PosPt < 3) || (PosEt == -1) || (PosEt == 0) || (eingabe.indexOf("@", PosEt + 1) > PosEt)) {
		alert("Die Empfaenger-Email ist ungueltig.");
		return false;
	}
	*/

	/*
	// comment
	eingabe = document.getElementById("ecardform").comment.value;
	if (eingabe == "") {
		alert("Das Textfeld ist leer!");
		return false;
	}
	if (eingabe.length > 255) {
		alert("Dein Text ist zu lang!");
		return false;
	}
	*/
	
	// send data
	var oOptions = {
		method: "POST",
		parameters: Form.serialize("ecardform"),
		asynchronous: true,
		onFailure: function (oXHR) {
			$('ecard_feedback').update(oXHR.statusText);
		},
		onLoading: function (oXHR) {
			$('ecard_feedback').update('Sending data ... <img align="middle" src="images/layout/loading.gif" title="Loading..." alt="Loading..." border="0" />');
		},							
		onSuccess: function(oXHR) {
			$('ecard_feedback').update(oXHR.responseText);
		}				
	};		
	var oRequest = new Ajax.Updater({success: oOptions.onSuccess.bindAsEventListener(oOptions)}, "ecards/ecard_main.php", oOptions);
	return true;
}

// peace out