/* 

  Browser Up-to-date Check v1.1 (Updated: 22/09/09)
  
  Copyright (c) HM2K 2009. All Rights Reserved.
  
  This is propriety code, if you wish to use the code, please contact me first.
  
  Thanks!
  
*/

document.write('<script type="text/javascript" src="version_compare.js"></script>'); 

var versions = {
  firefox: '3.5.3',
  chrome: '3.0.195.21',
  safari: '4.0.3',
  opera: '10.00', 
  msie: '8.0'
};

var userAgent = navigator.userAgent.toLowerCase();

var browserid = userAgent.match(/(firefox|chrome|safari|opera|msie)/)[1];

var browserversion = (userAgent.match(new RegExp('.+(?:version)[\/: ]([\\d.]+)')) || userAgent.match(new RegExp('.+(?:'+browserid+')[\/: ]([\\d.]+)')) || [0,'0'])[1];

function browser_check(id) {
  return new RegExp(id).test(userAgent);
}

function version_check() {
  for (id in versions) {
    if (browser_check(id) && version_compare(browserversion, versions[id], '>=')) {
      return true;
    }
  }
}

function uptodate_check() {
  uptodate=version_check();
  
  //document.getElementById('debug').innerHTML = '(UserAgent: '+navigator.userAgent+")<br>\n";
  document.getElementById('debug').innerHTML = 'Detected browser: ' + browserid + ' v' + browserversion + ' and should be v' + versions[browserid] + ' or above';

	if (uptodate){
		document.getElementById('content').innerHTML = 'YES';
		document.getElementById('update').innerHTML = 'Your browser is up-to-date';
	} else {
		document.getElementById('content').innerHTML = 'NO';
		document.getElementById(browserid).style.display = 'inline';
	}
} 	

function check(){
  uptodate_check();
	//setInterval('uptodate_check()', 500);
}

window.onload = function() {
  check();
};
