/**
 * application javascript
 */

// Replaces the $.browser jQuery object
// It sets the actual version number and other useful information
(function($) {
	var userAgent = navigator.userAgent.toLowerCase();
	var browserName = userAgent.match(/(firefox|chrome|safari|opera|msie)/)[1];
	var browserVersion = (userAgent.match(new RegExp('.+(?:version)[\/: ]([\\d.]+)')) || userAgent.match(new RegExp('.+(?:'+browserName+')[\/: ]([\\d.]+)')) || [0,'0'])[1];
	
	$.supportedBrowsers = {
		firefox: { name: 'Mozilla Firefox', version: 3.0 },
		chrome: { name: 'Google Chrome', version: 4.0 },
		safari: { name: 'Safari', version: 4.0 },
		opera: { name: 'Opera', version: 10.0 },
		msie: { name: 'Internet Explorer', version: 8.0 }
	};
	
	$.browser = {
		id: browserName.toString(),
		version: parseFloat(browserVersion),
		name: $.supportedBrowsers.firefox.name,
		versionRecommended: $.supportedBrowsers.firefox.version,
		matched: false,
		supported: false
	};
	
	$.each($.supportedBrowsers, function(id, browser) {
		if ($.browser.supported) {
			return true;
		}
		if ($.browser.id == id && $.browser.version) {
			$.browser.name = browser.name;
			$.browser.versionRecommended = browser.version;
			$.browser.matched = true;
			if ($.browser.version >= browser.version) {
				$.browser.supported = true;
			}
		}
		return true;
	});
})(jQuery);

$(document).ready(function() {
	// If the browser is not supported, but it did match to a supported browser,
	// then display a warning to force an upgrade of the browser.
	if ( ! $.browser.supported && $.browser.matched) {
		html  = '<div style="text-align: center;">';
		html += '<h1>Your browser is not supported!</h1>';
		html += '<p>You are currently using ' + $.browser.name + ' ' + $.browser.version + ' as your browser.</p>';
		html += '<p>We only support ' + $.browser.name + ' ' + $.browser.versionRecommended + ' and above, please upgrade.</p>';
		html += '</div>';
		$('#main').html(html);
	}
});
