﻿		
		function base64encode(str) {
	
			var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
			var base64DecodeChars = new Array(
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63,
			52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1,
			-1,  0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14,
			15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1,
			-1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
			41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1);
			var out, i, len;
			var c1, c2, c3;

			len = str.length;
			i = 0;
			out = "";
			while(i < len) {
			c1 = str.charCodeAt(i++) & 0xff;
			if(i == len)
			{
				out += base64EncodeChars.charAt(c1 >> 2);
				out += base64EncodeChars.charAt((c1 & 0x3) << 4);
				out += "==";
				break;
			}
			c2 = str.charCodeAt(i++);
			if(i == len)
			{
				out += base64EncodeChars.charAt(c1 >> 2);
				out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
				out += base64EncodeChars.charAt((c2 & 0xF) << 2);
				out += "=";
				break;
			}
			c3 = str.charCodeAt(i++);
			out += base64EncodeChars.charAt(c1 >> 2);
			out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
			out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6));
			out += base64EncodeChars.charAt(c3 & 0x3F);
			}
			return out;
		}

						
		function validateForm()
		{
		    var IsLoginStarted = false;
			var label = document.getElementById('ctl00_Autenticacion1_lblMensajes');
			label.innerHTML = "";

            //Validar el Login
			if(!validateCtr(document.forms[0].ctl00_Autenticacion1_txtLogin))
				return false;
		    //Validar el Password
			if(!validateCtr(document.forms[0].ctl00_Autenticacion1_txtPassword))
				return false;
				
			if (IsLoginStarted == true) 
			{
				alert('La solicitud está siendo procesada');
				return false;
			}
			else 
			{
				IsLoginStarted = true;
				cmdEncrypt();
			}
		}
		
		function validateCtr(ctr) 
		{ 
			var tempName=ctr.value;

			if(isEmpty(tempName))
			{
				ctr.focus();
				ctr.select();
				return false;
			}
			else
			{
				return true;
			}
		}
		
		function validateStrCtr(strCtr) 
		{ 
		    var ctr = document.getElementById(strCtr)
			var tempName=ctr.value;

			if(isEmpty(tempName))
			{
				ctr.focus();
				ctr.select();
				return false;
			}
			else
			{
				return true;
			}
		}
		
		function validateStrDrp(strCtr) 
		{ 
		    var ctr = document.getElementById(strCtr)
			var tempName=ctr.value;

			if(isEmpty(tempName))
			{
				ctr.focus();
				return false;
			}
			else
			{
				return true;
			}
		}
		
		function isEmpty(strTextField)
		{
			if (strTextField == "" || strTextField==null)
				return true;
			
			var re = /\s/g; // Match any white space including space, tab, form-feed, etc.
			RegExp.multiline = true; // IE support 
			var str = strTextField.replace(re, "");
			
			if (str.length == 0) 
				return true;
			else
				return false;
		}
		
        function validateFormChangePassword()
		{
		    var IsLoginStarted = false;
			var label = document.getElementById(a_str_contenedor + 'lblMensajes');
			label.innerHTML = "";

            //Validar contrasena anterior
			if(!validateStrCtr(a_str_contenedor + 'txtClaveActual'))
				return false;
		    //Validar nueva contrasena
			if(!validateStrCtr(a_str_contenedor + 'txtClave'))
				return false;
				
		    //Validar confirmacion nueva contrasena
			if(!validateStrCtr(a_str_contenedor + 'txtConfirmeClave'))
				return false;
				
			if (IsLoginStarted == true) 
			{
				alert('La solicitud está siendo procesada');
				return false;
			}
			else 
			{
				IsLoginStarted = true;
				cmdEncryptChangePassword();
			}
		}
		
        function validateFormNewUser()
		{
		    var IsLoginStarted = false;
		    //Validar nueva contrasena
		    if (!(MM_findObj('chkClaveAleatoria').checked)) 
		    {
		        if(!validateStrCtr(a_str_contenedor + 'txtClave'))
				    return false;
    				
		        //Validar confirmacion nueva contrasena
			    if(!validateStrCtr(a_str_contenedor + 'txtConfirmarClave'))
				    return false;
		    }
		    //Validar los demás controles de la página de nuevo usuario
		    //Validar Nombre del Grupo
			    if(!validateStrDrp(a_str_contenedor + 'drpGrupo'))
				    return false;
				    
			    if(!validateStrCtr(a_str_contenedor + 'txtNombres'))
				    return false;

			    if(!validateStrCtr(a_str_contenedor + 'txtApellidos'))
				    return false;

			    if(!validateStrCtr(a_str_contenedor + 'txtCorreo'))
				    return false;
	    
			
				
			if (IsLoginStarted == true) 
			{
				alert('La solicitud está siendo procesada');
				return false;
			}
			else 
			{
				IsLoginStarted = true;
				cmdEncrypt();
			}
		}
		
		
