﻿var eika = eika || {};

/* Browsercheck */
eika.browserCheck = function(options) {	
	var deprecatedHtml;
	if(eika.cLang === 0) {
		deprecatedHtml = '<div id="deprecatedBox"><p><strong>Sie benutzen einen veralteten Browser!</strong></p><p>Die Verwendung alter Browserversionen birgt Sicherheitsrisiken und beschränkt das Surferlebnis! Bitte installieren Sie daher einen aktuellen Browser, wie z.B. den <a href="http://www.microsoft.com/windows/internet-explorer/worldwide-sites.aspx" title="Zur internationalen Downloadseite des Internet Explorers" target="_blank">Internet Explorer</a>, <a href="http://www.mozilla.com" title="Laden Sie sich den Mozilla Firefox Browser herunter" target="_blank">Mozilla Firefox</a>, <a href="http://www.opera.com/" title="Laden Sie sich den Opera Browser herunter" target="_blank">Opera</a>, <a href="http://www.apple.com/de/safari/download/" title="Laden Sie sich den Apple Safari Browser in der deutschen Version herrunter" target="_blank">Apple Safari</a> oder <a href="http://www.google.com/chrome" title="Laden Sie sich den Google Chrome Browser herunter" target="_blank">Google Chrome</a>, um ihren Computer vor Angriffen zu schützen und diese Webseite optimal anzuzeigen.</p></div>';
	} else {
		deprecatedHtml = '<div id="deprecatedBox"><p><strong>You are using an outdated browser!</strong></p><p>The usage of outdated browser versions is a security threat for your computer and can minify your user experience while surfing the world wide web. We therefore recommend to install a current version of one of the following browsers; <a href="http://www.microsoft.com/windows/internet-explorer/worldwide-sites.aspx" title="Download Microsoft Internet Explorer" target="_blank">Internet Explorer</a>, <a href="http://www.mozilla.com" title="Download Mozilla Firefox" target="_blank">Mozilla Firefox</a>, <a href="http://www.opera.com/" title="Download Opera" target="_blank">Opera</a>, <a href="http://www.apple.com/safari/" title="Download Apple Safari" target="_blank">Apple Safari</a> or <a href="http://www.google.com/chrome" title="Download Google Chrome" target="_blank">Google Chrome</a> in order to surf more secure and view this webpage with an optimal user experience.</p></div>';
	}
	// mozilla 3.6; major: 1, minor: 9, build: 2
	var checkOptions = {
		versions : {
			msie : '8',
			mozilla : { major: 1, minor: 9, build: 2 },
			opera : { major: 10, minor: 50 }
		},
		element : $('body'), 
		method : 'append',
		template : deprecatedHtml
	};
	
	if(options) {
		$.extend( checkOptions, options );
	}
	
	var showBox = false;
	var uaVersion = $.browser.version;
	var version;
	var major;
	var minors;
	var minor;
	var builds;
	var build;
	
	function showDeprecatedbox() {
		if ('after' === checkOptions.method) {
			checkOptions.element.after(checkOptions.template);
		} else if ('before' === checkOptions.method) {
			checkOptions.element.before(checkOptions.template);
		} else if ('prepend' === checkOptions.method) {
			checkOptions.element.prepend(checkOptions.template);
		} else {
			checkOptions.element.append(checkOptions.template);
		}
	}
		
	function init() {
		if($.browser.msie) {
			version = uaVersion.substr(0, uaVersion.indexOf('.'));
			if(parseInt(version) < checkOptions.versions.msie) {
				showBox = true;
			}
		}
				
		if($.browser.mozilla) {
			major = uaVersion.substr(0, uaVersion.indexOf('.'));
			minors = uaVersion.substr(uaVersion.indexOf('.')+1);
			if (parseInt(major) <= checkOptions.versions.mozilla.major) {
				minor = minors.substr(0, minors.indexOf('.'));
				if (!isNaN(parseInt(minor)) && parseInt(minor) <= checkOptions.versions.mozilla.minor) {
					builds = minors.substr(minors.indexOf('.') + 1);
					build = builds.substr(0, builds.indexOf('.'));
					if (!isNaN(parseInt(build)) && parseInt(build) < checkOptions.versions.mozilla.build) {
						showBox = true;
					}
				}
			}
		}
				
		if($.browser.opera) {
			major = uaVersion.substr(0, uaVersion.indexOf('.'));
			minors = uaVersion.substr(uaVersion.indexOf('.')+1);
			if (!isNaN(parseInt(major)) && parseInt(major) <= checkOptions.versions.opera.major) {
				minor = minors.substr(0, minors.indexOf('.'));
				if(isNaN(parseInt(minor)) && !isNaN(parseInt(minors))) minor = minors;
				if (!isNaN(parseInt(minor)) && parseInt(minor) < checkOptions.versions.opera.minor) {
					showBox = true;
				}
			}
		}
				
		if (showBox) {
			showDeprecatedbox();
		}
	}
	
	init();
};

$(function() {
	eika.browserCheck({
		element : $('.main'),
		method : 'prepend'
	});
});
