X-Git-Url: https://git.llucax.com/z.facultad/75.43/tp1.git/blobdiff_plain/1d5be3c0d2aa8a59432af39fcb04871fd84ea13e..765b3c57f081d3863ff59951a67da5874554db42:/src/lib/validacion.php?ds=sidebyside diff --git a/src/lib/validacion.php b/src/lib/validacion.php index 721624f..13c965a 100644 --- a/src/lib/validacion.php +++ b/src/lib/validacion.php @@ -9,6 +9,7 @@ // $Id$ require_once 'lib/pagina.php'; +require_once 'lib/Usuario.php'; /** * Devuelve 1 si el campo f tiene más de max caracteres, -1 si tiene menos @@ -22,6 +23,7 @@ function min_max_cant($f, $min, $max) return 0; } +/// Valida que el campo sea una dirección de e-mail. function es_email($f) { if (preg_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]$/', $f)) return true; @@ -112,4 +114,63 @@ function check_file_upload($file, $nombre = 'El archivo', $types = array()) return true; } +/// Verifica que una fecha sea válida. +function check_fecha($anio, $mes, $dia) +{ + if (!preg_match('/^\d{4}$/', $anio) or $anio > date('Y') or $anio < 2000) + { + error('El año no es válido!'); + return false; + } + if ($mes < 1 or $mes > 12) + { + error('El mes no es válido!'); + return false; + } + if ($dia < 1 or $mes > 31) + { + error('El día no es válido!'); + return false; + } + return true; +} + +/// Verifica que sea un número entero. +function check_numero($n) +{ + if (preg_match('/^\d+$/', $n)) return true; + error("$n no es un número entero!"); + return false; +} + +/// Verifica que sea un número de registro de un asociado (retorna error). +function ret_check_asociado($user) +{ + if (Usuario::asociado($user)) return ''; + return "$user no es un número de registro de un usuario asociado!"; +} + +/// Verifica que sea la password correcta (retorna error). +function ret_check_password($user, $pass) +{ + if ($user->getPassword() == $pass) return ''; + return 'Contraseña incorrecta!'; +} + +/// Verifica que sea un número de registro de un asociado. +function check_asociado($user) +{ + if ($err = ret_check_asociado($user)) + error($err); + return !$err; +} + +/// Verifica que sea la password correcta. +function check_password($user, $pass) +{ + if ($err = ret_check_password($user, $pass)) + error($err); + return !$err; +} + ?> \ No newline at end of file