source: pmb4.2/trunk/fuentes/pmb/admin/acquisition/frais.inc.php @ 815

Last change on this file since 815 was 815, checked in by jrpelegrina, 4 years ago

Initial release of pmb 4.2

  • Property svn:executable set to *
File size: 7.5 KB
Line 
1<?php
2// +-------------------------------------------------+
3// © 2002-2004 PMB Services / www.sigb.net pmb@sigb.net et contributeurs (voir www.sigb.net)
4// +-------------------------------------------------+
5// $Id: frais.inc.php,v 1.18 2015-04-03 11:16:26 jpermanne Exp $
6
7if (stristr($_SERVER['REQUEST_URI'], ".inc.php")) die("no access");
8
9// gestion des frais annexes
10require_once("$class_path/frais.class.php");
11require_once("$class_path/tva_achats.class.php");
12
13
14function show_list_frais() {
15       
16        global $dbh;
17        global $msg;
18        global $charset;
19        global $pmb_gestion_devise;
20       
21        print "<table>
22        <tr>
23                <th>".htmlentities($msg[103], ENT_QUOTES, $charset)."</th>
24                <th>".htmlentities($msg[acquisition_frais_montant], ENT_QUOTES, $charset)."</th>
25        </tr>";
26
27        $res = frais::listFrais();
28        $nbr = pmb_mysql_num_rows($res);
29
30        $parity=1;
31        for($i=0;$i<$nbr;$i++) {
32                $row=pmb_mysql_fetch_object($res);
33                        if ($parity % 2) {
34                                $pair_impair = "even";
35                        } else {
36                                $pair_impair = "odd";
37                        }
38                        $parity += 1;
39                        $tr_javascript=" onmouseover=\"this.className='surbrillance'\" onmouseout=\"this.className='$pair_impair'\" onmousedown=\"document.location='./admin.php?categ=acquisition&sub=frais&action=modif&id=$row->id_frais';\" ";
40                print "<tr class='$pair_impair' $tr_javascript style='cursor: pointer' ><td><i>".htmlentities($row->libelle, ENT_QUOTES, $charset)."</i></td><td><i>".htmlentities($row->montant, ENT_QUOTES, $charset)." ".$pmb_gestion_devise."</i></td>";
41                        print "</tr>";
42        }
43        print "</table>
44                <input class='bouton' type='button' value=' ".$msg[acquisition_ajout_frais]." ' onClick=\"document.location='./admin.php?categ=acquisition&sub=frais&action=add'\" />";
45
46}
47
48
49function show_frais_form($id=0) {
50               
51        global $dbh, $msg;
52        global $charset;
53        global $frais_form;
54        global $ptab;
55        global $acquisition_gestion_tva;
56       
57        $frais_form = str_replace('!!id!!', $id, $frais_form);
58       
59        if(!$id) {
60               
61                $frais_form = str_replace('!!form_title!!', htmlentities($msg[acquisition_ajout_frais],ENT_QUOTES,$charset), $frais_form);
62                $frais_form = str_replace('!!libelle!!', '', $frais_form);
63                $frais_form = str_replace('!!condition!!', '', $frais_form);
64                $frais_form = str_replace('!!montant!!', '', $frais_form);
65                $frais_form = str_replace('!!cp_compta!!', '', $frais_form);
66
67        } else {
68               
69                $frais = new frais($id);
70                $frais_form = str_replace('!!form_title!!', htmlentities($msg[acquisition_modif_frais],ENT_QUOTES,$charset), $frais_form);
71                $frais_form = str_replace('!!libelle!!', htmlentities($frais->libelle,ENT_QUOTES,$charset), $frais_form);
72                $frais_form = str_replace('!!condition!!', htmlentities($frais->condition_frais,ENT_QUOTES,$charset), $frais_form);
73                $frais_form = str_replace('!!montant!!', $frais->montant, $frais_form);
74                $frais_form = str_replace('!!cp_compta!!', $frais->num_cp_compta, $frais_form);
75               
76                $ptab = str_replace('!!id!!', $id, $ptab);
77                $ptab = str_replace('!!libelle_suppr!!', addslashes($frais->libelle), $ptab);
78                $frais_form = str_replace('<!-- bouton_sup -->', $ptab, $frais_form);
79
80        }
81
82        if ($acquisition_gestion_tva) {
83                $form_tva = "<select id='tva_achat' name ='tva_achat' >";
84                $q = tva_achats::listTva();
85                $res = pmb_mysql_query($q, $dbh);
86                while ($row=pmb_mysql_fetch_object($res)) {
87                        $form_tva.="<option value='".$row->id_tva."' ";
88                        if ($id ) {
89                                if ($frais->num_tva_achat == $row->id_tva) $form_tva.="selected ";
90                        } 
91                        $form_tva.=">".$row->libelle." - ".$row->taux_tva." %</option>";
92                }
93                $form_tva.="</select>";
94                $frais_form = str_replace('!!tva_achat!!', $form_tva, $frais_form);
95        }
96       
97        print confirmation_delete("./admin.php?categ=acquisition&sub=frais&action=del&id=");
98        print $frais_form;
99       
100}
101
102
103$frais_form = "
104<form class='form-".$current_module."' id='fraisform' name='fraisform' method='post' action=\"./admin.php?categ=acquisition&sub=frais&action=update&id=!!id!!\">
105<h3>!!form_title!!</h3>
106<!--    Contenu du form    -->
107<div class='form-contenu'>
108
109        <div class='row'>
110                <label class='etiquette' for='libelle'>".htmlentities($msg[103],ENT_QUOTES,$charset)."</label>
111        </div>
112        <div class='row'>
113                <input type=text id='libelle' name='libelle' value=\"!!libelle!!\" class='saisie-30em' />
114        </div>
115
116        <div class='row'>
117                <label class='etiquette' for='condition'>".htmlentities($msg[acquisition_frais_cond],ENT_QUOTES,$charset)."</label>
118        </div>
119        <div class='row'>
120                <textarea id='condition' name='condition' class='saisie-80em' cols='62' rows='6' wrap='virtual'>!!condition!!</textarea>
121        </div>
122
123        <div class='row'>
124                <label class='etiquette' for='montant'>".htmlentities($msg[acquisition_frais_montant],ENT_QUOTES,$charset)."</label>
125        </div>
126        <div class='row'>
127                <input type=text id='montant' name='montant' value=\"!!montant!!\" class='saisie-10em' />
128                <label class='etiquette'>&nbsp;".$pmb_gestion_devise."</label>
129        </div>
130
131        <div class='row'>
132                <label class='etiquette' for='cp_compta'>".htmlentities($msg[acquisition_num_cp_compta],ENT_QUOTES,$charset)."</label>
133        </div>
134        <div class='row'>
135                <input type='text' id='cp_compta' name='cp_compta' value=\"!!cp_compta!!\" class='saisie-20em' />
136        </div>
137";
138
139if ($acquisition_gestion_tva) {
140$frais_form.=
141        <div class='row'>
142                <label class='etiquette'>".htmlentities($msg[acquisition_num_tva_achat],ENT_QUOTES,$charset)."</label>
143        </div>
144        <div class='row'>
145                !!tva_achat!!
146        </div>
147";
148}
149
150
151$frais_form.= "
152        <div class='row'></div>
153</div>
154
155<!-- Boutons -->
156<div class='row'>
157        <div class='left'>
158                <input class='bouton' type='button' value=' $msg[76] ' onClick=\"document.location='./admin.php?categ=acquisition&sub=frais' \" />&nbsp;
159                <input class='bouton' type='submit' value=' $msg[77] ' onClick=\"return test_form(this.form)\" />
160        </div>
161        <div class='right'>
162                <!-- bouton_sup -->
163        </div>
164</div>
165<div class='row'>
166</div>
167</form>
168<script type='text/javascript'>
169        document.forms['fraisform'].elements['libelle'].focus();
170</script>
171
172";
173
174$ptab = "<input class='bouton' type='button' value=' ".$msg[supprimer]." ' onClick=\"javascript:confirmation_delete('!!id!!', '!!libelle_suppr!!')\" />";
175
176?>
177
178<script type='text/javascript'>
179function test_form(form)
180{
181        if(form.libelle.value.length == 0)
182        {
183                alert("<?php echo $msg[98]; ?>");
184                document.forms['fraisform'].elements['libelle'].focus();
185                return false;   
186        }
187        return true;
188}
189</script>
190
191<?php
192
193//Traitement des actions
194switch($action) {
195        case 'add':
196                show_frais_form();
197                break;
198
199               
200        case 'modif':
201                if (frais::exists($id)) {
202                        show_frais_form($id);
203                } else {
204                        show_list_frais();
205                }
206                break;
207
208               
209        case 'update':
210                // vérification validité des données fournies.
211                //Pas deux libelles de frais identiques
212                $nbr = frais::existsLibelle($libelle, $id);
213                if ( $nbr > 0 ) {
214                        error_form_message($libelle.$msg["acquisition_frais_already_used"]);
215                        break;
216                }
217               
218                //Vérification du format du montant
219                $montant = str_replace(',','.',$montant);
220                if (!is_numeric($montant) || $montant < 0.00 || $montant >999999.99 ) {
221                        error_form_message($libelle.$msg["acquisition_frais_error"]);
222                        break;
223                }
224               
225                $frais = new frais($id);
226                $frais->libelle = $libelle;
227                $frais->condition_frais = $condition;
228                $frais->montant = $montant;
229                $frais->num_cp_compta = $cp_compta;
230                $frais->num_tva_achat = $tva_achat;     
231                $frais->save();
232                show_list_frais();
233
234                break;
235
236               
237        case 'del':
238                if($id) {
239                        $total1 = frais::hasFournisseurs($id);
240                        if ($total1==0) {
241                                frais::delete($id);
242                        } else {
243                                $msg_suppr_err = $msg[acquisition_frais_used] ;
244                                if ($total1) $msg_suppr_err .= "<br />- ".$msg[acquisition_frais_used_fou] ;
245                                error_message($msg[321], $msg_suppr_err, 1, 'admin.php?categ=acquisition&sub=frais');
246                        }
247                } else {
248                        show_list_frais();
249                }
250                break;
251
252
253        default:
254                show_list_frais();
255                break;
256}
257
258
259
260?>
Note: See TracBrowser for help on using the repository browser.