var nyhedsbrevValidator;
var slideTimer;
var slideActive;
window.onload = function(){
	if ($('f_subscribe')) {
		nyhedsbrevValidator = new Validator({
			rules : {
				navn: {
					validator: 'notEmpty',
					id: 'nyhedsbrevNavn',
					message: 'Indtast venligst dit navn',
					breakChainOnFailure : true
				},
				email: {
					validator: 'email',
					id: 'nyhedsbrevEmail',
					message: 'Indtast venligst din email.'
				}
			},
			form : null,
			alert : {

		}
		}, false);
	}
	slideshowClass(8000);
	
	if($('kundedata')){
		$('nyhedsbrev').checked = true;
	}
}

Event.observe(document,'dom:loaded', whenDomLoaded);

//var quicksearch = new Quicksearch();
var slideshows = new Array();
function whenDomLoaded() {	
	if($('loginCurtain')) $('loginCurtain').observe('click', closeLoginPopup);
	if($('loginCloseBtn')) $('loginCloseBtn').observe('click', closeLoginPopup);
	
	$('popupCurtain').observe('click', popupCurtainClick);	
	var queryParams = document.location.href.replace(/\+/g," ").toQueryParams();
	if (queryParams.loginError) {
		openLoginPopup();
		$('userid').value = queryParams.loginUserid;
		$('huskMig').checked = queryParams.huskMig == '1';
		alert(queryParams.loginError);
	}
	if (queryParams.forgotPasswordError) {
		openLoginPopup();
		showForgotPassword();
		$('forgotPasswordUserid').value = queryParams.forgotPasswordUserId;
		alert(queryParams.forgotPasswordError);
	}
	if (queryParams.forgotPasswordSuccess) {		
		alert(queryParams.forgotPasswordSuccess);
	}
	if (window.formErrorFields && !(queryParams.forgotPasswordError || queryParams.forgotPasswordSuccess || queryParams.loginError)) {
		formErrorFields.each(function(f) {				
			if ($(f) && ($(f).readAttribute('type') == 'text') || $(f).readAttribute('type') == 'password' || $(f).tagName == 'textarea' || $(f).tagName.toLowerCase() == 'select') {				
				$(f).setStyle({
					background: '#ff8'
				});
			}
		});
		var errorText = '';
		formErrors.each(function(m) {
			if (Object.isArray(m)) {				
				errorText += m.first() + "\n";
			} else {
				errorText += $H(m).values().first();
			}
		});
		alert(errorText);
	}
	
	checkInfoTextIsInsidePage();
		
	if (Prototype.Browser.IE) {
		$('userid').observe('keydown', loginFormKeydown);
		$('password').observe('keydown', loginFormKeydown);
	}
	
	// NYHEDSBREV 
	if ($('f_subscribe')) {		
		$('f_subscribe').observe('submit', nyhedsbrevFormSubmit);
	}
}

function nyhedsbrevFormSubmit(event) {
	event.stop();
	if (nyhedsbrevValidator.validates()) {
		$('nyhedsbrevTilmeldingDiv').setStyle({
			display: 'none'
		});
		$('nyhedsbrevArbejder').setStyle({
			display: 'block'
		});
		new Ajax.Request('/ajax/tilmeldNyhedsbrev', {
			parameters: {
				email: $F('nyhedsbrevEmail'),
				navn : $F('nyhedsbrevNavn')
			},
			onSuccess : nyhedsbrevSuccess,
			onFailure : nyhedsbrevFailure,
			method 	: 'post'
		})
	}
}

function nyhedsbrevSuccess(transport) {
	if (transport.responseText != 'success' && transport.responseText != 'already') {
		nyhedsbrevFailure(transport);
		return;
	}
	$('nyhedsbrevArbejder').setStyle({
		display: 'none'
	});
	if(transport.responseText == 'success'){
		$('nyhedsbrevSucces').setStyle({
			display: 'block'
		});
	}else if(transport.responseText == 'already'){
		$('nyhedsbrevAlready').setStyle({
			display: 'block'
		});
	}
	
}

function nyhedsbrevFailure(transport) {
	if (confirm('Der skete en fejl. Vil du se den tekniske information?')) {
		alert(transport.responseText);
	}
	$('nyhedsbrevTilmeldingDiv').setStyle({
		display: 'block'
	});
	$('nyhedsbrevArbejder').setStyle({
		display: 'none'
	});
	$('nyhedsbrevSucces').setStyle({
		display: 'none'
	});
	$('nyhedsbrevAlready').setStyle({
		display: 'none'
	});
}

function checkInfoTextIsInsidePage() {
	if ($$('body.adminBody')) return;
	var height = 0;
	$$('.infoTekstPopup').each(function(p) {
		height = Math.max(height, p.getHeight());
	})
	var wideCol = $('layoutCenterRightCol') ? $('layoutCenterRightCol') : $('layoutCenterCol'); 
	wideCol.setStyle({
		height: Math.max(wideCol.getHeight(), height) + 'px'
	});
}
 
function closeLoginPopup() {
	$('loginCurtain').setStyle({
		display:'none'
	});
	$('loginPopup').setStyle({
		display:'none'
	});
}

function loginFormKeydown(event) {	
	var keyCode = getKeyCode(event);
	if (keyCode == Event.KEY_RETURN) {		
		if (loginValidator.validates()) {
			loginForm.submit();
		}
	}
}

function openLoginPopup() {
	$('loginCurtain').setStyle({
		display:'block',
		opacity:0.7
	});
	var winDimensions = document.viewport.getDimensions();
	$('loginPopup').setStyle({
		display:'block'//,
//		left:Math.round(winDimensions.width / 2) - 310 + 'px',
//		top:Math.round(winDimensions.height / 2) - 150 + 'px'
	});
	$('loginContent').setStyle({
		display:'block'
	});
	$('forgotPassword').setStyle({
		display:'none'
	});
	$('userid').focus();
}

function showForgotPassword() {
	$('loginContent').setStyle({
		display:'none'
	});
	$('forgotPassword').setStyle({
		display:'block'
	});
	$('forgotPasswordUserid').focus();
}

var loginValidator = new Validator({
	rules : {
		userid: {
			validator: 'notEmpty',
			id: 'userid',
			message: 'Indtast venligst din emailadresse',
			breakChainOnFailure: true
		},
		password: {
			validator: 'notEmpty',
			id: 'password',
			message: 'Indtast venligst dit password.',
			breakChainOnFailure: true
		}		
	},
	form : 'loginForm',
	alert : {
		
}
}, true);

var forgotPasswordValidator = new Validator({
	rules : {
		userid: {
			validator: 'notEmpty',
			id: 'forgotPasswordUserid',
			message: 'Indtast venligst din emailadresse',
			breakChainOnFailure: true
		}	
	},
	form : 'forgotPasswordForm',
	alert : {
		
}
}, true);


function showPopupCurtain() {
	var dimensions = document.viewport.getDimensions();
	$('popupCurtain').setStyle({
		display:'block',
		opacity:0.2,
		width : dimensions.width + 'px',
		height: dimensions.height + 'px'
	});
}


function openInfoTekst(id, skema) {
	var popup = $((skema ? 'skemaTekst_' : 'infoTekstPopup_') + id);
	closeInfoPopups();
	popup.setStyle({
		display: 'block'
	});
	var popupHeight = popup.getHeight();
	var col = $('centerCol');
	var centerHeight = col.getHeight() - 100;
/*if ( centerHeight < popupHeight) {
		col.setStyle({
			height : popupHeight + 30 + 'px'
		});
	} else {
		popup.setStyle({
			height : centerHeight + 'px'
		});
	}*/
}

function closeInfoPopups() {
	$$('.infoTekstPopup').each(function(popup) {
		popup.setStyle({
			display: 'none'
		});
	});
	$('popupCurtain').setStyle({
		display: 'none'
	});
}

function popupCurtainClick() {
	closeInfoPopups();
}

function slideshowClass(time){
	if(!$('layoutAdminMenu')){
		$$('.slideshowClass').each(function(elem,i){
			elem.id = 'slideshow_'+i;		
			if(i == 0){
				elem.setOpacity(0);
				elem.style.display = 'block';
				new Effect.Opacity(elem.readAttribute('id'), { from: 0, to: 1, duration: 1.5 });
			}else{
				elem.setOpacity(0);
				elem.style.display = 'block';
			}			
		});
		slideTimer = setTimeout('slideAction('+time+');',time);
		slideActive = 0;
	}else{
		$$('.slideshowClass').each(function(elem,i){
			//elem.style.display = 'block';
		});
	}
}

function slideAction(time){
	var play = 1;
	var size = $$('.slideshowClass').size();
	$$('.slideshowClass').each(function(elem,i){
		if(slideActive == i && play == 1){
			//elem.fade({ duration: 1.5, from: 1, to: 0 });
			new Effect.Opacity(elem.readAttribute('id'), { from: 1, to: 0, duration: 1.5 });
			
			if(size == i + 1 ){
				new Effect.Opacity($$('.slideshowClass')[0].readAttribute('id'), { from: 0, to: 1, duration: 1.5 });
				slideActive = 0;
			}else{
				new Effect.Opacity($$('.slideshowClass')[i+1].readAttribute('id'), { from: 0, to: 1, duration: 1.5 });
				slideActive = i+1;
			}
			
			slideTimer = setTimeout('slideAction('+ time +');',time+1000);
			play = 0;
		}
	});	
}