]> git.llucax.com Git - z.facultad/75.43/tp1.git/blobdiff - src/lib.js
Se agregan nuevas validaciones.
[z.facultad/75.43/tp1.git] / src / lib.js
index 6879d47991478b5fd550d77072dc6257fb5c8b6f..ac95325db7ed51a3e83810f58d99d9530692bf8f 100644 (file)
@@ -13,6 +13,29 @@ function vacio(f)
     return false;
 }
 
     return false;
 }
 
+// Devuelve 1 si el campo f tiene más de max caracteres, -1 si tiene menos
+// de min caracteres y 0 si está entre max y min. Si max o min es negativo,
+// no se chequea por un máximo o mínimo respectivamente.
+function min_max_cant(f, min, max)
+{
+    if (min >= 0 && f.value.length < min) return -1;
+    if (max >= 0 && f.value.length > max) return 1;
+    return 0;
+}
+
+function es_email(f)
+{
+    if (f.value.match(/^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/g)) return true;
+    return false;
+}
+
+function es_numero(f)
+{
+    if (f.value.match(/^\d+$/g)) return true;
+    return false;
+}
+
+// Verifica si el campo f está vacío, dando un error con el nombre n si lo está.
 function check_vacio(f, n)
 {
     if (vacio(f))
 function check_vacio(f, n)
 {
     if (vacio(f))
@@ -22,4 +45,51 @@ function check_vacio(f, n)
         return false;
     }
     return true;
         return false;
     }
     return true;
-}
\ No newline at end of file
+}
+
+// Verifica si el campo f tiene entre max y min caracteres (ver min_max_cant).
+// Si hay un error se usa el nombre de campo n para el mensaje.
+function check_min_max_cant(f, n, min, max)
+{
+    switch (min_max_cant(f, min, max))
+    {
+        case 1:
+            alert('El campo ' + n + ' debe tener a lo sumo ' + max + ' caracteres!');
+            f.focus();
+            return false;
+        case -1:
+            alert('El campo ' + n + ' debe tener al menos ' + min + ' caracteres!');
+            f.focus();
+            return false;
+    }
+    return true;
+}
+
+// Verifica si los campos f1 y f2 son iguales. Si no lo son se usa el nombrei
+// n para el mensaje de error.
+function check_iguales(f1, f2, n)
+{
+    if (f1.value == f2.value) return true;
+    alert('No coinciden los valores del campo ' + n + '!');
+    f1.focus();
+    return false;
+}
+
+// Verifica si los campos f1 y f2 son iguales. Si no lo son se usa el nombrei
+// n para el mensaje de error.
+function check_email(f, n)
+{
+    if (es_email(f)) return true;
+    alert(f.value + ' no es una dirección de e-mail válida!');
+    f.focus();
+    return false;
+}
+
+// Verifica si el campo f tiene un número natural.
+function check_numero(f, n)
+{
+    if (es_numero(f)) return true;
+    alert('El campo ' + n + ' no es un número natural!');
+    f.focus();
+    return false;
+}