function toggleImg(type,toggleID) { if(type.indexOf("fold")>=0) { /*document.getElementById('toggleText_'+toggleID).innerHTML = 'aufklappen';*/ document.getElementById('toggleImg_'+toggleID).src = '/images/max.gif'; document.getElementById('toggleImg_'+toggleID).alt = 'maximieren'; document.getElementById('toggleAction_'+toggleID).onclick = function(){toggle('unfold','toggle_'+toggleID);toggleImg('unfold', toggleID);}; } if(type.indexOf("unfold")>=0) { /*document.getElementById('toggleText_'+toggleID).innerHTML = 'zuklappen';*/ document.getElementById('toggleImg_'+toggleID).src = '/images/min.gif'; document.getElementById('toggleImg_'+toggleID).alt = 'minimieren'; document.getElementById('toggleAction_'+toggleID).onclick = function(){toggle('fold','toggle_'+toggleID);toggleImg('fold', toggleID);}; } } function toggle(type,element,toggleID) { var i, j, t, type0, start=0, result=0; var obj, objName, objFirst=-1, objLast=-1, objCount, exceptions, lastArgument, xSwitch; var toggleDisplay, displayType, displayStyle, displayXStyle; var toggleVisibility, visibilityStyle, visibilityXStyle; var toggleOpacity, opacityType, opacityStyle, opacityXStyle, opacityStyleCSS, opacityXStyleCSS, opacityStyleMoz, opacityXStyleMoz, opacityStyleKHTML, opacityXStyleKHTML, opacityStyleIE, opacityXStyleIE; var toggleColor, colorType, colorXType, colorStyle, colorXStyle; var toggleBack, backType, backXType, backStyle, backXStyle; var toggleBorder, borderType, borderXType, borderStyle, borderXStyle; var toggleAttribute="gid"; // hier ggf. gewuenschten Standard-Attribut-Namen eintragen (z.B. "id") var showStatus=200; // hier eintragen, ab wieviel Elementen ein Bearbeitungshinweis erfolgen soll type=(type)?type.toLowerCase():"fold"; if(element) { i=element.indexOf("{"); j=element.indexOf("}",i); if(i>=0 && j>=0) { objFirst=parseInt(element.substring(i+1,element.indexOf("-",i))); objLast=parseInt(element.substring(element.indexOf("-",i)+1,j)); element=element.substring(0,i); } } if(!element || type=="test") { result=(document.getElementsByTagName)?true:false; } else { toggleDisplay=(type.indexOf("fold")+1); // Style display verwenden toggleVisibility=(type.indexOf("hide")+1); // Style visibility verwenden toggleOpacity=(type.indexOf("trans")+1); // Style opacity & Co. verwenden toggleColor=(type.indexOf("color")+1); // Style color verwenden toggleBack=(type.indexOf("back")+1); // Style background-color verwenden toggleBorder=(type.indexOf("border")+1); // Style border-color verwenden if(toggleDisplay) { displayType=""; i=type.indexOf("fold:"); //hier rein if(i>=0) { i+=4; j=type.indexOf(" ",i) displayType=type.substring(i+1,(j<0)?type.length:j); displayType=(displayType=="none")?"":displayType; } if(type.indexOf("unfold")>=0) { displayStyle=displayType; displayXStyle="none"; //alert('kk'); } else { displayStyle="none"; displayXStyle=displayType; } } if(toggleVisibility) { if(type.indexOf("unhide")>=0) { visibilityStyle="visible"; visibilityXStyle="hidden"; } else { visibilityStyle="hidden"; visibilityXStyle="visible"; } } if(toggleOpacity) { opacityType=50; opacityXType=0; i=type.indexOf("trans:"); if(i>=0) { i+=5; j=type.indexOf(" ",i) opacityType=type.substring(i+1,(j<0)?type.length:j); i=opacityType.indexOf("/"); if(i>=0) { j=opacityType.indexOf(" ",i) opacityXType=opacityType.substring(i+1,(j<0)?opacityType.length:j); opacityType=opacityType.substring(0,i)+((j<0)?"":opacityType.substring(j,opacityType.length)); } } opacityStyle=Math.min(100,Math.max(0,100-parseInt(opacityType))); opacityXStyle=Math.min(100,Math.max(0,100-parseInt(opacityXType))); opacityStyleCSS=""+opacityStyle/100; opacityXStyleCSS=""+opacityXStyle/100; opacityStyleMoz=opacityStyleCSS; opacityXStyleMoz=opacityXStyleCSS; opacityStyleKHTML=opacityStyleCSS; opacityXStyleKHTML=opacityXStyleCSS; opacityStyleIE="alpha(opacity="+opacityStyle+")"; opacityXStyleIE="alpha(opacity="+opacityXStyle+")"; } if(toggleColor) { colorType="#000000"; colorXType="#FFFFFF"; i=type.indexOf("color:"); if(i>=0) { i+=5; j=type.indexOf(" ",i) colorType=type.substring(i+1,(j<0)?type.length:j); i=colorType.indexOf("/"); if(i>=0) { j=colorType.indexOf(" ",i) colorXType=colorType.substring(i+1,(j<0)?colorType.length:j); colorType=colorType.substring(0,i)+((j<0)?"":colorType.substring(j,colorType.length)); } } colorStyle=colorType; colorXStyle=colorXType; } if(toggleBack) { backType="#FFFFFF"; backXType="#000000"; i=type.indexOf("back:"); if(i>=0) { i+=4; j=type.indexOf(" ",i) backType=type.substring(i+1,(j<0)?type.length:j); i=backType.indexOf("/"); if(i>=0) { j=backType.indexOf(" ",i) backXType=backType.substring(i+1,(j<0)?backType.length:j); backType=backType.substring(0,i)+((j<0)?"":backType.substring(j,backType.length)); } } backStyle=backType; backXStyle=backXType; } if(toggleBorder) { borderType="transparent"; borderXType="black"; i=type.indexOf("border:"); if(i>=0) { i+=6; j=type.indexOf(" ",i) borderType=type.substring(i+1,(j<0)?type.length:j); i=borderType.indexOf("/"); if(i>=0) { j=borderType.indexOf(" ",i) borderXType=borderType.substring(i+1,(j<0)?borderType.length:j); borderType=borderType.substring(0,i)+((j<0)?"":borderType.substring(j,borderType.length)); } } borderStyle=borderType; borderXStyle=borderXType; } if(document.getElementById && document.getElementById(element)) { obj=document.getElementById(element); result=1; if(toggleDisplay) { obj.style.display=displayStyle; } if(toggleVisibility) { obj.style.visibility=visibilityStyle; } if(toggleOpacity) { obj.style.filter=opacityStyleIE; obj.style.MozOpacity=opacityStyleMoz; obj.style.KhtmlOpacity=opacityStyleKHTML; obj.style.opacity=opacityStyleCSS; } if(toggleColor) { obj.style.color=colorStyle; } if(toggleBack) { obj.style.backgroundColor=backStyle; } if(toggleBorder) { obj.style.borderColor=borderStyle; } } else if(document.getElementsByTagName) { i=element.indexOf(":"); if(i>=0) { toggleAttribute=element.substring(i+1,element.length); element=element.substring(0,i); } if(document.getElementsByTagName(element).length && toggleID) { lastArgument=(typeof(toggle.arguments[toggle.arguments.length-1])=="boolean")?-1:0; xSwitch=(lastArgument)?toggle.arguments[toggle.arguments.length-1]:false; exceptions=toggleID; for(i=3;i<(toggle.arguments.length+lastArgument);i++) { exceptions+=toggle.arguments[i]+"|"; } i=exceptions.indexOf("|"); t=""; while(i>=0) { t+=exceptions.substring(start,i+1)+toggleID; start=i+1; i=exceptions.indexOf("|",start); if(!i) { break; } } exceptions=t.substring(0,t.length-toggleID.length); obj=document.getElementsByTagName(element); objFirst=(objFirst<0)?0:Math.max(0,objFirst); objLast=(objLast<0)?obj.length:Math.min(obj.length,objLast); objCount=(objLast-objFirst)+1; for(i=objFirst;i=0)?true:false; if(objCount>showStatus) { window.status="Bearbeitetes Element: "+(result)+"/"+objCount; } if(toggleDisplay) { if(xSwitch) { obj[i].style.display=(toggleException)?displayXStyle:displayStyle; } else if(!toggleException) { obj[i].style.display=displayStyle; } } if(toggleVisibility) { if(xSwitch) { obj[i].style.visibility=(toggleException)?visibilityXStyle:visibilityStyle; } else if(!toggleException) { obj[i].style.visibility=visibilityStyle; } } if(toggleOpacity) { if(xSwitch) { obj[i].style.filter=((toggleException)?opacityXStyleIE:opacityStyleIE); obj[i].style.MozOpacity=((toggleException)?opacityXStyleMoz:opacityStyleMoz); obj[i].style.KhtmlOpacity=((toggleException)?opacityXStyleKHTML:opacityStyleKHTML); obj[i].style.opacity=((toggleException)?opacityXStyleCSS:opacityStyleCSS); } else if(!toggleException) { obj[i].style.filter=opacityStyleIE; obj[i].style.MozOpacity=opacityStyleMoz; obj[i].style.KhtmlOpacity=opacityStyleKHTML; obj[i].style.opacity=opacityStyleCSS; } } if(toggleColor) { if(xSwitch) { obj[i].style.color=(toggleException)?colorXStyle:colorStyle; } else if(!toggleException) { obj[i].style.color=colorStyle; } } if(toggleBack) { if(xSwitch) { obj[i].style.backgroundColor=(toggleException)?backXStyle:backStyle; } else if(!toggleException) { obj[i].style.backgroundColor=backStyle; } } if(toggleBorder) { if(xSwitch) { obj[i].style.borderColor=(toggleException)?borderXStyle:borderStyle; } else if(!toggleException) { obj[i].style.borderColor=borderStyle; } } } } if(objCount>showStatus) { window.status=" "; } } else { result=0; } } else { result=false; } } return result; }