﻿// JScript File

function valida_rut(source, arguments)
{
    
    var rut = arguments.Value;
    arguments.IsValid = false;
   // alert(rut);
    if (rut.length < 7)
    {
        return;
    }
    var suma=0;
    var digito = rut.charAt(rut.length - 1);
    
   // alert(digito);
    var len = rut.length - 2;
    var counter = 2;
    while(len >= 0)
    {
        if((rut.charAt(len)!='-') && (rut.charAt(len)!='.'))
        {
            //alert(rut.charAt(len));
            suma = suma + (eval(rut.charAt(len)) * counter);
            counter=counter+1;
            len= len-1;
            if(counter==8)
            {
                counter=2;
            }
        }
        else
        {
            len=len-1;
        }
    }
    //alert(suma);
    var div = Math.floor(suma / 11);
    //alert('div=' + div)
    var resto = suma - (div*11);
    //alert('resto=' +resto);
    if(resto==0)
    {
        if(resto!=digito)
        {
           return;
        }
     }
     var dig = 11 - resto;
     //alert(dig);
     if(dig==10)
     {
        if(digito=='K' || digito =='k')
        {
            arguments.IsValid = true;
            return;
        }
        else
        {
            return;
        }
     }
    if(eval(dig) == eval(digito)) 
    {
        
    }
    else
    {
        return;
    }
    arguments.IsValid = true;
}


function aleatorio(inferior,superior){ 
    numPosibilidades = superior - inferior 
    aleat = Math.random() * numPosibilidades 
    aleat = Math.round(aleat) 
    return parseInt(inferior) + aleat 
}

function valida_fecha(source, arguments) {

    var fecha = arguments.Value;
    var ArrFecha = new Array;
    arguments.IsValid = false;
    fecha = fecha.replace(/-/g, '/');
    try
    {
        Arr = fecha.split("/");
    }
    catch(e)
    {
        return;
    }
    if (Arr[2] == null) {
        return;
    }
    if (Arr[0] > 31) {
        return;
    }
    if (Arr[1] > 12) {
        return;
    }
    if (Arr[2] < 1900) {
        return;
    }

    if (Arr[0] < 1 || Arr[1] < 1) {
        return;
    }
     arguments.IsValid = true;
}

