function commonTemplate(item) {
				return "<option value='" + item.Value + "'>" + item.Text + "</option>"; 
			};
						
			function commonMatch(selectedValue) {
				return this.When == selectedValue; 
			};
			
			jQuery(document).ready(function()
			{	//$("#producto").find("option:first")[0].selected = true;
				$("#producto").find("option")[0].selected = true;
				//$("#agregar").attr("disabled", "disabled");
				$("input[name=n]").val('0');
				$("input[name=p]").val('');
				$("#otroProducto").hide();
				$("#otroMedida").hide();
				$("#otroUnidad").hide();
				$("#cantidad").attr("value", "");
				
				var producto = "";
					var medida = "";
					var unidad = "";
					var cantidad = "";
					var n = 0;
				
				$("#medida").cascade("#producto",{
					ajax: { url: '../script/datos-tamanio.js'  },
					template: commonTemplate,
					match: commonMatch
				}).bind("loaded.cascade",function(e,target) { 
					if($("#producto option:selected").text() == 'Otro')
						$("#medida").find("option")[1].selected = true;
					else
						$("#unidad").find("option")[0].selected = true;
				});

				$("#producto").change(function () {
          			var str = $("#producto option:selected").text();
          			
          			if (str == 'Otro') {
						$("#otroProducto").show();
						$("#otroMedida").show();	
					}
					else {
						$("#otroProducto").attr("value","Definir");
						$("#otroProducto").hide();
						$("#otroMedida").attr("value", "Definir");
						$("#otroMedida").hide();
					}
        		}).change();
				
				$("#medida").change(function () {
          			var str = $("#medida option:selected").text();
          			
          			if (str == 'Otro') {
						$("#otroMedida").show();
					}
					else {
						$("#otroMedida").attr("value", "Definir");
						$("#otroMedida").hide();
					}
				});
				$("#unidad").change(function () {
          			var str = $("#unidad option:selected").text();
          			
          			if (str == 'Otro') {
						$("#otroUnidad").show();
					}
					else
					{
						$("#otroUnidad").attr("value", "Definir");
						$("#otroUnidad").hide();
					}					
				});
				$("#otroMedida, #otroProducto, #otroUnidad, #cantidad").click(function(){
					
					texto = jQuery.trim($(this).val());
					if(texto == 'Definir')
						$(this).val("")
				});
				
				function limpiar(){
					$("#producto").find("option:first")[0].selected = true;
					$("#producto").change();
					$("#unidad").find("option:first")[0].selected = true;
					$("#otroUnidad").attr("value", "Definir");
					$("#otroUnidad").hide();
					$("#cantidad").attr("value", "");
				}
				
				function agregarLinea(producto, medida, unidad, cantidad)
				{
					
					var linea = '<div class="fila2">';
					linea += '<span class="c2">'+producto+'&nbsp;</span>';
					linea += '<span class="c2">'+medida+'&nbsp;</span>';
					linea += '<span class="c3">'+unidad+'&nbsp;</span>';
					linea += '<span class="c3">'+cantidad+'&nbsp;</span></div>';
					
					
					correo = "\n"+producto +"\t"+medida+"\t"+unidad+"\t"+cantidad;
					
					$(".fin").before(linea);
					$("input[name=p]").val($("input[name=p]").val()+correo);
				}
        		$("#agregar").click(function(){
					if (validarProducto())
					{	n = $("input[name=n]").val();
						n = parseInt(n, 10);
						n = n + 1;
						$("input[name=n]").val(n);
						agregarLinea(producto,medida, unidad, cantidad);
						limpiar();
					}
				});
				$("#cantidad, #otroUnidad, #otroMedida, #otroProducto").keydown(function(event){
				    if(event.keyCode == 13)
				        $("#agregar").click();
  				});

				function mensajeText(caso)
				{
					switch (caso) 
					{
						case 'nombre': m = '"Nombre del contacto"';
							break;
						case 'empresa': m = '"Nombre de la empresa"';
							break;
						case 'lada': m = "Lada";
							break;
						case 'telefono': m = "Telefono(s)";
							break;
						case 'estado': m = "Estado";
							break;
						case 'email': m = '"E-mail"';
							break;
						case 'giro': m = "Giro";
							break;
					}
					if(caso == 'emailV')
						alert("Correo invalido");
					else
						alert("El campo " + m + " esta vacio");
				}
				
				function validarProducto(){
					var res = true;
					
					if($("#producto").find("option")[0].selected == true)
					{
						res = false;
						alert("Selecciona un producto");
					}
					else
					{	producto = $("#producto option:selected").text();
						if($("#producto option:selected").text()== "Otro")
						{	cadena = jQuery.trim($("#otroProducto").val());
							producto = cadena;
							if (cadena == "" || cadena == "Definir")
							{
								alert("Nombre del producto a cotizar");
								res = false;
								$("#otroProducto").focus();
								$("#otroProducto").val("Definir");
							}
							else
							{
								if($("#medida option:selected").text()== "" ||$("#medida option:selected").text()== "Otro")
								{	$("#medida").find("option")[1].selected = true;
									$("#otroMedida").show();
									cadena = jQuery.trim($("#otroMedida").val());
									medida = cadena;
								
									if (cadena == "" || cadena == "Definir")
									{
										alert("Medida del producto a cotizar");
										res = false;
										$("#otroMedida").focus();
										$("#otroMedida").val("Definir");
									}
									else
									{
										if($("#unidad").find("option")[0].selected == true)
										{
											res = false;
											alert("Selecciona un tipo de unidad");
										}
										else
										{
											if ($("#unidad option:selected").text() == "Otro")
											{
												cadena = jQuery.trim($("#otroUnidad").val());
												unidad = cadena;
												if (cadena == "" || cadena == "Definir") {
													alert("Unidad del producto a cotizar");
													res = false;
													$("#otroUnidad").focus();
													$("#otroUnidad").val("Definir");
												}
												else {
													unidad = $("#unidad option:selected").text();
													cadena = jQuery.trim($("#cantidad").val());
													cantidad = cadena;
													if (cadena == "") {
														alert("Cuantas unidades desea cotizar");
														res = false;
														$("#cantidad").focus();
														$("#cantidad").val("");
													}
												}
											}
											else {
												unidad = $("#unidad option:selected").text();
												cadena = jQuery.trim($("#cantidad").val());
												cantidad = cadena;
												if (cadena == "") {
													alert("Cuantas unidades desea cotizar");
													res = false;
													$("#cantidad").focus();
													$("#cantidad").val("");
												}	
											}	
										}
									}
								}	
							}
							
							
							
						}
						else
						{	medida = $("#medida option:selected").text();
							if($("#medida option:selected").text()== "" ||$("#medida option:selected").text()== "Otro")
							{	$("#medida").find("option")[1].selected = true;
								$("#otroMedida").show();
								cadena = jQuery.trim($("#otroMedida").val());
								medida = cadena;
								
								if (cadena == "")
								{
									alert("Medida del producto a cotizar");
									res = false;
									$("#otroMedida").focus();
									$("#otroMedida").val("Definir");
								}
								else{
									if($("#unidad").find("option")[0].selected == true)
										{
											res = false;
											alert("Selecciona un tipo de unidad");
										}
										else
										{
											
											if ($("#unidad option:selected").text() == "Otro") {
												cadena = jQuery.trim($("#otroUnidad").val());
												unidad = cadena;
												if (cadena == "" || cadena == "Definir") {
													alert("Unidad del producto a cotizar");
													res = false;
													$("#otroUnidad").focus();
													$("#otroUnidad").val("Definir");
												}
												else {
													unidad = $("#unidad option:selected").text();
													cadena = jQuery.trim($("#cantidad").val());
													cantidad = cadena;
													if (cadena == "") {
														alert("Cuantas unidades desea cotizar");
														res = false;
														$("#cantidad").focus();
														$("#cantidad").val("");
													}
												}
											}
											else {
												unidad = $("#unidad option:selected").text();
												cadena = jQuery.trim($("#cantidad").val());
												cantidad = cadena;
												if (cadena == "") {
													alert("Cuantas unidades desea cotizar");
													res = false;
													$("#cantidad").focus();
													$("#cantidad").val("");
												}	
											}
											
										}
								}
							}
							else
							{	
								if($("#unidad").find("option")[0].selected == true)
								{
									res = false;
									alert("Selecciona un tipo de unidad");
								}
								else
								{
									if ($("#unidad option:selected").text() == "Otro") {
												cadena = jQuery.trim($("#otroUnidad").val());
												unidad = cadena;
												if (cadena == "" || cadena == "Definir") {
													alert("Unidad del producto a cotizar");
													res = false;
													$("#otroUnidad").focus();
													$("#otroUnidad").val("Definir");
												}
												else {
													unidad = $("#unidad option:selected").text();
													cadena = jQuery.trim($("#cantidad").val());
													cantidad = cadena;
													if (cadena == "") {
														alert("Cuantas unidades desea cotizar");
														res = false;
														$("#cantidad").focus();
														$("#cantidad").val("");
													}
												}
											}
											else {
												unidad = $("#unidad option:selected").text();
												cadena = jQuery.trim($("#cantidad").val());
												cantidad = cadena;
												if (cadena == "") {
													alert("Cuantas unidades desea cotizar");
													res = false;
													$("#cantidad").focus();
													$("#cantidad").val("");
												}	
											}
									
									
								}
							}	
						}
					}
					return res;
				}
				
				$("#enviar").click(function(){
					var r = true;
					$(":input").each(function()
					{	
						switch (this.type)
						{	case 'textarea':
							case 'text': switch($(this).attr('name'))
										{
											case 'otroProducto':
											case 'otroMedida':
											case 'otroUnidad': break;
											case 'nombre':
											case 'empresa':
											case 'lada':
											case 'telefono':
											case 'email':   cadena = jQuery.trim($(this).val());
															if (cadena == "")
															{
																mensajeText($(this).attr('name'));
																r = false;
																$(this).focus();
																$(this).val("");
																return r;
															}
															else 
															{
																if ($(this).attr('name') == 'email') 
																{
																	regx = /^[A-Za-z][A-Za-z0-9_.]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
																	//regx = /^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)­*)\.([A-Za-z]{2,})$/;
																	emailValido = regx.test($(this).val());
																	if (!emailValido) 
																	{
																		mensajeText('emailV');
																		r = false;
																		$(this).focus();
																		return r;
																	}
																}
															}
															break;
										}
										break; 
							case 'select-one': if($(this).attr('name')=="estado" || $(this).attr('name')=="giro")
												{
													cadena = jQuery.trim($(this).val());
													if (cadena == "- Seleccione giro -" || cadena == "- Seleccione estado -")
													{
														mensajeText($(this).attr('name'));
														r = false;
														$(this).focus();
														return r;
													}
												}
												else
													
												if(n < 1)
											   {
											   		alert("Agrega un producto a la cotizacion");
													r = false;
													return r;
											   }		
											
										break;
						}	 	
					});
					if (r) {
						$("input[name=n]").val(n);
						document.frm.submit() 
					}
					
				});


			});

