// KJD_STD.JS

// Extract from File:     browser.js 

function BrowserIsInternetExplorer() 
{ 
var UA = navigator.userAgent.toLowerCase(); 
return ((UA.indexOf('msie') != -1) && (UA.indexOf('spoofer') == -1) && (UA.indexOf('opera') == -1)); 
}

function BrowserIsNetscape() 
{ 
var BN = navigator.appName.toLowerCase();
var UA = navigator.userAgent.toLowerCase(); 
return ((BN == 'netscape') && (UA.indexOf('spoofer') == -1) && (UA.indexOf('compatible') == -1) && (UA.indexOf('opera') == -1)); 
}

function BrowserIsOpera() 
{ 
var UA = navigator.userAgent.toLowerCase(); 
return (UA.indexOf('opera') != -1); 
}

function BrowserIsElseAlert(Browser)
{
var Supported;
switch (Browser)
  {
  case 'IE': Supported = BrowserIsInternetExplorer(); break;
  case 'NS': Supported = BrowserIsNetscape(); break;
  case 'OP': Supported = BrowserIsOpera(); break;
  default:   Supported = false;
  }
if (!Supported) alert('Sorry, this feature is not supported by your browser.      ');
return(Supported);
}

function InternetExplorerVersion()
{
var UA          = navigator.userAgent.toLowerCase(); 
var IndexOfMSIE = UA.indexOf('msie');
var Version     = 0;
if (BrowserIsInternetExplorer() == true)
  Version = parseFloat(UA.substring(IndexOfMSIE+5));
return(Version);
}

function NetscapeVersion()
{
var Version = 0;
if (BrowserIsNetscape() == true)
  {
  Version = parseFloat(navigator.appVersion);
  if ((Version >= 5) && (typeof navigator.vendorSub != 'undefined'))
    Version = parseFloat(navigator.vendorSub);
  }
return(Version);
}

function OperaVersion()
{
var UA           = navigator.userAgent.toLowerCase(); 
var IndexOfOpera = UA.indexOf('opera');
var Version      = 0;
if (BrowserIsOpera() == true)
  Version = parseFloat(UA.substring(IndexOfOpera+6));
return(Version);
}

function AlertIfBrowserEarlierThan(MinIEVer, MinNSVer, MinOPVer)
{
var IEVer = InternetExplorerVersion();
var NSVer = NetscapeVersion();
var OPVer = OperaVersion();
var S     = '';
if ((IEVer > 0) && (IEVer < MinIEVer)) S = 'You appear to be using Internet Explorer version ' + IEVer + '    \nwhich might not operate correctly with this web site.     \n\n';
if ((NSVer > 0) && (NSVer < MinNSVer)) S = 'You appear to be using Netcape version ' + NSVer + '    \n which may not operate correctly with this web site.     \n\n';
if ((OPVer > 0) && (OPVer < MinOPVer)) S = 'You appear to be using Opera version ' + OPVer + '    \n which may not operate correctly with this web site.     \n\n';
if (S != '')
  {
  S = S + 'This site should work correctly with:\n     - Internet Explorer ' + MinIEVer + '\n     - Netscape ' + MinNSVer + '\n     - Opera ' + MinOPVer + '\n     - or compatible browsers.';
  alert(S);
  }
}
