/*
	Standards Compliant Rollover Script
	Version 2.61
*/

var initedRollover, alleBilder, aPreLoad = new Array(), syncImage, i=1, imageToClick, threeState, cssnavi, o , navizahl;

function initRollovers(imageToClick,settings) {
	if (!document.getElementById) return;

    function getParams(parametername,wert){
        if(settings != null){
            if (settings[parametername] == null) return null;
            else if (settings[parametername] != 'undefined'){
                return settings[parametername];
            }
        }
        else return null;
    }
    
     // CSSNavigation
    if (cssnavi){
       var navigation = document.getElementsByClassName('navigation');
       for (navizahl=0;navizahl < navigation.length;navizahl++){
           if (navigation[navizahl] != 'undefined') {
               var menupunkte = navigation[navizahl].getElementsByTagName('LI');

               // IDs für alle LI vergeben, die noch keine ID haben. Dazu wird der Text des LI > A verwendet
               for (var anzahlMenupunkte = 0; anzahlMenupunkte < menupunkte.length; anzahlMenupunkte++){
                   if (!menupunkte[anzahlMenupunkte].id) {
                        o = menupunkte[anzahlMenupunkte].firstChild;
                        while (o && o.nodeName.toLowerCase() != "a") o=o.nextSibling;
                        menupunkte[anzahlMenupunkte].id = o.firstChild.data.toLowerCase();
                    }
                        
                   if(imageToClick){
        				for (var anzahl=0; anzahl<imageToClick.length; anzahl++){
                            if (menupunkte[anzahlMenupunkte].id == imageToClick[anzahl].toLowerCase()) {
                                var derlink = menupunkte[anzahlMenupunkte].firstChild;
                                while (derlink && derlink.nodeName.toLowerCase() != "a") derlink= derlink.nextSibling;
                                derlink.className = 'active';
                                menupunkte[anzahlMenupunkte].className = 'active';
                            }
                        }
                   }
               }
            }
       }
    }
    // Ende CSSNavigation
    
   	alleBilder = document.getElementsByTagName('img');

	// Austauschbild vorhanden?
	if (document.getElementById('austausch') != null) {
		syncImage = document.getElementById('austausch');
		var syncSrc = syncImage.src
		}

	// Alle Bilder die den classname rollover und keine ID haben mit numerischer ID versehen
	for (var j = 0; j < alleBilder.length; j++){
		if (alleBilder[j].className.match('rollover')){

			var dateiname = alleBilder[j].getAttribute('src').substring(alleBilder[j].getAttribute('src').lastIndexOf('/')+1, alleBilder[j].getAttribute('src').length);
			dateiname = dateiname.replace(dateiname.substring(dateiname.lastIndexOf('.'), dateiname.length),"");
 			if (!alleBilder[j].id) alleBilder[j].id = dateiname;

			// Jetzt kommt das Zuordnen von allen Eigenschaften
			alleBilder[j].original = alleBilder[j].getAttribute('src'); // Src des aktuellen Bildes
			var ftype = alleBilder[j].original.substring(alleBilder[j].original.lastIndexOf('.'), alleBilder[j].original.length); // Filetype abfragen
			alleBilder[j].over = alleBilder[j].original.replace(ftype, '_f2'+ftype); // in Over den src + _f2 schreiben
			if(threeState){
                   alleBilder[j].klick = alleBilder[j].original.replace(ftype, '_f3'+ftype); // in Klick den src + _f3 schreiben
			}

			if (syncImage && alleBilder[j].className.match('austausch')){
				var syncFtype = syncSrc.substring(syncSrc.lastIndexOf('.'), syncSrc.length);
				var syncOver = alleBilder[j].original.substring(0,alleBilder[j].original.lastIndexOf('.'));
			    alleBilder[j].syncImage = syncOver+'_austausch'+syncFtype
				alleBilder[j].syncOriginal = syncImage.src;
			}

			aPreLoad[i] = new Image();
			aPreLoad[i].src = alleBilder[j].over;
            
            if(imageToClick != 'undefined'){
			// Wenn das Bild in imageToClick steht, dann den src direkt auf das _f2 Bild setzen
				for (anzahl=0; anzahl<imageToClick.length; anzahl++){
					if (imageToClick[anzahl]!="0"){
						if (alleBilder[j].id == imageToClick[anzahl]) {
							if (threeState){
                               alleBilder[j].src = alleBilder[j].klick;
                               alleBilder[j].original = alleBilder[j].klick;
							}
							else {
                                alleBilder[j].src = alleBilder[j].over;
    							alleBilder[j].original = alleBilder[j].over;
							}
							if (alleBilder[j].syncImage) {
								var syncOriginal = alleBilder[j].syncImage;
								syncImage.src = alleBilder[j].syncImage;
							}
						}
					}
				}
			}

			alleBilder[j].onmouseover = function () {
				this.src = this.over;
				if (this.syncImage && getParams('austausch','hover')) syncImage.src = this.syncImage;
			}
			alleBilder[j].onmouseout = function () {
				this.src = this.original;
				if (this.syncImage && getParams('austausch','hover')) syncImage.src = syncOriginal;
			}
		}
	}
	initedRollover = "true";
}

document.getElementsByClassName = function(class_name)
{
  var all_obj,ret_obj=new Array(),j=0,teststr;

  if(document.all)all_obj=document.all;
  else if(document.getElementsByTagName && !document.all) all_obj=document.getElementsByTagName("*");
  for(i=0;i<all_obj.length;i++)
  {
    if(all_obj[i].className.match(class_name))
    {
     ret_obj[j]=all_obj[i];
        j++;
    }
  }
  return ret_obj;
}

if (document.attachEvent)
attachEvent("onload", function(){if(initedRollover != "true") initRollovers(new Array('0'));});

else addEventListener("load", function(){if(initedRollover != "true") initRollovers(new Array('0'));}, false);

