/*  Modul: gewinnzahlen.js
 * $Workfile::   rl_gewinnzahlen.js        $
 * $Revision::   1.2                       $
 * $Modtime::   Feb 12 2010 18:04:58       $
 *
*   Beschreibung: Java-Script Funktionen für die html-Seite Gewinnzahlen
*                  Allgemeine Prüfungsfunktionen und Cookie-Behandlung
*   Functionen:
*             eingaben_pruefen()
*             losnummer_pruefen(i_losnummer)
*             setCookie(bigName, numDays, to_confirm)
*             WM_readCookie(name)
*             getCookieValues(the_cookie, the_info)
*             UpdateForm()
*             confirm_cookie_del(cookie_name)
*
*   Änderungen
* Vers. Datum    Wer      Was
*       10.01.03 ph       Funktionen aus Vorversion übernommen
*       13.01.2003 ak     Überarbeitung.
*       25.09.2003 ak     MCS-2046.
*       04.15.2003 ak     MCS-1917. + 5 Abfragefelder.
*       14.01.2004 ak     MCS-1917. QS-Korrektur.
*       01.03.2005 ak     MCS-2518. Renten-Joker.
*       25.05.2005 ak     MCS-2579.
* 1.1   02.09.2008 ak     MCS-3892. *defaultValidDays
* 1.2   04.02.2010 tvo    MCS-4269/ *losnummer_pruefen
* 1.3   12.02.2010 tvo    MCS-4275 bereits beschriebene eingabefelder nicht überschreiben.
****************************************************************/
//  Globale Konstanten
var cookie_separator = ";";
var subvalues_separator = "/";
var cookie_value_separator = ":";  // Separator zwischen Subvalue-Namen und dem Wert des Subbvalues
var splitvalues = new Array();
var GewZahlenCookieRL = 'rl_gewinnzahlen_pers';
// Namen der Inputfelder auf der Seite
splitvalues[1] = "i_losnummer1";
splitvalues[2] = "i_losnummer2";
splitvalues[3] = "i_losnummer3";
splitvalues[4] = "i_losnummer4";
splitvalues[5] = "i_losnummer5";
splitvalues[6] = "i_losnummer6";
splitvalues[7] = "i_losnummer7";
splitvalues[8] = "i_losnummer8";
splitvalues[9] = "i_losnummer9";
splitvalues[10] = "i_losnummer10";
splitvalues[11] = "i_losnummer11";
splitvalues[12] = "i_losnummer12";
splitvalues[13] = "i_losnummer13";
splitvalues[14] = "i_losnummer14";
splitvalues[15] = "i_losnummer15";
splitvalues[16] = "i_losnummer16";
splitvalues[17] = "i_losnummer17";
splitvalues[18] = "i_losnummer18";
splitvalues[19] = "i_losnummer19";
splitvalues[20] = "i_losnummer20";
splitvalues[21] = "i_losnummer21";
splitvalues[22] = "i_losnummer22";
splitvalues[23] = "i_losnummer23";
splitvalues[24] = "i_losnummer24";
splitvalues[25] = "i_losnummer25";


ii = 0;

var defaultValidDays = 365*10; // 10 Jahre
/* Prüft, ob i_losnummer eine Ganzzahl ist
*/
function losnummer_pruefen(i_losnummer)
{

var ergebnis = true;            // Annahme: Angaben richtig
var zeichen_okay = true;       // Annahme, alle Zeichen sind zul&auml;ssig
var akt_zeichen_pos = 0;        //Z&auml;hler f&uuml;r aktuelles Zeichen
var count_ziffern =0;
var akt_zeichen  = " ";
var erlaubte_zeichen = "1234567890.";     // erlaubt sind Ziffern


  // Test, ob nur Ziffern eingegeben wurden (jede Ziffer wird &uuml;berpr&uuml;ft)
     while (zeichen_okay && (akt_zeichen_pos < i_losnummer.length))
      {
        akt_zeichen = i_losnummer.charAt(akt_zeichen_pos);
        zeichen_okay = (erlaubte_zeichen.indexOf(akt_zeichen) != -1);
        akt_zeichen_pos++;
        if (akt_zeichen!="."){
           count_ziffern++;
        }
      }
      if (!zeichen_okay||count_ziffern>7)
      {
        alert ("Bitte geben Sie Ihre 7-stellige(n) Losnummer(n) mit oder ohne die Punkte ein. Zur erneuten Abfrage: „LÖSCHEN“ anklicken und die richtige(n) Losnummer(n) eintragen.");
        ergebnis = false;
       }
return ergebnis
}
/* Prüfung der Benutzereingaben
*/
function eingaben_pruefen()
{

var ergebnis = true;
var losnummer1  = document.Eingaben.i_losnummer1.value;
var losnummer2  = document.Eingaben.i_losnummer2.value;
var losnummer3  = document.Eingaben.i_losnummer3.value;
var losnummer4  = document.Eingaben.i_losnummer4.value;
var losnummer5  = document.Eingaben.i_losnummer5.value;
var losnummer6  = document.Eingaben.i_losnummer6.value;
var losnummer7  = document.Eingaben.i_losnummer7.value;
var losnummer8  = document.Eingaben.i_losnummer8.value;
var losnummer9  = document.Eingaben.i_losnummer9.value;
var losnummer10 = document.Eingaben.i_losnummer10.value;
var losnummer11 = document.Eingaben.i_losnummer11.value;
var losnummer12 = document.Eingaben.i_losnummer12.value;
var losnummer13 = document.Eingaben.i_losnummer13.value;
var losnummer14 = document.Eingaben.i_losnummer14.value;
var losnummer15 = document.Eingaben.i_losnummer15.value;
var losnummer16 = document.Eingaben.i_losnummer16.value;
var losnummer17 = document.Eingaben.i_losnummer17.value;
var losnummer18 = document.Eingaben.i_losnummer18.value;
var losnummer19 = document.Eingaben.i_losnummer19.value;
var losnummer20 = document.Eingaben.i_losnummer20.value;
var losnummer21 = document.Eingaben.i_losnummer21.value;
var losnummer22 = document.Eingaben.i_losnummer22.value;
var losnummer23 = document.Eingaben.i_losnummer23.value;
var losnummer24 = document.Eingaben.i_losnummer24.value;
var losnummer25 = document.Eingaben.i_losnummer25.value;



if (losnummer1.length + losnummer2.length + losnummer3.length + losnummer4.length + losnummer5.length +
    losnummer6.length + losnummer7.length + losnummer8.length + losnummer9.length + losnummer10.length+
	losnummer11.length + losnummer12.length + losnummer13.length + losnummer14.length + losnummer15.length+
    losnummer16.length + losnummer17.length + losnummer18.length + losnummer19.length + losnummer20.length+
	losnummer21.length + losnummer22.length + losnummer23.length + losnummer24.length + losnummer25.length == 0)     // keine Losnummer eingetragen
 {
    alert("Bitte tragen Sie eine Losnummer ein.")
    ergebnis = false
 }

browserName = navigator.appName;
browserVer = parseInt ( navigator.appVersion );
version = "too_old";
if ( browserName == "Netscape" && browserVer >= 4 ) version = "ok";
if ( browserName == "Microsoft Internet Explorer" && browserVer >=4 ) version = "ok";
if ( version == "ok" && ergebnis)  // keine Pr&uuml;fung der Losnummern, wenn Browser-Version <4
 {
  ergebnis = losnummer_pruefen(losnummer1);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer2);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer3);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer4);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer5);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer6);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer7);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer8);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer9);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer10);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer11);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer12);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer13);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer14);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer15);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer16);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer17);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer18);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer19);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer20);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer21);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer22);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer23);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer24);
  if (ergebnis) ergebnis = losnummer_pruefen(losnummer25);

 }
return ergebnis;
}


/* Cookie setzen
 bigName - Name des Cookies (z.B. "Gewinnabfrage")
 numDays - Lebensdauer des Cookie
 to_confirm - ob die Bestätigung zum Speichern angefordert wird.
*/
function setCookie(bigName, numDays, to_confirm) {
  var expire = new Date ();
  var nDays = numDays;
  var toSave;
  if (nDays == null) nDays = defaultValidDays; // 10 Jahre
  expire.setTime (expire.getTime() + (nDays * 24 * 3600000));
  //                                  (dd)   (hr) (ms in hr)
  var WholeCookie = "";//expire ;

  toSave = eingaben_pruefen();
  if (toSave)
  {
  	if (to_confirm)
   		toSave = confirm('Wollen Sie die Losnummern speichern?');
	if (toSave)
	{
		WholeCookie = WholeCookie + splitvalues[1] + cookie_value_separator + document.Eingaben.i_losnummer1.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[2] + cookie_value_separator + document.Eingaben.i_losnummer2.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[3] + cookie_value_separator + document.Eingaben.i_losnummer3.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[4] + cookie_value_separator + document.Eingaben.i_losnummer4.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[5] + cookie_value_separator + document.Eingaben.i_losnummer5.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[6] + cookie_value_separator + document.Eingaben.i_losnummer6.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[7] + cookie_value_separator + document.Eingaben.i_losnummer7.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[8] + cookie_value_separator + document.Eingaben.i_losnummer8.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[9] + cookie_value_separator + document.Eingaben.i_losnummer9.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[10] + cookie_value_separator + document.Eingaben.i_losnummer10.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[11] + cookie_value_separator + document.Eingaben.i_losnummer11.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[12] + cookie_value_separator + document.Eingaben.i_losnummer12.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[13] + cookie_value_separator + document.Eingaben.i_losnummer13.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[14] + cookie_value_separator + document.Eingaben.i_losnummer14.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[15] + cookie_value_separator + document.Eingaben.i_losnummer15.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[16] + cookie_value_separator + document.Eingaben.i_losnummer16.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[17] + cookie_value_separator + document.Eingaben.i_losnummer17.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[18] + cookie_value_separator + document.Eingaben.i_losnummer18.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[19] + cookie_value_separator + document.Eingaben.i_losnummer19.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[20] + cookie_value_separator + document.Eingaben.i_losnummer20.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[21] + cookie_value_separator + document.Eingaben.i_losnummer21.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[22] + cookie_value_separator + document.Eingaben.i_losnummer22.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[23] + cookie_value_separator + document.Eingaben.i_losnummer23.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[24] + cookie_value_separator + document.Eingaben.i_losnummer24.value + subvalues_separator;
		WholeCookie = WholeCookie + splitvalues[25] + cookie_value_separator + document.Eingaben.i_losnummer25.value + subvalues_separator;

		document.cookie = bigName +"=" + escape (WholeCookie) + cookie_separator + "expires=" + expire.toGMTString();
	}
  }
}

// Lesen des Cookie
function WM_readCookie(name) {
	if (document.cookie == '') {
       return false;
	}
	else {
	   var firstChar, lastChar;
	   var theBigCookie = document.cookie;
	   firstChar = theBigCookie.indexOf(name);    // find the start of 'name'
	   if(firstChar != -1 && theBigCookie.charAt(name.length) != cookie_separator)  {
   	      firstChar += name.length + 1;
          lastChar = theBigCookie.indexOf(cookie_separator, firstChar);
          if(lastChar == -1) {
            if (theBigCookie.charAt(firstChar-1) == cookie_separator)
              lastChar = firstChar;
            else
             lastChar = theBigCookie.length;
          }
	      return unescape(theBigCookie.substring(firstChar, lastChar));
       }
       else {// If there was no cookie of that name, return false.
         return false;
       }
   }
}
// Liest die Subwerte des Cookies the_cookie in das assoziativen Array the_info
function getCookieValues(the_cookie, the_info)
{
    var separated_values;
	// break each name:value pair into an array
    separated_values = the_cookie.split(subvalues_separator);
	// loop through the list of name:values and load
	// up the associate array
	var property_value = "";
	for (var loop = 0; loop < separated_values.length; loop++)
	{
		property_value = separated_values[loop];
		var broken_info = property_value.split(cookie_value_separator);
		var the_property = broken_info[0];
		var the_value = broken_info[1];
		the_info[the_property] = the_value;
	}
    return (loop -1);
}

function trim(value) {
  var ret = value;
  if (value == null) return "";
  while ( ret.charAt(0) == " ")
      ret = ret.substring(1);
  while (ret.charAt(ret.length-1) == " ")
      ret = ret.substring(0,ret.length-1);
  return ret;
}


// Liest die Werte des Cookies "Gewinnabfrage" in das Eingabenfelder der Maske.
function UpdateForm () {
 var cookie_value = WM_readCookie(GewZahlenCookieRL);
 var cookie_information = new Array();
 var len=0;
 if (cookie_value && cookie_value!= "") {
    len = getCookieValues(cookie_value,cookie_information);
    if (document.Eingaben.i_losnummer1.value=='') document.Eingaben.i_losnummer1.value  = cookie_information[splitvalues[1]];
    if (document.Eingaben.i_losnummer2.value=='') document.Eingaben.i_losnummer2.value  = cookie_information[splitvalues[2]];
    if (document.Eingaben.i_losnummer3.value=='') document.Eingaben.i_losnummer3.value  = cookie_information[splitvalues[3]];
    if (document.Eingaben.i_losnummer4.value=='') document.Eingaben.i_losnummer4.value  = cookie_information[splitvalues[4]];
    if (document.Eingaben.i_losnummer5.value=='') document.Eingaben.i_losnummer5.value  = cookie_information[splitvalues[5]];
    if (document.Eingaben.i_losnummer6.value=='') document.Eingaben.i_losnummer6.value  = cookie_information[splitvalues[6]];
    if (document.Eingaben.i_losnummer7.value=='') document.Eingaben.i_losnummer7.value  = cookie_information[splitvalues[7]];
    if (document.Eingaben.i_losnummer8.value=='') document.Eingaben.i_losnummer8.value  = cookie_information[splitvalues[8]];
    if (document.Eingaben.i_losnummer9.value=='') document.Eingaben.i_losnummer9.value  = cookie_information[splitvalues[9]];
    if (document.Eingaben.i_losnummer10.value=='') document.Eingaben.i_losnummer10.value  = cookie_information[splitvalues[10]];
    if (document.Eingaben.i_losnummer11.value=='') document.Eingaben.i_losnummer11.value  = cookie_information[splitvalues[11]];
    if (document.Eingaben.i_losnummer12.value=='') document.Eingaben.i_losnummer12.value  = cookie_information[splitvalues[12]];
    if (document.Eingaben.i_losnummer13.value=='') document.Eingaben.i_losnummer13.value  = cookie_information[splitvalues[13]];
    if (document.Eingaben.i_losnummer14.value=='') document.Eingaben.i_losnummer14.value  = cookie_information[splitvalues[14]];
    if (document.Eingaben.i_losnummer15.value=='') document.Eingaben.i_losnummer15.value  = cookie_information[splitvalues[15]];	
	 if (document.Eingaben.i_losnummer16.value=='') document.Eingaben.i_losnummer16.value  = cookie_information[splitvalues[16]];
	 if (document.Eingaben.i_losnummer17.value=='') document.Eingaben.i_losnummer17.value  = cookie_information[splitvalues[17]];
	 if (document.Eingaben.i_losnummer18.value=='') document.Eingaben.i_losnummer18.value  = cookie_information[splitvalues[18]];
	 if (document.Eingaben.i_losnummer19.value=='') document.Eingaben.i_losnummer19.value  = cookie_information[splitvalues[19]];
	 if (document.Eingaben.i_losnummer20.value=='') document.Eingaben.i_losnummer20.value  = cookie_information[splitvalues[20]];
	 if (document.Eingaben.i_losnummer21.value=='') document.Eingaben.i_losnummer21.value  = cookie_information[splitvalues[21]];
	 if (document.Eingaben.i_losnummer22.value=='') document.Eingaben.i_losnummer22.value  = cookie_information[splitvalues[22]];
	 if (document.Eingaben.i_losnummer23.value=='') document.Eingaben.i_losnummer23.value  = cookie_information[splitvalues[23]];
	 if (document.Eingaben.i_losnummer24.value=='') document.Eingaben.i_losnummer24.value  = cookie_information[splitvalues[24]];
	 if (document.Eingaben.i_losnummer25.value=='') document.Eingaben.i_losnummer25.value  = cookie_information[splitvalues[25]];        
 }else
 {
      
  }

}

// Löscht das Cookie "Gewinnabfrage"
function confirm_cookie_del(cookie_name) {
if (confirm('Wollen Sie die Losnummern wirklich loeschen?')){
   document.cookie = cookie_name + "=;expires=Thu, 01-Jan-70 00:00:01 GMT";
   UpdateForm(cookie_name);
    document.Eingaben.i_losnummer1.value  = '';
       document.Eingaben.i_losnummer2.value  = '';
       document.Eingaben.i_losnummer3.value  = '';
       document.Eingaben.i_losnummer4.value  = '';
       document.Eingaben.i_losnummer5.value  = '';
       document.Eingaben.i_losnummer6.value  = '';
       document.Eingaben.i_losnummer7.value  = '';
       document.Eingaben.i_losnummer8.value  = '';
       document.Eingaben.i_losnummer9.value  = '';
       document.Eingaben.i_losnummer10.value = '';
       document.Eingaben.i_losnummer11.value = '';
       document.Eingaben.i_losnummer12.value = '';
       document.Eingaben.i_losnummer13.value = '';
       document.Eingaben.i_losnummer14.value = '';
       document.Eingaben.i_losnummer15.value = '';     
       document.Eingaben.i_losnummer16.value = '';
       document.Eingaben.i_losnummer17.value = '';
       document.Eingaben.i_losnummer18.value = '';
       document.Eingaben.i_losnummer19.value = '';
       document.Eingaben.i_losnummer20.value = '';
       document.Eingaben.i_losnummer21.value = '';
       document.Eingaben.i_losnummer22.value = '';
       document.Eingaben.i_losnummer23.value = '';
       document.Eingaben.i_losnummer24.value = '';
       document.Eingaben.i_losnummer25.value = '';
  }
}
