diff --git a/CHANGELOG b/CHANGELOG
index a29df4d..35d29cf 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,5 @@
+0.8.5
+- Ajout numéro SIREN/SIRET pour les clients
0.8.4
- Correction bug si identité définie par plusieurs champs
- Correction bug oubli choix receveur
diff --git a/admin/client_modifier.php b/admin/client_modifier.php
index 1f81804..644b5dd 100644
--- a/admin/client_modifier.php
+++ b/admin/client_modifier.php
@@ -26,6 +26,7 @@ $form->runIf(f('save') && !$form->hasErrors(),
'adresse' => f('adresse'),
'code_postal' => f('code_postal'),
'ville' => f('ville'),
+ 'siret' => f('siret'),
'telephone' => f('telephone'),
'email' => f('email')
]);
diff --git a/admin/clients.php b/admin/clients.php
index b2193a3..9d075ce 100644
--- a/admin/clients.php
+++ b/admin/clients.php
@@ -16,6 +16,7 @@ $form->runIf(f('add') && !$form->hasErrors(),
'adresse' => f('adresse'),
'code_postal' => f('code_postal'),
'ville' => f('ville'),
+ 'siret' => f('siret'),
'telephone' => f('telephone'),
'email' => f('email')
]);
diff --git a/admin/pdf.php b/admin/pdf.php
index 02a29f7..38c2d50 100644
--- a/admin/pdf.php
+++ b/admin/pdf.php
@@ -92,7 +92,7 @@ if ($f->type_facture != CERFA)
''.$config->get('org_name')."
".
$adresse ."
".
(($t = $plugin->getConfig('rna_asso'))?"RNA : $t
":'').
- (($t = $plugin->getConfig('siret_asso'))?"SIRET : $t
":'').
+ (($t = $plugin->getConfig('siret_asso'))?"SIRET : " . implode(' ', str_split($t, 3)) . "
":'').
(($t = $config->get('email_asso'))?"Email : $t
":'').
(($t = $config->get('site_asso'))?"Site web : $t
":'');
@@ -101,6 +101,7 @@ if ($f->type_facture != CERFA)
''.$c->nom.'
'.
$c->adresse."
".
$c->code_postal.' '.$c->ville."
".
+ (($t = $c->siret)?"SIREN/SIRET : " . implode(' ', str_split($t, 3)) . "
":'').
(($t = $c->email)?"Email : $t
":'').
(($t = $c->telephone)?"Tel : $t
":'');
diff --git a/data/schema.sql b/data/schema.sql
index b108bb3..37097b9 100644
--- a/data/schema.sql
+++ b/data/schema.sql
@@ -21,7 +21,7 @@ CREATE TABLE IF NOT EXISTS plugin_facturation_clients (
adresse TEXT NOT NULL,
code_postal TEXT NOT NULL,
ville TEXT NOT NULL,
- -- date_creation INTEGER NOT NULL,
+ siret TEXT NOT NULL,
date_creation TEXT NOT NULL DEFAULT CURRENT_DATE CHECK (date(date_creation) IS NOT NULL AND date(date_creation) = date_creation), -- Date d\'inscription
telephone TEXT,
email TEXT
diff --git a/lib/Client.php b/lib/Client.php
index 5fc6044..e1bd682 100644
--- a/lib/Client.php
+++ b/lib/Client.php
@@ -15,6 +15,7 @@ class Client
'adresse',
'code_postal',
'ville',
+ 'siret',
'telephone',
'email'
];
@@ -55,6 +56,10 @@ class Client
throw new UserException('Le code postal est erroné.');
}
}
+ elseif ($key == "siret")
+ {
+ $data[$key] = str_replace(' ', '', $data[$key]);
+ }
elseif ($key == "telephone")
{
$data[$key] = Utils::normalizePhoneNumber($data[$key]);
@@ -84,7 +89,7 @@ class Client
if($this->config['unique_client_name'] && isset($data['nom']) && $db->test('plugin_facturation_clients', 'nom = ? COLLATE NOCASE', $data['nom']))
{
- throw new UserException('La valeur du champ nom est déjà utilisée, hors ce champ doit être unique à chaque client.');
+ throw new UserException('La valeur du champ nom est déjà utilisée, or ce champ doit être unique à chaque client.');
}
$db->insert('plugin_facturation_clients', $data);
@@ -122,6 +127,9 @@ class Client
'ville' => [
'label' => 'Ville',
],
+ 'siret' => [
+ 'label' => 'Siret',
+ ],
'telephone' => [
'label' => 'Téléphone',
],
@@ -150,7 +158,7 @@ class Client
if($this->config['unique_client_name'] && isset($data['nom']) && $db->test('plugin_facturation_clients', 'nom = ? COLLATE NOCASE AND id != ?', $data['nom'], (int)$id))
{
- throw new UserException('La valeur du champ nom est déjà utilisée, hors ce champ doit être unique à chaque client.');
+ throw new UserException('La valeur du champ nom est déjà utilisée, or ce champ doit être unique à chaque client.');
}
return $db->update('plugin_facturation_clients', $data, $db->where('id', (int)$id));
diff --git a/lib/Facture.php b/lib/Facture.php
index fdf3a4f..28c1df8 100644
--- a/lib/Facture.php
+++ b/lib/Facture.php
@@ -432,7 +432,7 @@ class Facture
if(isset($data['numero']) && $db->test('plugin_facturation_factures', 'numero = ? COLLATE NOCASE AND id != ?', $data['numero'], (int)$id))
{
- throw new UserException('Un document avec ce numéro existe déjà, hors le numéro doit être unique.');
+ throw new UserException('Un document avec ce numéro existe déjà, or le numéro doit être unique.');
}
return $db->update('plugin_facturation_factures', $data, $db->where('id', (int)$id));
}
diff --git a/plugin.ini b/plugin.ini
index 5a9256f..3bf1573 100644
--- a/plugin.ini
+++ b/plugin.ini
@@ -2,7 +2,7 @@ name="Facturation"
description="Permet d'éditer des factures, devis et reçus à ses membres ainsi qu'à une base de clients supplémentaire."
author="zou ; adapté par jce"
url="https://git.roflcopter.fr/lesanges/paheko-plugin-facturation"
-version="0.8.3"
+version="0.8.5"
menu=true
restrict_section="accounting"
restrict_level="read"
diff --git a/templates/client.tpl b/templates/client.tpl
index f1ad8ae..cc6f6f4 100644
--- a/templates/client.tpl
+++ b/templates/client.tpl
@@ -18,6 +18,12 @@