1 {**************************************************************************}
3 {* Copyright (C) 2003-2007 Polytechnique.org *}
4 {* http://opensource.polytechnique.org/ *}
6 {* This program is free software; you can redistribute it and/or modify *}
7 {* it under the terms of the GNU General Public License as published by *}
8 {* the Free Software Foundation; either version 2 of the License, or *}
9 {* (at your option) any later version. *}
11 {* This program is distributed in the hope that it will be useful, *}
12 {* but WITHOUT ANY WARRANTY; without even the implied warranty of *}
13 {* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *}
14 {* GNU General Public License for more details. *}
16 {* You should have received a copy of the GNU General Public License *}
17 {* along with this program; if not, write to the Free Software *}
18 {* Foundation, Inc., *}
19 {* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *}
21 {**************************************************************************}
23 <script type="text/javascript">//<![CDATA[
25 function showValue(key, box)
27 var span_value = document.getElementById('csv_user_value_span[' + key + ']');
28 var span_cond = document.getElementById('csv_cond_value_span[' + key + ']');
29 var i = box.selectedIndex;
30 if (box.options[i].value == "user_value") {
31 span_value.style.display = "";
32 span_cond.style.display = "none";
33 } else if(box.options[i].value == "cond_value") {
34 span_value.style.display = "none";
35 span_cond.style.display = "";
37 span_value.style.display = "none";
38 span_conf.style.display = "none";
41 function showCond(key, box)
43 var line = document.getElementById('csv_cond_value[' + key + ']');
44 var i = box.selectedIndex;
45 if (box.options[i].value == "defined") {
46 line.style.display = "none";
48 line.style.display = "";
51 function gotoPage(page)
53 document.getElementById('csv_next_page').value = page;
54 document.getElementById('csv_form').submit();
59 <form action="{$csv_path}" method="post" id="csv_form">
60 <table class="cadre_a_onglet" cellpadding="0" cellspacing="0" style="width: 98%; margin-left:1%;">
64 {if $csv_page eq 'source'}
65 <li class="actif">1 - Choisir<br />la source</li>
67 <li><a href="{$csv_path}" onclick="return gotoPage('source');">1 - Choisir<br />la source</a></li>
69 {if $csv_page eq 'values'}
70 <li class="actif">2 - Définir<br />les valeurs</li>
72 <li><a href="{$csv_path}" onclick="return gotoPage('values');">2 - Définir<br />les valeurs</a></li>
74 <li>2 - Définir<br />les valeurs</li>
76 {if $csv_page eq 'valid'}
77 <li class="actif">3 - Vérifier<br />et valider</li>
79 <li><a href="{$csv_path}" onclick="return gotoPage('valid');">3 - Vérifier<br />et valider</a></li>
81 <li>3 - Vérifier<br />et valider</li>
87 <td class="conteneur_tab">
88 <table style="width: 100%">
91 {if $csv_page eq 'source'}
92 <textarea name="csv_source" rows="20" cols="80">{$csv|default:$smarty.request.csv_source}</textarea><br />
93 Entrez les données sous la forme suivante (avec
94 <input type="text" name="csv_separator" value="{$smarty.request.csv_separator|default:";"}" maxlength="1" size="1" />
95 comme séparateur) :<br/>
96 <pre class="center">TITRE1{$smarty.request.csv_separator|default:";"}TITRE2{$smarty.request.csv_separator|default:";"}...
97 val1_1{$smarty.request.csv_separator|default:";"}val1_2{$smarty.request.csv_separator|default:";"}...
98 val2_1{$smarty.request.csv_separator|default:";"}val2_2{$smarty.request.csv_separator|default:";"}...
99 val3_1{$smarty.request.csv_separator|default:";"}val3_2{$smarty.request.csv_separator|default:";"}...</pre>
100 {elseif $csv_page eq 'values'}
102 Action à effectuer si l'entrée existe :
103 <select name="csv_action" onchange="this.form.submit()">
104 <option value="insert" {if $smarty.request.csv_action eq 'insert'}selected="selected"{/if}>
107 <option value="replace" {if $smarty.request.csv_action eq 'replace'}selected="selected"{/if}>
108 remplacer par la nouvelle entrée
111 <option value="update" {if $smarty.request.csv_action eq 'update'}selected="selected"{/if}>
112 mettre à jour les champs sélectionnés
117 <table class="bicol">
120 <th colspan="2">Valeur</th>
121 {if $smarty.request.csv_action eq 'update'}
125 {foreach from=$csv_fields item=f}
126 <tr class="{cycle values="pair,impair"}">
127 <td>{$csv_field_desc[$f]|default:$f}</td>
129 <select name="csv_value[{$f}]" onchange="showValue('{$f}', this);">
130 <option value="" {if !$smarty.request.csv_value[$f]}selected="selected"{/if}>
133 <option value="user_value" {if $smarty.request.csv_value[$f] eq "user_value"}selected="selected"{/if}>
136 <option value="cond_value" {if $smarty.request.csv_value[$f] eq "cond_value"}selected="selected"{/if}>
137 Valeur conditionnelle
139 <optgroup label="Colonnes du CSV">
140 {foreach from=$csv_index item=col}
141 <option value="{$col}" {if $smarty.request.csv_value[$f] eq $col}selected="selected"{/if}>{$col}</option>
144 {if $csv_functions|count}
145 <optgroup label="Fonctions">
146 {foreach from=$csv_functions key=func item=desc}
147 <option value="{$func}" {if $smarty.request.csv_value[$f] eq $func}selected="selected"{/if}>{$desc.desc}</option>
154 <span id="csv_user_value_span[{$f}]" {if $smarty.request.csv_value[$f] neq "user_value"}style="display: none"{/if}>
155 <input type="text" name="csv_user_value[{$f}]" value="{$smarty.request.csv_user_value[$f]}" />
157 <span id="csv_cond_value_span[{$f}]" {if $smarty.request.csv_value[$f] neq "cond_value"}style="display: none"{/if}>
159 <select name="csv_cond_field[{$f}]">
160 {foreach from=$csv_index item=col}
161 <option value="{$col}" {if $smarty.request.csv_cond_field_value[$f] eq $col}selected="selected"{/if}>
166 <select name="csv_cond[{$f}]" onchange="showCond('{$f}', this)">
167 <option value="defined" {if $smarty.request.csv_cond[$f] eq "defined"}selected="selected"{/if}>
170 <option value="equals" {if $smarty.request.csv_cond[$f] eq "equals"}selected="selected"{/if}>
173 <option value="contains" {if $smarty.request.csv_cond[$f] eq "contains"}selected="selected"{/if}>
176 <option value="contained" {if $smarty.request.csv_cond[$f] eq "contained"}selected="selected"{/if}>
179 <option value="greater" {if $smarty.request.csv_cond[$f] eq "greater"}selected="selected"{/if}>
182 <option value="greater_or_equal" {if $smarty.request.csv_cond[$f] eq "greater_or_equal"}selected="selected"{/if}>
185 <option value="lower" {if $smarty.request.csv_cond[$f] eq "lower"}selected="selected"{/if}>
188 <option value="lower_or_equal" {if $smarty.request.csv_cond[$f] eq "lower_or_equal"}selected="selected"{/if}>
192 <span id="csv_cond_value[{$f}]" {if $smarty.request.csv_cond[$f] eq "defined" || !$smarty.request.csv_cond[$f]}style="display: none"{/if}>
193 <input type="text" name="csv_cond_value[{$f}]" value="{$smarty.request.csv_cond_value[$f]}" />
195 <br />Alors <input type="text" name="csv_cond_then[{$f}]" value="{$smarty.request.csv_cond_then[$f]}" />
196 <br />Sinon <input type="text" name="csv_cond_else[{$f}]" value="{$smarty.request.csv_cond_else[$f]}" />
199 {if $smarty.request.csv_action eq 'update'}
201 <input type="checkbox" name="csv_update[{$f}]" {if $smarty.request.csv_update[$f]}checked="checked"{/if} />
207 {elseif $csv_page eq 'valid'}
209 <table class="bicol">
211 {foreach from=$csv_fields item=f}
212 <th>{$csv_field_desc[$f]|default:$f}</th>
215 {foreach from=$csv_preview item=assoc}
216 <tr class="{cycle values="pair,impair"}">
217 {foreach from=$csv_fields item=f}
218 <td>{$assoc[$f]}</td>
224 Les données ont été ajoutées.
233 <input type="hidden" name="csv_page" value="{$csv_page}" />
234 <input type="hidden" id="csv_next_page" name="csv_next_page" value="{$csv_page}" />
235 <input type="hidden" name="csv" value="{$csv}" />
236 {if $csv_page neq 'source'}
237 <input type="hidden" name="csv_separator" value="{$smarty.request.csv_separator}" />
239 {if $csv_page neq 'values'}
240 <input type="hidden" name="csv_action" value="{$smarty.request.csv_action}" />
241 {foreach from=$csv_fields item=f}
242 <input type="hidden" name="csv_value[{$f}]" value="{$smarty.request.csv_value[$f]}" />
243 <input type="hidden" name="csv_user_value[{$f}]" value="{$smarty.request.csv_user_value[$f]}" />
244 <input type="hidden" name="csv_cond_field[{$f}]" value="{$smarty.request.csv_cond_field[$f]}" />
245 <input type="hidden" name="csv_cond[{$f}]" value="{$smarty.request.csv_cond[$f]}" />
246 <input type="hidden" name="csv_cond_value[{$f}]" value="{$smarty.request.csv_cond_value[$f]}" />
247 <input type="hidden" name="csv_cond_then[{$f}]" value="{$smarty.request.csv_cond_then[$f]}" />
248 <input type="hidden" name="csv_cond_else[{$f}]" value="{$smarty.request.csv_cond_else[$f]}" />
249 <input type="hidden" name="csv_update[{$f}]" value="{$smarty.request.csv_update[$f]}" />
252 {if $csv_page eq 'source'}
253 <input type="submit" name="csv_valid" value="Changer le CSV" />
254 {elseif $csv_page eq 'values'}
255 <input type="submit" name="csv_valid" value="Aperçu" />
256 {elseif $csv_page eq 'valid'}
257 <input type="submit" name="csv_valid" value="Valider" />
268 {* vim:set et sws=2 sts=2 sw=2: *}