function nefe(adresse1,height1,width1){
   NewWindowA = window.open(adresse1,"NewWindowA", "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,width="+width1+",height="+height1);
   NewWindowA.focus();
}
function handle_key(ev,js_test) {
   cc=ev.charCode||ev.keyCode||ev.which;
   return (cc==js_test)?true:false;
}

function OpenNewWindow(xadresse,xname,xwidth,xheight,xscroll){
   NewWindow = window.open(xadresse,xname, "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars="+xscroll+",resizable=1,width="+xwidth+",height="+xheight);
   NewWindow.focus();
}

function do_group(grpid,subgrpid,aktion)
{
   if (aktion=='start' && document.forms[0].elements['pass1']) document.forms[0].elements['modus'].value='';
   document.forms[0].elements['aktion'].value = aktion;
   document.forms[0].elements['grpid'].value = grpid;
   document.forms[0].elements['subgrpid'].value = subgrpid;
   document.forms[0].elements['id'].value = "";
   document.forms[0].submit();
}

function do_aitem(id,aktion)
{
   document.forms[0].elements['aktion'].value = aktion;
   document.forms[0].elements['id'].value = id;
   document.forms[0].submit();
}

function newwindow(adresse1,winname,height1,width1){
   NewWindowA = window.open(adresse1,winname, "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width="+width1+",height="+height1);
   NewWindowA.focus();
}
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
   if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
      document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
      else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

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_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_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_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 dd_visible(vis) {
   form_count=document.forms.length;
   for (var b = 0; b < form_count; b++) {
      elem_count=document.forms[b].elements.length;
      for (var c = 0; c < elem_count; c++) {
         if (document.forms[b].elements[c].type=='select-one') {
            document.forms[b].elements[c].style.display=vis;
         }
      }
   }
}

var viewport =
{
   getIECanvas: function ()
   {
      var canv = null;
      if (!window.opera && document.all && typeof document.body.clientWidth != "undefined")
      {
         var cm = document.compatMode && document.compatMode == "CSS1Compat";
         canv = cm ? document.documentElement : document.body;
      }
      return canv;
   },

   getWinWidth: function ()
   {
      var canv;
      if ( canv = this.getIECanvas() )
      this.width = canv.clientWidth;
      else
      this.width = window.innerWidth - 18;
   },

   getWinHeight: function ()
   {
      var canv;
      if (canv = this.getIECanvas())
      this.height = canv.clientHeight;
      else
      this.height = window.innerHeight - 18;
   },

   getScrollX: function ()
   {
      var canv;
      if (canv = this.getIECanvas())
      this.scrollX = canv.scrollLeft;
      else if (window.pageXOffset)
      this.scrollX = window.pageXOffset;
      else if (window.scrollX)
      this.scrollX = window.scrollX;
      else
      this.scrollX = 0;
   },

   getScrollY: function ()
   {
      var canv;
      if (canv = this.getIECanvas())
      this.scrollY = canv.scrollTop;
      else if (window.pageYOffset)
      this.scrollY = window.pageYOffset;
      else if (window.scrollY)
      this.scrollY = window.scrollY;
      else
      this.scrollY = 0;
   },

   getAll: function ()
   {
      this.getWinWidth();
      this.getWinHeight();
      this.getScrollX();
      this.getScrollY();
   }
};

function getObject( obj ) {
   if ( document.getElementById ) {
      obj = document.getElementById( obj );
   } else if ( document.all ) {
      obj = document.all.item( obj );
   } else {
      obj = null;
   }
   return obj;
}

function moveObject( obj, e ) {
   var tempX = 0;
   var tempY = 0;
   var offset = 20;
   var objHolder = obj;
   obj = getObject( obj );
   if (obj==null) return;
   // Dieser Dreizeiler ersetzt die unteren 28 Zeilen
   e = e || window.event;
   tempY = !isNaN(e.pageY)? e.pageY : e.clientY; // y-position
   tempX = !isNaN(e.pageX)? e.pageX : e.clientX; // x-position
   //   if( e )
   //   {
   //      if( typeof( e.pageX ) == 'number' )
   //      {
   //         tempX = e.pageX;
   //         tempY = e.pageY;
   //      }
   //      else
   //      {
   //         tempX = e.clientX;
   //         tempY = e.clientY;
   //      }
   //   }
   //   else
   //   {
   //      e = window.event;
   //      tempX = e.clientX;
   //      tempY = e.clientY;
   //      if( document.documentElement
   //        && ( document.documentElement.scrollTop
   //            || document.documentElement.scrollLeft ) )
   //      {
   //         tempX += document.documentElement.scrollLeft;
   //         tempY += document.documentElement.scrollTop;
   //      }
   //      else if( document.body
   //         && ( document.body.scrollTop
   //             || document.body.scrollLeft ) )
   //      {
   //         tempX += document.body.scrollLeft;
   //         tempY += document.body.scrollTop;
   //      }
   //   }


   if (document.all) {
      tempX = event.clientX + document.body.scrollLeft;
      tempY = event.clientY + document.body.scrollTop;
   } else {
      tempX = e.pageX;
      tempY = e.pageY;
   }
   if (tempX < 0){tempX = 0}
   if (tempY < 0){tempY = 0}
   var obj_o=u_.offset(obj);
   //obj.style.top  = (tempY - offset - obj_o.y) + 'px';
   obj.style.top  = (tempY - offset - obj_o.y - obj.clientHeight) + 'px';
   //obj.style.left = (tempX + offset - obj_o.x) + 'px';
   obj.style.left = (tempX - offset - obj_o.x - obj.clientWidth) + 'px';
   displayObject( objHolder, true );
}
function displayObject( obj, show ) {
   obj = getObject( obj );
   if (obj==null) return;
   obj.style.visibility = show ? 'visible' : 'hidden';
}
var u_ = {
   position: function (element) {
      var p = {x: element.offsetLeft || 0, y:element.offsetTop || 0};
      while (element = element.offsetParent) {
         p.x += element.offsetLeft;
         p.y += element.offsetTop;
      }
      return p;
   },
   offset: function (element) {
      var p = {x:0, y:0};
      while (element = element.offsetParent) {
         p.x += element.offsetLeft;
         p.y += element.offsetTop;
      }
      return p;
   }
}
//var divElement = document.getDocumentById("myid");
//var p = underscore.position(divElement);
//alert("position x:" + p.x + "; y:" + p.y);
function sendmsgLayer(Lfrm){
   var mymsg = '';
   var myform = '';
   if (Lfrm.elements['msg'])
   mymsg = Lfrm.elements['msg'].value;
   if (Lfrm.elements['myform'])
   myform = Lfrm.elements['myform'].value;
   switch (mymsg) {
      case 'hinweis':
      hidemsgLayer();
      break;
      case 'verifikation':
      do_group('', '', 'start');
      break;
      case 'fanclub':
      hidemsgLayer();
      OpenNewWindow('http://fanclub.dfb.de/', 'Fan_Club', 850, 650, 1);
      break;
      default:
      if (Lfrm.msgemail && Lfrm.myform) {
         if (EMail(Lfrm.msgemail.value)) {
            document.forms[myform].elements['uo[ca_email]'].value = Lfrm.msgemail.value;
            doit(mymsg, myform);
         }
         else {
            alert('Bitte eine gültige Email-Adresse angeben.');
            Lfrm.msgemail.select();
            Lfrm.msgemail.focus();
         }
      }
   }
}

function showmsgLayer(title, msg, cancel, hint, tgtform){
   viewport.getAll();
   if (cancel == 0)
   document.getElementById('msgLayerCancel').style.display = 'none';
   else
   document.getElementById('msgLayerCancel').style.display = 'inline';
   document.getElementById('msgLayerTitle').innerHTML = title;
   document.getElementById('msgLayerText').innerHTML = msg;
   document.forms['msgLayerForm'].msg.value = hint;
   document.forms['msgLayerForm'].myform.value = tgtform;
   document.getElementById('msgLayer').style.top = (viewport.scrollY + 120) + "px";
   document.getElementById('msgLayer').style.left = ((viewport.width / 2) - 385) + "px";
   dd_visible('none');
   document.getElementById('msgLayer').style.display = 'block';
}

function hidemsgLayer(){
   dd_visible('inline')
   document.getElementById('msgLayer').style.display = 'none';
}