
  //var bInternetExplorer;
  //bInternetExplorer = (navigator.userAgent.indexOf('MSIE') != -1) ? true : false;
  var bIsIe55Up = bIsIe55Up();


  // =====================
  // Opens slideshow popup
  // =====================
  function openSlideShow(sFolder) {
    
    var sProperties = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=auto,resizable=no';
    var iWidth      = 520;
    var iHeight     = 570;
    var iLeft       = (screen.availWidth - iWidth) / 2;
    var iTop        = (screen.availHeight - iHeight) / 2;
    var sProperties = 'height=' + iHeight + ',width=' + iWidth + ',top=' + iTop + ',left=' + iLeft + ',' + sProperties;
    var sUrl        = 'index.php?section=common&module=slideshow&folder=' + sFolder;
    var oWin        = window.open(sUrl, 'slideshow', sProperties);
    oWin.focus();
    
  }



  // =====================
  // Opens slideshow popup
  // =====================
  function openSlideShowDc(sFolder) {
    
    var sProperties = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=auto,resizable=no';
    var iWidth      = 520;
    var iHeight     = 570;
    var iLeft       = (screen.availWidth - iWidth) / 2;
    var iTop        = (screen.availHeight - iHeight) / 2;
    var sProperties = 'height=' + iHeight + ',width=' + iWidth + ',top=' + iTop + ',left=' + iLeft + ',' + sProperties;
    var sUrl        = 'http://www.diagnostischcentrum.com/index.php?section=common&module=slideshow&folder=' + sFolder;
    var oWin        = window.open(sUrl, 'slideshow', sProperties);
    oWin.focus();
    
  }
  


  // ===============
  // Initialize menu
  // ===============
  function initMenu() {

    // The menu does NOT work for iE prior to 5.5 because it doesnt supprt the iframe select box fix
    
    for (var i=0; i<aSections.length; i++) {
      
      var sSection = aSections[i];
      var oDiv = document.getElementById('div_' + sSection);
      var oButton = document.getElementById('button_' + sSection);
      
      oButton.onmouseover = openMenu;
      oButton.onmouseout = closeMenu;
      oDiv.onmouseout = closeMenu;

      if(bIsIe55Up) {
        var oIframe = document.getElementById('iframe_' + sSection);
        oIframe.style.width = oDiv.offsetWidth;
        oIframe.style.height = oDiv.offsetHeight;
      }      

     
    }

  }
  
  
  // =============================================================
  // Returns the name of the section of an element. For example:
  // If the object id is 'button_centrum' it will return 'centrum'
  // =============================================================
  function getSection(oElement) {
    
    if (!oElement) {
      return '';
    } else if (oElement.id.indexOf('_') == -1) {
      return '';
    } else {
      var a = oElement.id.split('_');
      return a[a.length-1];
    }
    
  }
  
  function closeMenu(event) {

    var oCurrent, oRelated;
    if (window.event) {
      oCurrent = this;
      oRelated = window.event.toElement;
    }  else {
      oCurrent = event.currentTarget;
      oRelated = event.relatedTarget;
    }
    //alert('FROM: ' + oCurrent + '(' + oCurrent.id + ')');
    //alert('TO: '   + oRelated + '(' + oRelated.id + ')');
    if (getSection(oCurrent) != getSection(oRelated)) {
      hideModules(getSection(oCurrent));
    }
    
  }

  function openMenu(event) {
    
    var oCurrent = window.event ? this : event.currentTarget;
    var a = oCurrent.id.split('_');
    var sSection = a[a.length-1];
    showModules(sSection);
    
  }

  function showModules(sSection) {
    
    var oLayer = document.getElementById('div_' + sSection);
    oLayer.style.visibility = 'visible';
    
    if(bIsIe55Up) {
      var oIframe = document.getElementById('iframe_' + sSection);
      oIframe.style.display = '';
    }
    

  }
  
  
  function hideModules(sSection) {
    
    if(bIsIe55Up) {
      var oIframe = document.getElementById('iframe_' + sSection);
      oIframe.style.display = 'none';
    }

    var oLayer =  document.getElementById('div_' + sSection);
    oLayer.style.visibility = 'hidden';


    
    
  }
  


  function bIsIe55Up() {
    
    // convert all characters to lowercase to simplify testing
    var agt=navigator.userAgent.toLowerCase();
    var appVer = navigator.appVersion.toLowerCase();

    // *** BROWSER VERSION ***

    var is_minor = parseFloat(appVer);
    var is_major = parseInt(is_minor);

    var is_opera = (agt.indexOf("opera") != -1);
    var is_opera2 = (agt.indexOf("opera 2") != -1 || agt.indexOf("opera/2") != -1);
    var is_opera3 = (agt.indexOf("opera 3") != -1 || agt.indexOf("opera/3") != -1);
    var is_opera4 = (agt.indexOf("opera 4") != -1 || agt.indexOf("opera/4") != -1);
    var is_opera5 = (agt.indexOf("opera 5") != -1 || agt.indexOf("opera/5") != -1);
    var is_opera6 = (agt.indexOf("opera 6") != -1 || agt.indexOf("opera/6") != -1); // new 020128- abk
    var is_opera7 = (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1); // new 021205- dmr
    var is_opera5up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4);
    var is_opera6up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4 && !is_opera5); // new020128
    var is_opera7up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4 && !is_opera5 && !is_opera6); // new021205 -- dmr

    // Note: On IE, start of appVersion return 3 or 4
    // which supposedly is the version of Netscape it is compatible with.
    // So we look for the real version further on in the string
    // And on Mac IE5+, we look for is_minor in the ua; since 
    // it appears to be more accurate than appVersion - 06/17/2004

    var is_mac = (agt.indexOf("mac")!=-1);
    var iePos  = appVer.indexOf('msie');
    if (iePos !=-1) {
       if(is_mac) {
           var iePos = agt.indexOf('msie');
           is_minor = parseFloat(agt.substring(iePos+5,agt.indexOf(';',iePos)));
       }
       else is_minor = parseFloat(appVer.substring(iePos+5,appVer.indexOf(';',iePos)));
       is_major = parseInt(is_minor);
    }

    // ditto Konqueror
                                      
    var is_konq = false;
    var kqPos   = agt.indexOf('konqueror');
    if (kqPos !=-1) {                 
       is_konq  = true;
       is_minor = parseFloat(agt.substring(kqPos+10,agt.indexOf(';',kqPos)));
       is_major = parseInt(is_minor);
    }                                 

    var is_getElementById   = (document.getElementById) ? "true" : "false"; // 001121-abk
    var is_getElementsByTagName = (document.getElementsByTagName) ? "true" : "false"; // 001127-abk
    var is_documentElement = (document.documentElement) ? "true" : "false"; // 001121-abk

    var is_safari = ((agt.indexOf('safari')!=-1)&&(agt.indexOf('mac')!=-1))?true:false;
    var is_khtml  = (is_safari || is_konq);

    var is_gecko = ((!is_khtml)&&(navigator.product)&&(navigator.product.toLowerCase()=="gecko"))?true:false;
    var is_gver  = 0;
    if (is_gecko) is_gver=navigator.productSub;

    var is_moz   = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
                    (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1)  &&
                    (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)     &&
                    (is_gecko) && 
                    ((navigator.vendor=="")||(navigator.vendor=="Mozilla")||(navigator.vendor=="Debian")));
    var is_fb = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
                 (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1)  &&
                 (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)     &&
                 (is_gecko) && (navigator.vendor=="Firebird"));
    var is_fx = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
                 (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1)  &&
                 (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)     &&
                 (is_gecko) && (navigator.vendor=="Firefox"));
    if ((is_moz)||(is_fb)||(is_fx)) {  // 032504 - dmr
       var is_moz_ver = (navigator.vendorSub)?navigator.vendorSub:0;
       if(!(is_moz_ver)) {
           is_moz_ver = agt.indexOf('rv:');
           is_moz_ver = agt.substring(is_moz_ver+3);
           is_paren   = is_moz_ver.indexOf(')');
           is_moz_ver = is_moz_ver.substring(0,is_paren);
       }
       is_minor = is_moz_ver;
       is_major = parseInt(is_moz_ver);
    }
   var is_fb_ver = is_moz_ver;
   var is_fx_ver = is_moz_ver;

    var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
                && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
                && (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)
                && (!is_khtml) && (!(is_moz)) && (!is_fb) && (!is_fx));

    // Netscape6 is mozilla/5 + Netscape6/6.0!!!
    // Mozilla/5.0 (Windows; U; Win98; en-US; m18) Gecko/20001108 Netscape6/6.0
    // Changed this to use navigator.vendor/vendorSub - dmr 060502   
    // var nav6Pos = agt.indexOf('netscape6');
    // if (nav6Pos !=-1) {
    if ((navigator.vendor)&&
        ((navigator.vendor=="Netscape6")||(navigator.vendor=="Netscape"))&&
        (is_nav)) {
       is_major = parseInt(navigator.vendorSub);
       // here we need is_minor as a valid float for testing. We'll
       // revert to the actual content before printing the result. 
       is_minor = parseFloat(navigator.vendorSub);
    }

    var is_nav2 = (is_nav && (is_major == 2));
    var is_nav3 = (is_nav && (is_major == 3));
    var is_nav4 = (is_nav && (is_major == 4));
    var is_nav4up = (is_nav && is_minor >= 4);  // changed to is_minor for
                                                // consistency - dmr, 011001
    var is_navonly      = (is_nav && ((agt.indexOf(";nav") != -1) ||
                          (agt.indexOf("; nav") != -1)) );

    var is_nav6   = (is_nav && is_major==6);    // new 010118 mhp
    var is_nav6up = (is_nav && is_minor >= 6); // new 010118 mhp

    var is_nav5   = (is_nav && is_major == 5 && !is_nav6); // checked for ns6
    var is_nav5up = (is_nav && is_minor >= 5);

    var is_nav7   = (is_nav && is_major == 7);
    var is_nav7up = (is_nav && is_minor >= 7);

    var is_ie   = ((iePos!=-1) && (!is_opera) && (!is_khtml));
    var is_ie3  = (is_ie && (is_major < 4));

    var is_ie4   = (is_ie && is_major == 4);
    var is_ie4up = (is_ie && is_minor >= 4);
    var is_ie5   = (is_ie && is_major == 5);
    var is_ie5up = (is_ie && is_minor >= 5);
    
    var is_ie5_5  = (is_ie && (agt.indexOf("msie 5.5") !=-1)); // 020128 new - abk
    var is_ie5_5up =(is_ie && is_minor >= 5.5);                // 020128 new - abk
	
    var is_ie6   = (is_ie && is_major == 6);
    var is_ie6up = (is_ie && is_minor >= 6);
    
    return is_ie5_5up;
    
  }
  
  
  
  
  
  
  

  
  
  

  function isEmpty(oText) {

    s = oText.value;
    if (s.length==0) return true;
    for (var i=0; i<s.length; i++) {
      bIsSpace          = (s.charAt(i) == ' ');
      bIsNewline        = (s.charAt(i).charCodeAt(0) == 10);
      bIsCarriageReturn = (s.charAt(i).charCodeAt(0) == 13);
      if ((!bIsSpace) && (!bIsNewline) && (!bIsCarriageReturn)) return false;
    }
    oText.value = '';
    return true;

  }
  
  function isEmail(oText) {

  	s = oText.value;
  	var email=/^[A-Za-z0-9]+([_\.-][A-Za-z0-9]+)*@[A-Za-z0-9]+([_\.-][A-Za-z0-9]+)*\.([A-Za-z]){2,4}$/i;
  	return(email.test(s));

  }
  
  
  function isInteger(oText) {

  	s = oText.value;
  	var integer=/(^-?\d\d*$)/;
  	return(integer.test(s));

  }
  

  function getEmail(s1, s2, s3, sClass) {

    sEmail = s1 + '@' + s2 + '.' + s3;
    document.write('<a class="' + sClass + '" href="mailto:' + sEmail + '">' + sEmail + '</a>');

  }
