Le controle de la clé n'est fait que si le pays du compte bancaire (détecté sur l'iban) est la France,
en attedant de m'assurer que la règle fonctionne aussi pour d'autres pays.
This commit is contained in:
parent
af955527dd
commit
791ea970b7
@ -186,7 +186,7 @@ class Account
|
|||||||
// Chargement librairie pour acces fonction controle RIB
|
// Chargement librairie pour acces fonction controle RIB
|
||||||
require_once DOL_DOCUMENT_ROOT . '/compta/bank/bank.lib.php';
|
require_once DOL_DOCUMENT_ROOT . '/compta/bank/bank.lib.php';
|
||||||
|
|
||||||
if (! verif_rib($this->code_banque,$this->code_guichet,$this->number,$this->cle_rib)) {
|
if (! verif_rib($this->code_banque,$this->code_guichet,$this->number,$this->cle_rib,$this->iban_prefix)) {
|
||||||
$this->error="Le contrôle de la clé indique que les informations de votre compte bancaire sont incorrectes.";
|
$this->error="Le contrôle de la clé indique que les informations de votre compte bancaire sont incorrectes.";
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -229,7 +229,7 @@ class Account
|
|||||||
// Chargement librairie pour acces fonction controle RIB
|
// Chargement librairie pour acces fonction controle RIB
|
||||||
require_once DOL_DOCUMENT_ROOT . '/compta/bank/bank.lib.php';
|
require_once DOL_DOCUMENT_ROOT . '/compta/bank/bank.lib.php';
|
||||||
|
|
||||||
if (! verif_rib($this->code_banque,$this->code_guichet,$this->number,$this->cle_rib)) {
|
if (! verif_rib($this->code_banque,$this->code_guichet,$this->number,$this->cle_rib,$this->iban_prefix)) {
|
||||||
$this->error="Le contrôle de la clé indique que les informations de votre compte bancaire sont incorrectes.";
|
$this->error="Le contrôle de la clé indique que les informations de votre compte bancaire sont incorrectes.";
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -38,10 +38,13 @@
|
|||||||
\param code_guichet
|
\param code_guichet
|
||||||
\param numero_compte
|
\param numero_compte
|
||||||
\param cle
|
\param cle
|
||||||
|
\param iban Ne sert pas pour le calcul de cle mais sert pour
|
||||||
|
determiner le pays
|
||||||
\return true si les infos sont bonnes, false si la clé ne correspond pas
|
\return true si les infos sont bonnes, false si la clé ne correspond pas
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function verif_rib($code_banque , $code_guichet , $num_compte , $cle) {
|
function verif_rib($code_banque , $code_guichet , $num_compte , $cle, $iban) {
|
||||||
|
if (eregi("^FR",$iban)) { // Cas de la France
|
||||||
$coef = array(62, 34, 3) ;
|
$coef = array(62, 34, 3) ;
|
||||||
// Concatenation des differents codes.
|
// Concatenation des differents codes.
|
||||||
$rib = strtolower($code_banque.$code_guichet.$num_compte.$cle);
|
$rib = strtolower($code_banque.$code_guichet.$num_compte.$cle);
|
||||||
@ -61,5 +64,8 @@ function verif_rib($code_banque , $code_guichet , $num_compte , $cle) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user