// JavaScript Document
// *********************************************
// ** SPRACHAUSWAHL SPEICHERN MITTELS COOKIES **
// *********************************************

// Boolean Variable spezifiziert für den Fall, dass ein 
// alert-Fenster aufgeblendet werden soll, falls das Cookie 4KB 
// überschreitet
var caution = false;
// name - Name von dem Cookie
// value - Wert von dem Cookie
// [expires] - Ablaufdatum von dem Cookie 
// (default - Ende mit der aktuellen  Session)
 // [path] - Pfad für den das Cookie gültig ist
// (default - Pfad von dem aufgerufenen Dokument)
// [domain] - Domain für den das Cookie gültig ist
// (default - Domain von dem aufgerufenen Dokument)
// [secure] - Boolean Wert, der festlegt, ob das Cookie zur 
// Transmission einen sicheren Weg verwendet.
// * An Argument wird mit Defaulteinstellung verwendet, wenn null 
// als Platzhalter zugewiesen wird
// * Ein null-Platzhalter wird nicht benötigt für am Ende 
// weggelassene Argumente

function setCookie(name, value, expires, path, domain, secure)
{
  var curCookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
  if (!caution || (name + "=" + escape(value)).length <= 4000)
    document.cookie = curCookie
  else
  if (confirm("Cookie überschreitet 4KB und wird abgeschnitten!"))
    document.cookie = curCookie;
}
// name - Name von dem gewünschten Cookie
// * Returnstring mit dem Wert von dem angegebenen Cookie oder 
// null, wenn das Cookie nicht existiert
function getCookie(name)
{
  var prefix = name + "=";
  var CookieStartIndex = document.cookie.indexOf(prefix);
  if (CookieStartIndex == -1)
    return null;
  var CookieEndIndex = 
   document.cookie.indexOf(";", CookieStartIndex + prefix.length);
  if (CookieEndIndex == -1)
    CookieEndIndex = document.cookie.length;
  return unescape(document.cookie.substring(
    CookieStartIndex + prefix.length, CookieEndIndex));
}
// name - Name von dem Cookie
// [path] - Pfad von dem Cookie (muss identisch zu dem beim 
// Erstellen verwendeten Pfad sein)
// [domain] - Domain von dem Cookie  (muss identisch zu dem beim 
// Erstellen verwendeten Domain sein)
// * path und domain werden auf Defaultwerte gesetzt, wenn
// null zugewiesen oder kein explizites Argument vorhanden ist
function deleteCookie(name, path, domain)
{
  if (getCookie(name))
  {
    document.cookie = name + "=" + ((path) ? "; path=" + 
      path : "") +((domain) ? "; domain=" + domain : "") + 
      "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

function sprachesetzen(sprache)
{
	// Das Verfallsdatum für das Cookie berechnen: 
	var datum = new Date();  					// Ein Datumsobjekt erzeugen
	var jahr = datum.getFullYear();				// Die aktuelle Jahreszahl auslesen
	jahr = jahr + 2;							// Das Jahr um 2 hochzählen: Das Cookie bleibt 5 Jahre aktiv!!!
	datum.setFullYear(jahr);					// Das Verfallsjahr in das Datumsobjekt schreiben
	var verfallsdatum = datum.toGMTString(); 	// Den GMT-String für das Verfallsdatum erzeugen!

	// Evtl. alte Cookies löschen
	deleteCookie("sprache");
	setCookie("sprache",sprache,verfallsdatum);
}

function spracheabfragen()
{
	var aktuellesprache = getCookie("sprache");
	// alert ("Im Cookie steht jetzt: " + aktuellesprache);		// Für Tests aktivieren!
	switch (aktuellesprache)
	{
		case 'deu':
			eval("window.location.replace('http://www.reicor.com/index.php?deu')");
			break;
		case 'eng':
			// eval("window.location.replace('http://www.reicor.com/index.php?eng')");
			break;
		case 'fra':
			eval("window.location.replace('http://www.reicor.com/index.php?fra')");
			break;
			case 'esp':
			eval("window.location.replace('http://www.reicor.com/index.php?esp')");
			break;
		case 'chi':
			eval("window.location.replace('http://www.reicor.com/index.php?chi')");
			break;
		case null:
			// eval("window.location.replace('http://www.reicor.com/index.php?eng')");
			break;
	}
}