source: pmb4.2/trunk/fuentes/pmb/admin/import/import_skos.php @ 815

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

Initial release of pmb 4.2

  • Property svn:executable set to *
File size: 5.7 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: import_skos.php,v 1.2 2013-08-19 07:16:11 mbertin Exp $
6
7// définition du minimum nécéssaire
8$base_path="../..";                           
9$base_auth = "ADMINISTRATION_AUTH"; 
10$base_title = "";   
11require_once ("$base_path/includes/init.inc.php"); 
12
13
14// les requis pour import_skos.php ou ses sous modules
15require_once ("$class_path/rdf/rdf.class.php");
16
17$form_download_files="
18        <form class='form-$current_module' METHOD='post' ACTION=\"import_skos.php\"  ENCTYPE='multipart/form-data'>
19        <h3>".$msg["ontology_skos_admin_import_info"]."</h3>
20        <div class='form-contenu'>
21                <div class='row'>
22                        <div class='colonne_suite'>
23                                <!-- localisation -->
24                                <label class='etiquette' for='userfile'>".$msg["ontology_skos_admin_import_choose_files"]."</label>
25                                <input type='file' name='userfile[]' class='saisie-80em'  multiple=\"multiple\"/><br/>
26                        </div>
27                </div>
28                <div class='row'></div>
29        </div> 
30        <INPUT TYPE=\"submit\" class='bouton' name=\"upload\" value=\"".$msg[502]."\">
31        <INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\">
32        <INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_skos\">
33        <INPUT NAME=\"action\" TYPE=\"hidden\" value=\"beforeupload\">
34        </form>
35";
36               
37switch ($action) {
38        case 'beforeupload':
39                if(is_array($_FILES['userfile']['tmp_name']) && count($_FILES['userfile']['tmp_name']) && trim($_FILES['userfile']['tmp_name'][0])){
40                        $files=array();
41                        foreach ( $_FILES['userfile']['tmp_name'] as $key => $tmp_file ) {
42                        $to_file = $base_path.'/temp/'.basename($tmp_file);
43                        $from_file = $_FILES['userfile']['name'][$key];
44                        if ($to_file=="") {
45                                    printf ($msg[503],$from_file); /* wrong permissions to copy the file %s ... Contact your admin... */
46                                    break;
47                                }
48                                if (!@move_uploaded_file($tmp_file,$to_file)) {
49                                    printf ($msg[504],$from_file); /* Fail to copy %s, Contact your admin... */
50                                    break;
51                                }
52                                $files[]=array("name"=>$from_file,"location"=>$to_file);
53                        }
54                        echo "<br/><br/><br/>".$msg["ontology_skos_admin_import_beforeupload_files"]."<br/>"; /* File transfered, Loading is about to go on */
55                        print "<form class='form-$current_module' METHOD=\"post\"  NAME=\"afterupload\" ACTION=\"import_skos.php\">";
56                        print "<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\">";
57                        print "<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_skos\">";
58                        print "<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"afterupload\">";
59                        print "<INPUT NAME=\"files_post\" TYPE=\"hidden\" value=\"".urlencode(serialize($files))."\">";
60                        print "<INPUT NAME=\"count_files\" TYPE=\"hidden\" value=\"".count($files)."\">";
61                        print "</form>";
62                        print "<SCRIPT>setTimeout(\"document.afterupload.submit()\",2000);</SCRIPT>";
63                        break;
64                }
65                //Si rien n'a été sélectionné on réafiche la page de chargement
66                print $form_download_files;
67        case 'afterupload':
68                $files=unserialize(urldecode($files_post));
69                if($logs_serialize){
70                        $logs_imports=unserialize(urldecode($logs_serialize));
71                }else{
72                        $logs_imports=array();
73                }
74                $file=array_shift($files);
75               
76                $p = new sparql();
77                $res=$p->load_file($file["location"]);
78                if(!$res){
79                        $logs_imports[]=array("result" => "ko", "msg" => $msg["ontology_skos_admin_import_error"].$file["name"]);
80                }else{
81                        $logs_imports[]=array("result" => "ok", "msg" => $res.$msg["ontology_skos_admin_import_ok"].$file["name"]);
82                }
83                unlink($file["location"]);
84               
85                if(count($files)){
86                        echo "<br/><br/><br/>";
87                        printf ($msg["ontology_skos_admin_import_afterupload_files"], count($files), $count_files);
88                        echo "<br/>";
89                        print "<form class='form-$current_module' METHOD=\"post\"  NAME=\"afterupload\" ACTION=\"import_skos.php\">";
90                        print "<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\">";
91                        print "<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_skos\">";
92                        print "<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"afterupload\">";
93                        print "<INPUT NAME=\"files_post\" TYPE=\"hidden\" value=\"".urlencode(serialize($files))."\">";
94                        print "<INPUT NAME=\"logs_serialize\" TYPE=\"hidden\" value=\"".urlencode(serialize($logs_imports))."\">";
95                        print "<INPUT NAME=\"count_files\" TYPE=\"hidden\" value=\"".$count_files."\">";
96                        print "</form>";
97                        print "<SCRIPT>setTimeout(\"document.afterupload.submit()\",2000);</SCRIPT>";
98                        break;
99                }else{
100                        print "<form class='form-$current_module' METHOD=\"post\"  NAME=\"load\" ACTION=\"import_skos.php\">";
101                        print "<INPUT NAME=\"categ\" TYPE=\"hidden\" value=\"import\">";
102                        print "<INPUT NAME=\"sub\" TYPE=\"hidden\" value=\"import_skos\">";
103                        print "<INPUT NAME=\"action\" TYPE=\"hidden\" value=\"load\">";
104                        print "<INPUT NAME=\"files_post\" TYPE=\"hidden\" value=\"".urlencode(serialize($files))."\">";
105                        print "<INPUT NAME=\"logs_serialize\" TYPE=\"hidden\" value=\"".urlencode(serialize($logs_imports))."\">";
106                        print "<INPUT NAME=\"count_files\" TYPE=\"hidden\" value=\"".$count_files."\">";
107                        print "</form>";
108                        print "<SCRIPT>document.load.submit();</SCRIPT>";
109                        break;
110                }
111                break;
112        case "load":
113                $logs_imports=unserialize(urldecode($logs_serialize));
114                echo "<br/><br/><br/>";
115                printf ($msg["ontology_skos_admin_import_load_files"],$count_files);
116                echo "<br/>";
117                foreach ( $logs_imports as $key => $value ) {
118                if($value["result"] == "ok"){
119                        echo "<br/><div>".htmlentities($value["msg"],ENT_QUOTES,$charset)."</div>";
120                        unset($logs_imports[$key]);
121                }
122                }
123                if(count($logs_imports)){
124                        echo "<br/><br/><br/>";
125                        foreach ( $logs_imports as $value ) {
126                        echo "<div class='erreur'>".htmlentities($value["msg"],ENT_QUOTES,$charset)."</div><br/>";
127                        }
128                }
129               
130                break;
131        default:
132                print $form_download_files;
133                break;
134}
135?>
136
Note: See TracBrowser for help on using the repository browser.