
var g_handlerFunc = function(t) 
{
   try
   {
        eval(t.responseText);
   }
   catch(e)
   {
        alert(e);
   }
}


var g_errFunc = function(t) 
{
    alert('Error ' + t.status + ' -- ' + t.statusText);
}

function test_(msg)
{
    alert(msg);
}


/*
Funktion G_request_neu / Parameter:
page: der Name der PHP-Datei
str_result: das Suchergebnis
str_id: Lid oder Pid
*/

function G_request_neu(page, str_result, str_id)
{
    var suffix = "";

    if (str_id != "")
    {
        suffix = "&str_id="+str_id;
    }
    new Ajax.Request('/fileadmin/scripts/google/' + page + '.php', {parameters:'str_result='+str_result+suffix, encoding:'UTF-8', onSuccess:g_handlerFunc, onFailure:g_errFunc});
}


/*
Funktion G_request_neu_cache / Parameter: 
page: der Name der PHP-Datei
str_result: das Suchergebnis
str_id: Lid oder Pid
str_search: der Suchbegriff
int_success: 0(kein Treffer) / 1(Treffer)
*/

function G_request_neu_cache(page, str_result, str_id, str_search, int_success)
{
    var suffix = "";
    suffix += "&str_id="+str_id;
    suffix += "&str_search="+str_search;
    suffix += "&int_success="+int_success;
    
    new Ajax.Request('/fileadmin/scripts/google/' + page + '.php', {parameters:'str_result='+str_result+suffix, encoding:'UTF-8', onSuccess:g_handlerFunc, onFailure:g_errFunc});
}


/* Submit-Button mouseover */
function submitOver()
{
    $("bn_search_submit").style.cursor = "pointer";
}


/* Auswahlliste einblenden - die beiden unteren Listenelemente werden sichtbar */
function showAuswahlListe()
{
    $("g_auswahl_liste").style.visibility = "visible";
    $("auswahl_element_1").style.cursor = "pointer";
    $("auswahl_element_2").style.cursor = "pointer";
}

function setBold(id)
{
    $(id).style.fontWeight = "bold";
}

function setNormal(id)
{
    $(id).style.fontWeight = "normal";
}


/* Auswahlliste ausblenden */
function hideAuswahlListe()
{
    $("g_auswahl_liste").style.visibility = "hidden";
}


/* Autocomplete-Liste einblenden */
function showAutocomplete()
{
    $("autocomplete").style.visibility = "visible";
}

/* Autocomplete-Liste ausblenden */
function hideAutocomplete()
{
    $("autocomplete").style.visibility = "hidden";
}


/* Fehlermeldung (wenn Suchbegriff zu kurz war oder wenn kein Treffer gefunden wurde) ausblenden */
function hideError()
{
    $("g_fehler_text").innerHTML = "";
}


/* 
beim Anklicken eines Autocomplete-Listenelements: 
der entsprechende Begriff des Autocomplete-Feldes wird ins Suchfeld übernommen
*/
function listElementClick(value)
{
    $("g_eingabefeld").value = value;
}


/* 
beim Setzen des Mauszeigers auf ein Autocomplete-Listenelement:
in Abhängigkeit davon, welcher Such-Typ ausgewählt wurde, bekommt das aktuelle Listenelement eine spezielle Hintergrundfarbe
*/
function listElementOver(element)
{
    element.style.cursor = "pointer";

    switch($("g_auswahlfeld").value)
    {
        case("Einlösen"):
            element.style.backgroundColor = "#A4A3D0";
            break;
        case("Sammeln"):
            element.style.backgroundColor = "#FFE462";
            break;
        case("Allgemein"):
            element.style.backgroundColor = "#BDB6BA";
            break;
    }
}


/* 
beim Verlassen des Mauszeigers d. Autocomplete-Listenelements:
das Element, das verlassen wurde, bekommt wieder die Standard-Hintergrundfarbe:
*/
function listElementOut(element)
{
    switch($("g_auswahlfeld").value)
    {
        case("Einlösen"):
            element.style.backgroundColor = "#E5E3F2";
            break;
        case("Sammeln"):
            element.style.backgroundColor = "#FFF7CF";
            break;
        case("Allgemein"):
            element.style.backgroundColor = "#F7F3EF";
            break;
    }
}


/* 
   setInputValue(id) wird beim Anklicken des Auswahl-Dropdown-Elements aufgerufen:
     - das Auswahlfeld bekommt den passenden Text, die Textfarbe und Hintergrundfarbe zugewiesen
     - das Dropdownfeld bekommt den passenden Text, die Textfarbe und Hintergrundfarbe zugewiesen
     - das Cookie "such_kategorie" wird gesetzt (damit beim erneuten Seitenaufruf die zuletzt gewählte Kategorie vorselektiert ist)
     - die action-Eigenschaft des Formulars "hidden_search" wird gesetzt (entweder auf "suche_einloesen" oder "suche_sammeln")
*/

function setInputValue(id)
{
    var class_name = $(""+id+"").className;
    switch(class_name)
    {
        case("li_einloesen"):
            $("g_auswahlfeld").value = "Einlösen";
            $("g_auswahlfeld").style.backgroundColor = "rgb(153, 153, 203)";
            $("g_auswahlfeld").style.color = "rgb(255, 255, 255)";
            $("autocomplete").style.backgroundColor = "#E5E3F2";
            $("auswahl_element_1").className = "li_sammeln";
            $("auswahl_element_1").innerHTML = "Sammeln";
            $("auswahl_element_2").className = "li_allgemein";
            $("auswahl_element_2").innerHTML = "Allgemein";
            document.cookie = "such_kategorie=einloesen";
            document.hidden_search.action = "http://www.points24.com/index.php?id=suche_einloesen";
            break;
        case("li_sammeln"):
            $("g_auswahlfeld").value = "Sammeln";
            $("g_auswahlfeld").style.backgroundColor = "rgb(255, 232, 124)";
            $("g_auswahlfeld").style.color = "rgb(0, 0, 0)";
            $("autocomplete").style.backgroundColor = "#FFF7CF";
            $("auswahl_element_1").className = "li_einloesen";
            $("auswahl_element_1").innerHTML = "Einlösen";
            $("auswahl_element_2").className = "li_allgemein";
            $("auswahl_element_2").innerHTML = "Allgemein";
            document.cookie = "such_kategorie=sammeln";
            document.hidden_search.action = "http://www.points24.com/index.php?id=suche_sammeln";
            break;
        case("li_allgemein"):
            $("g_auswahlfeld").value = "Allgemein";
            $("g_auswahlfeld").style.backgroundColor = "#F7F3EF";
            $("g_auswahlfeld").style.color = "rgb(0, 0, 0)";
            $("g_auswahlfeld").className = "g_auswahlfeld_allgemein";
            $("autocomplete").style.backgroundColor = "#F7F3EF";
            $("auswahl_element_1").className = "li_einloesen";
            $("auswahl_element_1").innerHTML = "Einlösen";
            $("auswahl_element_2").className = "li_sammeln";
            $("auswahl_element_2").innerHTML = "Sammeln";
            document.cookie = "such_kategorie=allgemein";
            //document.hidden_search.action = "http://www.points24.com/index.php?id=suche_sammeln";
            break;
    }
}


/* Auswahlfeld-Button (Pfeil) - onmouseover */
function auswahlButtonOver()
{
    $("auswahl_button").style.backgroundImage = "url(fileadmin/images/search/pfeil_runter_over.jpg)";
    $("auswahl_button").style.cursor = "pointer";
}


/* Auswahl-Button - onmouseout */
function auswahlButtonOut()
{
    $("auswahl_button").style.backgroundImage = "url(fileadmin/images/search/pfeil_runter.jpg)";
}


/* 
der Autocomplete-Mechanismus:
Parameter: Such-Typ ('Lid', 'Pid' oder 'all') und Suchbegriff 
*/
function autocomplete_search(req_typ, string_suche)
{
    var params = "";
    params += "typ="+req_typ;
    params += "&string_suche="+string_suche;

    new Ajax.Request('/fileadmin/scripts/search/autocomplete_search.php', {parameters:''+params, encoding:'UTF-8', onSuccess:g_handlerFunc, onFailure:g_errFunc});
}


/* Funktion zum Auslesen des Werts eines Cookies (Parameter: Name des Cookies) */
function getCookie(name)
{
    var mein_cookie = document.cookie; 
    var anfang = mein_cookie.indexOf(name) + name.length + 1;
    
    var ende = mein_cookie.indexOf(";", anfang);
   
    if (ende == -1) {
      ende = mein_cookie.length;
    } 
    var laenge = ende - anfang;
    
    var cookie_wert = unescape(mein_cookie.substr(anfang, laenge));
    return cookie_wert;
}


function fixHeight_1() 
{
	var h = document.getElementById("body_mp3").offsetHeight;
	if (h > 5000) { document.getElementById("content").style.height = "4978px"; h = 5000; }
        h = h +370;
        if(h < 540){h = 582};
	document.getElementById("navLeft").style.height = (h-23)+"px";
	document.getElementById("navRight").style.height = h+"px";
        document.getElementById("content").style.height =(h-23)+"px";
}

/* 
  Funktion zum Positionieren des Autocomplete-Feldes: 
  als Orientierung dient der linke Rand des gesamten Formulars; je nach Browser wird für den linken Rand des Autocomplete-Feldes ein entsprechender
  Wert dazuaddiert
*/

function setPositionAutocomplete()
{
    var formLeft = $("g_eingabeformular").offsetLeft;
    // für den IE 6:
    if (navigator.appName.indexOf("Explorer") >= 0 && navigator.appVersion.indexOf("MSIE 6") >= 0)
    {
        offset = 26;
    }
    else
    {
        offset = 23;
    }
    var autocompleteLeft = formLeft + offset;
    $("autocomplete").style.left = autocompleteLeft + "px";
}


/* 
    Funktion zum Vorbelegen des Suchkategorie-Auswahl-Feldes: 
    entprechend dem Eintrag im Cookie "such_kategorie" wird "Sammeln", "Einlösen", oder "Allgemein" ausgewählt
*/

function setCategory()
{
    var cookies = document.cookie;
    // wenn das Cookie "such_kategorie" gesetzt ist:
    if (cookies.indexOf("such_kategorie") >= 0)
    {
        switch(getCookie("such_kategorie"))
        {
             case ("sammeln"):
                  $("g_auswahlfeld").value = "Sammeln";
                  $("g_auswahlfeld").className = "g_auswahlfeld_sammeln";
                  $("auswahl_element_1").className = "li_einloesen";
                  $("auswahl_element_1").innerHTML = "Einlösen";
                  $("auswahl_element_2").className = "li_allgemein";
                  $("auswahl_element_2").innerHTML = "Allgemein";
                  break;
             case ("einloesen"):
                  $("g_auswahlfeld").value = "Einlösen";
                  $("g_auswahlfeld").className = "g_auswahlfeld_einloesen";
                  $("auswahl_element_1").className = "li_sammeln";
                  $("auswahl_element_1").innerHTML = "Sammeln";
                  $("auswahl_element_2").className = "li_allgemein";
                  $("auswahl_element_2").innerHTML = "Allgemein";
                  break;
             case ("allgemein"):
                  $("g_auswahlfeld").value = "Allgemein";
                  $("g_auswahlfeld").className = "g_auswahlfeld_allgemein";
                  $("auswahl_element_1").className = "li_einloesen";
                  $("auswahl_element_1").innerHTML = "Einlösen";
                  $("auswahl_element_2").className = "li_sammeln";
                  $("auswahl_element_2").innerHTML = "Sammeln";
                  break;
        }
    }
}


/* Funktion zum Setzen der action-Eigenschaft des Formulars "hidden_search": */
function setActionHiddenSearch()
{
    var cookies = document.cookie;
    // wenn das Cookie "such_kategorie" gesetzt ist:
    if (cookies.indexOf("such_kategorie") >= 0)
    {
        switch(getCookie("such_kategorie"))
        {
             case ("sammeln"):
                  document.hidden_search.action = "http://www.points24.com/index.php?id=suche_sammeln";
                  break;
             case ("einloesen"):
                  document.hidden_search.action = "http://www.points24.com/index.php?id=suche_einloesen";
                  break;
             case("allgemein"):
                  document.hidden_search.action="";
        }
    }
}


/* 
wird immer beim Laden der Seite aufgerufen: 
Setzen der Position des Autocomplete-Feldes und Festlegen der Suchkategorie
*/
function init()
{
     setPositionAutocomplete();
     setCategory();
}
    


/* Aufruf der init-Funktion: */
onLoad = init();

