﻿function ValidateTextReq (ptxtText, psName, piLongMin, piLongMax)
{
	if (ptxtText.value.length<=0)
	{
		alert('El campo \'' + psName + '\' es obligatorio.');
		ptxtText.focus();
		return(false);
	}
	else if ((ptxtText.value.length<piLongMin) || (ptxtText.value.length>piLongMax))
	{
		alert('El formato para el campo  \'' + psName + '\' debe ser una cadena de ' + piLongMin + ' a ' + piLongMax + ' caracteres.');
		ptxtText.focus();
		return(false);
	}
	else
	{
		return(true);
	}	
}


function ValidateNumberReq (ptxtText, psName, piMin, piMax)
{
	if (ptxtText.value.length<=0)
	{
		alert('El campo \'' + psName + '\' es obligatorio.');
		ptxtText.focus();
		return(false);
	}
	else if ((isNaN(ptxtText.value)) || (ptxtText.value<piMin) || (ptxtText.value>piMax))
	{
		alert('El formato para el campo  \'' + psName + '\'debe ser un número entre ' + piMin + ' y ' + piMax + '.');
		ptxtText.focus();
		return(false);
	}
	else
	{
		return(true);
	}
}


function ValidateEmailReq (ptxtText, psName, piLongMax)
{
	if (ptxtText.value.length<=0)
	{
		alert('El campo \'' + psName + '\' es obligatorio.');
		ptxtText.focus();
		return(false);
	}
	else if ((ptxtText.value.length<6) || (ptxtText.value.indexOf('@', 0)<0) || (ptxtText.value.indexOf('.', 0)<0))
	{
		alert('El formato para el campo  \'' + psName + '\' debe ser un email válido.');
		ptxtText.focus();
		return(false);	
	}
	else
	{
		return(true);
	}
}


function ValidateDateReq (ptxtText, psName)
{
	if (ptxtText.value.length!=10)
	{
		alert('El campo \'' + psName + '\' es obligatorio.');
		ptxtText.focus();
		return(false);
	}
	else
	{	
		var dteDate=new Date(ptxtText.value.substr(0, 4), (ptxtText.value.substr(5, 2)-1), ptxtText.value.substr(8, 2));
		if ((dteDate.getDate()==ptxtText.value.substr(8, 2)) && 
			(dteDate.getMonth()==(ptxtText.value.substr(5, 2))-1) && 
			(dteDate.getFullYear()==ptxtText.value.substr(0, 4)))
		{
			return(true);
		}
		else
		{
			alert('El formato para el campo  \'' + psName + '\' debe ser una fecha válida.');
			ptxtText.focus();	
			return(false);
		}
	}
}


function ValidateComboReq (pcboCombo, psName)
{
	if (pcboCombo.selectedIndex<=0)
	{
		alert('El campo \'' + psName + '\' es obligatorio.');
		pcboCombo.focus();
		return(false);
	}
	else if (pcboCombo.options[pcboCombo.selectedIndex].value.length<1)
	{
		alert('El campo \'' + psName + '\' es obligatorio.');
		pcboCombo.focus();
		return(false);	
	}
	else
	{
		return(true);
	}
}


function ValidateText (ptxtText, psName, piLongMin, piLongMax)
{
	if (ptxtText.value.length>0)
	{
		return(ValidateTextReq(ptxtText, psName, piLongMin, piLongMax));	
	}
	else
	{
		return(true);
	}
}



function ValidateNumber (ptxtText, psName, piMin, piMax)
{
	if (ptxtText.value.length>0)
	{
		return(ValidateNumberReq(ptxtText, psName, piMin, piMax));	
	}
	else
	{
		return(true);
	}
}


function ValidateEmail (ptxtText, psName, piLongMax)
{
	if (ptxtText.value.length>0)
	{
		return(ValidateEmailReq(ptxtText, psName, piLongMax));	
	}
	else
	{
		return(false);
	}
}



function ValidateDate (ptxtText, psName)
{
	if (ptxtText.value.length>0)
	{
		return(ValidateDateReq(ptxtText, psName));
	}
	else
	{
		return(true);
	}
}

function ValidarClientes (pfrmFormulario)
{
	if (!ValidateEmailReq(pfrmFormulario.txtUsuario, 'Usuario', 50))
	{
		return(false);
	}
	else if (!ValidateTextReq(pfrmFormulario.txtContrasena, 'Contraseña', 1, 50))
	{
		return(false);
	}
	else
	{
		return(true);
	}
}

