var isIE =  navigator.userAgent.indexOf("MSIE") != -1 ? true : false;
var isSafari =  navigator.userAgent.indexOf("Safari") != -1 ? true : false;
var isGecko =  (navigator.userAgent.indexOf("Gecko") != -1 &&   navigator.userAgent.indexOf("Safari") == -1) ? true : false;
var isOpera =  navigator.userAgent.indexOf("Opera") != -1 ? true : false;

var tabResError = new Array();
tabResError.push("This site requires a minimum screen resolution of 1024 pixels by 768 pixels. Please resize your resolution.");
tabResError.push("Ce site nécessite une résolution d’écran minimale de 1024 x 768 pixels. Merci de modifier votre résolution.");
tabResError.push("このサイトを閲覧するには、最小で1024×768ピクセルのスクリーンが必要です。ブラウザのサイズを調整してください。")
tabResError.push("浏览本站点需要 1024*768以上的分辨率,请调整您的屏幕设置");
tabResError.push("瀏覽本網站須使用不少於1024 x 768像素的熒幕解析度。請調整電腦的熒幕解析度。");
tabResError.push("본 사이트는 768x1024 픽셀 이상의 해상도에서만 실행됩니다. 화면 해상도를 재조정해주시기 바랍니다.");


function externalLink(url){
	window.open(url);
}


function breakQueryString(qs){		
	var result = new Object();		
	if(qs.length > 0){
		qs = qs.substr(1, qs.length);
		qs = qs.split("&");
		
		for(var i= 0; i < qs.length; i++){
			var val = qs[i].split("=");
			result[val[0]] = val[1];
		}
	}
	return result;
}

function showResError(){	
	var errorMsg = "";
	for(var i=0; i < tabResError.length ; i++){
		errorMsg += '<p>' + tabResError[i]  + '</p>';
	}
	document.getElementById("flashcontent").innerHTML = errorMsg;		
}

function getRequestURL(){
	alert(document.location.hash);
}

function getLocale(){
	var locale = '';
	var url = window.location;
	var re = new RegExp('/([a-z]{2}_[A-Z]{2})/');
	var m = re.exec(url);
	if (m != null) {
		var locale = m[1];
	}
	else if (redirection != null) {
		if (redirection[document.location.host] != null) {
			locale = redirection[document.location.host]['locale']; 
		}
	}
	//alert(locale);
	
	return locale;
}

function forceRedirect() {
	var locale = '';
	var url = window.location;
	var re = new RegExp('/([a-z]{2}_[A-Z]{2})/');
	var m = re.exec(url);
	if (m != null) {
		var locale = m[1];
	}
	else if (redirection != null) {
		if (redirection[document.location.host] != null) {
			locale = redirection[document.location.host]['locale']; 
			url = redirection[document.location.host]['url']; 
			if (locale != null && locale != '') {
				url = window.location.protocol+'//'+window.location.host+'/#/'+locale+url;
				window.location.replace(url);
			}
		}
	}	
}

function getSpecificPrehome(locale){
	var prehome = '';
	if (prehomes != null && locale != null && prehomes[locale]) {
		prehome = prehomes[locale];
	}
	
	return prehome;
}

function getSpecificPreloader(locale){
	var loader = '';
	if (preloaders != null && locale != null && preloaders[locale]) {
		loader = preloaders[locale];
	}
	
	return loader;
}


function artistry_redirect(){
	var result = 'false';
	var domains = ['hennessyartistry.com', 'www.hennessyartistry.com'];
	for(var i in domains){
		if(domains[i] == document.location.host){
			result = 'true';	
		}
	} 
	return result;
}





function flash(opts){

	var hauteur = screen.height;
	var largeur = screen.width;
	
	forceRedirect();

	var parametres = {	'country_select': getLocale(),
						'goto_artistry': artistry_redirect()
	 };
	Object.extend(parametres, opts || {});
	
	var specific_prehome =  getSpecificPrehome(parametres['country_select']);
	var specific_preloader =  getSpecificPreloader(parametres['country_select']);

	if (specific_prehome != null && specific_prehome != '') parametres['specific_prehome'] = specific_prehome;
	if (specific_preloader != null && specific_preloader != '') preloader = specific_preloader;
	
	specific_preloader_tab = preloader.split('.');
	parametres['specific_preloader'] = specific_preloader_tab[0]; 
	
	if(hauteur >= 768 && largeur >= 1024){
		var so = new SWFObject("/swf/"+preloader, "home", "100%", "100%", "9.0.124.0", "#000000"); 			

		for (var key in parametres) {
			so.addVariable(key, (parametres[key])?parametres[key]:'false');
		}
		so.addVariable('isGecko' ,(isGecko)?'true':'false');
		so.addVariable('isMac' ,(parseOs())?'true':'false');

		so.addParam("menu", "false");
		so.addParam("allowFullScreen", "true");
		so.useExpressInstall('/swf/expressinstall.swf');
		if( so.write('flashcontent') ){
    		var macmousewheel = new SWFMacMouseWheel(so);
		}
	}
	else
		showResError();
}


function reloadSite(locale ){
	document.location = '/index.htm?l=' + locale;
}

function parseOs(){
	var toparse = navigator.userAgent;
//	toparse = "Mozilla/5.0 (Macintosh; U; PPC Mac OS X 10.4; fr; rv:1.9.0.3) Gecko/2008092414 Firefox/3.0.3";
	var stock = toparse.split("(");
	var goodstock = stock[1].split(";");
	if(goodstock[0].substr(0,3) == "Mac"){
		if(parseFloat(goodstock[2].substr(-4,4)) < 10.5)
			return true;
		else 
			return false;
	}
	else
		return false;
}
