X-Git-Url: http://git.cyclocoop.org/?a=blobdiff_plain;f=www%2Fplugins%2Fverifier%2Fverifier%2Fsiren_siret.php;h=6ff2fd32a67be3229dd892578b25e9c700eaaa5f;hb=c0f18416f529232b5555c6410a8765a5125ebcd3;hp=04f0f716b92980c173b52d17dda4a362670605a8;hpb=50522c53acc9e61a4a7de3a1890c4ba93e2f61b4;p=lhc%2Fweb%2Fwww.git diff --git a/www/plugins/verifier/verifier/siren_siret.php b/www/plugins/verifier/verifier/siren_siret.php index 04f0f716..6ff2fd32 100644 --- a/www/plugins/verifier/verifier/siren_siret.php +++ b/www/plugins/verifier/verifier/siren_siret.php @@ -1,10 +1,12 @@ 9) $somme += (2*$valeur[$i])-9; else $somme += 2*$valeur[$i]; $i+=2; } - - if ($somme % 10) return $erreur; - } - // Test de SIRET - else{ + while ($i < 9) { + if ((2*$valeur[$i])>9) { + $somme += (2*$valeur[$i])-9; + } else { + $somme += 2*$valeur[$i]; + $i+=2; + } + } + + if ($somme % 10) { + return $erreur; + } + } else { + // Test de SIRET $erreur = _T('verifier:erreur_siret'); - if (!is_string($valeur)) + if (!is_string($valeur)) { return $erreur; + } // Si pas 14 caractère, c'est déjà foiré ! - if(!preg_match('/^[0-9]{14}$/',$valeur)) return $erreur; - if(preg_match('/[0]{8}/',$valeur)) return $erreur; + if (!preg_match('/^[0-9]{14}$/', $valeur)) { + return $erreur; + } + if (preg_match('/[0]{8}/', $valeur)) { + return $erreur; + } // Pour le SIRET on vérifie la clef de controle "1-2" avec les impaires *2 // (vs pairs*2 pour SIREN, parce qu'on part de la fin) $somme = 0; $i = 1; // Les paires - while($i < 14){ $somme += $valeur[$i]; $i+=2; } + while ($i < 14) { + $somme += $valeur[$i]; + $i+=2; + } $i = 0; // Les impaires ! - while($i < 14){ if((2*$valeur[$i])>9) $somme += (2*$valeur[$i])-9; else $somme += 2*$valeur[$i]; $i+=2; } - - if($somme % 10) return $erreur; + while ($i < 14) { + if ((2*$valeur[$i])>9) { + $somme += (2*$valeur[$i])-9; + } else { + $somme += 2*$valeur[$i]; + $i+=2; + } + } + + if ($somme % 10) { + return $erreur; + } } - + return ''; }