	function ejecutar_opcion_ajax(url_servidor,id_contenedor,sVariables)
	{
		$.ajax({
			type: 'POST',
			url: url_servidor,
			data: sVariables,
			dataType: "html",
			success: function(msg)
			{
				$("#"+id_contenedor).html(msg);
			}
		});
	}
	
		
	function inicializarEventosFormulario()
	{
		var sVariablesProvincias = 'acc=consultar_provincias&pais=';
		$("#id_pais").change(function(){ejecutar_opcion_ajax('consultas_servidor.php','id_provincia',sVariablesProvincias+$(this).attr("value"));});
		
		var sVariablesMenvio = 'acc=consultar_metodos_envio&forma_pago=';
		$("#id_forma_pago").change(function(){ejecutar_opcion_ajax('consultas_servidor.php','id_metodo_envio',sVariablesMenvio+$(this).attr("value"));});
	}
	
	function control_form_formulario()
	{	
		var errores_validacion = '';
		
		array_campos 		= $(".tabla_form td.celda_campo ");	
		var length_array 	= $(array_campos).length;
		var orden 			= length_array - 1;
		
		var guardamos_valor_pais_seleccionado = 'ES';

		for(i=0; i < orden; i++)
		{
			var nombre_campo 	= $(array_campos[i]).children().attr("name");
			var tipo 			= $(array_campos[i]).children().attr("class");
			var valor 			= $(array_campos[i]).children().attr("value");

			if(nombre_campo == "pais")
			{
				guardamos_valor_pais_seleccionado = valor;
			}
			
			if(	(valor == undefined) || 
				empty(valor) || 
				((nombre_campo == "pais") && (valor == '-1')) || 
				((nombre_campo == "provincia") && (guardamos_valor_pais_seleccionado == 'ES') && (valor == '-1')) ||
				((nombre_campo == "forma_pago") && (valor == '-1')) || 
				((nombre_campo == "metodo_envio") && (valor == '-1')))
			{				
				if(tipo == "obligatorio" || tipo == "obligatorio marcado")
					errores_validacion += '<li>- El campo obligatorio <strong>'+nombre_campo+'</strong> se encuentra vacio</span></li>\n'; 
			}
			else
			{   
				if(nombre_campo == "telefono")
				{
					errores_validacion += comprobar_telefono($(array_campos[i]).children());
				}
				else if(nombre_campo == "e-mail")
				{
					errores_validacion += comprobar_email($(array_campos[i]).children());
				}
				else if(nombre_campo == "cod_postal")
				{
					errores_validacion += comprobar_cod_postal($(array_campos[i]).children());
				}
			}
		}			
		
		if(!empty(errores_validacion))
		{
			var cadena_error = "<div class='error'><span>Error:</span><ul>"+errores_validacion+"</ul></div>\n";
			
			$("#lateralIzquierdo").html(cadena_error);
			
			return false;
		}
		
		$("#op").val('enviar');
		
		return true;
	}
	
	function comprobar_telefono(telefono)
	{
		var cadena = '';
		
		var valor_telefono = $(telefono).attr("value");
		
		var exp_regular_telefono = /^([0-9\s\+\-])+$/;
		
		var length_num_telefono = valor_telefono.length;
		
		if(!exp_regular_telefono.test(valor_telefono))
			cadena += '<li>- El <strong>numero de telefono</strong> introducido es incorrecto (Utilizar solo números o los siguientes simbolos : +, -)</li>\n';
		else if(length_num_telefono < 9)
			cadena += '- El <strong>numero de telefono</strong> introducido es demasiado corto\n';
		
		if(!empty(cadena))	
			$(telefono).val('');
		
		return cadena;
	}
	
	function comprobar_email(email)
	{
		var cadena = '';
		 
		valor_email = $(email).attr("value");
		 
		var exp_regular_email = /^(.+\@.+\..+)$/;
		 
		if(!exp_regular_email.test(valor_email))		 	
			cadena += '- El <strong>e-mail</strong> introducido es incorrecto\n';

		if(!empty(cadena))				
			$(email).val('');

		return cadena;
	}

	function comprobar_cod_postal(cod_postal)
	{
		var cadena = '';
		 
		valor_cod_postal = $(cod_postal).attr("value");
		 
		var exp_regular_cod_postal = /^([0-9])+$/;
		 
		if(!exp_regular_cod_postal.test(valor_cod_postal))		 	
			cadena += '- El <strong>código postal</strong> introducido es incorrecto\n';

		if(!empty(cadena))	
			$(cod_postal).val('');
			
		return cadena;
	}