function rightTrim(sString) {
    while (sString.substring(sString.length-1, sString.length) == ' ') {
        sString = sString.substring(0,sString.length-1);
    }
    return sString;
}


function leftTrim(sString) {
    while (sString.substring(0,1) == ' ') {
        sString = sString.substring(1, sString.length);
    }
    return sString;
}

function trimAll(sString) {
    return leftTrim(rightTrim(sString));
}

function ValidateName(name) {
    var i, Ok;

    name = trimAll(new String(name));
    name = name.toLowerCase();
    Ok = name.length > 5;
    if (Ok) {
        Ok = false;
        for (i = 0; i < name.length; i++)
            if (name.charAt(i) == " ") Ok = true;
    }
    return Ok
}

function ValidateText(text, minLen) {
    var i, Ok;

    text = trimAll(new String(text));
    text = text.toLowerCase();
    Ok = text.length >= minLen;
    return Ok
}

function ValidateEmail(email) {
    var Letters = new String("abcdefghijklmnopqrstuvwxyz");
    var CharsForUserName = new String("abcdefghijklmnopqrstuvwxyz.-_0123456789");
    var CharsForDomainName = new String("abcdefghijklmnopqrstuvwxyz-");

    var P1, P2, i, Ch, lastDot, arroba, dnsdot, Ok;
    Ch = "";
    lastDot = false;
    arroba = false;
    dnsdot = false;

    email = trimAll(new String(email));
    email = email.toLowerCase();

    // Tiene que haber una arroba del segundo caracter en adelante y
    // el último caracter debe ser una letra a-z.
    P1 = email.indexOf("@");
    P2 = Letters.indexOf(email.charAt(email.length - 1));
    Ok = (P1 > 1) && (P2 > 0);
    if (Ok) {
        Ok = true;
        for (i = 0; i < email.length; i++) {
            Ch = email.charAt(i);
            if (arroba == true) {
                // Se está validando el dominio de internet
                if (Ch == ".") {
                  // El dominio contiene puntos pero no debe terminar en uno
                  if (lastDot == true) Ok = false;
                  lastDot = true;
                  dnsdot = true;
                } else {
                  lastDot = false;
                  if (CharsForDomainName.indexOf(Ch) < 0) Ok = false;
                }
            } else {
                // Se está validando el nombre de usuario
                if (Ch == "@") {
                    arroba = true;
                } else {
                    if (CharsForUserName.indexOf(Ch) < 0) Ok = false;
                }
            }
        }
    }

    return (Ok && dnsdot)
}

