var oLoginCuenta = new function(){
	//A
	this.analizarTeclaRegistro = function(e){
		if(e.keyCode == 13)this.enviarRegistro();
	}	
	this.analizarTeclaLogin = function(e){
		if(e.keyCode == 13)this.login();
	}	
	this.analizarTeclaRecuperar = function(e){
		if(e.keyCode == 13)this.recuperarContrasena();
	}	


	//C
	this.cambiarForma = function(tipo,e){

		if(!iniciado)inicializarLogueo();		
		if(tipo == 'login'){
			$('contLoginFijo').style.display = 'block';
			$('contRecuperarContrasenaFijo').style.display = 'none';
		}
		else if(tipo == 'recuperar'){
			$('contLoginFijo').style.display = 'none';
			$('contRecuperarContrasenaFijo').style.display = 'block';
		}
		else if(tipo == 'registro'){
			$('contLoginFijo').style.display = 'none';
			$('contRecuperarContrasenaFijo').style.display = 'none';
		}
		if(e)StopEvent(e);
	}	

	//E
	var enviar = function(archivo,v){
		if(!req)req = new Request(listener);
		req.pedir(archivo,v);
	}	
	
	//I
	var inicializarLogueo = function(){
		
		usuario = $('usuarioLoginFijo');
		contrasena = $('contrasenaLoginFijo');		
		iniciado = true;
	}
	
	
	//L
	this.login = function(e){

		if(!iniciado)inicializarLogueo();
		var error = false;
		if(trim(usuario.value) == ''){
			$('errorUsuarioLoginFijo').style.display = 'block';
			error = true;
		}
		else $('errorUsuarioLoginFijo').style.display = 'none';

		if(trim(contrasena.value) == ''){
			$('errorContrasenaLoginFijo').style.display = 'block';
			error = true;
		}
		else $('errorContrasenaLoginFijo').style.display = 'none';
		
		$('errorInexistenteLoginFijo').style.display = 'none';		
		if(!error){
			reqType = 'logueo';
			var v = 'tipo' + SEP_IGUAL + reqType + SEP_AND;
			v += 'usuario' + SEP_IGUAL + trim(usuario.value) + SEP_AND;
			v += 'contrasena' + SEP_IGUAL + trim(contrasena.value) + SEP_AND;			
			Loader.show();
			Blocker.show();
			enviar(DIR_ROOT + 'requests/login.php?accion=' + reqType, v);
		}

		if(e)StopEvent(e);
	}		
	var listener = function(){
		var d = req.respuestaXML;
		listo = true;
		if(!d){ alert(req.respuestaHTML); }
		else if(reqType == 'logueo'){
			if(d.getAttribute('tipo') == 'exito'){
				if(!this.cuandoLogueo){
					location.reload();
					
				}
				else this.cuandoLogueo();
			}
			else{
				var i;
				$('errorInexistenteLoginFijo').innerHTML = d.firstChild.data;
				$('errorInexistenteLoginFijo').style.display = 'block';
				Blocker.hide();
			}
			
			Loader.hide();

		}	
		else if(reqType == 'recuperar'){
			if(d.getAttribute('tipo') == 'exito'){
				Exito.onAccept = function(){
					Blocker.hide();
				};
				Exito.show(d.firstChild.data);
				
			}
			else{
//				$('errorInexistenteRecuperarFijo').innerHTML = d.firstChild.data;
				$('errorInexistenteRecuperarFijo').style.display = 'block';
				Blocker.hide();
			}
			Loader.hide();
		}				
	}.closure(this);
	
	
	//R
	this.recuperarContrasena = function(e){
		var error = false;
		if(trim($('emailRecuperarFijo').value) == ''){
			$('errorUsuarioRecuperarFijo').style.display = 'block';
			error = true;
		}
		else $('errorUsuarioRecuperarFijo').style.display = 'none';
		$('errorInexistenteRecuperarFijo').style.display = 'none';		
		
		if(!error){
			$('errorUsuarioRecuperarFijo').style.display = 'none';
			reqType = 'recuperar';
			var v = 'tipo' + SEP_IGUAL + reqType + SEP_AND;
			v += 'usuario' + SEP_IGUAL + trim($('emailRecuperarFijo').value) + SEP_AND;
			Loader.show();
			Blocker.show();
			enviar(DIR_ROOT + 'requests/login.php?accion=' + reqType, v);
		}

		if(e)StopEvent(e);
	}		

	var listo = true;
	var reqType = 'datosPop';	
	var req = null;
	var iniciado = false;
	var errorClass = 'fieldsetError';	
	var erEmail = RegExp('^[a-z0-9_\.\-]+@[a-z0-9_\-]+(\.[a-z0-9_\-]{2,5})*\.[a-z]{2,4}$');
	var erNumero = RegExp('^[0-9]+$');
	var contrasena = null;
	var archivo = DIR_ROOT + 'requests/BookingMetodos.php?metodo=';
	var usuario,contrasena;
	
	
}
