From 2de072b12e760f212a2a57c10dba3cb75c56ecbf Mon Sep 17 00:00:00 2001 From: Rodolphe Quiedeville Date: Thu, 10 Feb 2005 14:34:50 +0000 Subject: [PATCH] Ajout fonction check_siren pour tester la validite du code SIREN --- htdocs/societe.class.php | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/htdocs/societe.class.php b/htdocs/societe.class.php index 1a06c8ae5e8..ed3b9f430e1 100644 --- a/htdocs/societe.class.php +++ b/htdocs/societe.class.php @@ -1179,6 +1179,46 @@ class Societe { } } } + + /** + * \brief Verifie la validite du siren + */ + function check_siren() + { + if (strlen($this->siren) == 9) + { + $sum = 0; + + for ($i = 0 ; $i < 10 ; $i = $i+2) + { + $sum = $sum + substr($this->siren, (8 - $i), 1); + } + + for ($i = 1 ; $i < 9 ; $i = $i+2) + { + $ps = 2 * substr($this->siren, (8 - $i), 1); + + if ($ps > 9) + { + $ps = substr($ps, 0,1) + substr($ps, 1 ,1); + } + $sum = $sum + $ps; + } + + if (substr($sum, -1) == 0) + { + return 0; + } + else + { + return -1; + } + } + else + { + return -2; + } + } } ?>