


	var oConcurso = new function(){

		var erEmail = RegExp('^[a-z0-9_\.\-]+@[a-z0-9_\-]+(\.[a-z0-9_\-]{2,5})*\.[a-z]{2,4}$');
		var erNumero = RegExp('^[0-9]+$');
		var erFecha = RegExp('^(0[1-9]|[1-2][0-9]|3[0-1])/(0[1-9]|1[0-2])/[1-2][0-9]{3}$');
		var erSiNo = RegExp('^[01]$');
		var errorClass = 'fieldsetError';


		//C
		this.registrarse = function(a,e){
			
			iniciarPop();
			if(!formSeteado){
				reqType = 'datosFormulario';
				req.pedir(DIR_ROOT + 'requests/registroConcursoInfo.php','tipo' + SEP_IGUAL + 'datosFormulario' + SEP_AND + datosPersonales);				
			}
			
			oPopConcurso.open(a);			
			if(e)StopEvent(e);
		}
		
		this.enviarRegistro = function(evt){
			var error = false, t = '';
			
			if(evt){ StopEvent(evt); }
			if(wait){ return false; }
			
			

			nombreR.onblur();
			if(nombreR.parentNode.className == errorClass){ error = true; }
			
			apellidoR.onblur();
			if(apellidoR.parentNode.className == errorClass){ error = true; }
			
			emailR.onblur();
			if(emailR.parentNode.className == errorClass){ error = true; }
			
			provinciaR.onblur();
			if(provinciaR.parentNode.className == errorClass){ error = true; }
			
			ciudadR.onblur();
			if(ciudadR.parentNode.className == errorClass){ error = true; }
			
			barrioR.onblur();
			if(barrioR.parentNode.className == errorClass){ error = true; }


			if($('tipoEventoConcursoCasamiento').checked){
				t += 'tipoEvento' + SEP_IGUAL + 'casamiento' + SEP_AND;
				novio.onblur();
				if(novio.parentNode.className == errorClass){ error = true; }
				else t += 'novio' + SEP_IGUAL + novio.value + SEP_AND;
				
				novia.onblur();
				if(novia.parentNode.className == errorClass){ error = true; }
				else t += 'novia' + SEP_IGUAL + novia.value + SEP_AND;
				
				
			}	
			else if($('tipoEventoConcursoQuinces').checked){
				
				t += 'tipoEvento' + SEP_IGUAL + 'quinces' + SEP_AND;	
				quinceaniera.onblur();
				if(quinceaniera.parentNode.className == errorClass){ error = true; }
				else t += 'quinceaniera' + SEP_IGUAL + $('quinceanieraConcurso').value + SEP_AND;
			}	
			else t += 'tipoEvento' + SEP_IGUAL + 'otros' + SEP_AND;
			fechaEvento.onblur();
			if(fechaEvento.parentNode.className == errorClass){ error = true; }
			else t += 'fechaEvento' + SEP_IGUAL + fechaEvento.value + SEP_AND;

			if($('sexoConcursoFemenino').checked)t += 'sexo' + SEP_IGUAL + 'femenino' + SEP_AND;
			else if($('sexoConcursoMasculino').checked)t += 'sexo' + SEP_IGUAL + 'masculino' + SEP_AND;			
			
			if(error){
				errorR.innerHTML = 'Complete o corrija los campos resaltados';
				errorR.style.display = 'block';
				return false;
			}
			
			errorR.style.display = 'none';
			
			wait = true;
			reqType = 'Concurso';
			
			t += getDatosPersonales();
			$('layConcurso').style.visibility = 'hidden';
			Loader.show();
			
			req.pedir(DIR_ROOT + 'requests/concurso.php', t);
		}		
		//G
		var getDatosPersonales = function(){
			datosPersonales = '';
			datosPersonales += 'nombre' + SEP_IGUAL + trim(nombreR.value) + SEP_AND;
			datosPersonales += 'apellido' + SEP_IGUAL + trim(apellidoR.value) + SEP_AND;
			datosPersonales += 'email' + SEP_IGUAL + trim(emailR.value) + SEP_AND;
			datosPersonales += 'idPais' + SEP_IGUAL + trim(paisR.value) + SEP_AND;
			datosPersonales += 'idProvincia' + SEP_IGUAL + trim(provinciaR.value) + SEP_AND;
			datosPersonales += 'idCiudad' + SEP_IGUAL + trim(ciudadR.value) + SEP_AND;
			datosPersonales += 'idBarrio' + SEP_IGUAL + trim(barrioR.value) + SEP_AND;
			datosPersonales += 'nombreProvincia' + SEP_IGUAL + trim(provinciaNR.value) + SEP_AND;
			datosPersonales += 'nombreCiudad' + SEP_IGUAL + trim(ciudadNR.value) + SEP_AND;
			datosPersonales += 'nombreBarrio' + SEP_IGUAL + trim(barrioNR.value) + SEP_AND;
			datosPersonales += 'direccion' + SEP_IGUAL + trim(direccionR.value) + SEP_AND;
			datosPersonales += 'cp' + SEP_IGUAL + trim(cpR.value) + SEP_AND;
			datosPersonales += 'telefono' + SEP_IGUAL + trim(telefonoR.value) + SEP_AND;
			
			Cookie.set('datosPersonales', datosPersonales);
			return datosPersonales;
		}		
	
		//I
		var iniciarPop = function (){
			if(!oPopConcurso){

			 	oPopConcurso = new layer('Concurso','');
			
				oPopConcurso.sinScroll = true;
				if(Nav.esIE){ $('layConcurso').style.visibility = 'visible'; }	
			   	AddEvent($('cerrarConcurso'), 'click', oPopConcurso.close);		
			
			}
			
		}
		var inicializarFormulario = function(){
			
			
			nombreR = $('nombreConcurso');
			if(!nombreR.onblur){
				nombreR.onblur = function(){
					var v = trim(this.value);
					if(v == '' || v.length < 3){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(nombreR);
			}
			
			apellidoR = $('apellidoConcurso');
			if(!apellidoR.onblur){
				apellidoR.onblur = function(){
					var v = trim(this.value);
					if(v == '' || v.length < 3){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(apellidoR);
			}
			
			emailR = $('emailConcurso');
			if(!emailR.onblur){
				emailR.onblur = function(){
					var v = trim(this.value);
					if(v == '' || !erEmail.test(v)){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(emailR);
			}
			

			
			paisR = $('paisConcurso');
			if(!paisR.onchange){
				paisR.onchange = function(){
					provinciaR.disabled = ciudadR.disabled =
					barrioR.disabled = true;
					
					provinciaNR.style.display = ciudadNR.style.display = 
					barrioNR.style.display = 'none';
					
					reqType = 'provincias';
					
					var v = 'tipo' + SEP_IGUAL + reqType + SEP_AND;
					v += 'idPais' + SEP_IGUAL + paisR.value + SEP_AND;
					
					req.pedir(DIR_ROOT + 'requests/zonas_geograficas.php', v);
				};
			}
			
			provinciaR = $('provinciaConcurso');
			if(!provinciaR.onchange){
				provinciaR.onchange = function(){
					
					var v = trim(provinciaR.value);
					
					ciudadR.disabled = barrioR.disabled = true;
					provinciaNR.style.display = (v == '0')? '' : 'none';
					ciudadNR.style.display = barrioNR.style.display = 'none';
					
					if(erNumero.test(v) && v != ''){
						
						reqType = 'ciudades';
						
						var v = 'tipo' + SEP_IGUAL + reqType + SEP_AND;
						v += 'idProvincia' + SEP_IGUAL + provinciaR.value + SEP_AND;
						
						req.pedir(DIR_ROOT + 'requests/zonas_geograficas.php', v);
					}
				};
			}
			if(!provinciaR.onblur){
				provinciaR.onblur = function(){
					var v = trim(this.value);
					if(v == '' || !erNumero.test(v)){ this.parentNode.className = errorClass; }
					else{ provinciaNR.onblur(); }
				}.closure(provinciaR);
			}
			
			provinciaNR = $('provinciaNombreConcurso');
			if(!provinciaNR.onblur){
				provinciaNR.onblur = function(){
					var v = trim(this.value);
					if(provinciaR.value == '0' && (v == '' || v.length < 3)){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(provinciaNR);
			}
			
			ciudadR = $('ciudadConcurso');
			if(!ciudadR.onchange){
				ciudadR.onchange = function(){
					
					var v = trim(ciudadR.value);
					
					barrioR.disabled = true;
					ciudadNR.style.display = (v == '0')? '' : 'none';
					barrioNR.style.display = 'none';
					
					if(erNumero.test(v) && v != ''){
						
						reqType = 'barrios';
						
						var v = 'tipo' + SEP_IGUAL + reqType + SEP_AND;
						v += 'idCiudad' + SEP_IGUAL + ciudadR.value + SEP_AND;
						
						req.pedir(DIR_ROOT + 'requests/zonas_geograficas.php', v);
					}
				};
			}
			if(!ciudadR.onblur){
				ciudadR.onblur = function(){
					var v = trim(this.value);
					if(v == '' || !erNumero.test(v)){ this.parentNode.className = errorClass; }
					else{ ciudadNR.onblur(); }
				}.closure(ciudadR);
			}
			
			ciudadNR = $('ciudadNombreConcurso');
			if(!ciudadNR.onblur){
				ciudadNR.onblur = function(){
					var v = trim(this.value);
					if(ciudadR.value == '0' && (v == '' || v.length < 3)){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(ciudadNR);
			}
			
			barrioR = $('barrioConcurso');
			if(!barrioR.onchange){
				barrioR.onchange = function(){
					
					var v = trim(barrioR.value);
					barrioNR.style.display = (v == '0')? '' : 'none';
				};
			}
			if(!barrioR.onblur){
				barrioR.onblur = function(){
					var v = trim(this.value);
					if(v == '' || !erNumero.test(v)){ this.parentNode.className = errorClass; }
					else{ barrioNR.onblur(); }
				}.closure(barrioR);
			}
			
			barrioNR = $('barrioNombreConcurso');
			if(!barrioNR.onblur){
				barrioNR.onblur = function(){
					var v = trim(this.value);
					if(barrioR.value == '0' && (v == '' || v.length < 3)){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(barrioNR);
			}
			
			direccionR = $('direccionConcurso');
			cpR = $('cpConcurso');
			telefonoR = $('telefonoConcurso');
			errorR = $('errorConcurso');
			cargandoR = $('cargandoConcurso');
			//exitoR = $('exitoConcurso');
			




			novio = $('novioConcurso');
			if(!novio.onblur){
				novio.onblur = function(){
					var v = trim(this.value);
					if(v == '' || v.length < 3){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(novio);
			}

			novia = $('noviaConcurso');
			if(!novia.onblur){
				novia.onblur = function(){
					var v = trim(this.value);
					if(v == '' || v.length < 3){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(novia);
			}

			quinceaniera = $('quinceanieraConcurso');
			if(!quinceaniera.onblur){
				quinceaniera.onblur = function(){
					var v = trim(this.value);
					if(v == '' || v.length < 3){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(quinceaniera);
			}


			fechaEvento = $('fechaEventoConcurso');
			if(!fechaEvento.onblur){
				fechaEvento.onblur = function(){
					var v = trim(this.value);
					if(!erFecha.test(v)){ this.parentNode.className = errorClass; }
					else{ this.parentNode.className = ''; }
				}.closure(fechaEvento);
			}

			AddEvent($('tipoEventoConcursoCasamiento'), 'click', function(){
				mostrarDatos('casamiento')
			});	
			AddEvent($('tipoEventoConcursoQuinces'), 'click', function(){
				mostrarDatos('quinces')
			});	
			AddEvent($('tipoEventoConcursoOtros'), 'click', function(){
				mostrarDatos('otros')
			});	
			AddEvent($('nombreConcurso'),'blur',rellenarCampos);
			AddEvent($('apellidoConcurso'),'blur',rellenarCampos);
			AddEvent($('sexoConcursoFemenino'),'click',rellenarCampos);
			AddEvent($('sexoConcursoMasculino'),'click',rellenarCampos);	
			
		
			FireEvent($('tipoEventoConcursoCasamiento'),'click');
			rellenarCampos();
			

			if(Nav.esIE){ $('layConcurso').style.visibility = 'visible'; }


			iniciado = true;
			
		}		
		
		//L
		var listener = function(){
			var d = req.respuestaXML;
			wait = false;
			
			if(!d){ alert(req.respuestaHTML); }
			//
			else if(reqType == 'datosFormulario'){
				$('formularioContenidoConcurso').innerHTML = d.firstChild.data;
				inicializarFormulario();
				formSeteado = true;				
			}

	
			//
			else if(reqType == 'Concurso'){
				/*nombreR.disabled = apellidoR.disabled = emailR.disabled = comentarioR.disabled = 
				cpR.value = direccionR.disabled = telefonoR.disabled = ciudadR.value = 
				provinciaR.value = false;*/
			
				if(d.getAttribute('exito') != 'si'){
					
					errorR.innerHTML = d.firstChild.data;
					errorR.style.display = 'block';
					$('layConcurso').style.visibility = 'visible';					
				}
				else{
					Exito.onAccept = function(){
						$('layConcurso').style.visibility = 'visible';
						FireEvent($('cerrarConcurso'),'click');
						$('tipoEventoConcursoCasamiento').checked = true;
						FireEvent($('tipoEventoConcursoCasamiento'),'click');
						novio.value = '';
						novia.value = '';
						fechaEvento.value = '';

					};
					Exito.show(d.firstChild.data);
					Loader.hide();
				}
			}
			//
			else if(reqType == 'provincias'){
				
				while(provinciaR.hasChildNodes()){ provinciaR.removeChild(provinciaR.firstChild); }
				
				for(var i = 0, t = d.childNodes.length; i < t; i++){
					var opt = document.createElement('option');
					opt.value = d.childNodes[i].getAttribute('value');
					opt.innerHTML = d.childNodes[i].firstChild.data;
					
					provinciaR.appendChild(opt);
				}
				provinciaR.disabled = false;
			}
			//
			else if(reqType == 'ciudades'){
				
				while(ciudadR.hasChildNodes()){ ciudadR.removeChild(ciudadR.firstChild); }
				
				for(var i = 0, t = d.childNodes.length; i < t; i++){
					var opt = document.createElement('option');
					opt.value = d.childNodes[i].getAttribute('value');
					opt.innerHTML = d.childNodes[i].firstChild.data;
					
					ciudadR.appendChild(opt);
				}
				ciudadR.disabled = false;
			}
			//
			else if(reqType == 'barrios'){
				
				while(barrioR.hasChildNodes()){ barrioR.removeChild(barrioR.firstChild); }
				
				for(var i = 0, t = d.childNodes.length; i < t; i++){
					var opt = document.createElement('option');
					opt.value = d.childNodes[i].getAttribute('value');
					opt.innerHTML = d.childNodes[i].firstChild.data;
					
					barrioR.appendChild(opt);
				}
				barrioR.disabled = false;
			}
			//
		}.closure(this);
	
		//M
		var mostrarDatos = function(tipo){
			if(tipo == 'casamiento'){
				$('cuadroQuinceConcurso').style.display = 'none';
				$('cuadroCasamientoConcurso').style.display = 'block';
			}
			else if(tipo == 'quinces'){
				$('cuadroQuinceConcurso').style.display = 'block';
				$('cuadroCasamientoConcurso').style.display = 'none';
			}
			else{
				$('cuadroQuinceConcurso').style.display = 'none';
				$('cuadroCasamientoConcurso').style.display = 'none';
			}
		}

		//R
		var rellenarCampos = function(){
			if($('sexoConcursoFemenino').checked){
				if($('noviaConcurso').value == '' || $('noviaConcurso').value == $('nombreConcurso').value || $('noviaConcurso').value == $('apellidoConcurso').value){
					$('noviaConcurso').value = trim($('nombreConcurso').value + ' ' + $('apellidoConcurso').value);
					if(trim($('noviaConcurso').value) == trim($('novioConcurso').value))$('novioConcurso').value = '';
				}
			}
			else{
				if($('novioConcurso').value == '' || $('novioConcurso').value == $('nombreConcurso').value || $('novioConcurso').value == $('apellidoConcurso').value){
					$('novioConcurso').value = trim($('nombreConcurso').value + ' ' + $('apellidoConcurso').value);
					if(trim($('novioConcurso').value) == trim($('noviaConcurso').value))$('noviaConcurso').value = '';
				}
				
			}	
		}
		
	
		
		// Envio de Consulta del Clasificado
		var datosPersonales = (Cookie.get('datosPersonales') == '')? '' : Cookie.get('datosPersonales');
		var idClasificado, idPlus, nombreR, apellidoR, emailR, comentarioR, paisR, provinciaR, provinciaNR, 
		ciudadR, ciudadNR, barrioR, barrioNR, direccionR, cpR, telefonoR, errorR, cargandoR, exitoR;
		
		var consultaTabIndex = 0;
		var oPopConcurso = null;
		var novio = null;
		var novia = null;
		var quinceaniera = null;
		var fechaEvento = null;

		var formSeteado = false;
		var clasInfo;
		var wait = false, reqType;
		var req = new Request(listener);
	}
		
