﻿/*------------------------------------------------------------**
** GENERAL PURPOSE CODE to test for Browser incompatibilities **
**-------------------------------------------------------------*/
var agent    = navigator.userAgent.toLowerCase();

function getIEVersionNumber() {
  var MSIEOffSet = agent.indexOf("msie ");
  if (MSIEOffSet == -1) {
    return 0;
  } else {
    return parseFloat(agent.substring(MSIEOffSet + 5, agent.indexOf(";", MSIEOffSet)));
  }
}
function getNNVersionNumber() {
  if (isNN) {
    var appVer = parseFloat(navigator.appVersion);
    if (appVer < 5) {
      return appVer;
    } else {
      if (typeof(navigator.vendorSub) != "undefined") {
        return parseFloat(navigator.vendorSub);
      }  
    }  
  }
  return 0;
}

function checkForWinXP() {
  if (agent.indexOf("windows nt 5.1") != -1) {
      return true;
  }
  return false;    
}

//Note: checkForWinXPSP2() will return false positives unless the following code was executed on the previous page:
//  navigator.XP2Test = new Object();

function checkForWinXPSP2() {
  if ( (checkForWinXP()) && (typeof(navigator.XP2Test) == "undefined") ) {
    return true;
  }
  return false;    
}

var isNN     = navigator.appName.indexOf("Netscape") != -1;
var isIE     = navigator.appName.indexOf("Microsoft") != -1;
var isIE5Up  = getIEVersionNumber() >= 5;
var isIE55Up = getIEVersionNumber() >= 5.5;
var isIE6Up  = getIEVersionNumber() >= 6;
var isIE7up  = getIEVersionNumber() >= 7;
var isNN6Up  = getNNVersionNumber() >= 6;
var isSafari = navigator.appVersion.indexOf("Safari") != -1;
var isOpera  = navigator.userAgent.indexOf("Opera") != -1;


var isWin    = agent.indexOf("win") != -1;
var isMac    = agent.indexOf("mac") != -1;
var isUnix   = agent.indexOf("x11") != -1;
var isWinXP = checkForWinXP();
var isWinXPSP2 = checkForWinXPSP2();
var isWin95  = ((agent.indexOf("win95")!=-1) || (agent.indexOf("windows 95")!=-1));
var isWin98  = navigator.appVersion.indexOf("98") != -1;
var isWin2000 = navigator.appVersion.indexOf("Windows NT 5.0");	 
var isVista = (navigator.userAgent.toLowerCase().indexOf('windows nt 6') > 0) || (navigator.userAgent.toLowerCase().indexOf('vist') > 0);

