Ajax.Responders.register({
	onCreate: function() {
		if($('indicador') && Ajax.activeRequestCount > 0)
			Effect.Appear('indicador',{duration: 0.25, queue: 'end'});
	},
	onComplete: function() {
		if($('indicador') && Ajax.activeRequestCount == 0)
			Effect.Fade('indicador',{duration: 0.25, queue: 'end'});
	}
});

//encodeURIComponent
function registrar(form)
{
	var post = Form.serialize(form);
	var idioma = $F('idioma');
	
	if (idioma =='en')
	{
		var url  = '/sistema.php?mode=reservas&idioma=en&' + post; 
	}
	else
	{
		var url  = '/sistema.php?mode=reservas&' + post; 
	}
	
	
	clean_form(form);
	
	var register = new Ajax.Request( url, { method: 'post', parameters: post, 
								  		  onSuccess: function (originalRequest) 
										  {
											 var h = originalRequest.getResponseHeader ('State');
											 if (h == 'error')
											 {
												var xml = originalRequest.responseXML.documentElement;
												resaltar_errores (xml, form);
											 }
											 else if ( h == 'ok')
											 {
											 	window.location.href = '/sistema.php?mode=reservas&sendOk=ok';
											 }
											 return true; 
										  }
								  		} 
								 );
}
//
function resaltar_errores (xml, formulario)
{
        var total_element_id = xml.getElementsByTagName('elemento_id').length;
		var	html = '<ul>';
		
        if (total_element_id > 0)
        {
           	clean_form(formulario);				
			// Marco todos los elementos que tienen error
			var enfoco = false;
			for (i=0; i<total_element_id; i++)
            {
            	var element_id = xml.getElementsByTagName('elemento_id').item(i).firstChild.data;
				var mensaje_id = xml.getElementsByTagName('mensaje_id').item(i).firstChild.data;
				
                $(element_id).addClassName('resaltar_campos');
				if (mensaje_id.length > 0)
				{
					html += '<li>' + mensaje_id + '</li>';
				}
				
				if (!enfoco) {
					Field.focus($(element_id));
					enfoco = true;
				}
			}
			html += '</ul>';
			$('phpteam_msg').innerHTML = html;
			new Effect.Appear('phpteam_msg');
        }
}

function clean_form(formulario)
{
	for (i=0; i < formulario.elements.length; i++)
    {
		if (formulario.elements[i].className == 'resaltar_campos')
		{
			formulario.elements[i].className = '';
		}
	}
	$('fecha_llegada').addClassName('Estilo6');
	$('fecha_salida').addClassName('Estilo6');
	clean_msg();
}

function clean_msg()
{
	if ($('phpteam_msg')) 
	{
		Element.hide('phpteam_msg');
	}
}