var mouseX = 0
var mouseY = 0 

function getMouseXY(e) {
  var IE = document.all?true:false;
  
  if (IE) {  
     mouseX = event.clientX + document.body.scrollLeft;
     mouseY = event.clientY + document.body.scrollTop;
   } else {  
    mouseX = e.pageX;
    mouseY = e.pageY;
   }  

  if (mouseX < 0){mouseX = 0}
  if (mouseY < 0){mouseY = 0}  


  return true;
}

function layer_followmouse(id,sender) {
  ele = document.getElementById(id);
  var x = mouseX;
  var y = mouseY;
  x=x+10; y=y+15;
  ele.style.left=x.toString()+"px"
  ele.style.top=y.toString()+"px";
 
}

function readcookie(name) {
   var keks = document.cookie;

   var posName = keks.indexOf("; " + name + "=");
   if (posName == -1) {
      if (keks.indexOf(name + "=") == 0) posName = 0;
      else return null;
   }

   var wertAnfang = keks.indexOf("=", posName)+1;
   var wertEnde = keks.indexOf(";", posName+1);
   if (wertEnde == -1) wertEnde = keks.length;

   var wert = keks.substring(wertAnfang, wertEnde);
   return unescape(wert);
}


function togglelayer(id,sender,ix,iy) {
  ele = document.getElementById(id);

  if(ix=="inherited") {
    ele.style.left=mouseX.toString()+"px"
  } else ele.style.left=ix;
  if(iy=="inherited") {
    ele.style.top=mouseY.toString()+"px";
  } else ele.style.top=iy;

  if(ele.style.visibility=="hidden") {
    ele.style.visibility="visible";
	ele.style.width=ele.getAttribute("w");
	ele.style.height=ele.getAttribute("h");
  } else {
    ele.style.visibility="hidden";
	if(ele.style.width!="0") { ele.setAttribute("w",ele.style.width); }
	if(ele.style.height!="0") { ele.setAttribute("h",ele.style.height); }
	ele.style.width="0px";
	ele.style.height="0px";
	ele.style.left="0px"; ele.style.top="0px";
  }
  
}

  function SendForm(formname) {
    send=true; alertText="";
    for (i=0;i<=document.getElementById(formname).length-1;i++){
	  ele = document.getElementById(formname)[i];
	  title = ele.title;
	  if(!title) title=ele.name;

      if(ele.type!="checkbox") {
  	    if(ele.getAttribute('required')=="True" && !ele.value) { alertText=alertText+"\n"+"Bitte ausfüllen: "+title; }
        if(ele.getAttribute("minlength") && ele.value.length < ele.getAttribute("minlength")) { alertText=alertText+"\n"+title+" Mindestens "+ele.getAttribute("minlength")+" Buchstaben lang"; }	  
        if(ele.getAttribute("maxlength") && ele.value.length > ele.getAttribute("maxlength")) { alertText=alertText+"\n"+title+" Beschränkt auf "+ele.getAttribute("maxlength")+" Buchstaben"; }
	  } else if(ele.type=="checkbox") {
  	    if(ele.getAttribute('required')=="True" && !ele.checked) { alertText=alertText+"\n"+"Bitte ankreuzen: "+title; }
	  }
	  if (ele.getAttribute("sktype")=="verification") {
	    if(ele.value!=veri1+"+"+veri2+"="+(veri1+veri2)) { alertText=alertText+"\n"+"Der Überprüfungscode ist ungültig."; }
	  }
	}
	
	if(alertText) { alert(alertText); send=false; }
	if(send) document.getElementById(formname).submit();
	
  }

  function ExecSKFunction() {   
    for (i=0;i<=document.forms.length-1;i++){
	  for (fe=0;fe<=document.forms[i].elements.length-1;fe++){
	    ele = document.forms[i].elements[fe];//.item(i);
	    if(ele.getAttribute('skfunction')) eval(ele.getAttribute('skfunction'));
	  }
	}
  }

  
  
  function cleararray(a) {
    var ra = new Array;
	
    for (xxx=0;xxx<=a.length-1;xxx++) {
	  if(a[xxx]!="") { ra[ra.length]=a[xxx]; }
	}
	
	return ra;
  }
  
  
  function SKSum(id,s) {
    r=s.replace("[sum:","").replace("]","");

	var fields = new Array;	
	var fieldno = new Array;	
	
	fields = r.split(/[+:\-:*:/]/);
	fieldsno = r.split(/[+:\-:*:/:(:)]/);
    fieldsno = cleararray(fieldsno);
	
	ops = r;	
    for (xxx=0;xxx<=r.length-1;xxx++) {
   	  ops = ops.replace(/[^+\-*/]/,"");
	}
	
	var fval = new String;
	res = 0;
	ev="";
	for (xxx=0;xxx<=fieldsno.length-1;xxx++) {		  
	  vele = document.getElementById(fieldsno[xxx]);
	  if(vele) fval = document.getElementById(fieldsno[xxx]).value
	  else fval=fieldsno[xxx];
      if(fval && isNaN(fval)==false) {	   	 
	    fval = fields[xxx].replace(fieldsno[xxx],fval);         
		ev = ev + fval+ops.charAt(xxx); 
	  } else ev="";//ev+"0";
	}


	res=Math.round(eval(ev)*100.)/100.;
        if(!res) res="";

	rele = document.getElementById(id); 	
	if(rele.tagName=="INPUT" || rele.tagName=="TEXTAREA") 
	rele.value = res;
	else rele.innerHTML=res;
	
  }
  
//  window.document.onmousemove = getMouseXY;

