1 {include file="admin/_head.tpl" title="Modification de l'opération n°`$operation.id`" current="compta/saisie" js=1}
15 <form method="post" action="{$self_url|escape}">
18 <legend>Informations sur l'opération</legend>
20 <dt><label for="f_date">Date</label> <b title="(Champ obligatoire)">obligatoire</b></dt>
21 <dd><input type="date" name="date" id="f_date" value="{form_field name=date default=$operation.date|date_fr:'Y-m-d'}" size="10" required="required" /></dd>
22 <dt><label for="f_libelle">Libellé</label> <b title="(Champ obligatoire)">obligatoire</b></dt>
23 <dd><input type="text" name="libelle" id="f_libelle" value="{form_field name=libelle data=$operation}" required="required" /></dd>
27 <legend>Flux <b title="(Champ obligatoire)">obligatoire</b></legend>
31 <th><label for="f_compte">Compte</label></th>
32 <th><label for="f_montant">Montant<br /><b title="">crédit < 0 < débit</b></label></th>
36 {foreach from=$fluxs item="flux" key="flux_n" name="fluxs"}
38 <td class="compte">{select_compte comptes=$comptes name="compte" form_name="compte_$flux_n" id="f_compte_$flux_n" data=$flux}</td>
39 {if !$tpl.foreach.fluxs.last}
40 <td class="montant"><input type="number" size="5" name="montant_{$flux_n}" id="f_montant_{$flux_n}"
41 value="{form_field name="montant" data=$flux}"
42 min="0.00" step="0.01" required="required"
43 /> {$config.monnaie|escape}</td>
51 <dt><label for="f_moyen_paiement">Moyen de paiement</label> <b title="(Champ obligatoire)">obligatoire</b></dt>
53 <select name="moyen_paiement" id="f_moyen_paiement">
54 {foreach from=$moyens_paiement item="moyen"}
55 <option value="{$moyen.code|escape}"{if $moyen.code == $operation.moyen_paiement} selected="selected"{/if}>{$moyen.nom|escape}</option>
59 <dt class="f_cheque"><label for="f_numero_cheque">Numéro de chèque</label></dt>
60 <dd class="f_cheque"><input type="text" name="numero_cheque" id="f_numero_cheque" value="{form_field name=numero_cheque data=$operation}" /></dd>
61 <dt class="f_banque"><label for="f_banque">Compte bancaire</label></dt>
63 <select name="banque" id="f_banque">
64 {foreach from=$comptes_bancaires item="compte"}
65 <option value="{$compte.id|escape}"{if ($type == Garradin\Compta_Categories::DEPENSES && $compte.id == $operation.compte_credit) || $compte.id == $operation.compte_debit} selected="selected"{/if}>{$compte.libelle|escape} - {$compte.banque|escape}</option>
71 <dt><label for="f_numero_piece">Numéro de pièce comptable</label></dt>
72 <dd><input type="text" name="numero_piece" id="f_numero_piece" value="{form_field name=numero_piece data=$operation}" /></dd>
73 <dt><label for="f_remarques">Remarques</label></dt>
74 <dd><textarea name="remarques" id="f_remarques" rows="4" cols="30">{form_field name=remarques data=$operation}</textarea></dd>
79 <script type="text/javascript">
82 if (!document.querySelector || !document.querySelectorAll)
86 fluxs = document.querySelector('#fluxs');
89 var fluxs = fluxs.querySelectorAll('#fluxs > table > tbody > tr');
90 var fluxs_nb = fluxs.length;
92 var add = document.createElement('input');
94 add.className = 'icn add';
96 add.title = 'Ajouter un flux';
97 add.onclick = function (e) {
98 var p = this.parentNode.parentNode; // tbody
99 var fluxs = p.querySelectorAll('tr'); // tr
100 var fluxs_nb = fluxs.length;
103 var new_flux = this.parentNode.cloneNode(true); // tr
104 var new_compte = new_flux.querySelector('.compte');
105 new_compte.querySelector('select').id = 'f_compte_'+fluxs_nb;
106 new_compte.querySelector('select').name = 'compte_'+fluxs_nb;
107 p.appendChild(new_flux);
109 // Add a montant to old last flux
110 var new_montant = fluxs[0].querySelector('.montant').cloneNode(true);
111 new_montant.querySelector('input').id = 'f_montant_'+(fluxs_nb - 1);
112 new_montant.querySelector('input').name = 'montant_'+(fluxs_nb - 1);
113 new_montant.querySelector('input').value = '0';
114 this.parentNode.appendChild(new_montant);
115 this.parentNode.removeChild(this);
117 // Register this callback on new flux
118 var btn = new_flux.querySelector('input.add');
119 btn.onclick = this.onclick;
122 fluxs[fluxs_nb - 1].appendChild(add);
129 <legend>Catégorie</legend>
131 {foreach from=$categories item="cat"}
133 <input type="radio" name="id_categorie" value="{$cat.id|escape}" id="f_cat_{$cat.id|escape}" {form_field name="id_categorie" checked=$cat.id data=$operation} />
134 <label for="f_cat_{$cat.id|escape}">{$cat.intitule|escape}</label>
136 {if !empty($cat.description)}
137 <dd class="desc">{$cat.description|escape}</dd>
143 <script type="text/javascript">
147 window.changeMoyenPaiement = function()
149 var elm = $('#f_moyen_paiement');
150 toggleElementVisibility('.f_cheque', elm.value == 'CH');
151 toggleElementVisibility('.f_banque', elm.value != 'ES');
154 changeMoyenPaiement();
156 $('#f_moyen_paiement').onchange = changeMoyenPaiement;
163 {csrf_field key="compta_modifier_`$operation.id`"}
164 <input type="submit" name="save" value="Enregistrer →" />
169 {include file="admin/_foot.tpl"}