var myGlobalHandlers = {
	onCreate: function(){
		document.documentElement.style.cursor = 'wait';
	},

	onComplete: function() {
		if(Ajax.activeRequestCount == 0){
			document.documentElement.style.cursor = 'default';
		}
	},
	onException: showException
	
};

function showException(req, e){
	document.documentElement.style.cursor = 'default';
	window.alert(e.message);
}

Ajax.Responders.register(myGlobalHandlers);

function errorHandle(dom){
	var error = dom.getElementsByTagName('error').item(0);
	if(error.firstChild && error.firstChild.data){
		var errorMsg = error.firstChild.data;
		if(errorMsg != ""){
			window.alert(errorMsg);
			return true;
		}
	}
	return false;
}

function openToc(id){
	if($('toc_' + id)){
		$('toc_' + id).style.display = ($('toc_' + id).style.display == 'block') ? 'none' : 'block';
	}
}

function manageResendpwdResponse(req){
	var dom = req.responseXML.documentElement;
	if(errorHandle(dom))
		return;
	var error = dom.getElementsByTagName('content').item(0);
	if(error.firstChild && error.firstChild.data){
		var errorMsg = error.firstChild.data;
		if(errorMsg != ""){
			window.alert(errorMsg);
		}
	}
}

function resendPwd(){
	if($('email')){
		var email = $('email').value;
		if(email == ""){
			window.alert("Specificare un indirizzo di posta elettronica");
			return;
		}
		new Ajax.Request("/servlet/Resendpwd",
						{	method: 'post',
							parameters: "email=" + escape(email),
							onComplete: manageResendpwdResponse});
	}
}


/* Password di prova */
function selectAllAreas (){
	$('pwdProvaItems').select("input").each(function(item){
		item.checked = !item.checked;
	});
}

function selectArea(area){
	$$('input.cb_' + area).each(function(item){
//	$A(document.getElementsByClassName('cb_' + area)).each(function(item){
		item.checked = !item.checked;
	});
}

function validaForm(form){
	var numChecked = 0;
	if(typeof(form) == "string"){
		form = $(form);
	}

	form.select("input").each(function(item){
		if(item.checked){
			numChecked++;
		}
	});

	if(numChecked == 0) {
		window.alert("E' necessario scegliere almeno una rivista");
		return false;
	}

	return true;
}