// JavaScript Document
/*** Für die Bewerbung ***/

//Felder aus Formular abrufen und auf Inhalt prüfen
// im Formular wird über onSubmit"return pruefeEingabe()" die Funktion pruefeEingabe aufgerufen
function pruefeEingabe() { 
//Variable für die eMail-Abfrage (reguläre Ausdrücke s. 217:
var re_mail = /^([_a-zA-Z0-9-]+)(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$/;
var re_zahl = /^[0-9]([0-9-]|[ ]){5,}[0-9]$/;
var re_plz = /[0-9]{5}/; 
var re_html = /</;

//inputfelder in Variabelen schreiben

var vorname = document.formular.vorname.value;
var name = document.formular.name.value;
var orga = document.formular.orga.value;
var web = document.formular.web.value;
var mail = document.formular.mail.value;
var telefon = document.formular.telefon.value;
var plz = document.formular.plz.value;
var ort = document.formular.ort.value;
var strasse = document.formular.strasse.value;
var grund = document.formular.grund.value;
var bemerkung = document.formular.bemerkung.value;
var bedingung = document.formular.bedingung.checked;
var inhalt = "Mit * versehene Felder müssen ausgefüllt werden.";
var checked; // = true;
var x = 0;
//HTML?
if(re_html.test(vorname)==true || 
	re_html.test(name)==true || 
	re_html.test(orga)==true || 
	re_html.test(web)==true || 
	re_html.test(ort)==true || 
	re_html.test(strasse)==true || 
	re_html.test(grund)==true || 
	re_html.test(bemerkung)==true) {
		document.getElementById('html').style.display = "block";
		checked = false;
		x--;
}
else {
	document.getElementById('html').style.display = "none";
	checked = true;
	x=0;
}

//eigentliche Abfrage:
if(vorname.length<1) {
  document.getElementById('1').style.color = "#990000";
  checked = false;
}
else {document.getElementById('1').style.color = "#000000";
	x++;
	//checked = true;
}

if(name.length<1) {
  document.getElementById('2').style.color = "#990000";
  checked = false;
}
else {document.getElementById('2').style.color = "#000000";
	//checked = true;
	x++;
}

if(mail!="") {
if((re_mail.test(mail))==false) {
	  document.getElementById('3').style.color = "#990000";
	  document.getElementById('3').firstChild.nodeValue = "falsche Mail";
checked = false;
}
else {checked = true;
}}

if((re_zahl.test(telefon))==false) {
  document.getElementById('4').style.color = "#990000";
  checked = false;
}
else {document.getElementById('4').style.color = "#000000";
	//checked = true;
	x++;
}

if(strasse.length<1) {
  document.getElementById('5').style.color = "#990000";
  checked = false;
}
else {document.getElementById('5').style.color = "#000000";
	//checked = true;
	x++;
	}

if((re_plz.test(plz))==false) {
  document.getElementById('6').style.color = "#990000";
  checked = false;
}
else {document.getElementById('6').style.color = "#000000";
	//checked = true;
	x++;}

if(ort.length<1) {
  document.getElementById('7').style.color = "#990000";
  checked = false;
}
else {document.getElementById('7').style.color = "#000000";
	//checked = true;
	x++;}

if(grund.length<5) {
  document.getElementById('8').style.color = "#990000";
  checked = false;
}
else {document.getElementById('8').style.color = "#000000";
	checked = true;
	x++;}

if(bedingung!=true) {
  document.getElementById('9').style.color = "#990000";
  document.getElementById('9').style.fontWeight = "bold";
  document.getElementById('9a').style.color = "#990000";
  document.getElementById('9').firstChild.nodeValue = "Bedingungen!";
  checked = false;
}
else {
  document.getElementById('9a').style.color = "#000000";
  document.getElementById('9').style.color = "#000000";
  document.getElementById('9').firstChild.nodeValue = " ";
  //checked = true;
  x++;
}
//für checked!
if(x==8) {checked = true;}
else {checked = false;}
if(checked) {
	document.formular.send.value = "yes";
	document.formular.method = "post";
	document.formular.action = "spendebewerbung_check.php";
	document.formular.submit();
}
else {
	textfeld = document.getElementById('text');
	textfeld.style.fontWeight = 'bold';
	textfeld.style.color = '#990000';
	textfeld.firstChild.nodeValue = inhalt;
	
	scrolli = document.getElementById('scroll');
	scrolli.style.height = "315px";
	document.formular.vorname.focus();
}
return checked;
}

//INSERTS - Formatierungen und Hilfebox
function hilfe(was) {
 	var feld = document.getElementById('help');
	switch(was) {
	 case "fett": var inhalt = "fetter Text - [b]text[/b] oder [xx][b]text[/b][/xx] - auf die Reihenfolge achten!"; break;
	 case "kursiv": var inhalt = "kursiver Text - [em]text[/em] oder [xx][em]text[/em][/xx] - auf die Reihenfolge achten!"; break;
	 case "xx": var inhalt = "größerer Text, 15px - [xx]text[/xx] oder [xx][b]text[/b][/xx] - auf die Reihenfolge achten!"; break;
	 case "weblink": var inhalt = "einen http://-Link setzen. Es muss eine Webadresse eingegeben werden. www. nicht vergessen! "; break;
	 case "rot": var inhalt = "Text rot färben - [rot]text[/rot] oder [rot][b]text[/b][/rot] - auf die Reihenfolge achten!"; break;
 	 case "ico": var inhalt = "Ein Smile einfügen - im Textfeld, dort wo sich der Curser befindet"; break;
	 case "kopieren": var inhalt = "Text kopieren - Text markieren, dann auf zitieren klicken"; break;
	}
	feld.firstChild.nodeValue = inhalt;
}
function hilfeout() {
 	var feld = document.getElementById('help');
	var inhalt = "HINWEISE - So geht\'s"; 
	feld.firstChild.nodeValue = inhalt;
}

//Für Kommentare: Zitate
function kopie(aTag, eTag) {
	aTag = "[quote]";
	eTag = "[/quote]";
  var input = document.forms['formular'].elements['zitiertext'];
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
	if(insText.length>1) {
	kopieText = aTag + insText + eTag;
	}
  }
    /* für neuere auf Gecko basierende Browser */
 if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
	kopieText = aTag + insText + eTag;
  }
  insert(kopieText,'');
  return kopieText;
}

function insert(aTag, eTag) {
  var input = document.forms['formular'].elements['text'];
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = aTag + insText + eTag;
    /* Anpassen der Cursorposition */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -eTag.length);
    } else {
      range.moveStart('character', aTag.length + insText.length + eTag.length);      
    }
    range.select();
  }
  /* für neuere auf Gecko basierende Browser */
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
	//alert(insText);
    input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
    /* Anpassen der Cursorposition */
    var pos;
    if (insText.length == 0) {
      pos = start + aTag.length;
    } else {
      pos = start + aTag.length + insText.length + eTag.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* für die übrigen Browser */
  else
  {
    /* Abfrage der Einfügeposition */
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    /* Einfügen des Formatierungscodes */
    var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
    input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos);
  }
}

