/**
 * Funktionen zum Dynamischen Aktualisieren der Suchfelder
 */

/**
 * Fragt URL mittels eines HTTP-Requests ab
 */
function getXMLData( url ){
    if(xmlhhtp = getXMLHttpObject() == false) {
        //alert("Fehler beim Anlegen des XMLHttpObject");
        return;
    }
    xmlhttp.open("GET", url , true);
    xmlhttp.onreadystatechange = handleHttpState;
    xmlhttp.send(null);
}

/**
 * Erzeugt XML-HTTP-Objekt zur Verwendung für URL-Abfragen
 */
function getXMLHttpObject(){
    try{
        xmlhttp = new XMLHttpRequest();
    }catch( error ){
        try{
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }catch( error ){
            return false;
        }
    }
}

/**
 * URL erreichbar?
 */
function handleHttpState(){
    if( xmlhttp.readyState == 4 ){
        if( xmlhttp.status == 200 ){
            // daten erfolgreich geladen: starte Verarbeitung
            parseData();
        }else{
            // fehler
            //alert("Fehler beim Abrufen der Daten");
        }
    }
}

/**
 * Rückgabe der Abfrage bearbeiten
 */
function parseData(){
    var xmlDocument = xmlhttp.responseXML;
    var typ = xmlDocument.getElementsByTagName("typ")[0].firstChild.nodeValue;
    switch( typ ){
        case "DROPDOWN" : {
            dropdown_set( xmlDocument );
            break;
        }
        default : {
            try{
                eval( typ)( xmlDocument );
            }catch( e ){
                return;
            }
            break;
        }
    }
}

function setGalleryPic( picname ){
	document.getElementById( "rg2" ).src = picname;
}

function setGalleryPic2( picname ){
	document.getElementById( "rg3" ).src = picname;
}

// Bilder aus Zufallsgalerie wechseln lassen
function randGallery( xmlDocument ){
    if( imagename = xmlDocument.getElementsByTagName("img")[0].firstChild.nodeValue ){
		document.getElementById( "rg1" ).src = imagename;
	}
	if( imagename = xmlDocument.getElementsByTagName("img")[1].firstChild.nodeValue ){
		window.setTimeout( "setGalleryPic(\""+imagename+"\")", 2000 );
	}
	if( imagename = xmlDocument.getElementsByTagName("img")[2].firstChild.nodeValue ){
		window.setTimeout( "setGalleryPic2(\""+imagename+"\")", 3000 );
	}
    window.setTimeout( "getXMLData( '/js/special/randGallery.php' )", 4000 );
}

// Untermenüs überprüfen
function dropdown_check(){
    getXMLData( "/js/special/dropdown.php" );
}

// Untermenüs anpassen
function dropdown_set( xmlDocument ){
    var nav = document.getElementById( "metanav" );
    nav.removeChild( nav.getElementsByTagName("ul")[0] );
    var xml = xmlhttp.responseText;
    xml = xml.substr( xml.search( /<ul>/ ) );
    xml = xml.substr( 0, xml.search( /<\/document>/ ) );
    nav.innerHTML += xml;

    // advanced suckerfish dropdown menus for everyone as seen at:
    // http://www.htmldog.com/articles/suckerfish/dropdowns/
    if(window.attachEvent){
        var sfEls = document.getElementById("metanav").getElementsByTagName("LI");
            for (var i=0; i<sfEls.length; i++) {
            sfEls[i].onmouseover=function() {
            this.className+=" sfhover";
        }
            sfEls[i].onmouseout=function() {
                this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
            }
        }
    }
}


