Overview
Comment: | Ajout de règles de validation spécifiques |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | dev |
Files: | files | file ages | folders |
SHA1: |
ad273fa33f51ef0d166ebd4894193a4b |
User & Date: | bohwaz on 2017-08-03 05:21:58 |
Other Links: | branch diff | manifest | tags |
Context
2017-08-03
| ||
05:39 | Erreur : utilisation de first() au lieu de get() check-in: e951b3ec3b user: bohwaz tags: dev | |
05:21 | Ajout de règles de validation spécifiques check-in: ad273fa33f user: bohwaz tags: dev | |
04:34 | preparedQuery s'attend à recevoir un tableau en argument check-in: 79b4d5c009 user: bohwaz tags: dev | |
Changes
Modified src/include/lib/Garradin/Form.php from [101432b619] to [0391534280].
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php namespace Garradin; class Form { protected $errors = []; public function check($token_action = '', Array $rules = null) { if (!\KD2\Form::tokenCheck($token_action)) { $this->errors[] = 'Une erreur est survenue, merci de bien vouloir renvoyer le formulaire.'; return false; | > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <?php namespace Garradin; class Form { protected $errors = []; public function __construct() { // Valide un montant de monnaie valide (deux décimales, ne peut être négatif) \KD2\Form::registerValidationRule('money', function ($name, $params, $value) { return preg_match('/^\d+(?:\.\d{1,2})?$/', $value) && $value >= 0; }); // Test si la valeur existe dans cette table // in_table:compta_categories,id \KD2\Form::registerValidationRule('in_table', function ($name, $params, $value) { $db = DB::getInstance(); return $db->test($params[0], $db->where($params[1], $value)); }); } public function check($token_action = '', Array $rules = null) { if (!\KD2\Form::tokenCheck($token_action)) { $this->errors[] = 'Une erreur est survenue, merci de bien vouloir renvoyer le formulaire.'; return false; |
︙ | ︙ | |||
66 67 68 69 70 71 72 73 74 75 | { $errors[] = $error; } } return $errors; } protected function getErrorMessage($rule, $element, Array $params) { | > > > > > > > > > > > > > < < | < < < < < > > > > > > > > | 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 | { $errors[] = $error; } } return $errors; } protected function getFieldName($name) { switch ($name) { case '_id': return 'identifiant'; case 'passe': return 'mot de passe'; case 'debut': return 'date de début'; case 'fin': return 'date de fin'; case 'duree': return 'durée'; default: return $name; } } protected function getErrorMessage($rule, $element, Array $params) { $element = $this->getFieldName($element); switch ($rule) { case 'required': case 'required_if': case 'required_unless': case 'required_with': case 'required_with_all': case 'required_without': case 'required_without_all': return sprintf('Le champ %s est vide.', $element); case 'min': return sprintf('Le champ %s doit faire au moins %d caractères.', $element, $params[0]); case 'file': return sprintf('Le fichier envoyé n\'est pas valide.'); case 'confirmed': return sprintf('La vérification du champ %s n\'est pas identique au champ lui-même.', $element); case 'date_format': return sprintf('Format de date invalide dans le champ %s.', $element); case 'numeric': return sprintf('Le champ %s doit être un nombre.', $element); case 'money': return sprintf('Le champ %s n\'est pas un nombre valide.', $element); default: return sprintf('Erreur "%s" dans le champ "%s"', $rule, $element); } } public function __invoke($key) { return \KD2\Form::get($key); } } |