source: pmb5.0/trunk/fuentes/pmb/admin/import/iimport_expl.php @ 6883

Last change on this file since 6883 was 6883, checked in by jrpelegrina, 19 months ago

Added original pmb5.0 files

  • Property svn:executable set to *
File size: 65.8 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: iimport_expl.php,v 1.76.2.1 2017-11-17 14:58:43 jpermanne Exp $
6
7// définition du minimum necessaire
8$base_path="../..";
9$base_auth = "ADMINISTRATION_AUTH";
10$base_title = "";
11require_once ("$base_path/includes/init.inc.php");
12
13// les requis par iimport_expl.php ou ses sous modules
14require_once ("$include_path/isbn.inc.php");
15require_once ("$include_path/marc_tables/$pmb_indexation_lang/empty_words");
16require_once ("$class_path/iso2709.class.php");
17require_once ("$class_path/author.class.php");
18require_once ("$class_path/serie.class.php");
19require_once ("$class_path/editor.class.php");
20require_once ("$class_path/collection.class.php");
21require_once ("$class_path/subcollection.class.php");
22require_once ("$class_path/expl.class.php");
23require_once ("$class_path/lender.class.php");
24require_once ("$class_path/docs_type.class.php");
25require_once ("$class_path/docs_section.class.php");
26require_once ("$class_path/docs_statut.class.php");
27require_once ("$class_path/docs_location.class.php");
28require_once ("$class_path/docs_codestat.class.php");
29require_once ("$class_path/indexint.class.php");
30require_once ("$class_path/origine_notice.class.php");
31require_once ("$class_path/marc_table.class.php");
32require_once ("$class_path/lender.class.php");
33require_once ("$class_path/notice.class.php");
34require_once ("$class_path/titre_uniforme.class.php");
35require_once($class_path."/origin.class.php");
36require_once("$include_path/parser.inc.php");
37
38require_once("import_func.inc.php");
39
40$name_func="func_import";
41
42if(isset(${$name_func}) && ${$name_func}){
43        ${$name_func}.=".php";
44}
45
46//J'efface la fonction d'import de la session au début de l'import
47if(((!isset($file_submit) || !$file_submit) && $action=="preload" && !${$name_func}) || ($action=="beforeupload" && !${$name_func})){
48        $_SESSION["func_import_model"]="";
49}
50
51//Controle que la fonction d'import existe
52$trouve=false;
53$table_list_func_import=array();
54if(isset(${$name_func}) && ${$name_func}){
55        if(${$name_func} == $pmb_import_modele){
56                $trouve=true;
57        }else{
58                if(file_exists("func_import_subst.xml")){
59                $table_list_func_import=_parser_text_no_function_(file_get_contents("func_import_subst.xml"),"CATALOG");
60        }elseif(file_exists("func_import.xml")){
61                $table_list_func_import=_parser_text_no_function_(file_get_contents("func_import.xml"),"CATALOG");
62        }
63        if(is_array($table_list_func_import["ITEM"]) && count($table_list_func_import["ITEM"])){
64                foreach ( $table_list_func_import["ITEM"] as $value ) {
65                        if($value["FUNCTION"] == ${$name_func}){
66                                $trouve=true;
67                                break;
68                        }
69                }
70        }
71        }
72}
73
74$func_import_model="";
75if(!$trouve){
76        if(isset($_SESSION["func_import_model"]) && $_SESSION["func_import_model"]){
77                $func_import_model=$_SESSION["func_import_model"];
78        }elseif(!$pmb_import_modele) {
79                $func_import_model="func_bdp.inc.php";
80        } else {
81                $func_import_model=$pmb_import_modele;
82        }
83}else{
84        $func_import_model=${$name_func};
85        $_SESSION["func_import_model"]=$func_import_model;//Je garde la fonction d'import sélectionnée jusqu'à la fin
86}
87if (file_exists($func_import_model)) {
88        require_once($func_import_model);
89} else {
90        error_message("", sprintf($msg["admin_error_file_import_modele"],$func_import_model), 1, "./admin.php?categ=param");
91        exit;
92}
93
94//Gestion de l'encodage du fichier d'import
95if(isset($encodage_fic_source)){
96        $_SESSION["encodage_fic_source"]=$encodage_fic_source;
97}elseif(isset($_SESSION["encodage_fic_source"])){
98        $encodage_fic_source=$_SESSION["encodage_fic_source"];
99}
100
101print "<div id='contenu-frame'>" ;
102
103$nom_fichier_transfert_ftp = "unimarc".(defined("LOCATION")?"_".constant("LOCATION"):"").".fic";
104
105$tmp_file = (isset($_FILES['userfile']['tmp_name']) ? $_FILES['userfile']['tmp_name'] : '');
106if (!isset($from_file)) $from_file = (isset($_FILES['userfile']['name']) ? $_FILES['userfile']['name'] : '');
107$to_file = $base_path.'/temp/'.basename($tmp_file);
108
109if ($sub == "import_expl") {
110        echo window_title($msg[520].$msg[1003].$msg[1001]);
111        /* the name of the lender is read in the table */
112        if ($book_lender_id!="") {
113                $sql_rech="select lender_libelle from lenders where idlender = '".$book_lender_id."' ";
114                $sql_result_rech = pmb_mysql_query($sql_rech) or die ("Couldn't select lenders ! = ".$sql_rech);
115                if (pmb_mysql_num_rows($sql_result_rech)==0) {
116                        $book_lender_name = $msg[561];
117                } else {
118                        $book_lender_name = pmb_mysql_result($sql_result_rech,0,"lender_libelle");
119                }
120        } else {
121                $book_lender_name = $msg[561];
122        }
123} else {
124        echo window_title($msg[500].$msg[1003].$msg[1001]);
125}
126
127switch ($action) {
128        case 'beforeupload':
129                if ($sub == "import_expl") {
130                        $book_lender_id = "";
131                        $book_statut_id = "";
132                        print $tpl_beforeupload_expl ;
133                } else {
134                        // import de notice
135                         print $tpl_beforeupload_notices ;
136                }
137        break;
138        case 'afterupload':
139                if (!$statutnot) $statutnot = 1 ;
140                if(!isset($que_faire)) $que_faire = '';
141                if(!isset($isbn_only)) $isbn_only = '';
142                if ($sub == "import_expl") {
143                        if ($book_lender_id==0 || $book_lender_id=="") {
144                                print $msg[561];
145                                break;
146                        }
147                        if ($book_statut_id==0 || $book_statut_id=="") {
148                                print $msg[561];
149                                break;
150                        }
151                        if ($tmp_file=="") {
152                                printf ($msg[503],$from_file); /* wrong permissions to copy the file %s ... Contact your admin... */
153                                break;
154                        }
155                        if (!move_uploaded_file($tmp_file,$to_file)) {
156                                printf ($msg[504],$from_file); /* Fail to copy %s, Contact your admin... */
157                        } else {
158                                printf ($msg[505],$from_file); /* File transfered, Loading is about to go on */
159                                print "<form class='form-$current_module' NAME=\"afterupload\" METHOD=\"post\" ACTION=\"iimport_expl.php\">";
160                                print "<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
161                                print "<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_expl\" />";
162                                print "<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"preload\" />";
163                                print "<INPUT NAME=\"book_lender_id\" TYPE=\"hidden\" value=\"".$book_lender_id."\" />";
164                                print "<INPUT NAME=\"book_statut_id\" TYPE=\"hidden\" value=\"".$book_statut_id."\" />";
165                                print "<input type=\"hidden\" name=\"file_submit\" value=\"$to_file\" />";
166                                print "<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
167                                print "<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
168                                print "<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
169                                print "<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
170                                print "<INPUT TYPE=\"hidden\" NAME=\"cote_mandatory\" VALUE=\"$cote_mandatory\" />\n";
171                                print "<INPUT TYPE=\"hidden\" NAME=\"tdoc_codage\" VALUE=\"$tdoc_codage\" />\n";
172                                print "<INPUT TYPE=\"hidden\" NAME=\"statisdoc_codage\" VALUE=\"$statisdoc_codage\" />\n";
173                                print "<INPUT TYPE=\"hidden\" NAME=\"sdoc_codage\" VALUE=\"$sdoc_codage\" />\n";
174                                print "<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
175                                print "<INPUT TYPE=\"hidden\" NAME=\"book_location_id\" VALUE=\"$book_location_id\" />\n";
176                                print "<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
177                                print "<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
178                                print "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
179                                print "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
180                                print "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
181                                print "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
182                                print "</FORM>";
183                                print "<SCRIPT>setTimeout(\"document.afterupload.submit()\",2000);</SCRIPT>";
184                        }
185                } else {
186                        // import de notice
187                        if ($to_file=="") {
188                            printf ($msg[503],$from_file); /* wrong permissions to copy the file %s ... Contact your admin... */
189                            break;
190                        }
191                        if (!move_uploaded_file($tmp_file,$to_file)) {
192                            printf ($msg[504],$from_file); /* Fail to copy %s, Contact your admin... */
193                        } else {
194                                printf ($msg[505],$from_file); /* File transfered, Loading is about to go on */
195                                print "<form class='form-$current_module' NAME=\"afterupload\" METHOD=\"post\" ACTION=\"iimport_expl.php\">";
196                                print "<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
197                                print "<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import\" />";
198                                print "<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"preload\" />";
199                                print "<input type=\"hidden\" name=\"file_submit\" value=\"$to_file\" />";
200                                print "<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
201                                print "<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
202                                print "<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
203                                print "<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
204                                print "<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
205                                print "<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
206                                print "<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
207                                print "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
208                                print "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
209                                print "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
210                                print "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
211                                print "</FORM>";
212                                print "<SCRIPT>setTimeout(\"document.afterupload.submit()\",2000);</SCRIPT>";
213                        }
214                }
215                break;
216        case 'preload':
217                if ($sub == "import_expl") {
218                        /* Does the file exist ? */
219                        if ($file_submit=="") {
220                                /* l'utilisateur n'est pas passé par le téléchargement du fichier */
221                                $filename = $base_path."/admin/import/".$nom_fichier_transfert_ftp;
222                                $from_file = "unimarc".(defined("LOCATION")?"_".constant("LOCATION"):"").".fic";
223                        } else {
224                                $filename=$file_submit;
225                        }
226                        if ($book_lender_id=="" || $book_statut_id=="" || $isbn_mandatory=="" || $cote_mandatory=="" || $book_location_id=="" || $statutnot=="") {
227                                /* l'utilisateur n'est pas passé par le téléchargement du fichier, il faut qu'il choisisse un prêteur s'il n'en a pas communiqué auparavant */
228                                print "
229                                        <form class='form-$current_module' NAME=\"preload\" METHOD=\"post\" ACTION=\"iimport_expl.php\">
230                                                <h3>".$msg['import_expl_form_titre']."</h3>
231                                                <div class='form-contenu'>
232                                                <div class='row'>
233                                                        <div class='colonne2'>
234                                                                <label class='etiquette' for='isbn_obligatoire'>$msg[564]</label><br />
235                                                                <INPUT TYPE='radio' NAME='isbn_mandatory' id='io1' VALUE='1' CLASS='radio' /><label for='io1'> $msg[40] </label>
236                                                                <INPUT TYPE='radio' NAME='isbn_mandatory' id='io0' VALUE='0' CLASS='radio' checked='checked' /><label for='io0'> $msg[39] </label>
237                                                        </div>
238                                                        <div class='colonne-suite'>
239                                                                <label class='etiquette' for='isbn_dedoublonnage'>$msg[568]</label><br />
240                                                                <INPUT TYPE='radio' NAME='isbn_dedoublonnage' id='di1' VALUE='1' CLASS='radio' checked='checked' /><label for='di1'> $msg[40] </label>
241                                                                <INPUT TYPE='radio' NAME='isbn_dedoublonnage' id='di0' VALUE='0' CLASS='radio' /><label for='di0'> $msg[39] </label>
242                                                                <input type='checkbox' name='isbn_only' id='ionly' value='1'/><label for='ionly'> ".$msg["ignore_issn"]." </label>
243                                                        </div>
244                                                </div>
245                                                <div class='row'>&nbsp;</div>
246                                                <div class='row'>
247                                <div class='colonne2'> 
248                                        <label class='etiquette' for='statutnot'>$msg[import_statutnot]</label>
249                                        <div>
250                                        ".gen_liste_multiple ("select id_notice_statut, gestion_libelle from notice_statut order by 2", "id_notice_statut", "gestion_libelle", "id_notice_statut", "statutnot", "", 1, "", "","","",0)."
251                                        </div>
252                                </div>
253                                <div class='colonne-suite'>
254                                        <label class='etiquette' for='generer_lien'>".$msg['import_genere_liens']."</label><br />
255                                        <INPUT TYPE='radio' NAME='link_generate' id='link1' VALUE=' 1' CLASS='radio' onclick='param_links_display();' /><label for='link1'> $msg[40] </label>
256                                    <INPUT TYPE='radio' NAME='link_generate' id='link0' VALUE='0' CLASS='radio' onclick='param_links_display();' checked='checked' /><label for='link0'> $msg[39] </label>
257                                    <span id='list_param_links' style='display: none;'>
258                                        <div style='clear: both; margin-left: 50%;'>
259                                                <label class='etiquette' for='notice_replace_links'>".$msg['notice_replace_links_option_keep_title']."</label>
260                                                <br /><input type='radio' name='notice_replace_links' value='0' ".($deflt_notice_replace_links==0?"checked='checked'":"")." /> ".$msg['notice_replace_links_option_keep_all']."
261                                                                                <br /><input type='radio' name='notice_replace_links' value='1' ".($deflt_notice_replace_links==1?"checked='checked'":"")." /> ".$msg['notice_replace_links_option_keep_replacing']."
262                                                                                <br /><input type='radio' name='notice_replace_links' value='2' ".($deflt_notice_replace_links==2?"checked='checked'":"")." /> ".$msg['notice_replace_links_option_keep_replaced']."
263                                                                        </div>
264                                    </span>
265                                </div>
266                        </div>
267                        <div class='row'>&nbsp;</div>
268                                <div class='row'>
269                                        <div class='colonne2'>
270                                                <label class='etiquette' for='import_force_notice_is_new'>".$msg['import_force_notice_is_new']."</label>
271                                        <div>
272                                                <input type='radio' name='import_force_notice_is_new' id='import_force_notice_is_new' value='0' checked='checked'> ".$msg['39']." <input type='radio' name='import_force_notice_is_new' id='import_force_notice_is_new' value='1'> ".$msg['40']."
273                                        </div>
274                                        </div>
275                                        <div class='colonne-suite'>
276                                                                <label class='etiquette' for='authorities_notices'>".htmlentities($msg['import_with_authorities_notices'],ENT_QUOTES,$charset)."</label><br />
277                                                                <input type='radio' name='authorities_notices' id='authorities_notices1' value='1' class='radio' /><label for='authorities_notices1'>".htmlentities($msg[40],ENT_QUOTES,$charset)."</label>                             
278                                                                <input type='radio' name='authorities_notices' id='authorities_notices0' value='0' class='radio' checked='checked'/><label for='authorities_notices0'>".htmlentities($msg[39],ENT_QUOTES,$charset)."</label>
279                                </div>
280                                </div>
281                                <div class='row'>&nbsp;</div>
282                                <div clas='row'>
283                                        <div class='colonne2'>
284                                                &nbsp;<br />
285                                                &nbsp;
286                                        </div>
287                                        <div class='colonne-suite'>
288                                                <label class='etiquette' for='authorities_default_origin'>".htmlentities($msg['import_authorities_origin_default_value'],ENT_QUOTES,$charset)."</label><br />
289                                                                ".origin::gen_combo_box("authorities","authorities_default_origin")."
290                                        </div>
291                                </div> 
292                                <div class='row'>&nbsp;</div>
293                                                <div class='row'><hr /></div>
294                                                <div class='row'>
295                            <label class='etiquette' for='prêteur statut'>$msg[560]</label>
296                            </div>
297                        <div class='row'>".
298                            lender::gen_combo_box($book_lender_id)."&nbsp;&nbsp;".
299                            docs_statut::gen_combo_box($book_statut_id)."
300                            </div>
301                            <div class='row'>
302                            <label class='etiquette' for='localisation'>$msg[import_localisation]</label>
303                                </div>
304                        <div class='row'>".
305                                docs_location::gen_combo_box($deflt_docs_location)."
306                            </div>
307                        <div class='row'><hr /></div>
308                        <div class='row'>
309                            <label class='etiquette' for='cote_obligatoire'>$msg[566]</label>
310                            </div>
311                        <div class='row'>
312                            <INPUT TYPE='radio' NAME='cote_mandatory' VALUE='1' CLASS='radio' /> $msg[40]
313                            <INPUT TYPE='radio' NAME='cote_mandatory' VALUE='0' CLASS='radio' checked='checked' /> $msg[39]
314                            </div>
315                        <div class='row'><hr /></div>
316                        <div class='row'>
317                            <label class='etiquette'>$msg[17]</label>
318                            </div>
319                        <div class='row'>
320                            <INPUT TYPE='radio' NAME='tdoc_codage' VALUE='1' CLASS='radio' /> ".$msg["import_expl_codage_proprio"]."
321                            <INPUT TYPE='radio' NAME='tdoc_codage' VALUE='0' CLASS='radio' checked='checked' /> ".$msg["import_expl_codage_generique"]."
322                            </div>
323                        <div class='row'>
324                            <label class='etiquette'>$msg[24]</label>
325                            </div>
326                        <div class='row'>
327                            <INPUT TYPE='radio' NAME='statisdoc_codage' VALUE='1' CLASS='radio' /> ".$msg["import_expl_codage_proprio"]."
328                            <INPUT TYPE='radio' NAME='statisdoc_codage' VALUE='0' CLASS='radio' checked='checked' /> ".$msg["import_expl_codage_generique"]."
329                            </div>
330                        <div class='row'>
331                            <label class='etiquette'>$msg[19]</label>
332                            </div>
333                        <div class='row'>
334                            <INPUT TYPE='radio' NAME='sdoc_codage' VALUE='1' CLASS='radio' /> ".$msg["import_expl_codage_proprio"]."
335                            <INPUT TYPE='radio' NAME='sdoc_codage' VALUE='0' CLASS='radio' checked='checked' /> ".$msg["import_expl_codage_generique"]."
336                            </div>
337                        <div class='row'>
338                            <label class='etiquette'>$msg[21]</label>
339                            </div>
340                        </div>
341                    <INPUT TYPE=\"SUBMIT\"  class='bouton' NAME=\"upload\" VALUE=\"".$msg[502]."\" />
342                    <INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />
343                    <INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_expl\" />
344                    <INPUT NAME=\"action\" TYPE=\"hidden\" value=\"preload\" />
345                    <INPUT NAME=\"".$name_func."\" TYPE=\"hidden\" value=\"".${$name_func}."\"/>
346                    </FORM>
347                    <script type='text/javascript'>
348                                                function param_links_display(){
349                                                        if(document.getElementById('link1').checked){
350                                                                document.getElementById('list_param_links').style.display='';
351                                                        } else {
352                                                                document.getElementById('list_param_links').style.display='none';
353                                                        }
354                                                }
355                                        </script>";
356                break;
357                        }
358            loadfile_in_table() ;
359            if ($pb_fini=="EOF") {
360                $formulaire="<form class='form-$current_module' name=\"load\" method=\"post\" action=\"iimport_expl.php\">";
361                $formulaire.="<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
362                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_expl\" />";
363                $formulaire.="<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"load\" />";
364                $formulaire.="<INPUT NAME=\"book_lender_id\" TYPE=\"hidden\" value=\"".$book_lender_id."\" />";
365                $formulaire.="<INPUT NAME=\"book_statut_id\" TYPE=\"hidden\" value=\"".$book_statut_id."\" />";
366                $formulaire.="<input type=\"hidden\" name=\"filename\" value=\"$filename\" />";
367                $formulaire.="<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
368                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
369                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
370                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
371                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"cote_mandatory\" VALUE=\"$cote_mandatory\" />\n";
372                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"tdoc_codage\" VALUE=\"$tdoc_codage\" />\n";
373                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statisdoc_codage\" VALUE=\"$statisdoc_codage\" />\n";
374                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"sdoc_codage\" VALUE=\"$sdoc_codage\" />\n";
375                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
376                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"book_location_id\" VALUE=\"$book_location_id\" />\n";
377                $formulaire.="<input type=\"hidden\" name=\"recharge\" value=\"YES\" />";
378                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
379                $formulaire.= "<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
380                $formulaire.= "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
381                                $formulaire.= "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
382                                $formulaire.= "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
383                                $formulaire.= "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
384                $formulaire.="</form>";
385                printf ($msg[512], $from_file); /* File %s... . End of preload... */
386               
387                $fo = fopen("$base_path/temp/liste_id".SESSid.".txt","w");
388                                fwrite($fo,"");
389                                fclose($fo);
390                                //file_put_contents("$base_path/temp/liste_id".SESSid.".txt","");
391                $script = "<script>setTimeout(\"document.load.submit()\",2000);</script>";
392                        } else {
393                                $formulaire="<form class='form-$current_module' name=\"preload\" method=\"post\" action=\"iimport_expl.php\">";
394                                $formulaire.= "<INPUT NAME=\"".$name_func."\" TYPE=\"hidden\" value=\"".${$name_func}."\"/>";
395                                $formulaire.="<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
396                                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_expl\" />";
397                                $formulaire.="<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"preload\" />";
398                                $formulaire.="<INPUT NAME=\"book_lender_id\" TYPE=\"hidden\" value=\"".$book_lender_id."\" />";
399                                $formulaire.="<INPUT NAME=\"book_statut_id\" TYPE=\"hidden\" value=\"".$book_statut_id."\" />";
400                                $formulaire.="<input type=\"hidden\" name=\"recharge\" value=\"$recharge\" />";
401                                $formulaire.="<input type=\"hidden\" name=\"file_submit\" value=\"$filename\" />";
402                                $formulaire.="<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
403                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
404                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
405                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
406                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"cote_mandatory\" VALUE=\"$cote_mandatory\" />\n";
407                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"tdoc_codage\" VALUE=\"$tdoc_codage\" />\n";
408                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statisdoc_codage\" VALUE=\"$statisdoc_codage\" />\n";
409                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"sdoc_codage\" VALUE=\"$sdoc_codage\" />\n";
410                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
411                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"book_location_id\" VALUE=\"$book_location_id\" />\n";
412                                $formulaire.="<input type=\"hidden\" name=\"noticenumber\" value=\"".($noticenumber+$j)."\" />";
413                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
414                                $formulaire.= "<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
415                                $formulaire.= "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
416                                $formulaire.= "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
417                                $formulaire.= "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
418                                $formulaire.= "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
419                                $formulaire.="</form>";
420                                $script = "<script>setTimeout(\"document.preload.submit()\",2000);</script>";
421                        }
422            print $formulaire;
423            print $script;
424                } else {
425                    // import de notice
426                    /* Does the file exist ? */
427                    if ($file_submit=="") {
428                        $filename = $base_path."/admin/import/".$nom_fichier_transfert_ftp;
429                        $from_file = "unimarc".(defined("LOCATION")?"_".constant("LOCATION"):"").".fic";
430                    } else {
431                        $filename=$file_submit;
432                    }
433               
434                    if ($isbn_mandatory=="") {
435                        /* l'utilisateur n'est pas passé par le téléchargement du fichier, il faut qu'il nous dise si l'ISBN est obligatoire */
436                        print "
437                            <form class='form-$current_module' NAME=\"preload\" METHOD=\"post\" ACTION=\"iimport_expl.php\">
438                            <h3>".$msg['import_noti_form_titre']."</h3>
439                            <div class='form-contenu'>
440                                <div class='row'>
441                                    <div class='colonne2'>
442                                    <label class='etiquette' for='isbn_obligatoire'>$msg[564]</label><br />
443                                        <INPUT TYPE='radio' NAME='isbn_mandatory' id='io1' VALUE='1' CLASS='radio' /><label for='io1'> $msg[40] </label>
444                                    <INPUT TYPE='radio' NAME='isbn_mandatory' id='io0' VALUE='0' CLASS='radio' checked='checked' /><label for='io0'> $msg[39] </label>
445                                </div>
446                                <div class='colonne-suite'>
447                                    <label class='etiquette' for='isbn_dedoublonnage'>$msg[568]</label><br />
448                                        <INPUT TYPE='radio' NAME='isbn_dedoublonnage' id='di1' VALUE='1' CLASS='radio' checked='checked' /><label for='di1'> $msg[40] </label>
449                                    <INPUT TYPE='radio' NAME='isbn_dedoublonnage' id='di0' VALUE='0' CLASS='radio' /><label for='di0'> $msg[39] </label>
450                                        <input type='checkbox' name='isbn_only' id='ionly' value='1' /><label for='ionly'> ".$msg["ignore_issn"]." </label>
451                                </div>
452                             </div>
453                                        <div class='row'>&nbsp;</div>
454                            <div class='row'>
455                        <div class='colonne2'> 
456                                <label class='etiquette' for='statutnot'>$msg[import_statutnot]</label>
457                                <div>
458                                ".gen_liste_multiple ("select id_notice_statut, gestion_libelle from notice_statut order by 2", "id_notice_statut", "gestion_libelle", "id_notice_statut", "statutnot", "", 1, "", "","","",0)."
459                                </div>
460                        </div>
461                        <div class='colonne-suite'>
462                                <label class='etiquette' for='generer_lien'>".$msg['import_genere_liens']."</label><br />
463                                <INPUT TYPE='radio' NAME='link_generate' id='link1' VALUE=' 1' CLASS='radio' onclick='param_links_display();' /><label for='link1'> $msg[40] </label>
464                                <INPUT TYPE='radio' NAME='link_generate' id='link0' VALUE='0' CLASS='radio' onclick='param_links_display();' checked='checked' /><label for='link0'> $msg[39] </label>
465                            <span id='list_param_links' style='display: none;'>
466                                <div style='clear: both; margin-left: 50%;'>
467                                        <label class='etiquette' for='notice_replace_links'>".$msg['notice_replace_links_option_keep_title']."</label>
468                                        <br /><input type='radio' name='notice_replace_links' value='0' ".($deflt_notice_replace_links==0?"checked='checked'":"")." /> ".$msg['notice_replace_links_option_keep_all']."
469                                                                        <br /><input type='radio' name='notice_replace_links' value='1' ".($deflt_notice_replace_links==1?"checked='checked'":"")." /> ".$msg['notice_replace_links_option_keep_replacing']."
470                                                                        <br /><input type='radio' name='notice_replace_links' value='2' ".($deflt_notice_replace_links==2?"checked='checked'":"")." /> ".$msg['notice_replace_links_option_keep_replaced']."
471                                                                </div>
472                            </span>
473                        </div>
474                    </div>
475                    <div class='row'>&nbsp;</div>
476                        <div class='row'>
477                                <div class='colonne2'>
478                                        <label class='etiquette' for='import_force_notice_is_new'>".$msg['import_force_notice_is_new']."</label>
479                                <div>
480                                        <input type='radio' name='import_force_notice_is_new' id='import_force_notice_is_new' value='0' checked='checked'> ".$msg['39']." <input type='radio' name='import_force_notice_is_new' id='import_force_notice_is_new' value='1'> ".$msg['40']."
481                                </div>
482                                </div>
483                                <div class='colonne-suite'>
484                                                        <label class='etiquette' for='authorities_notices'>".htmlentities($msg['import_with_authorities_notices'],ENT_QUOTES,$charset)."</label><br />
485                                                        <input type='radio' name='authorities_notices' id='authorities_notices1' value='1' class='radio' /><label for='authorities_notices1'>".htmlentities($msg[40],ENT_QUOTES,$charset)."</label>                             
486                                                        <input type='radio' name='authorities_notices' id='authorities_notices0' value='0' class='radio' checked='checked'/><label for='authorities_notices0'>".htmlentities($msg[39],ENT_QUOTES,$charset)."</label>
487                        </div>
488                        </div>
489                        <div class='row'>&nbsp;</div>
490                        <div clas='row'>
491                                <div class='colonne2'>
492                                        &nbsp;<br />
493                                        &nbsp;
494                                </div>
495                                <div class='colonne-suite'>
496                                        <label class='etiquette' for='authorities_default_origin'>".htmlentities($msg['import_authorities_origin_default_value'],ENT_QUOTES,$charset)."</label><br />
497                                                        ".origin::gen_combo_box("authorities","authorities_default_origin")."
498                                </div>
499                        </div>
500                        <div class='row'>&nbsp;</div>
501                    <div clas='row'>
502                                <INPUT TYPE=\"SUBMIT\"  class='bouton' NAME=\"upload\" VALUE=\"".$msg[502]."\" />
503                            </div>
504                            <INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />
505                            <INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import\" />
506                            <INPUT NAME=\"action\" TYPE=\"hidden\" value=\"preload\" />
507                            <INPUT NAME=\"".$name_func."\" TYPE=\"hidden\" value=\"".${$name_func}."\"/>
508                            </FORM>
509                    <script type='text/javascript'>
510                                                function param_links_display(){
511                                                        if(document.getElementById('link1').checked){
512                                                                document.getElementById('list_param_links').style.display='';
513                                                        } else {
514                                                                document.getElementById('list_param_links').style.display='none';
515                                                        }
516                                                }
517                                        </script>";
518                        break;
519                    }
520                    loadfile_in_table() ;
521                        if ($pb_fini=="EOF") {
522                                $formulaire="<form class='form-$current_module' name=\"load\" method=\"post\" action=\"iimport_expl.php\">";
523                                $formulaire.="<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
524                                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import\" />";
525                                $formulaire.="<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"load\" />";
526                                $formulaire.="<input type=\"hidden\" name=\"filename\" value=\"$filename\" />";
527                                $formulaire.="<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
528                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
529                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
530                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
531                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
532                                $formulaire.="<input type=\"hidden\" name=\"recharge\" value=\"YES\" />";
533                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
534                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
535                                $formulaire.= "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
536                                $formulaire.= "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
537                                $formulaire.= "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
538                                $formulaire.= "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
539                                $formulaire.="</form>";
540                                printf ($msg[509].$msg[512], $from_file, $from_file); /* File %s... . End of preload... */
541                               
542                                $fo = fopen("$base_path/temp/liste_id".SESSid.".txt","w");
543                                fwrite($fo,"");
544                                fclose($fo);
545                                //file_put_contents("$base_path/temp/liste_id".SESSid.".txt","");
546                                $script = "<script>setTimeout(\"document.load.submit()\",2000);</script>";
547                        } else {
548                                $formulaire="<form class='form-$current_module' name=\"preload\" method=\"post\" action=\"iimport_expl.php\">";
549                                $formulaire.= "<INPUT NAME=\"".$name_func."\" TYPE=\"hidden\" value=\"".${$name_func}."\"/>";
550                                $formulaire.="<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
551                                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import\" />";
552                                $formulaire.="<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"preload\" />";
553                                $formulaire.="<input type=\"hidden\" name=\"recharge\" value=\"$recharge\" />";
554                                $formulaire.="<input type=\"hidden\" name=\"file_submit\" value=\"$filename\" />";
555                                $formulaire.="<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
556                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
557                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
558                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
559                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
560                                $formulaire.="<input type=\"hidden\" name=\"noticenumber\" value=\"".($noticenumber+$j)."\" />";
561                                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
562                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
563                                $formulaire.= "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
564                                $formulaire.= "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
565                                $formulaire.= "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
566                                $formulaire.= "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
567                                $formulaire.="</form>";
568                                $script = "<script>setTimeout(\"document.preload.submit()\",2000);</script>";
569                        }
570                    print $formulaire;
571                    print $script;
572                }
573        break;
574    case 'load':
575                if (!$statutnot) $statutnot=1;
576                printf ($msg[509], $from_file);
577                if (!isset($nbtot_notice) || $nbtot_notice=="") {
578                        $sql = "select count(1) from import_marc where origine='".addslashes(SESSid)."' ";
579                        $sql_result = pmb_mysql_query($sql) or die ("Couldn't select count(1) from import table !");
580                        $nbtot_notice=pmb_mysql_result($sql_result, 0, 0);
581        }
582                if ($sub == "import_expl") {
583                        $section_995_=new marc_list("section_995");
584                        $section_995=$section_995_->table;
585                        $typdoc_995_=new marc_list("typdoc_995");
586                        $typdoc_995=$typdoc_995_->table;
587                        $codstatdoc_995_=new marc_list("codstatdoc_995");
588                        $codstatdoc_995=$codstatdoc_995_->table;
589                        /* let's initialize the counters if necessary */
590                        if ($nb_expl_ignores == "") $nb_expl_ignores=0;
591                        printf ($msg[511], "\"".$book_lender_name."\"") ;
592                }
593
594        $sql = "select notice, id_import from import_marc where origine='".addslashes(SESSid)."' ORDER BY id_import limit $pmb_import_limit_record_load ";
595        $sql_result_import = pmb_mysql_query($sql) or die ("Couldn't select import table !");
596        $n_notice=pmb_mysql_num_rows($sql_result_import);
597        if (!isset($notice_deja_presente) || $notice_deja_presente=="") {
598                $notice_deja_presente=0;
599        }
600        $inotice=0;
601        $notice_rejetee=0;
602        $txt="";
603
604                while (($notobj = pmb_mysql_fetch_object($sql_result_import))) {
605            $notice=$notobj->notice ;
606            $idnotice_import=$notobj->id_import ;
607            $inotice++;
608                       
609            $res_lecture = recup_noticeunimarc($notice) ;
610            if($link_generate) $res_link = recup_noticeunimarc_link($notice);
611                        if (!$res_lecture || !$tit_200a[0]) {
612                $res_lecture = 0;
613                // ".$inotice."
614                $fp = fopen ("../../temp/err_import.unimarc","a+");
615                fwrite ($fp, $notice);
616                fclose ($fp);
617                $notice_rejetee++;
618                        }
619           
620                        if ($res_lecture) {
621                recup_noticeunimarc_suite($notice) ;
622
623                /* We've got everything, let's have a look if ISBN already exists in notices table */
624                if(!isset($isbn[0])) $isbn[0] = '';
625                if($isbn[0]=="NULL") $isbn[0]="";
626                // si isbn vide, on va tenter de prendre l'EAN stocké en 345$b
627                if ($isbn[0]=="") $isbn[0] = (isset($EAN[0]) ? $EAN[0] : '');
628                // si isbn vide, on va tenter de prendre le serial en 011
629                if ($isbn[0]=="") $isbn[0] = (isset($issn_011[0]) ? $issn_011[0] : '');
630                // si ISBN obligatoire et isbn toujours vide :
631                if ($isbn_mandatory == 1 && $isbn[0]=="") {
632                    // on va tenter de prendre l'ISSN stocké en 225$x
633                    $isbn[0]=$collection_225[0]['x'] ;
634                    // si isbn toujours vide, on va tenter de prendre l'ISSN stocké en 410$x
635                    if ($isbn[0]=="") $isbn[0]=$collection_410[0]['x'] ;
636                }
637
638                                // on commence par voir ce que le code est (basé sur la recherche par code du module catalogage
639                                $ex_query = clean_string($isbn[0]);
640                               
641                                $EAN = '';
642                                $isbn = '';
643                                $code = '';
644                                $code10 = '' ;
645                               
646                                if(isEAN($ex_query)) {
647                                        // la saisie est un EAN -> on tente de le formater en ISBN
648                                        $EAN=$ex_query;
649                                        $isbn = EANtoISBN($ex_query);
650                                        // si échec, on prend l'EAN comme il vient
651                                        if(!$isbn) 
652                                                $code = str_replace("*","%",$ex_query);
653                                        else {
654                                                $code=$isbn;
655                                                $code10=formatISBN($code,10);
656                                        }
657                                } else {
658                                        if(isISBN($ex_query)) {
659                                                // si la saisie est un ISBN
660                                                $isbn = formatISBN($ex_query);
661                                                // si échec, ISBN erroné on le prend sous cette forme
662                                                if(!$isbn) 
663                                                        $code = str_replace("*","%",$ex_query);
664                                                else {
665                                                        $code10=$isbn ;
666                                                        $code=formatISBN($code10,13);
667                                                }
668                                        } else {
669                                                // ce n'est rien de tout ça, on prend la saisie telle quelle
670                                                $code = str_replace("*","%",$ex_query);
671                                        }
672                                }
673                               
674                                $isbn_OK=$code;
675                $new_notice = 0;
676                $notice_id = 0 ;
677                                // le paramétrage est-il : dédoublonnage sur code ? / Ne dédoublonner que sur code ISBN (ignorer les ISSN) ?
678                if ((($isbn_dedoublonnage)&&(!$isbn_only))||(($isbn_dedoublonnage)&&($isbn_only)&&(isISBN($isbn)))) {
679                                       
680                                        $trouvees=0;
681                                        if ($EAN && $isbn) {
682                                                // cas des EAN purs : constitution de la requête
683                                                $requete = "SELECT distinct notice_id FROM notices ";
684                                                $requete.= " WHERE notices.code in ('$code','$EAN'".($code10?",'$code10'":"").") limit 1";
685                                                $myQuery = pmb_mysql_query($requete, $dbh);
686                                                $trouvees=pmb_mysql_num_rows($myQuery);
687                                        } elseif ($isbn) {
688                                                // recherche d'un isbn
689                                                $requete = "SELECT distinct notice_id FROM notices ";
690                                                $requete.= " WHERE notices.code in ('$code'".($code10?",'$code10'":"").") limit 1";
691                                                $myQuery = pmb_mysql_query($requete, $dbh);
692                                                $trouvees=pmb_mysql_num_rows($myQuery);
693                                        } elseif ($code) {
694                                                // note : le code est recherché dans le champ code des notices
695                                                // (cas des code-barres disques qui échappent à l'EAN)
696                                                //
697                                                $requete = "SELECT notice_id FROM notices ";
698                                                $requete.= " WHERE notices.code like '$code' limit 10";
699                                                $myQuery = pmb_mysql_query($requete, $dbh);
700                                                $trouvees=pmb_mysql_num_rows($myQuery);
701                                        }
702
703                    // dédoublonnage sur isbn
704                    if ($EAN  || $isbn || $code) {
705                        if ($trouvees==0) {
706                            $new_notice=1;
707                        } else {
708                            $new_notice=0;
709                            $notice_id = pmb_mysql_result($myQuery,0,"notice_id");
710                            $sql_log = pmb_mysql_query("insert into error_log (error_origin, error_text) values ('import_expl_".addslashes(SESSid).".inc', '".$msg[542]." $EAN  || $isbn || $code ".addslashes($tit[0]['a'])."') ") ;
711                        }
712                    } else {
713                        if ($isbn_mandatory == 1) {
714                            $sql_log = pmb_mysql_query("insert into error_log (error_origin, error_text) values ('import_".addslashes(SESSid).".inc', '".$msg[543]."') ") ;
715                        } else {
716                            $new_notice = 1;
717                            $sql_log = pmb_mysql_query("insert into error_log (error_origin, error_text) values ('import_".addslashes(SESSid).".inc', '".$msg[565]."') ") ;
718                        }
719                    }
720                } else {
721                    // pas de dédoublonnage
722                    if ($isbn_mandatory == 1 && $isbn_OK=="") {
723                       $sql_log = pmb_mysql_query("insert into error_log (error_origin, error_text) values ('import_".addslashes(SESSid).".inc', '".$msg[543]."') ") ;
724                    }elseif($isbn_OK){
725                        $new_notice = 1;
726                    }else{
727                         $new_notice = 1;
728                         $sql_log = pmb_mysql_query("insert into error_log (error_origin, error_text) values ('import_".addslashes(SESSid).".inc', '".$msg[565]."') ") ;
729                    }
730                }
731                /* the notice is new, we are going to import it... */
732                if ($new_notice==1) {                   
733                    import_new_notice() ; 
734                    if($link_generate) import_notice_link();                   
735                                import_new_notice_suite() ;                             
736                                // Mise à jour de la table "notices_global_index"
737                                notice::majNoticesGlobalIndex($notice_id);
738                                // Mise à jour de la table "notices_mots_global_index"
739                                notice::majNoticesMotsGlobalIndex($notice_id);
740                } else {
741                        $notice_deja_presente++;
742                       
743                                        //TRAITEMENT DES DOCS NUMERIQUES SUR NOTICE EXISTANTE
744                                        if ($add_explnum===TRUE) ajoute_explnum();
745                                }
746
747                // TRAITEMENT DES EXEMPLAIRES ICI
748                if ($sub == "import_expl") {
749                    traite_exemplaires () ;
750                } // fin if $sub=import_expl
751                }
752               
753               
754            /* this has been succesfuly read, it can be deleted */
755                $sql_del = "delete from import_marc where id_import = '".$idnotice_import."' ";
756            $sql_result_del = pmb_mysql_query($sql_del) or die ("Couldn't delete import_marc $idnotice_import !");
757        } /* end while records in import table */
758        $sql = "select count(1) as reste from import_marc where origine='".addslashes(SESSid)."'";
759        $sql_result = pmb_mysql_query($sql) or die ("Couldn't select count import table !");
760        $reste=pmb_mysql_result($sql_result,0,"reste");
761
762        if ($sub == "import_expl") {
763            if ($reste > 0 ) {
764                $formulaire="<form class='form-$current_module' name=\"load\" method=\"post\" action=\"iimport_expl.php\">\n";
765                $formulaire.="<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
766                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_expl\" />";
767                $formulaire.="<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"load\" />";
768                $formulaire.="<INPUT NAME=\"book_lender_id\" TYPE=\"hidden\" value=\"".$book_lender_id."\" />";
769                $formulaire.="<INPUT NAME=\"book_statut_id\" TYPE=\"hidden\" value=\"".$book_statut_id."\" />";
770                $formulaire.="<input type=\"hidden\" name=\"filename\" value=\"$filename\" />";
771                $formulaire.="<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
772                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
773                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
774                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
775                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"cote_mandatory\" VALUE=\"$cote_mandatory\" />\n";
776                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"tdoc_codage\" VALUE=\"$tdoc_codage\" />\n";
777                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statisdoc_codage\" VALUE=\"$statisdoc_codage\" />\n";
778                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"sdoc_codage\" VALUE=\"$sdoc_codage\" />\n";
779                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
780                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"book_location_id\" VALUE=\"$book_location_id\" />\n";
781                $formulaire.="<input type=\"hidden\" name=\"recharge\" value=\"YES\" />\n";
782                $formulaire.="<input type=\"hidden\" name=\"reste\" value=\"".($reste)."\" />\n";
783                $formulaire.="<input type=\"hidden\" name=\"nbtot_notice\" value=\"".($nbtot_notice)."\" />\n";
784                $formulaire.="<input type=\"hidden\" name=\"notice_deja_presente\" value=\"".($notice_deja_presente)."\" />\n";
785                $formulaire.="<input type=\"hidden\" name=\"notice_rejetee\" value=\"".($notice_rejetee)."\" />\n";
786                $formulaire.="<input type=\"hidden\" name=\"nb_expl_ignores\" value=\"".($nb_expl_ignores)."\" />\n";
787                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
788                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
789                                $formulaire.= "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
790                                $formulaire.= "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
791                                $formulaire.= "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
792                                $formulaire.= "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
793                                $formulaire.="</form>";
794                   
795                 //On enregistre les ids utilisés avant le rechargement
796                global $notices_crees, $notices_a_creer,$bulletins_crees,$bulletins_a_creer;
797                $tabimport_id['notices_existantes'] = $notices_crees;
798                $tabimport_id['notices_a_creer'] = $notices_a_creer;
799                $tabimport_id['bulletins_crees'] = $bulletins_crees;
800                $tabimport_id['bulletins_a_creer'] = $bulletins_a_creer;
801                $fo = fopen("$base_path/temp/liste_id".SESSid.".txt","w");               
802                                fwrite($fo,serialize($tabimport_id));
803                $formulaire.="<script> setTimeout(\"document.load.submit()\",2000); </script>\n";
804                printf ($msg[513], $reste, $nbtot_notice); /* File %s ... . Still %s notices to load (total = %s) ... */
805                if ($notice_deja_presente==1) {
806                        printf ($msg[514],$notice_deja_presente) ; /* <br />($notice_deja_presente notice already in the database has been ignored since the begining) */
807                } elseif ($notice_deja_presente>1) {
808                        printf ($msg[515],$notice_deja_presente) ; /* <br />($notice_deja_presente notices already in the database have been ignored since the begining) */
809                }
810                if ($notice_rejetee>0) {
811                        print "<br /> ".$notice_rejetee." ".$msg['notices_invalides'];
812                }
813                printf ($msg[521], $nb_expl_ignores); /* ## exemplaire(s) ignoré(s) */
814            } else {
815                $formulaire="";
816                $script="";
817                printf ($msg[516], $nbtot_notice); /* There were <b>$nbtot_notice</b> notice(s) to load, everything is OK...</b> */
818                if ($notice_deja_presente==1) {
819                        printf ($msg[517], $notice_deja_presente); /*  <b>$notice_deja_presente</b> notice already in the database has been ignored... */
820                } elseif ($notice_deja_presente>1) {
821                        printf ($msg[518], $notice_deja_presente); /*  dont <b>$notice_deja_presente</b> notices already in the database have been ignored... */
822                }
823                if ($notice_rejetee>0) {
824                        print "<br /> ".$notice_rejetee." ".$msg['notices_invalides'];
825                }
826                printf ($msg[521], $nb_expl_ignores); /* ## exemplaire(s) ignoré(s) */
827                /* ajouter ici SELECT error_origin, error_text, count(*) FROM error_log group by error_origin, error_text */
828                $gen_liste_log="";
829                $array_isbn_doublons = array();
830                $datetime_import='';
831                $resultat_liste=pmb_mysql_query("SELECT error_origin, error_text, error_date, count(*) as nb_error FROM error_log where error_origin in ('expl_".addslashes(SESSid).".class','import_expl_".addslashes(SESSid).".inc','iimport_expl_".addslashes(SESSid).".inc','import_".addslashes(SESSid).".inc.php','import_".addslashes(SESSid).".inc','import_func_".addslashes(SESSid).".inc.php') group by error_origin, error_text" );
832                $nb_liste=pmb_mysql_num_rows($resultat_liste);
833                if ($nb_liste>0) {
834                    $gen_liste_log = "<br /><br /><b>".$msg[538]."</b><br />!!dbls_isbn!!<table border='1'>" ;
835                    $gen_liste_log.="<tr><th>".$msg[539]."</th><th>".$msg[540]."</th><th>".$msg[541]."</th></tr>";
836                    $i_log=0;
837                    while ($i_log<$nb_liste) {
838                        if (preg_match('`^'.$msg['542'].'(.*)\|\|(.*)\|\|(.*)$`',pmb_mysql_result($resultat_liste,$i_log,"error_text"),$out)) {
839                                for ($j=1;$j<=3;$j++) {
840                                        if ($tmp_isbn = trim($out[$j])) {
841                                                $tmp_isbn = "'".$tmp_isbn."'";
842                                                if ((!count($array_isbn_doublons))||(!in_array($tmp_isbn,$array_isbn_doublons))) {
843                                                        $array_isbn_doublons[] = $tmp_isbn;
844                                                }
845                                        }
846                                }
847                        }
848                        $gen_liste_log.="<tr>";
849                        $gen_liste_log.="<td>".pmb_mysql_result($resultat_liste,$i_log,"error_origin")."</td>" ;
850                        $gen_liste_log.="<td><b>".pmb_mysql_result($resultat_liste,$i_log,"error_text")."</b></td>" ;
851                        $gen_liste_log.="<td>".pmb_mysql_result($resultat_liste,$i_log,"nb_error")."</td>" ;
852                        $gen_liste_log.="</tr>" ;
853                        $datetime_import = pmb_mysql_result($resultat_liste,$i_log,"error_date");
854                        $i_log++;
855                    }
856                }
857                $gen_liste_log.="</table>\n" ;
858                if (count($array_isbn_doublons)) {
859                        $gen_liste_log = str_replace('!!dbls_isbn!!','<div class="hmenu">'.$msg['last_import_isbn_doublons_found'].'<span><a href="javascript:parent.location=\'../../catalog.php?categ=search&mode=8&option_show_notice_fille=&option_show_expl=\';">'.$msg['search_expl'].'</a></span></div>',$gen_liste_log);
860                } else {
861                        $gen_liste_log = str_replace('!!dbls_isbn!!','',$gen_liste_log);
862                }
863                print $gen_liste_log;
864                $_SESSION["last_import_isbn_doublons"] = json_encode(implode(',',$array_isbn_doublons));
865                $_SESSION["last_import_isbn_doublons_datetime"] = $datetime_import;
866                @unlink("$base_path/temp/liste_id".SESSid.".txt");
867            }
868            print $formulaire;
869            print $script;
870        } else {
871            // import de notices
872            if ($reste > 0 ) {
873                $formulaire="<form class='form-$current_module' name=\"load\" method=\"post\" action=\"iimport_expl.php\">\n";
874                $formulaire.="<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
875                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import\" />";
876                $formulaire.="<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"load\" />";
877                $formulaire.="<input type=\"hidden\" name=\"filename\" value=\"$filename\" />";
878                $formulaire.="<input type=\"hidden\" name=\"from_file\" value=\"$from_file\" />";
879                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_mandatory\" VALUE=\"$isbn_mandatory\" />\n";
880                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_dedoublonnage\" VALUE=\"$isbn_dedoublonnage\" />\n";
881                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"isbn_only\" VALUE=\"$isbn_only\" />\n";
882                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"statutnot\" VALUE=\"$statutnot\" />\n";
883                $formulaire.="<input type=\"hidden\" name=\"recharge\" value=\"YES\" />\n";
884                $formulaire.="<input type=\"hidden\" name=\"reste\" value=\"".($reste)."\" />\n";
885                $formulaire.="<input type=\"hidden\" name=\"nbtot_notice\" value=\"".($nbtot_notice)."\" />\n";
886                $formulaire.="<input type=\"hidden\" name=\"notice_deja_presente\" value=\"".($notice_deja_presente)."\" />\n";
887                $formulaire.="<input type=\"hidden\" name=\"notice_rejetee\" value=\"".($notice_rejetee)."\" />\n";
888                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"link_generate\" VALUE=\"$link_generate\" />\n";
889                $formulaire.="<INPUT TYPE=\"hidden\" NAME=\"que_faire\" VALUE=\"$que_faire\" />\n";
890                                $formulaire.= "<input type='hidden' name='authorities_notices' value='".$authorities_notices."' />\n";
891                $formulaire.= "<input type='hidden' name='authorities_default_origin' value='".$authorities_default_origin."' />\n";
892                $formulaire.= "<input type='hidden' name='import_force_notice_is_new' value='".$import_force_notice_is_new."' />\n";
893                $formulaire.= "<input type='hidden' name='notice_replace_links' value='".$notice_replace_links."' />\n";
894                                $formulaire.="</form>";
895               
896                //On enregistre les ids utilisés avant le rechargement
897                global $notices_crees, $notices_a_creer,$bulletins_crees,$bulletins_a_creer;
898                $tabimport_id['notices_existantes'] = $notices_crees;
899                $tabimport_id['notices_a_creer'] = $notices_a_creer;
900                $tabimport_id['bulletins_crees'] = $bulletins_crees;
901                $tabimport_id['bulletins_a_creer'] = $bulletins_a_creer;
902                $fo = fopen("$base_path/temp/liste_id".SESSid.".txt","w");               
903                                fwrite($fo,serialize($tabimport_id));   
904                $formulaire.="<script> setTimeout(\"document.load.submit()\",2000); </script>\n";
905                printf ($msg[509].$msg[513],$from_file, $reste, $nbtot_notice); /* File %s ... . Still %s notices to load (total = %s) ... */
906                if ($notice_deja_presente==1) {
907                        printf ($msg[514],$notice_deja_presente) ; /* <br />($notice_deja_presente notice already in the database has been ignored since the begining) */
908                } elseif ($notice_deja_presente>1) {
909                        printf ($msg[515],$notice_deja_presente) ; /* <br />($notice_deja_presente notices already in the database have been ignored since the begining) */
910                }
911                if ($notice_rejetee>0) {
912                        print "<br /> ".$notice_rejetee." ".$msg['notices_invalides'];
913                }
914            } else {
915                $formulaire="";
916                $script="";
917                printf ($msg[509].$msg[516], $from_file, $nbtot_notice); /* There were <b>$nbtot_notice</b> notice(s) to load, everything is OK...</b> */
918                if ($notice_deja_presente==1) {
919                        printf ($msg[517], $notice_deja_presente); /*  <b>$notice_deja_presente</b> notice already in the database has been ignored... */
920                } elseif ($notice_deja_presente>1) {
921                        printf ($msg[518], $notice_deja_presente); /*  dont <b>$notice_deja_presente</b> notices already in the database have been ignored... */
922                }
923                if ($notice_rejetee>0) {
924                        print "<br /> ".$notice_rejetee." ".$msg['notices_invalides'] ;
925                }
926                /* ajouter ici SELECT error_origin, error_text, count(*) FROM error_log group by error_origin, error_text */
927                $gen_liste_log="";
928                $array_isbn_doublons = array();
929                $datetime_import='';
930                $resultat_liste=pmb_mysql_query("SELECT error_origin, error_text, error_date, count(*) as nb_error FROM error_log where error_origin in ('expl_".addslashes(SESSid).".class','import_expl_".addslashes(SESSid).".inc','iimport_expl_".addslashes(SESSid).".inc','import_".addslashes(SESSid).".inc.php', 'import_".addslashes(SESSid).".inc','import_func_".addslashes(SESSid).".inc.php') group by error_origin, error_text" );
931                $nb_liste=pmb_mysql_num_rows($resultat_liste);
932                if ($nb_liste>0) {
933                    $gen_liste_log = "<br /><br /><b>".$msg[538]."</b><br />!!dbls_isbn!!<table width=\"100%\"  border='1'>" ;
934                    $gen_liste_log.="<tr><td>".$msg[539]."</td><td>".$msg[540]."</td><td>".$msg[541]."</td></tr>";
935                    $i_log=0;
936                    while ($i_log<$nb_liste) {
937                        if (preg_match('`^'.$msg['542'].'(.*)\|\|(.*)\|\|(.*)$`',pmb_mysql_result($resultat_liste,$i_log,"error_text"),$out)) {
938                                for ($j=1;$j<=3;$j++) {
939                                        if ($tmp_isbn = trim($out[$j])) {
940                                                $tmp_isbn = "'".$tmp_isbn."'";
941                                                if ((!count($array_isbn_doublons))||(!in_array($tmp_isbn,$array_isbn_doublons))) {
942                                                        $array_isbn_doublons[] = $tmp_isbn;
943                                                }
944                                        }
945                                }
946                        }
947                        $gen_liste_log.="<tr>";
948                        $gen_liste_log.="<td>".pmb_mysql_result($resultat_liste,$i_log,"error_origin")."</td>" ;
949                        $gen_liste_log.="<td><b>".pmb_mysql_result($resultat_liste,$i_log,"error_text")."</b></td>" ;
950                        $gen_liste_log.="<td>".pmb_mysql_result($resultat_liste,$i_log,"nb_error")."</td>" ;
951                        $gen_liste_log.="</tr>" ;
952                        $datetime_import = pmb_mysql_result($resultat_liste,$i_log,"error_date");
953                        $i_log++;
954                    }
955                }
956                $gen_liste_log.="</table>\n" ;
957                if (count($array_isbn_doublons)) {
958                        $gen_liste_log = str_replace('!!dbls_isbn!!','<div class="hmenu">'.$msg['last_import_isbn_doublons_found'].'<span><a href="javascript:parent.location=\'../../catalog.php?categ=search&mode=6\';">'.$msg['search_extended'].'</a></span></div>',$gen_liste_log);
959                } else {
960                        $gen_liste_log = str_replace('!!dbls_isbn!!','',$gen_liste_log);
961                }
962                print $gen_liste_log;
963                $_SESSION["last_import_isbn_doublons"] = json_encode(implode(',',$array_isbn_doublons));
964                $_SESSION["last_import_isbn_doublons_datetime"] = $datetime_import;
965                @unlink("$base_path/temp/liste_id".SESSid.".txt");
966            }
967
968                print $formulaire;
969                print $script;
970        }
971        break;
972    default:
973        $formulaire="<form class='form-$current_module' name=\"beforeupload\" method=\"post\" action=\"iimport_expl.php\" onsubmit=\"return false;\">";
974        $formulaire.="<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\" />";
975        $formulaire.="<INPUT NAME=\"action\" id=\"action\" TYPE=\"hidden\" value=\"beforeupload\" />";
976        $form_text="";
977        if ($sub == "import_expl"){
978                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_expl\" />";
979                $form_text=file_get_contents("$include_path/messages/help/$lang/import_expl.txt");
980        }else{
981                $formulaire.="<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import\" />";
982                $form_text=file_get_contents("$include_path/messages/help/$lang/import.txt");
983        }
984       
985        $formulaire.=str_replace(array("!!nom_fic!!","!!nom_bouton!!"),array(htmlentities($nom_fichier_transfert_ftp,ENT_QUOTES,$charset),htmlentities($msg["admin_import_notice_prechargement"],ENT_QUOTES,$charset)),$form_text);
986       
987        if(!$table_list_func_import){
988                if(file_exists("func_import_subst.xml")){
989                        $table_list_func_import=_parser_text_no_function_(file_get_contents("func_import_subst.xml"),"CATALOG");
990                }elseif(file_exists("func_import.xml")){
991                        $table_list_func_import=_parser_text_no_function_(file_get_contents("func_import.xml"),"CATALOG");
992                }
993        }       
994       
995        $code_js=$selecteur_fic="";
996        if(is_array($table_list_func_import["ITEM"]) && count($table_list_func_import["ITEM"])){
997                $incr=0;
998                $text_desc_func_import="";
999                $code_js.="<script type=\"text/javascript\">\n";
1000                $code_js.="var func_import_desc= new Array(); var func_import_value= new Array();\n";
1001                $selecteur_fic="<label class=\"etiquette\" for=\"".$name_func."\">".htmlentities($msg["admin_import_notice_choice"],ENT_QUOTES,$charset)."</label>\n";
1002                $selecteur_fic.="<select name=\"".$name_func."\" id=\"".$name_func."\" onChange=\"affiche_description();\" >\n";
1003                $selected_trouve="";
1004                foreach ( $table_list_func_import["ITEM"] as $value ) {
1005                        $code_js.="func_import_desc[$incr] = \"".htmlentities($value["DESCRIPTION"],ENT_QUOTES,$charset)."\";\n";
1006                        $code_js.="func_import_value[$incr] = \"".htmlentities(substr($value["FUNCTION"],0,-4),ENT_QUOTES,$charset)."\";\n";
1007                       
1008                        $selecteur_fic.="<option value=\"".htmlentities(substr($value["FUNCTION"],0,-4),ENT_QUOTES,$charset)."\" ";
1009                        if($func_import_model == $value["FUNCTION"]){
1010                                $selecteur_fic.="selected=\"selected\" ";
1011                                $selected_trouve=$value["FUNCTION"];
1012                                $text_desc_func_import=$value["DESCRIPTION"];
1013                        }
1014                        $selecteur_fic.=">".htmlentities($value["NAME"],ENT_QUOTES,$charset)."</option>\n";
1015                        $incr++;
1016                        }
1017                        if(!$selected_trouve || ($pmb_import_modele && $selected_trouve != $pmb_import_modele)){
1018                                $code_js.="func_import_desc[$incr] = \"\";\n";
1019                        $code_js.="func_import_value[$incr] = \"".htmlentities(substr($pmb_import_modele,0,-4),ENT_QUOTES,$charset)."\";\n";
1020                                $selecteur_fic.="<option value=\"".htmlentities(substr($pmb_import_modele,0,-4),ENT_QUOTES,$charset)."\" ";
1021                                if(!$selected_trouve){
1022                                        $selecteur_fic.="selected=\"selected\" ";
1023                                }
1024                               
1025                                $selecteur_fic.=">".htmlentities($msg["admin_import_notice_defaut"],ENT_QUOTES,$charset)."</option>\n";
1026                        }
1027                $selecteur_fic.="</select>&nbsp;&nbsp;&nbsp;\n";
1028               
1029                $code_js.="function affiche_description(){
1030                        var func_import=document.beforeupload.".$name_func.";
1031                                var mon_select=false;
1032                                var index_select = func_import.options[func_import.selectedIndex].value;
1033                                //console.log(document.getElementById('text_desc_func_import').innerHTML);
1034                                for (var i=0; i<func_import_value.length;i++){
1035                                        if(func_import_value[i] == index_select){
1036                                                document.getElementById('text_desc_func_import').innerHTML =func_import_desc[i];
1037                                        }
1038                                }
1039                }";
1040                $code_js.="</script>";
1041        }
1042       
1043        $selecteur_encodage="<label class=\"etiquette\" for=\"encodage_fic_source\" id=\"text_desc_encodage_fic_source\" name=\"text_desc_encodage_fic_source\">".htmlentities($msg["admin_import_encodage_fic_source"],ENT_QUOTES,$charset)."</label>
1044        <select name=\"encodage_fic_source\" id=\"encodage_fic_source\">
1045                        <option value=\"\" ".((!isset($encodage_fic_source) || !$encodage_fic_source) ? " selected=\"selected\" ": "").">".htmlentities($msg["admin_import_encodage_fic_source_undefine"],ENT_QUOTES,$charset)."</option>
1046                        <option value=\"iso5426\" ".(isset($encodage_fic_source) && ($encodage_fic_source == "iso5426") ? " selected=\"selected\" ": "").">".htmlentities($msg["admin_import_encodage_fic_source_iso5426"],ENT_QUOTES,$charset)."</option>
1047                        <option value=\"utf8\" ".(isset($encodage_fic_source) && ($encodage_fic_source == "utf8") ? " selected=\"selected\" ": "").">".htmlentities($msg["admin_import_encodage_fic_source_utf8"],ENT_QUOTES,$charset)."</option>
1048                        <option value=\"iso8859\" ".(isset($encodage_fic_source) && ($encodage_fic_source == "iso8859") ? " selected=\"selected\" ": "").">".htmlentities($msg["admin_import_encodage_fic_source_iso8859"],ENT_QUOTES,$charset)."</option>
1049                </select></br></br>";
1050       
1051        $formulaire.=$selecteur_fic;
1052        $formulaire.="<label class=\"etiquette\" for=\"".$name_func."\" id=\"text_desc_func_import\" name=\"text_desc_func_import\">".htmlentities($text_desc_func_import,ENT_QUOTES,$charset)."</label></br>\n";
1053        $formulaire.=$selecteur_encodage;
1054        $formulaire.="<INPUT type=\"button\" value=\"".htmlentities($msg["admin_import_notice_telechargement"],ENT_QUOTES,$charset)."\" class=\"bouton\" onclick=\"document.getElementById('action').value ='beforeupload';document.beforeupload.submit();\" />";
1055        $formulaire.="<INPUT type=\"button\" value=\"".htmlentities($msg["admin_import_notice_prechargement"],ENT_QUOTES,$charset)."\" class=\"bouton\" onclick=\"document.getElementById('action').value ='preload'; document.beforeupload.submit();\"/>";
1056        $formulaire.="</form>\n";
1057       
1058        $formulaire.=$code_js;
1059       
1060        print $formulaire;
1061        break;
1062    }
1063
1064print "</div></body></html>";
1065
Note: See TracBrowser for help on using the repository browser.