887a2dcd559574430bbacb671d831d15684baf4e
[lhc/web/www.git] / www / plugins / verifier / verifier / couleur.php
1 <?php
2
3 // Sécurité
4 if (!defined('_ECRIRE_INC_VERSION')) {
5 return;
6 }
7
8 /**
9 * Vérifie la validité d'un code couleur
10 *
11 * @param string $valeur
12 * La valeur à vérifier.
13 * @param array $options
14 * type => hexa,...
15 * normaliser => oui ou rien
16 * @param null $valeur_normalisee
17 * Si normalisation a faire, la variable sera rempli par la couleur normalisee.
18 * @return string
19 * Retourne une chaine vide si c'est valide, sinon une chaine expliquant l'erreur.
20 */
21 function verifier_couleur_dist($valeur, $options = array(), &$valeur_normalisee = null) {
22 $erreur = _T('verifier:erreur_couleur');
23 if (!is_string($valeur)) {
24 return $erreur;
25 }
26
27 $ok = '';
28 switch ($options['type']) {
29 case 'hexa':
30 default:
31 if (!preg_match(',^#[a-f0-9]{6}$,i', $valeur)) {
32 if (isset($options['normaliser']) and preg_match(',^[a-f0-9]{6}$,i', $valeur)) {
33 $valeur_normalisee = '#'.$valeur;
34 } else {
35 return $erreur;
36 }
37 }
38 break;
39 }
40
41 return $ok;
42 }