/**
* readFile
*
* Liest eine Datei ein und gibt den Inhalt als String zurück
* @param string fileUrl Pfad der einzulesenden Datei (relativ zum Pfad der aufrufenden Datei)
* @return string Inhalt der Datei
*/
function readFile(fileUrl) {
    var req;
    var fileContent;
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.open("GET", fileUrl, false);
        req.send(null);
        fileContent = req.responseText;
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        req.open("GET", fileUrl, false);
        req.onreadystatechange=function() {
                                    if (req.readyState == 4) {
                                        fileContent = req.responseText;
                                    }
                                }
        req.send(null);
    }
    return fileContent;
}// FileRead End


/**
* idExists
*
* Überprüft ob die übergebene ID bereits in der Stellendatei vorhanden ist
* @param string id Zu überprüfende ID eines Stellenangebots
* @return boolean Wahr, wenn ID in der Textdatei gefunden wurde, andernfalls falsch
*/
function idExists(id) {
	var mySearchValue = id + "%%";
	var re = new RegExp(mySearchValue);
	
	// Stellendatei einlesen
	var stellen = readFile("stellenangebote/stellen.txt");
	
	// Ergebnis, ob ID + Delimiter vorhanden ist
	var ergebnis = re.test(stellen);
		
	if(ergebnis == true){
		return true;
	}
	else {
		return false;
	}
}


/**
* checkForm
*
* Überprüft, ob eingegebene Formulardaten zulässig sind und macht noch weitere Prüfungen, je nachdem übergebenen Wert von "mode"
* @param integer mode Je nachdem welcher Modus (0,1,2 .. ) werden verschiedene Dinge geprüft, z.B. mode = 0 => Prüfen auf gültige Eingaben; mode = 1 => Zusätzliche Prüfung ob ID schon in stellen.txt vorhanden ist
* @return boolean Wahr, wenn ID in der Textdatei gefunden wurde, andernfalls falsch
*/
function checkForm(mode) {

  if (document.Formular.id.value == "") {
    alert("Bitte eine Nr. für das Stellenangebot eingeben.");
    document.Formular.id.focus();
    return false;
  }
  
  // Wenn mode == 1 , prüfe zusätzlich ob ID bereits vorhanden ist
  if (mode == 1){
   	if ((idExists(document.Formular.id.value))) {
    	alert("Es ist bereits ein Stellenangebot mit dieser Nr. vorhanden. Vergeben Sie eine andere Nr. für Ihr neues Stellenangebot.");
    	document.Formular.id.focus();
    	return false;
	  }
  }
  
  if (!document.Formular.id.value.match(/^\d+$/)) {
    alert("Bitte eine gültige Nr. für das Stellenangebot eingeben. Gültig sind positive, ganze Zahlen.");
    document.Formular.id.focus();
    return false;
  }
  
  if (document.Formular.date.value == "") {
    alert("Bitte ein Datum für das Stellenangebot eintragen.");
    document.Formular.date.focus();
    return false;
  }
   if (!document.Formular.date.value.match(/^\d{2}\.\d{2}\.\d{4}$/)) {
    alert("Bitte ein gültiges Datum im Format dd.mm.yyyy eingeben.");
    document.Formular.date.focus();
    return false;
  }
  
  return true;

}

function decision(message, url){
if(confirm(message)) location.href = url;
}

