diff --git a/htdocs/cashdesk/validation_verif.php b/htdocs/cashdesk/validation_verif.php index 5775a3c9388..3328fa52886 100644 --- a/htdocs/cashdesk/validation_verif.php +++ b/htdocs/cashdesk/validation_verif.php @@ -57,14 +57,29 @@ switch ($action) $invoice->date=dol_now(); $invoice->type= Facture::TYPE_STANDARD; - // TODO // To use a specific numbering module for POS, reset $conf->global->FACTURE_ADDON and other vars here - // and restore after values just after + // and restore values just after + $sav_FACTURE_ADDON=''; + if (! empty($conf->global->POS_ADDON)) + { + $sav_FACTURE_ADDON = $conf->global->FACTURE_ADDON; + $conf->global->FACTURE_ADDON = $conf->global->POS_ADDON; + + // To force prefix only for POS with terre module + if (! empty($conf->global->POS_NUMBERING_TERRE_FORCE_PREFIX)) $conf->global->INVOICE_NUMBERING_TERRE_FORCE_PREFIX = $conf->global->POS_NUMBERING_TERRE_FORCE_PREFIX; + // To force prefix only for POS with mars module + if (! empty($conf->global->POS_NUMBERING_MARS_FORCE_PREFIX)) $conf->global->INVOICE_NUMBERING_MARS_FORCE_PREFIX = $conf->global->POS_NUMBERING_MARS_FORCE_PREFIX; + // To force rule only for POS with mercure + //... + } $num=$invoice->getNextNumRef($company); - // TODO Restore save values - + // Restore save values + if (! empty($sav_FACTURE_ADDON)) + { + $conf->global->FACTURE_ADDON = $sav_FACTURE_ADDON; + } $obj_facturation->numInvoice($num); diff --git a/htdocs/core/modules/facture/mod_facture_mars.php b/htdocs/core/modules/facture/mod_facture_mars.php index e477e086fe0..578ed1a16ff 100644 --- a/htdocs/core/modules/facture/mod_facture_mars.php +++ b/htdocs/core/modules/facture/mod_facture_mars.php @@ -37,6 +37,18 @@ class mod_facture_mars extends ModeleNumRefFactures var $prefixcreditnote='AV'; var $error=''; + + /** + * Constructor + */ + function __construct() + { + if (! empty($conf->global->INVOICE_NUMBERING_MARS_FORCE_PREFIX)) + { + $this->prefixinvoice = $conf->global->INVOICE_NUMBERING_MARS_FORCE_PREFIX; + } + } + /** * Renvoi la description du modele de numerotation * diff --git a/htdocs/core/modules/facture/mod_facture_terre.php b/htdocs/core/modules/facture/mod_facture_terre.php index 31d8eac736b..c0497f5fb5c 100644 --- a/htdocs/core/modules/facture/mod_facture_terre.php +++ b/htdocs/core/modules/facture/mod_facture_terre.php @@ -35,6 +35,18 @@ class mod_facture_terre extends ModeleNumRefFactures var $prefixdeposit='AC'; var $error=''; + + /** + * Constructor + */ + function __construct() + { + if (! empty($conf->global->INVOICE_NUMBERING_TERRE_FORCE_PREFIX)) + { + $this->prefixinvoice = $conf->global->INVOICE_NUMBERING_TERRE_FORCE_PREFIX; + } + } + /** * Renvoi la description du modele de numerotation *