window.easyFairs = {
	event:{
		sideMenu:{
			defaultOpenIndex : 1
		}
	},
	ll:{},
	noLoginForShittyBrowserMsg : "This feature is not available for your browser.\n\nContact easyFairs if you need to modify your catalog or upgrade your browser."
};

var efOverlay;
var ui; //global UI object (efUI)
window.loginBlockIsOpen = false;

window.addEvent('domready',function(){

	//init overlay
	efOverlay = new Element('div',{
		'id':'efOverlay',
		'styles':{
			'opacity':0,
			'height': window.getScrollSize().y.toInt()
		}
	}).inject(document.body);
	window.addEvent('resize',function(){efOverlay.setStyle('height',window.getScrollSize().y.toInt())});

	//langMenu-toggler
	var langMenuEl = $('languages-list');
	//$('langMenu-wrap').setStyle('visibility','hidden');
	//var langSlider = new Fx.Slide(langMenuEl);
	//langSlider.hide();

	//langMenuEl.setStyle('visibility','visible');
	if($('langMenu-toggler')){
		$('langMenu-toggler').addEvent('click',function(e){
			new Event(e).stop();
			if(langMenuEl.getStyle('display')=='none'){
				langMenuEl.setStyle('display','');
			}else{
				langMenuEl.setStyle('display','none');
			}
			//langMenuEl.setStyle('display','block');
		});
	}



	//login
	if($('loginBlock-toggler')){
		$('loginBlock-toggler').addEvent('click',function(e){
			new Event(e).stop();
			open_loginBlock();
		});
	}


	//search
	if($('searchbox')){
		$('searchbox').addEvent('submit',function(e){
			new Event(e).stop();
			window.location.href='/search/'+this.getElement('input[type=text]').value;
		});
	}


	var Tips1 = new Tips($$('.mootooltip'));

	ui = new efUI();

	//myEf_link
	if($('myEf_link')){
		$('myEf_link').addEvent('click',function(e){
			e.stop();
			/*
			if(Browser.Engine.trident && Browser.Engine.version<=6){
				alert(window.easyFairs.noLoginForShittyBrowserMsg);
				return;
			}
			*/
			
			var self = this;

			ui.showLoader();

			//check user is logged in
			new Request.JSON({
				url:'index.php',
				data:{eID:'tx_ef-whoami'},
				onComplete:function(user){
					if(user.logged_in){
						ui.loaderEl.set('text','Redirecting...');
						window.location.href = '/'+self.getAttribute('href');
					}else{
						with(ui.popup){
							title = window.easyFairs.ll.label_access_required;
							content = '<p>'+window.easyFairs.ll.label_sitecontent__myef_needs_login+'</p><div id="loginBlock"><div id="tx-intajaxloginbox-pi1"><p class="ajaxLoadMsg">Loading...</p></div></div>';
							loading = true;
						}
						ui.showPopup();
						int_load_ajaxloginbox();
						ui.hideLoader();
						window.loginBlockIsOpen = true;
					}
				}
			}).send();

		});
	}

	//home-fader
	if($('home-fader')){
		var home_fader = new efSlideShow($('home-fader'));
	}

	//preload images
	var t = new Image();
	t.src='/fileadmin/templates/efcorp/images/tick.png';

});

function open_efOverlay(){
	ui.showOverlay();
}
function adjust_efOverlay(){efOverlay.setStyle('height',window.getScrollSize().y.toInt());}

function open_loginBlock(){
	/*
	if(Browser.Engine.trident && Browser.Engine.version<=6){
		alert(window.easyFairs.noLoginForShittyBrowserMsg+' ('+Browser.Engine.trident+Browser.Engine.version+')');
		return;
	}*/
	
	with(ui.popup){
		title = 'Login';
		content = '<div id="loginBlock"><div id="tx-intajaxloginbox-pi1"><p class="ajaxLoadMsg">Loading...</p></div></div>';
		loading = true;
	}

	ui.showPopup();
	int_load_ajaxloginbox();

	window.loginBlockIsOpen = true;
}

function close_loginBlock(){
	ui.hidePopup();
	window.loginBlockIsOpen = false;
}

function openEfPopup(url,theTitle,callBack){
	with(ui.popup){
		title = theTitle;
		content = '<div id="loginBlock"><div id="genericPopupAjaxTarget"></div></div>';
		loading = true;
		mayClose = true;
	}
	new Request.HTML({
		url:url,
		update:'genericPopupAjaxTarget',
		onSuccess: callBack
	}).send();
	ui.showPopup();
	return false;
}

var formValidator = {};
formValidator.isEmail = function(string){
	emailRegExp = /^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.([a-zA-Z]){2,4})$/
	return emailRegExp.test(string);
}
formValidator.notEmpty = function(string){return /\S/.test(string);};
