Overview
Comment: | Modification d'opération |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
1c15ace26c4ba974856810ffc04fa20e |
User & Date: | bohwaz on 2012-09-19 01:43:59 |
Other Links: | manifest | tags |
Context
2012-09-19
| ||
02:09 |
| |
01:43 | Modification d'opération check-in: 1c15ace26c user: bohwaz tags: trunk | |
01:12 |
| |
Changes
Modified include/class.compta_journal.php from [0b6fe51fd0] to [54fbaf3de3].
︙ | ︙ | |||
191 192 193 194 195 196 197 | $data['id_categorie'] = (int)$data['id_categorie']; } else { $data['id_categorie'] = NULL; } | > > | > | 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 | $data['id_categorie'] = (int)$data['id_categorie']; } else { $data['id_categorie'] = NULL; } if (isset($data['id_auteur'])) { $data['id_auteur'] = (int)$data['id_auteur']; } return true; } public function getJournal() { $db = Garradin_DB::getInstance(); |
︙ | ︙ |
Modified include/template.php from [b0cb9b871b] to [051f56ca8c].
︙ | ︙ | |||
310 311 312 313 314 315 316 | return $out; } function tpl_select_compte($params) { $name = $params['name']; $comptes = $params['comptes']; | | | 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 | return $out; } function tpl_select_compte($params) { $name = $params['name']; $comptes = $params['comptes']; $selected = isset($params['data'][$params['name']]) ? $params['data'][$params['name']] : utils::post($name); $out = '<select name="'.$name.'" id="f_'.$name.'" class="large">'; foreach ($comptes as $compte) { if (!isset($compte['id'][1])) { |
︙ | ︙ |
Modified templates/admin/compta/index.tpl from [f8c04a81be] to [24a5537e1b].
1 2 3 | {include file="admin/_head.tpl" title="Comptabilité" current="compta"} <p class="alert"> | > | | > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | {include file="admin/_head.tpl" title="Comptabilité" current="compta"} <p class="alert"> <strong>Attention !</strong> La comptabilité est une fonctionnalité en beta, il est déconseillé pour le moment de l'utiliser pour la comptabilité réelle de votre association.<br /> Vous êtes cependant encouragé à la tester et à faire part de votre retour sur le site de <a href="http://dev.kd2.org/garradin/">Garradin</a>. </p> <h3>Évolution des recettes et dépenses sur les 30 derniers jours</h3> <p> <img src="{$www_url}admin/compta/graph.php?g=recettes_depenses" /> </p> <h3>Évolution actif/passif sur les 30 derniers jours</h3> <p> <img src="{$www_url}admin/compta/graph.php?g=actif_passif" /> </p> {include file="admin/_foot.tpl"} |
Added templates/admin/compta/operation_modifier.tpl version [74e2441bdb].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | {include file="admin/_head.tpl" title="Modification de l'opération n°`$operation.id`" current="compta/saisie"} {if $error} <p class="error"> {$error|escape} </p> {/if} <form method="post" action="{$self_url|escape}"> {if is_null($type)} <fieldset> <legend>Informations sur l'opération</legend> <dl> <dt><label for="f_date">Date</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd><input type="date" name="date" id="f_date" value="{form_field name=date default=$operation.date|date_fr:'Y-m-d'}" size="10" /></dd> <dt><label for="f_libelle">Libellé</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd><input type="text" name="libelle" id="f_libelle" value="{form_field name=libelle data=$operation}" /></dd> <dt><label for="f_montant">Montant</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd><input type="number" size="5" name="montant" id="f_montant" value="{form_field name=montant data=$operation}" min="0.00" /> {$config.monnaie|escape}</dd> <dt><label for="f_compte_debit">Compte débité</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd> {select_compte comptes=$comptes name="compte_debit" data=$operation} </dd> <dt><label for="f_compte_credit">Compte crédité</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd> {select_compte comptes=$comptes name="compte_credit" data=$operation} </dd> <dt><label for="f_numero_piece">Numéro de pièce comptable</label></dt> <dd><input type="text" name="numero_piece" id="f_numero_piece" value="{form_field name=numero_piece data=$operation}" /></dd> <dt><label for="f_remarques">Remarques</label></dt> <dd><textarea name="remarques" id="f_remarques" rows="4" cols="30">{form_field name=remarques data=$operation}</textarea></dd> </dl> </fieldset> {else} <fieldset> <legend>Informations sur l'opération</legend> <dl> <dt><label for="f_date">Date</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd><input type="date" name="date" id="f_date" value="{form_field name=date default=$operation.date|date_fr:'Y-m-d'}" size="10" /></dd> <dt><label for="f_libelle">Libellé</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd><input type="text" name="libelle" id="f_libelle" value="{form_field name=libelle data=$operation}" /></dd> <dt><label for="f_montant">Montant</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd><input type="number" size="5" name="montant" id="f_montant" value="{form_field name=montant data=$operation}" min="0.00" /> {$config.monnaie|escape}</dd> <dt><label for="f_moyen_paiement">Moyen de paiement</label> <b title="(Champ obligatoire)">obligatoire</b></dt> <dd> <select name="moyen_paiement" id="f_moyen_paiement" onchange="return changeMoyenPaiement(this);"> {foreach from=$moyens_paiement item="moyen"} <option value="{$moyen.code|escape}"{if $moyen.code == $operation.moyen_paiement} selected="selected"{/if}>{$moyen.nom|escape}</option> {/foreach} </select> </dd> <dt class="cheque"><label for="f_numero_cheque">Numéro de chèque</label></dt> <dd class="cheque"><input type="text" name="numero_cheque" id="f_numero_cheque" value="{form_field name=numero_cheque data=$operation}" /></dd> <dt class="banque"><label for="f_banque">Compte bancaire</label></dt> <dd class="banque"> <select name="banque" id="f_banque"> {foreach from=$comptes_bancaires item="compte"} <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> {/foreach} </select> </dd> <dt><label for="f_numero_piece">Numéro de pièce comptable</label></dt> <dd><input type="text" name="numero_piece" id="f_numero_piece" value="{form_field name=numero_piece data=$operation}" /></dd> <dt><label for="f_remarques">Remarques</label></dt> <dd><textarea name="remarques" id="f_remarques" rows="4" cols="30">{form_field name=remarques data=$operation}</textarea></dd> </dl> </fieldset> <fieldset> <legend>Catégorie</legend> <dl class="catList"> {foreach from=$categories item="cat"} <dt> <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} /> <label for="f_cat_{$cat.id|escape}">{$cat.intitule|escape}</label> </dt> {if !empty($cat.description)} <dd class="desc">{$cat.description|escape}</dd> {/if} {/foreach} </dl> </fieldset> <script type="text/javascript"> {literal} (function () { window.changeMoyenPaiement = function(elm) { var cheque = document.getElementsByClassName('cheque'); var cheque_l = cheque.length; for (i = 0; i < cheque_l; i++) { cheque[i].style.display = elm.value == 'CH' ? 'block' : 'none'; } var banque = document.getElementsByClassName('banque'); var banque_l = banque.length; for (i = 0; i < banque_l; i++) { banque[i].style.display = (elm.value != 'ES') ? 'block' : 'none'; } }; changeMoyenPaiement(document.getElementById('f_moyen_paiement')); } ()); {/literal} </script> {/if} <p class="submit"> {csrf_field key="compta_modifier_`$operation.id`"} <input type="submit" name="save" value="Enregistrer →" /> </p> </form> {include file="admin/_foot.tpl"} |
Added www/admin/compta/operation_modifier.php version [4cf776be0a].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 | <?php require_once __DIR__ . '/_inc.php'; if ($user['droits']['compta'] < Garradin_Membres::DROIT_ECRITURE) { throw new UserException("Vous n'avez pas le droit d'accéder à cette page."); } require_once GARRADIN_ROOT . '/include/class.compta_journal.php'; $journal = new Garradin_Compta_Journal; require_once GARRADIN_ROOT . '/include/class.compta_categories.php'; $cats = new Garradin_Compta_Categories; require_once GARRADIN_ROOT . '/include/class.compta_comptes_bancaires.php'; $banques = new Garradin_Compta_Comptes_Bancaires; $operation = $journal->get(utils::get('id')); if (!$operation) { throw new UserException("L'opération demandée n'existe pas."); } if ($operation['id_categorie']) { $categorie = $cats->get($operation['id_categorie']); } else { $categorie = false; } if ($categorie && $categorie['type'] != Garradin_Compta_Categories::AUTRES) { $type = $categorie['type']; } else { $type = null; } $error = false; if (!empty($_POST['save'])) { if (!utils::CSRF_check('compta_modifier_'.$operation['id'])) { $error = 'Une erreur est survenue, merci de renvoyer le formulaire.'; } else { try { if (is_null($type)) { $journal->edit($operation['id'], array( 'libelle' => utils::post('libelle'), 'montant' => utils::post('montant'), 'date' => utils::post('date'), 'compte_credit' => utils::post('compte_credit'), 'compte_debit' => utils::post('compte_debit'), 'numero_piece' => utils::post('numero_piece'), 'remarques' => utils::post('remarques'), )); } else { $cat = $cats->get(utils::post('id_categorie')); if (!$cat) { throw new UserException('Il faut choisir une catégorie.'); } if (!array_key_exists(utils::post('moyen_paiement'), $cats->listMoyensPaiement())) { throw new UserException('Moyen de paiement invalide.'); } if (utils::post('moyen_paiement') == 'ES') { $a = Garradin_Compta_Comptes::CAISSE; $b = $cat['compte']; } else { if (!trim(utils::post('banque'))) { throw new UserException('Le compte bancaire choisi est invalide.'); } if (!array_key_exists(utils::post('banque'), $banques->getList())) { throw new UserException('Le compte bancaire choisi n\'existe pas.'); } $a = utils::post('banque'); $b = $cat['compte']; } if ($type == Garradin_Compta_Categories::DEPENSES) { $debit = $b; $credit = $a; } elseif ($type == Garradin_Compta_Categories::RECETTES) { $debit = $a; $credit = $b; } $journal->edit($operation['id'], array( 'libelle' => utils::post('libelle'), 'montant' => utils::post('montant'), 'date' => utils::post('date'), 'moyen_paiement'=> utils::post('moyen_paiement'), 'numero_cheque' => utils::post('numero_cheque'), 'compte_credit' => $credit, 'compte_debit' => $debit, 'numero_piece' => utils::post('numero_piece'), 'remarques' => utils::post('remarques'), 'id_categorie' => (int)$cat['id'], )); } utils::redirect('/admin/compta/operation.php?id='.(int)$operation['id']); } catch (UserException $e) { $error = $e->getMessage(); } } } $tpl->assign('error', $error); $tpl->assign('type', $type); if ($type === null) { $tpl->assign('comptes', $comptes->listTree()); } else { $tpl->assign('moyens_paiement', $cats->listMoyensPaiement()); $tpl->assign('categories', $cats->getList($type)); $tpl->assign('comptes_bancaires', $banques->getList()); } $tpl->assign('custom_js', array('datepickr.js')); $tpl->assign('operation', $operation); $tpl->display('admin/compta/operation_modifier.tpl'); ?> |