
//*******************************************//
//-- Scriptname: 	menue.js
//-- Beschreibung:
//-- erstellt:           28-12-2006
//-- input:
//*******************************************//
var browser = navigator.appName;  	//-- Browserweiche

var IMGwarten = new Image();		//-- IMG Radar
IMGwarten.src = "./../images/suchMenue/radar_blau.gif";

//*******************************************//
//-- XML-Request erstellen
//*******************************************//
function erzXMTHttpRequestObject()
{
 var resObjekt = null;
 try
 { resObjekt = new ActiveXObject("Microsoft.XMLHTTP"); }
 catch(Error)
 { try
   { resObjekt = new ActiveXObject("MSXML2.XMLHTTP"); }
   catch(Error)
   { try
     { resObjekt = new XMLHttpRequest(); }
     catch(Error)
    { alert("Erzeugen eines XMLHttpRequest-Objekts ist nicht möglich"); }
  }
 }
 return resObjekt;
}

//*******************************************//
//-- Formularelement erhaelt Focus
//-- input:	string eleId -> ID
//*******************************************//
function setFocus(eleId)
{
 document.getElementById(eleId).value = "";		//-- leert Eingabefeld
 displayNone('errLogIn');                                //-- blendet Fehlermeldung "LogIn" aus
 displayNone('errLogLostKennwort');			//-- blemdet Fehlermeldung "Kennwort" aus
 displayNone('showAjaxResult');                 		//-- blendet Ergebnis von Branche und Ort aus
 displayNone('bg_ajaxResult');				//-- blendet Hintergund fuer Ergebnisse aus

 //-- Element ist "Kennwortfeld" und kein IE
 if( (eleId == 'login_kennwort') && (browser == 'Netscape') )
 { document.getElementById(eleId).type = 'password'; }	//-- aebdert den InputType auf 'password' -> kein IE
}

//*******************************************//
//-- Formularelement verliert Focus
//-- input:      string eleValue 	-> value-Wert
//--		string eleId 		-> ID
//--		string eleVorgabe 	-> default-Wert
//--		int eleHidd		-> Nr des Formularelements Hiddenfeld
//*******************************************//
function setBlur(eleValue, eleId, eleVorgabe, eleHidd)
{
 var valueHidd = null;
 if(eleHidd)
 { valueHidd = document.frm_suche.elements[eleHidd].value; }	//-- gespeicherte Wert

 //-- Eingabe ist leer oder kein Wert ist gespeichert
 if( eleValue.match(/^ *$/) || (valueHidd == "") )
 {
  document.getElementById(eleId).value = eleVorgabe;		//-- Vorgabewert sezten
  colorWhite(eleId);                                             //-- Textfarbe Weiss
  if(eleHidd)
  { document.frm_suche.elements[eleHidd].value = ""; } 		//-- ggf. vorhandene gespeicherte Werte4 loeschen
  //-- Element ist "Kennwortfeld"
  if(eleId == 'login_kennwort')
  { document.getElementById(eleId).type = 'text'; }  		//-- aebdert den InputType auf 'text' -> kein IE
 }
}

//*******************************************//
//-- Aendert die Textfarbe der Eingabefelder
//-- input:	string eleId -> ID
//*******************************************//
function colorGreen(eleId)
{ document.getElementById(eleId).style.color = '#BBE820'; }	//-- Gruen

function colorWhite(eleId)
{ document.getElementById(eleId).style.color = '#FFFFFF'; }	//-- Weiss

//*******************************************//
//-- blendet Elemente ein oder aus
//-- input:      string eleId -> ID
//*******************************************//
function displayBlock(eleId)
{ document.getElementById(eleId).style.display = 'block'; } 	//-- eingeblendet

function displayNone(eleId)
{ document.getElementById(eleId).style.display = 'none'; }  	//-- ausgeblendet

//*******************************************//
//-- LOGIN
//-- prueft die Eingabe vor dem Versenden
//-- input:	string defaultEmail 	-> default-Value-Wert E-Mail-Adresse
//--		string defaultKennwort	-> default-Value-Wert Kennwort
//*******************************************//
function checkLogIn(defaultEmail, defaultKennwort)
{
 var email 	= document.getElementById('login_email').value; 	//-- Eingabe E-Mail-Adresse
 var kennwort 	= document.getElementById('login_kennwort').value;      //-- Eingabe Kennwort
 var send 	= true;
 displayNone('showAjaxResult');
 displayNone('bg_ajaxResult');

 //-- keine E-Mail-Adresse oder ohne @ und .
 if( (email == defaultEmail) || email.indexOf('@')==-1 || email.indexOf('.')==-1 )
 { send = false; }

 //-- kein Kennwort
 if( kennwort == defaultKennwort)
 { send = false; }

 if(send)
 { //-- Eingaben werden mit DB geprueft
  resObjekt = erzXMTHttpRequestObject();
  resObjekt.open('get', '../scripte_php/menue/AJAX_checkLogIn.php?email='+email+'&kennwort='+kennwort, true);
  resObjekt.onreadystatechange = handleRespunseCheckLogIn;
  resObjekt.send(null);
 }
 else
 {
  displayBlock('errLogIn');                      //-- blendet Fehlermeldung "LogIn" ein
  displayNone('errLogLostKennwort');  		//-- blendet Felhlermeldung "Kennwortvergesse" aus
  displayNone('warten');                         //-- blendet "Radar" aus
  displayNone('errLogSendKennwort');             //-- blendet Meldung "Kennwort zugesamdt" aus
 }
}

function handleRespunseCheckLogIn()
{
 if(resObjekt.readyState == 4)
 {
  var reture = resObjekt.responseText.split("~@~");	//-- Rueckgabewert speichern
  //-- Eingabe war OK
   if(reture[0] == "ok")
   {
    document.frm_login.action = "../Branchen/anmelden.php?userID="+reture[1];
    document.frm_login.submit(); 			//-- Formular versenden -> LogIn
   }
   //-- Eingabe war fehlerhaft
   else
   {
    displayNone('warten');			//-- blendet "Radar" aus
    displayBlock('errLogIn');         		 //-- blendet Fehlermeldung ein
   }
 }
 else
 {
  document.getElementById('warten').src = IMGwarten.src;		//-- weisst Image zu
  //-- Brower ist Netscape
   if(browser == 'Netscape')
   {
    document.getElementById('warten').style.marginLeft = 85+"px";//-- Position Links
    document.getElementById('warten').style.top = 456+"px";     	//-- Position Top
   }
   else  //-- Browser ist kein Netscape -> z.B IE
   {
    document.getElementById('warten').style.marginLeft = 85+"px";//-- Position Links
    document.getElementById('warten').style.top = 466+"px";  	//-- Position Top
   }
  displayBlock('warten');					//-- blendet "Radar" ein
 }
}

//*******************************************//
//-- LOGIN
//-- versendet das Kennwort zu der E-Mail-adresse
//-- input:	string defaultEmail -> default-Value-Wert E-Mail-Adresse
//*******************************************//
function lostKennwort(defaultEmail)
{
 var email 	= document.getElementById('login_email').value;		//-- Eingabe E-Mail-Adresse
 displayNone('showAjaxResult');
 displayNone('bg_ajaxResult');
 //-- keine E-Mail-Adresse oder ohne @ und .
 if( (email == defaultEmail) || email.indexOf('@')==-1 || email.indexOf('.')==-1 )
 {
  displayNone('errLogIn');       		//-- blendet Fehlermeldung "LogIn" aus
  displayBlock('errLogLostKennwort');            //-- blendet Felhlermeldung "Kennwortvergesse" ein
 }
 else
 {
  resObjekt = erzXMTHttpRequestObject();
  resObjekt.open('get', '../scripte_php/menue/AJAX_sendeKennwort.php?email='+email, true);
  resObjekt.onreadystatechange = handleRespunseSendKennwort;
  resObjekt.send(null);
 }
}

function handleRespunseSendKennwort()
{
 if(resObjekt.readyState == 4)
 {
  displayNone('warten'); 			//-- blendet "Radar" aus
  displayBlock('errLogSendKennwort');  		//-- blendet Meldung "Kennwort zugesandt" ein
 }
 else
 {
  document.getElementById('warten').src = IMGwarten.src;		//-- weisst Image zu
  //-- Brower ist Netscape
  if(browser == 'Netscape')
  {
   document.getElementById('warten').style.marginLeft = 85+"px";	//-- Position Links
   document.getElementById('warten').style.top = 456+"px";     	//-- Position Top
  }
  else  //-- Browser ist kein Netscape -> z.B IE
  {
   document.getElementById('warten').style.marginLeft = 85+"px";	//-- Position Links
   document.getElementById('warten').style.top = 466+"px";  	//-- Position Top
  }
  displayBlock('warten');			//-- blendet "Radar" ein
  displayNone('errLogSendKennwort');  		//-- blendet Meldung "Kennwort zugesamdt" aus
 }
}

//**************************************************************************************//
//**************************************************************************************//
//-- Logig fuer das SUCHEMENUE ---------------------------------------------------------//
//**************************************************************************************//
//**************************************************************************************//
var bg_umkreis = new Image();                         	//-- Hintergrundbild vorladen
bg_umkreis.src = "../images/suchMenue/bg_umkreis.gif";   //-- Umkreis

var bg_suchMenue = new Image();                          //-- Hintergrundbild vorladen
bg_suchMenue.src = "../images/suchMenue/bg_auswahl.gif";	//-- Branchen

//*******************************************//
//-- SUCHMENUE
//-- uebernimmt die Eingabe fuer Name und schreibt den Wert und Hidden-Formular
//-- input:	string eleValue -> Eingabe im Feld "Name"
//*******************************************//
function setMenueName(eleValue)
{ document.frm_suche.elements[0].value = eleValue; }

//*******************************************//
//-- SUCHMENUE
//-- ermittelt die Suchergebnisse der Branchen und zeigt diese an
//-- input:	string eleValue -> Eingabewert
//*******************************************//
function showMenueBranche(eleValue)
{
 if(eleValue.length >2)
 {
  var inp = escape(eleValue).toLowerCase();
  resObjekt = erzXMTHttpRequestObject();
  resObjekt.open('get', '../scripte_php/menue/AJAX_setBranche.php?eingabe='+inp, true);
  resObjekt.onreadystatechange = handleRespunseShowMenueBranche;
  resObjekt.send(null);
 }
 else
 {
  displayNone('bg_ajaxResult'); 						//-- Suchergebnis ausblenden
  displayNone('showAjaxResult');                                         //-- Hintergrund ausblenden
 }
}

function handleRespunseShowMenueBranche()
{
 if(resObjekt.readyState == 4)
 {
  var reture = "<p class=\"reture\"><u>Wir haben leider kein passendes<br/> Suchergebnis gefunden!</u></p>";
  reture += "<p class=\"reture\">Bitte geben Sie eine &auml;hnliche Branchenbezeichnung ein.<br/>";
  reture += "Sie k&ouml;nnen dabei aus &uuml;ber<br/> 4000 Bezeichnungen ausw&auml;hlen.</p>";
  if(resObjekt.responseText != "")
  { reture = resObjekt.responseText; }
  document.getElementById('showAjaxResult').innerHTML = reture;		//-- Suchergebnis zuweisen
  document.getElementById('bg_ajaxResult').src = bg_suchMenue.src;     	//-- Hintergrundbild zuweisen
  document.getElementById('bg_ajaxResult').style.top = 178+"px";       	//-- Hintergrund positionieren
  document.getElementById('showAjaxResult').style.top = 183+"px";     	//-- Ergebnis positionieren
  displayBlock('bg_ajaxResult');                                         //-- Hintergrund sichtbar
  displayBlock('showAjaxResult');                                        //-- Ergebnis sichtbar
  displayNone('warten');       						//-- Radar ausblenden
 }
 else
 {
  displayBlock('warten');						//-- Radar einblenden
  document.getElementById('warten').style.marginLeft = 120+'px';         //-- Radar positionieren
  if(browser == 'Netscape') 			//-- Browser ist Netscape / FF
  { document.getElementById('warten').style.top = 135+'px'; }
  else  						//-- Browser ist IE
  { document.getElementById('warten').style.top = 140+'px'; }
 }
}

function setMenueBranche(retureText, retureLfdnr)
{
 document.getElementById('sucheBranche').value = retureText; 		//-- Wert uebernehmen
 document.frm_suche.elements[1].value = retureLfdnr;                     //-- lfdnr in hidden-Feld schreiben
 displayNone('showAjaxResult');                                          //-- Ergebnis ausblenden
 displayNone('bg_ajaxResult');
 colorGreen('sucheBranche');                                             //-- Schriftfarbe Gruen
}
//*******************************************//
//-- SUCHMENUE
//-- ermittelt die Suchergebnisse der Orte und zeigt diese an
//-- input:	string eleValue -> Eingabewert
//*******************************************//
function showMenueOrt(eleValue)
{
 if(eleValue.length >2)
 {
  var inp = escape(eleValue).toLowerCase();
  resObjekt = erzXMTHttpRequestObject();
  resObjekt.open('get', '../scripte_php/menue/AJAX_setOrte.php?eingabe='+inp, true);
  resObjekt.onreadystatechange = handleRespunseShowMenueOrte;
  resObjekt.send(null);
 }
 else
 {
  displayNone('bg_ajaxResult'); 						//-- Suchergebnis ausblenden
  displayNone('showAjaxResult');                                         //-- Hintergrund ausblenden
 }
}

function handleRespunseShowMenueOrte()
{
 if(resObjekt.readyState == 4)
 {
  var reture = "<p class=\"reture\"><u>Der Ort konnte nicht gefunden werden!</u></p>";
  reture += "<p class=\"reture\">Bitte geben Sie erneut die <br/>Postleitzahl oder den Namen <br/>oder einen Teil des Namens<br/>oder der Postleitzahl ein.</p>";

  if(resObjekt.responseText != "")
  { reture = resObjekt.responseText; }
  document.getElementById('showAjaxResult').innerHTML = reture; 		//-- Suchergebnis zuweisen
  document.getElementById('showAjaxResult').style.top = 211+"px";   	//-- Suchergebnis positionieren
  displayBlock('showAjaxResult');                                        //-- Suchergebnis einblenden
  document.getElementById('bg_ajaxResult').style.top = 206+"px";       	//-- Hintergrund positionieren
  displayBlock('bg_ajaxResult'); 	      				//-- Hintergrund einblenden
  document.getElementById('bg_ajaxResult').src = bg_suchMenue.src;     	//-- Hintergrundbild zuweisen
  displayNone('warten');                                                 //-- Radar ausblenden
 }
 else
 {
  displayBlock('warten');                      				//-- Radar einblenden
  document.getElementById('warten').style.marginLeft = 120+'px';         //-- Radar positionieren
  if(browser == 'Netscape') 			//-- Browser ist Netscape / FF
  { document.getElementById('warten').style.top = 162+'px'; }
  else  						//-- Browser ist IE
  { document.getElementById('warten').style.top = 170+'px'; }
 }
}

function setMenuePLZ_Orte(retureText, retureLfdnr)
{
 document.getElementById('sucheOrt').value = retureText; 		//-- Wert uebernehmen
 document.frm_suche.elements[2].value = retureLfdnr;                     //-- lfdnr in hidden-Feld schreiben
 displayNone('showAjaxResult');                                          //-- Ergebnis ausblenden
 displayNone('bg_ajaxResult');
 colorGreen('sucheOrt');             					//-- Schriftfareb Gruen
}
//*******************************************//
//-- SUCHMENUE
//-- zeigt die moeglichen Umkreise an und uebernimmt deren Wert bei Auswahl
//*******************************************//

function showMenueUmkreis()
{
  document.getElementById('showAjaxResult').style.top = 239+"px"; 	//-- positionieren
  document.getElementById('showAjaxResult').style.display = 'block';     //-- einblenden
  document.getElementById('showAjaxResult').innerHTML  = "<a href=\"javascript:setUmkreis(10)\">Umkreis von 10 km</a><br/>";
  document.getElementById('showAjaxResult').innerHTML += "<a href=\"javascript:setUmkreis(25)\">Umkreis von 25 km</a><br/>";
  document.getElementById('showAjaxResult').innerHTML += "<a href=\"javascript:setUmkreis(50)\">Umkreis von 50 km</a><br/>";
  document.getElementById('showAjaxResult').innerHTML += "<a href=\"javascript:setUmkreis(75)\">Umkreis von 75 km</a><br/>";
  document.getElementById('showAjaxResult').innerHTML += "<a href=\"javascript:setUmkreis(100)\">Umkreis von 100 km</a><br/>";
  document.getElementById('showAjaxResult').innerHTML += "<a href=\"javascript:setUmkreis(150)\">Umkreis von 150 km</a>";
  document.getElementById('bg_ajaxResult').src = bg_umkreis.src;		//-- Hintergrundbild zuweisen
  document.getElementById('bg_ajaxResult').style.top = 234+"px";  	//-- positionieren
  document.getElementById('bg_ajaxResult').style.display = 'block';      //-- einblenden
}

function setUmkreis(km)
{
 document.getElementById('sucheUmkreis').value = "Umkreis von "+km+" km"; 	//-- Wert uebernehmen
 colorGreen('sucheUmkreis');                                                     //-- Schriftfareb Gruen
 document.frm_suche.elements[3].value = km;                                      //-- Zahl in hidden-Feld schreiben
}

//*******************************************//
//-- SUCHMENUE
//-- prueft Eingabe und versendet das Formular / die Suchanfrage
//*******************************************//
function checkSuchen()
{
 displayNone('errLogIn');
 displayNone('errLogLostKennwort');
 var send 	= true;
 var msg		= "<p><strong><u>Hinweis!</u></strong></p>";
 var name 	= document.frm_suche.elements[0].value;
 var branche 	= document.frm_suche.elements[1].value;
 var ort 	= document.frm_suche.elements[2].value;
 var umkreis 	= document.frm_suche.elements[3].value;

 if(!name && !branche)
 {
  send = false;
  msg += "<p>Bitte geben Sie einen Namen oder eine Branchenbezeichnung f&uuml;r die Suche an.</p>";
 }

 if(umkreis && !ort)
 {
  send = false;
  msg += "<p>\"Umkreis\" k&ouml;nnen Sie nur in Verbindung <p/></p>mit einer Ortsangabe nutzen.</p>";
 }

 if(send)
 {
  document.frm_suche.submit();
 }
 else
 {
  document.getElementById('showAjaxResult').style.top = 170+"px"; 	//-- positionieren
  document.getElementById('showAjaxResult').style.display = 'block';     //-- einblenden
  document.getElementById('showAjaxResult').innerHTML = msg;           	//-- Meldung zuweisen
  document.getElementById('bg_ajaxResult').style.top = 165+"px";  	//-- positionieren
  document.getElementById('bg_ajaxResult').style.display = 'block';      //-- einblenden
  document.getElementById('bg_ajaxResult').src = bg_suchMenue.src;     	//-- Hintergrundbild zuweisen
 }
}
