// Thema Klappmenue

var KENN_PFEIL = "Pfeil_";
var KENN_POP = "Pop";

var IMG_PFEIL_OBEN = "../img/pfeiloben.gif";
var IMG_PFEIL_UNTEN = "../img/pfeilunten.gif";
var TXT_SCHLIESSEN = "Detail schliessen";
var TXT_ANZEIGEN = "Detail anzeigen";

var DISPLAY_YES = "block";
var DISPLAY_NO = "none";

function Klappmenue(elementId)
// alle pop-Elemente, deren ID mit elementId beginnt, in der Sichtbarkeit
// umschalten; pop-Pfeile image wechseln 
{ 
  if (!document.getElementById) return; 

	// alle zu elementId gehoerigen Elemente anzeigen/verbergen
	var ar = getElementsById(elementId);
	var anzeigen = (ar[0].style.display == DISPLAY_NO);
	for (i=0; i<ar.length; i++) {
	  if (anzeigen) {
 	    ar[i].style.display = DISPLAY_YES;
 	  } else {
 	    ar[i].style.display = DISPLAY_NO;
 		}
	}
	// Pfeil-Anzeige umschalten	  
  var PfeilImage = document.getElementById(KENN_PFEIL+elementId); 
	if (PfeilImage) {
	  if (anzeigen) {
      PfeilImage.src = IMG_PFEIL_OBEN;
      PfeilImage.alt = TXT_SCHLIESSEN;
      PfeilImage.title = TXT_SCHLIESSEN;
	  } else {
      PfeilImage.src = IMG_PFEIL_UNTEN;
      PfeilImage.alt = TXT_ANZEIGEN;
      PfeilImage.title = TXT_ANZEIGEN;
		}
	}
}

function KlappmenueAlles(alle_anzeigen)
// alle pop-Elemente anzeigen/verbergen und pop-Pfeile image setzen 
{
  if (!document.getElementsByTagName) return; 
  var i=0;
	var ar = null;
	// alle Pop-Elemente anzeigen/verbergen	  
	ar = getElementsById(KENN_POP);
	if (alle_anzeigen) {
	  for (i=0; i<ar.length; i++) {
		  ar[i].style.display = DISPLAY_YES;
		}
	} else {
	  for (i=0; i<ar.length; i++) {
		  ar[i].style.display = DISPLAY_NO;
		}
  }
	// alle Pfeile anzeigen/verbergen	  
	ar = getElementsById(KENN_PFEIL);
	if (alle_anzeigen) {
		for (i=0; i<ar.length; i++) { 
		  ar[i].src = IMG_PFEIL_OBEN;
      ar[i].alt = TXT_SCHLIESSEN;
      ar[i].title = TXT_SCHLIESSEN;
		}
	} else {
		for (i=0; i<ar.length; i++) { 
		  ar[i].src = IMG_PFEIL_UNTEN;
      ar[i].alt = TXT_ANZEIGEN;
      ar[i].title = TXT_ANZEIGEN;
    }
  }
}

function getElementsByClassName(class_name)
// wird z.Zt. nicht benutzt
{
  var all_obj,ret_obj=new Array(),j=0,teststr;
  if (document.getElementsByTagName) {
		  all_obj=document.getElementsByTagName("*");
	}
  else {
    if (document.all) {
	    all_obj=document.all;
	  }
	}
  for(i=0;i<all_obj.length;i++)
  {
    if(all_obj[i].className.indexOf(class_name)!=-1)
    {
      teststr=","+all_obj[i].className.split(" ").join(",")+",";
      if(teststr.indexOf(","+class_name+",")!=-1)
      {
        ret_obj[j]=all_obj[i];
        j++;
      }
    }
  }
  return ret_obj;
}

function getElementsById(elementId)
// alle Elemente, deren ID mit elementId beginnen, werden im array gesammelt
{
  var all_obj,ret_obj=new Array(),j=0,teststr;
  if (document.getElementsByTagName) {
		  all_obj=document.getElementsByTagName("*");
	}
  else {
    if (document.all) {
	    all_obj=document.all;
	  }
	}
  var len=elementId.length;
  for(i=0;i<all_obj.length;i++)
  {
    if(all_obj[i].id.substring(0,len) == elementId)
    {
      ret_obj[j]=all_obj[i];
      j++;
    }
  }
  return ret_obj;
}
 
// Ende Thema Klappmenue


// Thema Bilder vorladen

function MM_preloadImages() {
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
  if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

// Ende Thema Bilder vorladen


// Thema Typ-Funktionen

function isArray(a) {
    return isObject(a) && a.constructor == Array;
}
function isBoolean(a) {
    return typeof a == 'boolean';
}
function isEmpty(o) {
    var i, v;
    if (isObject(o)) {
        for (i in o) {
            v = o[i];
            if (isUndefined(v) && isFunction(v)) {
                return false;
            }
        }
    }
    return true;
}
function isFunction(a) {
    return typeof a == 'function';
}
function isNull(a) {
    return a === null;
}
function isNumber(a) {
    return typeof a == 'number' && isFinite(a);
}
function isObject(a) {
    return (a && typeof a == 'object') || isFunction(a);
}
function isString(a) {
    return typeof a == 'string';
}
function isUndefined(a) {
    return typeof a == 'undefined';
} 

// Ende Thema Typ-Funktionen


// Funktion: HTML-Seite im MENU_ITEMS-Array finden und HTML-String liefern
function writeSite(url) {
		// Annahme: "Home" ist der 1.Eintrag in MENU_ITEMS
		var s="";
	  var i,j,k;
    var lenURL=url.length;
    for (i=0; i<MENU_ITEMS.length; i++) {
 			if (isArray(MENU_ITEMS[i])) {
	    	for (j=0; j<MENU_ITEMS[i].length; j++) {
					if (isString(MENU_ITEMS[i][j]) && j==1) {
		  			if (MENU_ITEMS[i][j]==document.URL.substr(lenURL-MENU_ITEMS[i][j].length)) {
							for (var n=0;n<MENU_ITEMS[i][1].split("/").length-1;n++) {s=s+"../";}
							s="<a class=\"linksitemap\" href=\""+s+MENU_ITEMS[0][1]+"\">Home</a>";
							s=s+" | <span class=\"alleaufzaehlung\">"+MENU_ITEMS[i][0]+"</span>";									  			
		  				return s;
		  			}
					}
		 			else if (isArray(MENU_ITEMS[i][j])) {
		    		for (k=0; k<MENU_ITEMS[i][j].length; k++) {
							if (isString(MENU_ITEMS[i][j][k]) && k==1) {
				  			if (MENU_ITEMS[i][j][k]==document.URL.substr(lenURL-MENU_ITEMS[i][j][k].length)) {
									for (var n=0;n<MENU_ITEMS[i][j][1].split("/").length-1;n++) {s=s+"../";}
									s="<a class=\"linksitemap\" href=\""+s+MENU_ITEMS[0][1]+"\">Home</a>";
				  				s=s+" | "+MENU_ITEMS[i][0]+" | <span class=\"alleaufzaehlung\">"+MENU_ITEMS[i][j][0]+"</span>";
				  				return s;
		  					}
							}
						}
					}
	    	}
	    }
    }
    return s+" | ?????????";
}    

