|
61 | 61 | } elseif ($action == 'credit') { |
62 | 62 | $journal = $compta->obtenirJournal('2',$periode_debut,$periode_fin, !$alsoDisplayClassifed); |
63 | 63 | $smarty->assign('journal', $journal); |
64 | | -} elseif ($action == 'ajouter' || $action == 'modifier') { |
65 | | - $formulaire = instancierFormulaire(); |
66 | | - |
67 | | - if ($action === 'modifier') { |
68 | | - $champsRecup = $compta->obtenir((int) $_GET['id']); |
69 | | - |
70 | | - $champs['idcompte'] = $champsRecup['idcompte']; |
71 | | - $champs['date_saisie'] = $champsRecup['date_ecriture']; |
72 | | - $champs['idoperation'] = $champsRecup['idoperation']; |
73 | | - $champs['idcategorie'] = $champsRecup['idcategorie']; |
74 | | - $champs['nom_frs'] = $champsRecup['nom_frs']; |
75 | | - $champs['tva_intra'] = $champsRecup['tva_intra']; |
76 | | - $champs['montant'] = $champsRecup['montant']; |
77 | | - $champs['description'] = $champsRecup['description']; |
78 | | - $champs['numero'] = $champsRecup['numero']; |
79 | | - $champs['idmode_regl'] = $champsRecup['idmode_regl']; |
80 | | - $champs['date_reglement'] = $champsRecup['date_regl']; |
81 | | - $champs['obs_regl'] = $champsRecup['obs_regl']; |
82 | | - $champs['idevenement'] = $champsRecup['idevenement']; |
83 | | - $champs['comment'] = $champsRecup['comment']; |
84 | | - $champs['montant_ht_soumis_tva_0'] = $champsRecup['montant_ht_soumis_tva_0']; |
85 | | - $champs['montant_ht_soumis_tva_5_5'] = $champsRecup['montant_ht_soumis_tva_5_5']; |
86 | | - $champs['montant_ht_soumis_tva_10'] = $champsRecup['montant_ht_soumis_tva_10']; |
87 | | - $champs['montant_ht_soumis_tva_20'] = $champsRecup['montant_ht_soumis_tva_20']; |
88 | | - $champs['tva_zone'] = $champsRecup['tva_zone']; |
89 | | - |
90 | | - |
91 | | - |
92 | | - //$formulaire->setDefaults($champsRecup); |
93 | | - $formulaire->addElement('hidden', 'id', $_GET['id']); |
94 | | - } else { |
95 | | - $champs['idcompte'] = 1; |
96 | | - $champs['date_saisie'] = date('Y-m-d'); |
97 | | - $champs['date_reglement'] = date('Y-m-d'); |
98 | | - } |
99 | | - $formulaire->setDefaults($champs); |
100 | | - |
101 | | - // facture associé à un évènement |
102 | | - $formulaire->addElement('header' , '' , 'Sélectionner un Journal'); |
103 | | - $formulaire->addElement('select' , 'idoperation', 'Type d\'opération', $compta->obtenirListOperations()); |
104 | | - $formulaire->addElement('select' , 'idcompte' , 'Compte', $compta->obtenirListComptes()); |
105 | | - $formulaire->addElement('select' , 'idevenement', 'Evenement', $compta->obtenirListEvenements()); |
106 | | - |
107 | | - //detail facture |
108 | | - $formulaire->addElement('header' , '' , 'Détail Facture'); |
109 | | - |
110 | | - //$mois=10; |
111 | | - $formulaire->addElement('date' , 'date_saisie' , 'Date saisie', ['language' => 'fr', |
112 | | - 'format' => 'd F Y', |
113 | | - 'minYear' => date('Y') - 5, |
114 | | - 'maxYear' => date('Y') + 1]); |
115 | | - |
116 | | - $formulaire->addElement('select' , 'idcategorie', 'Type de compte', $compta->obtenirListCategories()); |
117 | | - $formulaire->addElement('text', 'nom_frs', 'Nom fournisseurs' , ['size' => 30, 'maxlength' => 40]); |
118 | | - $formulaire->addElement('text' , 'tva_intra' , 'TVA intracommunautaire (facture)', ['size' => 30, 'maxlength' => 100]); |
119 | | - $formulaire->addElement('text', 'numero', 'Numero facture' , ['size' => 30, 'maxlength' => 40]); |
120 | | - $formulaire->addElement('textarea', 'description', 'Description', ['cols' => 42, 'rows' => 5]); |
121 | | - $formulaire->addElement('text', 'montant', 'Montant' , ['size' => 30, 'maxlength' => 40, 'id' => 'compta_journal_montant']); |
122 | | - $formulaire->addElement('text', 'comment', 'Commentaire' , ['size' => 30, 'maxlength' => 255]); |
123 | | - |
124 | | - $formulaire->addElement('header' , '' , 'TVA'); |
125 | | - $formulaire->addElement('text', 'montant_ht_soumis_tva_5_5', 'Montant HT soumis à TVA 5.5%' , ['size' => 30, 'maxlength' => 40, 'id' => 'compta_journal_ht_5_5']); |
126 | | - $formulaire->addElement('static' , 'note', '', '<a href="#" id="apply-vat-5-5">Calculer le montant HT soumis à TVA 5.5% sur la base de l\'intégralité du montant TTC</a><br /><br />'); |
127 | | - $formulaire->addElement('text', 'montant_ht_soumis_tva_10', 'Montant HT soumis à TVA 10%' , ['size' => 30, 'maxlength' => 40, 'id' => 'compta_journal_ht_10']); |
128 | | - $formulaire->addElement('static' , 'note', '', '<a href="#" id="apply-vat-10">Calculer le montant HT soumis à TVA 10% sur la base de l\'intégralité du montant TTC</a><br /><br />'); |
129 | | - $formulaire->addElement('text', 'montant_ht_soumis_tva_20', 'Montant HT soumis à TVA 20%' , ['size' => 30, 'maxlength' => 40, 'id' => 'compta_journal_ht_20']); |
130 | | - $formulaire->addElement('static' , 'note', '', '<a href="#" id="apply-vat-20">Calculer le montant HT soumis à TVA 20% sur la base de l\'intégralité du montant TTC</a><br /><br />'); |
131 | | - $formulaire->addElement('text', 'montant_ht_soumis_tva_0', 'Montant HT non soumis à TVA' , ['size' => 30, 'maxlength' => 40, 'id' => 'compta_journal_ht_0']); |
132 | | - $formulaire->addElement('static' , 'note', '', '<a href="#" id="apply-vat-0">Calculer le montant non soumis à TVA sur la base de l\'intégralité du montant TTC</a><br /><br />'); |
133 | | - |
134 | | - $formulaire->addElement('select' , 'tva_zone', 'Zone TVA', array_merge(['' => 'Non définie'], Comptabilite::TVA_ZONES)); |
135 | | - |
136 | | - //reglement |
137 | | - $formulaire->addElement('header' , '' , 'Réglement'); |
138 | | - $formulaire->addElement('select' , 'idmode_regl', 'Réglement', $compta->obtenirListReglements()); |
139 | | - $formulaire->addElement('date' , 'date_reglement' , 'Date', ['language' => 'fr', |
140 | | - 'format' => 'd F Y', |
141 | | - 'minYear' => date('Y') - 5, |
142 | | - 'maxYear' => date('Y') + 1]); |
143 | | - $formulaire->addElement('text', 'obs_regl', 'Info reglement' , ['size' => 30, 'maxlength' => 40]); |
144 | | - |
145 | | - |
146 | | - // boutons |
147 | | - $formulaire->addElement('header' , 'boutons' , ''); |
148 | | - $formulaire->addElement('submit' , 'soumettre' , ucfirst($action)); |
149 | | - |
150 | | - // 2012-02-18 A. Gendre |
151 | | - $passer = null; |
152 | | - if ($action !== 'ajouter') { |
153 | | - $res = $compta->obtenirSuivantADeterminer($_GET['id']); |
154 | | - if (is_array($res)) { |
155 | | - $passer = $res['id']; |
156 | | - $formulaire->addElement('submit', 'soumettrepasser' , 'Soumettre & passer'); |
157 | | - $formulaire->addElement('submit', 'passer' , 'Passer'); |
158 | | - } |
159 | | - } |
160 | | - |
161 | | - // ajoute des regles |
162 | | - $formulaire->addRule('idoperation' , 'Type d\'opération manquant' , 'required'); |
163 | | - $formulaire->addRule('idcompte' , 'Compte manquant' , 'required'); |
164 | | - $formulaire->addRule('idoperation' , 'Type d\'opération manquant' , 'nonzero'); |
165 | | - $formulaire->addRule('idevenement' , 'Evenement manquant' , 'required'); |
166 | | - $formulaire->addRule('idevenement' , 'Evenement manquant' , 'nonzero'); |
167 | | - $formulaire->addRule('idcategorie' , 'Type de compte manquant' , 'required'); |
168 | | - $formulaire->addRule('idcategorie' , 'Type de compte manquant' , 'nonzero'); |
169 | | - $formulaire->addRule('montant' , 'Montant manquant' , 'required'); |
170 | | - |
171 | | - |
172 | | - // 2012-02-18 A. Gendre |
173 | | - if (isset($_POST['passer']) && isset($passer)) { |
174 | | - afficherMessage('L\'écriture n\'a pas été ' . (($action === 'ajouter') ? 'ajoutée' : 'modifiée'), 'index.php?page=compta_journal&action=modifier&id=' . $passer); |
175 | | - return; |
176 | | - } |
177 | | - |
178 | | - if ($formulaire->validate()) { |
179 | | - $valeur = $formulaire->exportValues(); |
180 | | - |
181 | | - $date_ecriture = $valeur['date_saisie']['Y'] . "-" . $valeur['date_saisie']['F'] . "-" . $valeur['date_saisie']['d'] ; |
182 | | - $date_regl = $valeur['date_reglement']['Y'] . "-" . $valeur['date_reglement']['F'] . "-" . $valeur['date_reglement']['d'] ; |
183 | | - |
184 | | - if ($action === 'ajouter') { |
185 | | - $ok = $compta->ajouter( |
186 | | - $valeur['idoperation'], |
187 | | - $valeur['idcompte'], |
188 | | - $valeur['idcategorie'], |
189 | | - $date_ecriture, |
190 | | - $valeur['nom_frs'], |
191 | | - $valeur['tva_intra'], |
192 | | - $valeur['montant'], |
193 | | - $valeur['description'], |
194 | | - $valeur['numero'], |
195 | | - $valeur['idmode_regl'], |
196 | | - $date_regl, |
197 | | - $valeur['obs_regl'], |
198 | | - $valeur['idevenement'], |
199 | | - $valeur['comment'], |
200 | | - 0, |
201 | | - $valeur['montant_ht_soumis_tva_0'], |
202 | | - $valeur['montant_ht_soumis_tva_5_5'], |
203 | | - $valeur['montant_ht_soumis_tva_10'], |
204 | | - $valeur['montant_ht_soumis_tva_20'], |
205 | | - $valeur['tva_zone'], |
206 | | - |
207 | | - ); |
208 | | - } else { |
209 | | - $ok = $compta->modifier( |
210 | | - $valeur['id'], |
211 | | - $valeur['idoperation'], |
212 | | - $valeur['idcompte'], |
213 | | - $valeur['idcategorie'], |
214 | | - $date_ecriture, |
215 | | - $valeur['nom_frs'], |
216 | | - $valeur['tva_intra'], |
217 | | - $valeur['montant'], |
218 | | - $valeur['description'], |
219 | | - $valeur['numero'], |
220 | | - $valeur['idmode_regl'], |
221 | | - $date_regl, |
222 | | - $valeur['obs_regl'], |
223 | | - $valeur['idevenement'], |
224 | | - $valeur['comment'], |
225 | | - null, |
226 | | - 0, |
227 | | - $valeur['montant_ht_soumis_tva_0'], |
228 | | - $valeur['montant_ht_soumis_tva_5_5'], |
229 | | - $valeur['montant_ht_soumis_tva_10'], |
230 | | - $valeur['montant_ht_soumis_tva_20'], |
231 | | - $valeur['tva_zone'], |
232 | | - ); |
233 | | - } |
234 | | - if ($ok) { |
235 | | - if ($action === 'ajouter') { |
236 | | - Logs::log('Ajout une écriture ' . $formulaire->exportValue('titre')); |
237 | | - } else { |
238 | | - Logs::log('Modification une écriture ' . $formulaire->exportValue('titre') . ' (' . $_GET['id'] . ')'); |
239 | | - } |
240 | | - // 2012-02-18 A. Gendre |
241 | | - if (isset($_POST['soumettrepasser']) && isset($passer)) { |
242 | | - $urlredirect = 'index.php?page=compta_journal&action=modifier&id=' . $passer; |
243 | | - } else { |
244 | | - $urlredirect = 'index.php?page=compta_journal&action=lister#L' . $valeur['id']; |
245 | | - } |
246 | | - afficherMessage('L\'écriture a été ' . (($action === 'ajouter') ? 'ajoutée' : 'modifiée'), $urlredirect); |
247 | | - } else { |
248 | | - $smarty->assign('erreur', 'Une erreur est survenue lors de ' . (($action === 'ajouter') ? "l'ajout" : 'la modification') . ' de l\'écriture'); |
249 | | - } |
250 | | - } |
251 | | - |
252 | | - |
253 | | - $smarty->assign('formulaire', genererFormulaire($formulaire)); |
254 | 64 | } elseif ($action === 'export') { |
255 | 65 | /* |
256 | 66 | * This action allows the admin to export the full period in a CSV file. |
|
0 commit comments