//----------------------------
// basisfunktionen
//----------------------------

function MM_preloadImages() { //v3.0
  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];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


function resetRollover(imgName, imgSrc){
	var x;
	if ((x=MM_findObj(imgName))!=null) x.src = imgSrc;
}



// begrenzung von zeichen in einer textarea auf maximal-laenge
function checkMax(field, max) {
	var fieldLength = field.value.length;
	if (fieldLength>max) {
		field.value = field.value.substr(0,max);
		alert('Es sind max. '+max+' Zeichen erlaubt.');
	}
}
// begrenzung von zeichen in einer textarea auf maximal-laenge unter einbeziehung eines textes aus einem pulldown
function checkMaxMulti(f, fieldTXT, fieldPD, max) {
	var FieldTXT = f.elements[fieldTXT];
	var FieldPD = f.elements[fieldPD];
	var txtFieldLength = FieldTXT.value.length;
	var pdFieldLength = FieldPD.options[FieldPD.options.selectedIndex].value.length+1;
	if (pdFieldLength+txtFieldLength>max) {
		FieldTXT.value = FieldTXT.value.substr(0,max-pdFieldLength);
		alert('Es sind max. '+max+' Zeichen erlaubt.');
	}
}
//maxlength for textareas
function setMaxLength(max, id, textprev, textnext){		
	var counter = document.createElement('div');
	var maxLength = max;
	counter.className = 'counter';
	
	if(!maxLength){return;}
	
	if(!textprev){
		var htmltextprev='Anzahl der Zeichen, die Sie noch eingeben k&ouml;nnen:';
	} else {
		var htmltextprev = textprev;
	}
	
	if(!textnext){
		var htmltextnext='';
	} else {
		var htmltextnext = textnext;
	}
	
	if (!id) {
		var x = document.getElementsByTagName('textarea');
		for (var i=0;i<x.length;i++){
			setMaxLength_Loop(counter, maxLength, htmltextprev, htmltextnext, x[i]);
		}
	} else {
		var x = document.getElementById(id);	
		setMaxLength_Loop(counter, maxLength, htmltextprev, htmltextnext, x);
	}

}
//part of setMaxLength2
function setMaxLength_Loop(counter, maxLength, htmltextprev, htmltextnext, x ){
	var counterClone = counter.cloneNode(true);
	counterClone.relatedElement = x;
	counterClone.innerHTML = htmltextprev + ' <span aria-live="polite">0</span> ' + htmltextnext;
	x.parentNode.insertBefore(counterClone,x.nextSibling);
	x.relatedElement = counterClone.getElementsByTagName('span')[0];
	x.onkeyup = x.onchange = function(){
		var currentLength = this.value.length;
		if (currentLength > maxLength){	
			this.value=this.value.slice(0, maxLength);		
		}
		if (currentLength < maxLength){
			this.relatedElement.firstChild.nodeValue = maxLength-currentLength;
		} else { 
			this.relatedElement.firstChild.nodeValue = 0;
		}
	};
	x.onkeyup();	
}

function hidejsfallback(classname){
	var hidearray = getElementsByClass(classname);
	for (var i=0;i<hidearray.length;i++){
		hidearray[i].className = 'hideme';
	}	
}



function parseHost(u) {
	uw = u.replace(/:\/\//, "/");
	parts = uw.split("/");
	return(parts[1]); 
}

function newWin(h,t) {
	 var newwin=window.open(h, t); // , 'resizable=1,location=1,directories=1,status=1,menubar=1,scrollbars=1,toolbar=1'
	 newwin.focus();
}

function trackIntern(l) {
	return true;
	self.location.href=rel2rootweb+'div/linktrack.php'+insertsid+'linkurl='+escape(l.href);
}


// timeout-cleaner
function cto(to){
	if (to!=false) window.clearTimeout(to);
}


function oid(n) {
    return (document.getElementById?(document.getElementById(n)?document.getElementById(n):false):(document.all?(document.all(n)?document.all(n):false):false));
}
function otn(n) { // get object by tag-name
    return (document.getElementsByTagName?(document.getElementsByTagName(n)?document.getElementsByTagName(n):false):(document.all?(document.all(n)?document.all(n):false):false));
}


function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function addEvent(obj, typ, fun) {
	if (obj.addEventListener) {
		obj.addEventListener( typ, fun, false); 
		return true; 
	} else if (obj.attachEvent) {
		return obj.attachEvent("on"+typ, fun);
	}
	return false;
}



function iwapJump(targ, anch) {
	/*if (iwapchanged=='yes') {
		var abfrage = confirm('Zum Speichern Ihrer Änderungen klicken Sie bitte auf "OK", um ohne Speichern weiterzugehen drücken Sie "Abbrechen"');
	}*/
	if (iwappage=='') return true; //  || abfrage==false
	document.iwapform.pagejump.value=targ;
	document.iwapform.pageanchor.value=anch;
	document.iwapform.submit();
	return false;
}
function iwapHelpInit(hid) {
	oid(hid).style.display='none';
	oid(hid+'-toggle').style.display='inline';
	oid(hid+'-close').style.display='block';
}
var iwapHelpAct = '';
function iwapHelpShow(hid) {
	var iwapHelpActBak = iwapHelpAct;
	if (iwapHelpAct) {
		oid(iwapHelpAct).style.display='none';
		iwapHelpAct = '';
	}
	if (iwapHelpActBak!=hid) {
		oid(hid).className='iwaphelp';
		oid(hid).style.display='block';
		iwapHelpAct = hid;
	}
}
function iwapHelpUnShow(hid) {
	oid((hid)).style.display='none';
	iwapHelpAct = '';
}
