Changeset 34234 in spip-zone


Ignore:
Timestamp:
Jan 6, 2010, 8:03:51 PM (10 years ago)
Author:
xdjuj@…
Message:
  • Plus tolérant sur les séparateurs de dates
  • Longueur de chaine EGALE à une valeur
Location:
_plugins_/verifier
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/verifier/lang/verifier_fr.php

    r34233 r34234  
    1717'erreur_siret' => 'Le numéro de SIRET n\'est pas valide.',
    1818'erreur_taille_entre' => 'La valeur doit comprendre entre @min@ et @max@ caractères.',
     19'erreur_taille_egal' => 'La valeur doit comprendre exactement @egal@ caractères.',
    1920'erreur_taille_max' => 'La valeur doit comprendre au maximum @max@ caractères.',
    2021'erreur_taille_min' => 'La valeur doit comprendre au minimum @min@ caractères.',
  • _plugins_/verifier/test/verifier.html

    r34233 r34234  
    6060echo "$un_autre_chaine 4 caractères mini ?";
    6161var_dump(verifier($un_autre_chaine, 'taille', array('min'=>4)));
     62echo "$une_chaine de 3 caractères ?";
     63var_dump(verifier($une_chaine, 'taille', array('egal'=>3)));
     64echo "$un_autre_chaine de 3 caractères ?";
     65var_dump(verifier($un_autre_chaine, 'taille', array('egal'=>3)));
    6266
    6367?>
  • _plugins_/verifier/verifier/date.php

    r34233 r34234  
    55
    66/**
    7  * Une date au format JJ/MM/AAAA
     7 * Une date au format JJ/MM/AAAA (avec séparateurs souples : espace / - .)
    88 * TODO : introduire via les options le FORMAT de la date, pour accepter différentes écritures
    99 * On pourrait faire mieux, genre vérifier les jours en fonction du mois
     
    1414        $erreur = _T('verifier:erreur_date');
    1515        $ok = '';
     16        // On tolère différents séparateurs
     17        $valeur = ereg_replace("\.|/| ",'-',$valeur);
    1618       
    1719        // On vérifie la validité du format
    18         if(!preg_match('#^[0-9]{2}/[0-9]{2}/[0-9]{4}$#',$valeur)) return $erreur;
     20        if(!preg_match('#^[0-9]{2}-[0-9]{2}-[0-9]{4}$#',$valeur)) return $erreur;
    1921        // On vérifie vite fait que les dates existent, genre le 32 pour un jour NON, (mais on pourrait aller plus loin et vérifier en fonction du mois)
    20         list($jour,$mois,$annee) = explode('/',$valeur);
     22        list($jour,$mois,$annee) = explode('-',$valeur);
    2123        if(($jour > 31)|| ($jour < 1) || ($mois > 12) || ($mois < 1) || ($annee < 1800)) return $erreur; // 1800, je crois qu'avant les gens ne sont plus vivants °_°
    2224       
  • _plugins_/verifier/verifier/taille.php

    r34233 r34234  
    1818                $ok = ($ok and (strlen($valeur) <= $options['max']));
    1919        }
     20        if (isset($options['egal'])){
     21                $ok = ($ok and (strlen($valeur) == $options['egal']));
     22        }
    2023       
    2124        if (!$ok){
     
    2427                elseif (isset($options['max']))
    2528                        $erreur = _T('verifier:erreur_taille_max', $options);
     29                elseif (isset($options['egal']))
     30                        $erreur = _T('verifier:erreur_taille_egal', $options);
    2631                else
    2732                        $erreur = _T('verifier:erreur_taille_min', $options);
Note: See TracChangeset for help on using the changeset viewer.