var BrowserDetect = {
	init: function(){
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent) ||
		this.searchVersion(navigator.appVersion) ||
		"an unknown version";
	},
	searchString: function(data){
		for (var i = 0; i < data.length; i++) {
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1) 
					return data[i].identity;
			}
			else 
				if (dataProp) 
					return data[i].identity;
		}
	},
	searchVersion: function(dataString){
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) 
			return;
		return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
	},
	dataBrowser: [{
		string: navigator.userAgent,
		subString: "Chrome",
		identity: "Chrome"
	},
	{
		string: navigator.vendor,
		subString: "Apple",
		identity: "Safari"
	}, {
		prop: window.opera,
		identity: "Opera"
	}, {
		string: navigator.userAgent,
		subString: "Flock",
		identity: "Flock"
	}, {
		string: navigator.userAgent,
		subString: "Firefox",
		identity: "Firefox"
	}, {
		string: navigator.userAgent,
		subString: "MSIE",
		identity: "IExplorer",
		versionSearch: "MSIE"
	}]
};
var BrowserCompatible = {
	check: function(){
		BrowserDetect.init();
		if ((this.useBlackList && this.unCompatibleBrowsers[BrowserDetect.browser] && BrowserDetect.version <= this.unCompatibleBrowsers[BrowserDetect.browser]) ||
		    (!this.useBlackList && (BrowserDetect.version < this.compatibleBrowsers[BrowserDetect.browser] || !this.compatibleBrowsers[BrowserDetect.browser]))) {
			if (!this.readCookie('browsercheck_dontShowAgain')) 
				this.showWarning();
		}
	},
	getStyle: function(el, styleProp){
		var x = el;
		if (x.currentStyle) 
			var y = x.currentStyle[styleProp];
		else 
			if (window.getComputedStyle) 
				var y = document.defaultView.getComputedStyle(x, null).getPropertyValue(styleProp);
		return y;
	},
	createCookie: function(name, value, days){
		if (days) {
			var date = new Date();
			date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
			var expires = ";expires=" + date.toGMTString();
		}
		else 
			var expires = "";
		document.cookie = name + "=" + value + expires + ";path=/";
	},
	
	readCookie: function(name){
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for (var i = 0; i < ca.length; i++) {
			var c = ca[i];
			while (c.charAt(0) == ' ') 
				c = c.substring(1, c.length);
			if (c.indexOf(nameEQ) == 0) 
				return c.substring(nameEQ.length, c.length);
		}
		return null;
	},
	
	eraseCookie: function(name){
		this.createCookie(name, "", -1);
	},
	showWarning: function(){
		if(!this.lang){
			this.lang=navigator.language || navigator.browserLanguage;
			if(!this.langTranslations[this.lang]) this.lang="en";
		}
		var bg = document.createElement("div");
		bg.id = "browsercheck_bg";
		bg.style["background"] = "#fff";
		bg.style["filter"] = "alpha(opacity=80)";
		bg.style["-moz-opacity"] = "0.90";
		bg.style["opacity"] = "0.9";
		bg.style["position"] = "fixed";
		if (BrowserDetect.browser == "IExplorer" && BrowserDetect.version < 7) 
			bg.style["position"] = "absolute";
		bg.style["z-index"] = "9998";
		bg.style["top"] = "0";
		bg.style["left"] = "0";
		bg.style["height"] = (screen.availHeight + 300) + "px";
		bg.style["width"] = (screen.availWidth + 300) + "px";
		
		var warning_html = "";
		if (this.allowCancel) 
			warning_html += '<a href="javascript:BrowserCompatible.cancel()" style="background:url('+this.images['cancel']+') no-repeat; height:15px; width:16px; position:absolute; right:10px; top:7px;" title="' + this.langTranslations[this.lang]['cancel'] + '"></a>';
		warning_html += '<div id="browsercheck_title" style="font-family:arial; font-size:24px; color:#000; margin:15px;">' + this.langTranslations[this.lang]['title'] + '</div>';
		warning_html += '<div id="browsercheck_description" style="font-family:arial; font-size:12px; color:#707070; margin:15px;">' + this.langTranslations[this.lang]['description'] + '</div>';
		warning_html += '<div id="browsercheck_recomendation" style="font-family:arial; font-size:12px; color:#707070; margin:15px;">' + this.langTranslations[this.lang]['recomendation'] + '</div>';
		for (var i = 0; i < this.offeredBrowsers.length; i++) {
			warning_html += '<a href="' + this.browsersList[this.offeredBrowsers[i]].link + '" title="' + this.langTranslations[this.lang][this.offeredBrowsers[i]] + '" style="height:60px; width:165px; display:block; float:left; margin:15px; text-decoration:none; background: url(' + this.browsersList[this.offeredBrowsers[i]].image + ') no-repeat;" target="_blank"> </a>';
			
		}
		if (this.allowToHide) 
			warning_html += '<div style="clear:both;font-family:arial; font-size:12px; color:#707070; padding:7px 15px;"><label><input type="checkbox" id="browsercheck_dontShowAgain" onclick="BrowserCompatible.dontShowAgain()" />' + this.langTranslations[this.lang]['dontShowAgain'] + '</label></div>';
		var warning = document.createElement("div");
		warning.id = "browsercheck_warning";
		warning.style["background"] = "url("+this.images['background']+") no-repeat";
		warning.style["padding"] = "2px";
		warning.style["width"] = "600px";
		warning.style["height"] = "400px";
		warning.style["position"] = "fixed";
		if (BrowserDetect.browser == "IExplorer" && BrowserDetect.version < 7) 
			warning.style["position"] = "absolute";
		warning.style["z-index"] = "9999";
		warning.style["top"] = ((window.innerHeight || document.body.parentNode.offsetHeight) - 400) / 2 + "px";
		warning.style["left"] = ((window.innerWidth || document.body.parentNode.offsetWidth) - 600) / 2 + "px";
		warning.innerHTML = warning_html;
		
		this.old_overflow_style = this.getStyle(document.body.parentNode, "overflow") || this.getStyle(document.body, "overflow");
		if (BrowserDetect.browser == "Opera" && this.old_overflow_style == "visible") 
			this.old_overflow_style = "auto";
		document.body.parentNode.style["overflow"] = "hidden";
		document.body.style["overflow"] = "hidden";
		
		document.body.appendChild(bg);
		document.body.appendChild(warning);
		
		if (document.addEventListener) {
			document.addEventListener('resize', this.warningPosition, false);
		}
		else {
			document.attachEvent('onresize', this.warningPosition);
		}
		
	},
	warningPosition: function(){
		var warning = document.getElementById('browsercheck_warning');
		warning.style["top"] = ((window.innerHeight || document.body.parentNode.offsetHeight) - 400) / 2 + "px";
		warning.style["left"] = ((window.innerWidth || document.body.parentNode.offsetWidth) - 600) / 2 + "px";
	},
	dontShowAgain: function(){
		var inpDontShowAgain = document.getElementById('browsercheck_dontShowAgain').checked;
		var dontShowAgain = this.readCookie('browsercheck_dontShowAgain');
		if (inpDontShowAgain) {
			this.createCookie('browsercheck_dontShowAgain', 'on', this.cookiesExpire);
		}
		else {
			this.eraseCookie('browsercheck_dontShowAgain');
		}
	},
	cancel: function(){
		var bg = document.getElementById('browsercheck_bg');
		var warning = document.getElementById('browsercheck_warning');
		bg.parentNode.removeChild(bg);
		warning.parentNode.removeChild(warning);
		document.body.parentNode.style["overflow"] = this.old_overflow_style;
		if (BrowserDetect.browser != "IExplorer") 
			document.body.style["overflow"] = this.old_overflow_style;
		document.onresize = this.resize_function;
	},
	old_overflow_style: "",
	resize_function: null,
	allowCancel: false,
	allowToHide: false,
	cookiesExpire: 1,
	images : {
		'background':"img/bg1.gif",
		'cancel':"img/cancel.gif"
	},
	useBlackList: false,
	compatibleBrowsers: {
		"Opera": 9.25,
		"Firefox": 2,
		"IExplorer": 7,
		"Safari": 525.17,
		"Flock": 1.1,
		"Chrome": 1
	},		
	unCompatibleBrowsers: {
		"IExplorer": 6
	},
	offeredBrowsers: ["Chrome","Firefox", "Flock", "Safari", "IExplorer", "Opera"],
	browsersList: {
		"Chrome": {
			"image": "http://www.goodbyeie6.org.ua/chrome.gif",
			"link": "http://www.google.com/chrome/"
		},
		"Opera": {
			"image": "http://www.goodbyeie6.org.ua/opera.gif",
			"link": "http://www.opera.com/products/desktop/"
		},
		"Firefox": {
			"image": "http://www.goodbyeie6.org.ua/firefox.gif",
			"link": "http://www.mozilla-europe.org/"
		},
		"IExplorer": {
			"image": "http://www.goodbyeie6.org.ua/iexplorer.gif",
			"link": "http://www.microsoft.com/windows/internet-explorer/download-ie.aspx"
		},
		"Safari": {
			"image": "http://www.goodbyeie6.org.ua/safari.gif",
			"link": "http://www.apple.com/safari/"
		},
		"Flock": {
			"image": "http://www.goodbyeie6.org.ua/flock.gif",
			"link": "http://www.flock.com/"
		}
	},
	lang: "",
	langTranslations: {
		"uk": {
			"title": "Несумісний браузер",
			"description": "Ваш браузер вже застарів, тому в ньому немає всіх необхідних функцій для коректної роботи веб-сайтів. Сучасні веб-сайти створюються, щоб бути максимально зручними та максимально ефективними для людини, а разом із удосконаленням сайтів покращуються браузери. Крім цього, з розвитком інтернет-комерції, зростає кількість зловмисників та хакерських атак; використання найновіших версій браузерів - хороший спосіб вберегти свій комп'ютер.",
			"recomendation": "Ми рекомендуємо використовувати останню версію одного із наступних браузерів:",
			"cancel": "Закрити попередження",
			"dontShowAgain": "Не показувати це попередження наступного разу",
			"Flock": "Браузер Flock спеціалізований для користувачів різноманітних соціальних мереж. \nВін оснований на тому ж двигуні що й Firefox, тому демонструє таку ж стабільність та корекність роботи.",
			"Firefox": "На сьогоднішній день найпопулярніший браузер у світі. \nЗагальне число користувачів браузера Firefox становить 40%.",
			"IExplorer": "Браузер Internet Explorer від компанії Microsoft з 7-ї версії вийшов на новий рівень. \nПроте все ж поступається за коректністю роботи іншим браузерам.",
			"Safari": "Популярний браузер від компанії Apple. \nЗ версії 3.1 демонструє достатню стабільність, за що й потрапив до цього списку.",
			"Opera": "Браузер Opera користується популярністю в Європі, але великі компанії досі його ігнорують. \nOpera має низку недоліків, проте стабільно удосконалюється.",
			"Chrome": "Браузер Chrome - молодий браузер створений компанією Google. \nРозробники приділили особливу увагу зручності браузера, і разом з тим він ні скільки не поступається за коректністю роботи."
		},
		"ru": {
			"title": "Несовместимый браузер",
			"description": "Ваш браузер уже устарел, потому в нем нет всех необходимых функций для корректной работы веб-сайтов. Современные веб-сайты создаются, чтобы быть максимально удобными и максимально эффективными для человека, а вместе с усовершенствованием сайтов улучшаются браузеры. Кроме этого, с развитием интернет-комерции, растет количество злоумышленников и хакерских атак; использование новейших версий браузеров - хороший способ уберечь свой компьютер.",
			"recomendation": "Мы рекомендуем использовать последнюю версию одного из следующих браузеров:",
			"cancel": "Закрыть предупреждение",
			"dontShowAgain": "Не показывать это предупреждение вновь",
			"Flock": "Браузер Flock специализирован для пользователей разнообразных социальных сетей. \nОн основан на том же движке что и Firefox, потому демонстрирует такую же стабильность и коректность работы.",
			"Firefox": "На сегодняшний день самый популярный браузер в мире. \nОбщее число пользователей браузера Firefox составляет 40%.",
			"IExplorer": "Браузер Internet Explorer от компании Microsoft после 7-и версии вышел на новый уровень. \nОднако все же уступает за корректностью работы другим браузерам.",
			"Safari": "Популярный браузер от компании Apple. \nПосле версии 3.1 демонстрирует достаточную стабильность, за что и попал к этому списку.",
			"Opera": "Браузер Opera пользуется популярностью в Европе, но большие компании до сих пор его игнорируют. \nOpera имеет ряд недостатков, однако стабильно совершенствуется.",
			"Chrome": "Браузер Chrome - молодой браузер созданный компанией Google. \nРазработчики уделили особое внимание удобству браузера, и вместе с тем он ни сколько не уступает по коректнистю работы."
		},
		"en": {
			"title": "Obsolete browser",
			"description": "Your browser is obsolete, which means it does not contain all of the necessary functions for the correct working of many current web sites. Modern web sites are created to be convenient and effective for you and, together with improvement of web sites themselves, browsers continue to improve. In addition, older browsers have many security glitches which can be maliciously abused to steal personal and financial information; therefore by upgrading your web browser you not only benefit from an enhanced web experience, but ensure that your private data is better protected.",
			"recomendation": "We recommend using the latest version of one of the following browsers. All are free, quick to install and won't cost you anything.",
			"cancel": "Close this warning",
			"dontShowAgain": "Don't show this warning again",
			"Firefox": "Firefox is considered by many to be the most advanced web browser available today it has an ability to adapt to individual usage through a large range of plug-ins and other popular features such as tabbed browsing that offers useful management of the browsing experience.",
			"Flock": "Flock is a web browser that is optimised for blogs, news aggregation, and social networking sites. It is built on Mozilla’s Firefox codebase and has many of the same benefits.",
			"IExplorer": "Internet Explorer has been the default web browser for Windows users for many years.",
			"Safari": "Safari is a web browser developed by Apple Inc. and included in Mac OS X and is also available for Windows.",
			"Opera": "Opera is a web browser and Internet suite developed by the Opera Software company. Opera handles common Internet-related tasks such as displaying web sites, sending and receiving e-mail messages, managing contacts, IRC online chatting, downloading files via BitTorrent, and reading web feeds.",
			"Chrome" : "Google Chrome is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier."
		},
		"hu": {
			"title": "Elavult böngésző!",
			"description": "Az Ön webböngészőjének verziószáma nem éri el a minimális követelményeket! Sajnos így a weboldal nem fog megfelelően működni! A weboldalon használt fejlesztési munkák a korszerűség jegyében születtek, így megtekintésükhöz a lejebb felsorolt böngészők valamelyikére lesz szüksége! A böngésző programok ingyenesek. Amennyiben Ön a jól megszokott Internet Explorerét nem szeretné lecserélni, kérjük frissítse 7-es vagy 8-as verzióra. Ezt egy egyszerű Windows frissítéssel megteheti amit a Start menüjéből elérhet!",
			"recomendation": "A felsorolt böngészők közül válassza ki az Önnek is szimpatikus példányt és telepítse számítógépére!",
			"cancel": "Zárja be a figyelmeztetést",
			"dontShowAgain": "Ne mutassa többé ezt a figyelmeztetést",
			"Firefox": "A Mozilla Firefox (hivatalos rövidítéssel Fx, vagy gyakran FF) nyílt forráskódú, ingyenes webböngésző program, amit a Mozilla Alapítvány fejleszt. 2009 júliusában 22,47%-os részesedése volt a böngészőpiacon, a második legtöbbet használt böngésző az Internet Explorer után.[1] A nyílt forráskódú Gecko böngészőmotort használja, amely számos jelenlegi internetes szabványt támogat, továbbá néhány olyan elemet is, ami ezen szabványok része lehet a közeljövőben.",
			"Flock": "A Flock egy Firefox motorra épülő, elsősorban közösségi szolgáltatásokkal kiegészített, gyors webböngésző. A webböngészőktől elvárható funkciókon túl többek között a saját blogok (és szerkesztésük), a Flickr, a Photobucket, a Shadows webcímgyűjtők közvetlen elérése, sajátos RSS kezelések jellemzik. A Flock egyaránt létezik Windows, Mac és Linux környezetben.",
			"IExplorer": "A Windows Internet Explorer (korábban Microsoft Internet Explorer, rövidítve IE vagy MSIE), egy grafikus webböngésző, amely jelenleg a Microsoft Windows operációs rendszerek részét képezi. Az Internet Explorer a legelterjedtebb böngészőprogram, részesedése a világpiacon (2009. április) 66,10%. 7-es verziótól ajánlott a használata.",
			"Safari": "A Safari egy webböngésző, melyet az Apple fejleszt a Mac OS X operációs rendszeréhez és újabban a Microsoft Windows operációs rendszerekhez. Ez az alapértelmezett böngésző a Mac OS X 10.3 (Panther) és a későbbi Mac OS változatokban.",
			"Opera": "Az Opera egy ingyenes, igen kis méretű, több platformon használható internetes tevékenységeket összefogó program: elsősorban egy webböngésző, de ezen kívül tartalmaz beépített levelező klienst, hírolvasó klienst, címjegyzéket, IRC alapú csevegő klienst, RSS és Atom hírolvasót, minialkalmazásokat (widgeteket), valamint hagyományos és Bittorrent alapú letöltésvezérlőt is.",
			"Chrome" : "A Google Chrome a Google által fejlesztett nyílt forráskódú webböngésző, ami a WebKit böngészőmotort használja. A Chrome mögött álló nyílt forrású (BSD licencű) fejlesztési projekt neve Chromium.[1] Az első nyilvános bétaváltozat 43 nyelven jelent meg, Microsoft Windows platformra (a Mac OS X és Linux verziók fejlesztés alatt állnak)."
		}
	}
}