/****************************************************
     Author: Pete Mulder
     Url: http://www.hitmedia.nl
     Copyright 2004/2005 - HITmedia 
	 Last update: August 2005
	 Project: Universal Mediaplayer, Publieke omroep
	 
	 Detect browser and plugin environment 
****************************************************/

// Set var for agent and convert all characters to lowercase 
var agt=navigator.userAgent.toLowerCase();

// Script and variables to indicate the current browser

var ie = false;

var nn4 = false;	// Netscape Navigator or Communicator
var ie4 = false;
var ie5 = false;
var ie6 = false;
var moz = false;	// Mozilla, NS 6+, Konqueror, etc
var dom1 = false;	// fully supports DOM1
var dom2 = false;	// fully supports (important bits of) DOM2
var old = false;	// very old browser

var isWin = false;
var isMac = false;
var isOther = false;




// *** BROWSER VERSION ***
// Note: On IE5, these return 4, so use is_ie5up to detect IE5.
var is_major = parseInt(navigator.appVersion);
var is_minor = parseFloat(navigator.appVersion);

// Note: Opera and WebTV spoof Navigator.  We do strict client detection.
// If you want to allow spoofing, take out the tests for opera and webtv.
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));
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_nav4down = (is_nav && (is_major <= 4));
var is_nav4up = (is_nav && (is_major >= 4));
var is_navonly      = (is_nav && ((agt.indexOf(";nav") != -1) ||
                      (agt.indexOf("; nav") != -1)) );
var is_nav6 = (is_nav && (is_major == 5));
var is_nav6up = (is_nav && (is_major >= 5));
var is_gecko = (agt.indexOf('gecko') != -1);


var is_ie     = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
var is_ie3    = (is_ie && (is_major < 4));
var is_ie4    = (is_ie && (is_major == 4) && (agt.indexOf("msie 4")!=-1) );
var is_ie4up  = (is_ie && (is_major >= 4));
var is_ie4down = (is_ie3 || is_ie4);
var is_ie5    = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0")!=-1) );
var is_ie5_5  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.5") !=-1));
var is_ie5up  = (is_ie && !is_ie3 && !is_ie4);
var is_ie5_5up =(is_ie && !is_ie3 && !is_ie4 && !is_ie5);
var is_ie6    = (is_ie && (is_major == 4) && (agt.indexOf("msie 6.")!=-1) );
var is_ie6up  = (is_ie && !is_ie3 && !is_ie4 && !is_ie5 && !is_ie5_5);

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);
var is_opera7 = (agt.indexOf("opera 7") != -1 || agt.indexOf("opera/7") != -1);
var is_opera7up = (is_opera && !is_opera2 && !is_opera3 && !is_opera4 && !is_opera5 && !is_opera6);
var is_opera6down = (is_opera2 || is_opera3 || is_opera4 || is_opera5 || is_opera6);

// hack ie5 js version for mac
if (is_mac && is_ie5up) is_js = 1.4;

// *** PLATFORM ***
var is_win   = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) );
var is_mac    = (agt.indexOf("mac")!=-1);
var is_linux = (agt.indexOf("inux")!=-1);

 isMacIE=false; 
       if(navigator.userAgent.indexOf("Mac")!=-1){ 
           if(navigator.appName=="Microsoft Internet Explorer"){ 
               isMacIE=true; 
               } 
       } 



	   
// Browser sniff -- the following code does a very simple browser check and rates the 
//     browser as either Internet Explorer on a Win32 platform or not, so that we 
//     know to use the ActiveX model, or the plug-in Model.
var sBrowser = navigator.userAgent;  
var showControlStatus  = 0;  
if ((sBrowser.indexOf("IE") > -1) && (navigator.platform == "Win32"))
{
	sBrowser = "IE";
} else {
	sBrowser = "nonIE";
}
// end browser sniff



function browser_detect()
{
    // do it the official W3C way

    if ( window.document.implementation != null)
    {
         dom1 = window.document.implementation.hasFeature("HTML","1.0");
         dom2 = window.document.implementation.hasFeature("HTML","2.0") &&
         	window.document.implementation.hasFeature("Events","2.0") &&
         	window.document.implementation.hasFeature("Core","2.0") &&
         	window.document.implementation.hasFeature("CSS2","2.0");
    }

    // Mozilla based browsers contain the Gecko rendering engine

    moz = (window.navigator != null )
		? ( window.navigator.userAgent.indexOf("ecko") != -1 )
		: false;

    nn4 = (window.document.layers != null && !moz);

	
	
    // IE has incremental support for the Document Object Model

    ie = (window.document.all);
    ie6 = (window.document.all && dom1);
    ie5 = (window.document.all && window.document.getElementsByTagName && !ie6);
    ie4 = (window.document.all && !ie6 && !ie5);
   
    // something horrible and old - sorry Opera.

	
    old = (!ie4 && !ie5 && !ie6 && !dom1 && !nn4 && !moz);

    // OS check.	
	version = navigator.appVersion;
	isWin = (version.toLowerCase().indexOf("win")!=-1);
    isMac = (version.toLowerCase().indexOf("mac")!=-1);
    isOther = (!isWin && !isMac);
   

if (parseInt(navigator.appVersion)>=4) {
  if (navigator.appName=="Netscape")
    isNav=true
  else
    isNav=false
}

	
}

browser_detect();

