Пример #1
0
function explnum_update($f_explnum_id, $f_notice, $f_bulletin, $f_nom, $f_url, $retour, $conservervignette = 0, $f_statut_chk = 0)
{
    global $dbh, $msg, $scanned_image, $scanned_image_ext;
    global $current_module, $pmb_explnum_statut;
    global $ck_index, $scanned_texte, $up_place, $path, $id_rep;
    create_tableau_mimetype();
    if ($f_explnum_id) {
        $requete = "UPDATE explnum SET ";
        $limiter = " WHERE explnum_id='{$f_explnum_id}' ";
    } else {
        $requete = "INSERT INTO explnum SET ";
        $limiter = "";
    }
    print "<div class=\"row\"><h1>{$msg['explnum_doc_associe']}</h1>";
    $erreur = 0;
    $userfile_name = $_FILES['f_fichier']['name'];
    $userfile_temp = $_FILES['f_fichier']['tmp_name'];
    $userfile_moved = basename($userfile_temp);
    $vignette_name = $_FILES['f_vignette']['name'];
    $vignette_temp = $_FILES['f_vignette']['tmp_name'];
    $vignette_moved = basename($vignette_temp);
    $userfile_name = preg_replace("/ |'|\\|\"|\\//m", "_", $userfile_name);
    $vignette_name = preg_replace("/ |'|\\|\"|\\//m", "_", $vignette_name);
    $userfile_ext = '';
    if ($userfile_name) {
        $userfile_ext = extension_fichier($userfile_name);
    }
    if ($f_explnum_id) {
        // modification
        // si $userfile_name est vide on ne fera pas la maj du data
        if ($scanned_image || $userfile_name) {
            //Avant tout, y-a-t-il une image extérieure ?
            if ($scanned_image) {
                //Si oui !
                $tmpid = str_replace(" ", "_", microtime());
                $fp = @fopen("./temp/scanned_{$tmpid}." . $scanned_image_ext, "w+");
                if ($fp) {
                    fwrite($fp, base64_decode($scanned_image));
                    $nf = 1;
                    $part_name = "scanned_image_" . $nf;
                    global ${$part_name};
                    while (${$part_name}) {
                        fwrite($fp, base64_decode(${$part_name}));
                        $nf++;
                        $part_name = "scanned_image_" . $nf;
                        global ${$part_name};
                    }
                    fclose($fp);
                    $fic = 1;
                    $maj_data = 1;
                    $userfile_name = "scanned_{$tmpid}." . $scanned_image_ext;
                    $userfile_ext = $scanned_image_ext;
                    $userfile_moved = $userfile_name;
                    $f_url = "";
                } else {
                    $erreur++;
                }
            } else {
                if ($userfile_name) {
                    if (move_uploaded_file($userfile_temp, './temp/' . $userfile_moved)) {
                        $fic = 1;
                        $f_url = "";
                        $maj_data = 1;
                        move_uploaded_file($vignette_temp, './temp/' . $vignette_moved);
                    } else {
                        $erreur++;
                    }
                }
            }
            $contenu_vignette = construire_vignette($vignette_moved, $userfile_moved);
            $maj_vignette = 1;
            $mimetype = trouve_mimetype($userfile_moved, $userfile_ext);
            if (!$mimetype) {
                $mimetype = "application/data";
            }
            $maj_mimetype = 1;
        } else {
            if ($vignette_name) {
                move_uploaded_file($vignette_temp, './temp/' . $vignette_moved);
                $contenu_vignette = construire_vignette($vignette_moved, $userfile_moved);
                $maj_vignette = 1;
            }
            if ($f_url) {
                move_uploaded_file($vignette_temp, './temp/' . $vignette_moved);
                $contenu_vignette = construire_vignette($vignette_moved, $userfile_moved);
                $maj_vignette = 1;
                $mimetype = "URL";
                $maj_mimetype = 1;
                $contenu = "";
                $maj_data = 1;
            }
        }
    } else {
        // creation
        //Y-a-t-il une image exterieure ?
        if ($scanned_image) {
            //Si oui !
            $tmpid = str_replace(" ", "_", microtime());
            $fp = @fopen("./temp/scanned_{$tmpid}." . $scanned_image_ext, "w+");
            if ($fp) {
                fwrite($fp, base64_decode($scanned_image));
                $nf = 1;
                $part_name = "scanned_image_" . $nf;
                global ${$part_name};
                while (${$part_name}) {
                    fwrite($fp, base64_decode(${$part_name}));
                    $nf++;
                    $part_name = "scanned_image_" . $nf;
                    global ${$part_name};
                }
                fclose($fp);
                $fic = 1;
                $maj_data = 1;
                $userfile_name = "scanned_{$tmpid}." . $scanned_image_ext;
                $userfile_ext = $scanned_image_ext;
                $userfile_moved = $userfile_name;
                $f_url = "";
            } else {
                $erreur++;
            }
        } else {
            if (move_uploaded_file($userfile_temp, './temp/' . $userfile_moved)) {
                $fic = 1;
                $f_url = "";
                $maj_data = 1;
            } elseif (!$f_url) {
                $erreur++;
            }
        }
        move_uploaded_file($vignette_temp, './temp/' . $vignette_moved);
        $contenu_vignette = construire_vignette($vignette_moved, $userfile_moved);
        $maj_vignette = 1;
        if (!$f_url && !$fic) {
            $erreur++;
        }
        if ($f_url) {
            $mimetype = "URL";
        } else {
            $mimetype = trouve_mimetype($userfile_moved, $userfile_ext);
            if (!$mimetype) {
                $mimetype = "application/data";
            }
        }
        $maj_mimetype = 1;
    }
    $upfolder = new upload_folder($id_rep);
    if ($fic) {
        $is_upload = false;
        if (!$f_explnum_id && ($path && $up_place)) {
            if ($upfolder->isHashing()) {
                $rep = $upfolder->hachage($userfile_name);
                @mkdir($rep);
                $path = $upfolder->formate_path_to_nom($rep);
                $file_name = $rep . $userfile_name;
            } else {
                $file_name = $upfolder->formate_nom_to_path($path) . $userfile_name;
            }
            $path = $upfolder->formate_path_to_save($path);
            $file_name = $upfolder->encoder_chaine($file_name);
            rename('./temp/' . $userfile_moved, $file_name);
            $is_upload = true;
        } else {
            $file_name = './temp/' . $userfile_moved;
        }
        $fp = fopen($file_name, "r");
        $contenu = fread($fp, filesize($file_name));
        if (!$fp || $contenu == "") {
            $erreur++;
        }
        fclose($fp);
    }
    //Dans le cas d'une modification, on regarde si il y a eu un déplacement du stockage
    if ($f_explnum_id) {
        $explnum = new explnum($f_explnum_id);
        if ($explnum->isEnBase() && ($up_place && $path)) {
            $explnum->remove_from_base($path, $id_rep);
            $contenu = "";
            $is_upload = false;
        } elseif ($explnum->isEnUpload() && !$up_place) {
            $contenu = $explnum->remove_from_upload();
            $id_rep = 0;
            $path = "";
        } elseif ($explnum->isEnUpload() && ($up_place && $path)) {
            $path = $explnum->change_rep_upload($upfolder, $upfolder->formate_nom_to_path($path));
            $path = $upfolder->formate_path_to_save($upfolder->formate_path_to_nom($path));
        }
    }
    if (!$f_nom) {
        if ($userfile_name) {
            $f_nom = $userfile_name;
        } elseif ($f_url) {
            $f_nom = $f_url;
        } else {
            $f_nom = "-x-x-x-x-";
        }
    }
    if ($userfile_name && !$is_upload) {
        unlink($file_name);
    }
    if ($vignette_name) {
        unlink('./temp/' . $vignette_moved);
    }
    if (!$erreur) {
        $requete .= " explnum_notice='{$f_notice}'";
        $requete .= ", explnum_bulletin='{$f_bulletin}'";
        $requete .= ", explnum_nom='{$f_nom}'";
        $requete .= ", explnum_url='{$f_url}'";
        if ($maj_mimetype) {
            $requete .= ", explnum_mimetype='" . $mimetype . "' ";
        }
        if ($maj_data) {
            if (!$is_upload) {
                $requete .= ", explnum_data='" . addslashes($contenu) . "'";
            }
            $requete .= ", explnum_nomfichier='" . addslashes($userfile_name) . "'";
            $requete .= ", explnum_extfichier='" . addslashes($userfile_ext) . "'";
        }
        if ($maj_vignette && !$conservervignette) {
            $requete .= ", explnum_vignette='" . addslashes($contenu_vignette) . "'";
        }
        if ($pmb_explnum_statut == '1') {
            $requete .= ", explnum_statut='" . $f_statut_chk . "'";
        }
        $requete .= ", explnum_repertoire='" . $id_rep . "'";
        $requete .= ", explnum_path='" . $path . "'";
        $requete .= $limiter;
        pmb_mysql_query($requete, $dbh);
        //Indexation du document
        global $pmb_indexation_docnum;
        if ($pmb_indexation_docnum) {
            if (!$f_explnum_id && $ck_index) {
                $id_explnum = pmb_mysql_insert_id();
                $indexation = new indexation_docnum($id_explnum, $scanned_texte);
                $indexation->indexer();
            } elseif ($f_explnum_id && $ck_index) {
                $indexation = new indexation_docnum($f_explnum_id, $scanned_texte);
                $indexation->indexer();
            } elseif ($f_explnum_id && !$ck_index) {
                $indexation = new indexation_docnum($f_explnum_id);
                $indexation->desindexer();
            }
        }
        // on reaffiche l'ISBD
        print "<div class='row'><div class='msg-perio'>" . $msg['maj_encours'] . "</div></div>";
        $id_form = md5(microtime());
        if (pmb_mysql_error()) {
            echo "MySQL error : " . pmb_mysql_error();
            print "\n\t\t\t\t<form class='form-{$current_module}' name=\"dummy\" method=\"post\" action=\"{$retour}\" >\n\t\t\t\t\t<input type='submit' class='bouton' name=\"id_form\" value=\"Ok\">\n\t\t\t\t\t</form>";
            print "</div>";
            exit;
        }
        print "\n\t\t<form class='form-{$current_module}' name=\"dummy\" method=\"post\" action=\"{$retour}\" style=\"display:none\">\n\t\t\t<input type=\"hidden\" name=\"id_form\" value=\"{$id_form}\">\n\t\t\t</form>";
        print "<script type=\"text/javascript\">document.dummy.submit();</script>";
    } else {
        eval("\$bid=\"" . $msg['explnum_erreurupload'] . "\";");
        print "<div class='row'><div class='msg-perio'>" . $bid . "</div></div>";
        print "\n\t\t\t<form class='form-{$current_module}' name=\"dummy\" method=\"post\" action=\"{$retour}\" >\n\t\t\t\t<input type='submit' class='bouton' name=\"id_form\" value=\"Ok\">\n\t\t\t</form>";
    }
    print "</div>";
}
Пример #2
0
 function show_form_task($planificateur_id = "")
 {
     global $charset, $base_path, $msg;
     global $planificateur_form, $act, $type_task_id, $subaction;
     foreach ($this->types_taches as $type) {
         if ($type->id_type == $type_task_id) {
             $comment = $type->comment;
             $name = $type->name;
             $dir_upload_boolean = $type->dir_upload_boolean;
         }
     }
     // Inclusion de la classe spécifique
     if (is_file($base_path . '/admin/planificateur/' . $name . '/' . $name . '.class.php')) {
         require_once $base_path . '/admin/planificateur/' . $name . '/' . $name . '.class.php';
         eval("\$a_task=new " . $name . "();");
         //Récupération des données du formulaire
         if ($subaction == "change") {
             global $task_name, $task_desc, $form_users, $task_active, $id_rep, $path;
             global $task_perio_heure, $task_perio_min, $chkbx_task_quotidien, $chkbx_task_hebdo, $chkbx_task_mensuel;
             global $timeout, $radio_histo_day_number, $histo_day, $histo_number, $restart_on_failure, $alert_mail_on_failure, $mail_on_failure;
             $libelle_tache = stripslashes($task_name);
             $desc_tache = stripslashes($task_desc);
             $perio_heure = $task_perio_heure;
             $statut = $task_active;
             $rep_upload = $id_rep ? $id_rep : "";
             $chemin_upload = $path ? $path : "";
             $perio_heure = $task_perio_heure;
             $perio_minute = $task_perio_min;
             $perio_jour_mois = $chkbx_task_quotidien;
             $perio_jour = $chkbx_task_hebdo;
             $perio_mois = $chkbx_task_mensuel;
             $param["timeout"] = $timeout;
             $param["histo_day"] = $histo_day;
             $param["histo_number"] = $histo_number;
             $param["restart_on_failure"] = $restart_on_failure;
             $param["alert_mail_on_failure"] = $alert_mail_on_failure . ($mail_on_failure ? "," . $mail_on_failure : "");
         } else {
             //Récupération des données de la base
             $a_task->fetch_global_properties();
             $tab_properties = $a_task->get_property_task_bdd($planificateur_id);
             if (isset($tab_properties)) {
                 if (is_array($tab_properties)) {
                     foreach ($tab_properties as $atab_properties => $atab_propertiesv) {
                         //							global $$atab_properties;
                         ${$atab_properties} = $atab_propertiesv;
                     }
                 }
             }
         }
         //form spécifique
         $form_specific_task = $a_task->show_form($param);
     } else {
         $form_specific_task = "";
     }
     $planificateur_form = str_replace("!!script_js!!", "\n\t\t\t<script type='text/javascript' src='./javascript/select.js'></script>\n\t\t\t<script type='text/javascript' src='./javascript/upload.js'></script>", $planificateur_form);
     $planificateur_form = str_replace("!!submit_action!!", "return checkForm();", $planificateur_form);
     $planificateur_form = str_replace("!!libelle_type_task!!", $comment, $planificateur_form);
     $planificateur_form = str_replace("!!task_name!!", htmlentities($libelle_tache, ENT_QUOTES, $charset), $planificateur_form);
     $planificateur_form = str_replace("!!task_desc!!", htmlentities($desc_tache, ENT_QUOTES, $charset), $planificateur_form);
     $rqt_user = mysql_query("select esuser_id, esuser_username from es_esusers");
     $form_users = "<select name='form_users'>";
     while ($row = mysql_fetch_object($rqt_user)) {
         if ($row->esuser_id == $num_user) {
             $form_users .= "<option value='" . $row->esuser_id . "' selected>" . $row->esuser_username . "</option>";
         } else {
             $form_users .= "<option value='" . $row->esuser_id . "'>" . $row->esuser_username . "</option>";
         }
     }
     $form_users .= "</select>";
     if (mysql_num_rows($rqt_user) == 0) {
         $form_users .= "* " . $msg["planificateur_task_users_unknown"];
     }
     $planificateur_form = str_replace("!!task_users!!", $form_users, $planificateur_form);
     $planificateur_form = str_replace("!!task_statut!!", "<input type='checkbox' name='task_active' id='task_active' value='" . $statut . "' " . ($statut != "0" ? " checked " : "''") . " onchange='changeStatut();'/>", $planificateur_form);
     //ce type de tâche nécessite-t-il d'un répertoire d'upload pour les documents numériques?
     if ($dir_upload_boolean != "0") {
         $up = new upload_folder($rep_upload);
         if ($subaction == 'change') {
             $nom_chemin = $up->formate_path_to_nom($chemin_upload);
         } else {
             $nom_chemin = $up->formate_nom_to_path($up->repertoire_nom . $path_upload);
         }
         $planificateur_form = str_replace("!!div_upload!!", "<div class='row'>\n\t\t\t\t<div class='colonne3'><label for='timeout'/>" . $msg["print_numeric_ex_title"] . "</label></div>\n\t\t\t\t\t\t<div class='colonne_suite'>\n\t\t\t\t\t\t\t" . $msg["planificateur_upload"] . " : \n\t\t\t\t\t\t\t<input type='text' name='path' id='path' value='!!path!!' class='saisie-50emr' READONLY />\n\t\t\t\t\t\t\t<input type='button' id='upload_path' class='bouton' onclick='upload_openFrame(event)' value='...' name='upload_path' />\n\t\t\t\t\t\t\t<input id='id_rep' type='hidden' value='!!id_rep!!' name='id_rep' /> \n\t\t\t\t\t\t</div>\n\t\t\t\t</div>", $planificateur_form);
     } else {
         $planificateur_form = str_replace("!!div_upload!!", "", $planificateur_form);
     }
     $planificateur_form = str_replace('!!path!!', htmlentities($nom_chemin, ENT_QUOTES, $charset), $planificateur_form);
     $planificateur_form = str_replace('!!id_rep!!', htmlentities($rep_upload, ENT_QUOTES, $charset), $planificateur_form);
     $planificateur_form = str_replace("!!task_perio_heure!!", "<input type='text' id='task_perio_heure' name='task_perio_heure' value='" . $perio_heure . "' class='saisie-5em'/>", $planificateur_form);
     $planificateur_form = str_replace("!!task_perio_min!!", "<input type='text' id='task_perio_min' name='task_perio_min' value='" . $perio_minute . "' class='saisie-5em'/>", $planificateur_form);
     $planificateur_form = str_replace("!!help!!", "<a onclick='openPopUp(\"./admin/planificateur/help.php?action_help=configure_time\",\"help\",500,600,-2,-2,\"scrollbars=yes,menubar=0\"); w.focus(); return false;' href='#'>\n\t\t\t<img border='0' align='center' title='Aide...' alt='Aide...' src='" . $base_path . "/images/aide.gif' /></a>", $planificateur_form);
     $perio_quotidien .= "<input type='checkbox' id='chkbx_task_quotidien_0' name='chkbx_task_quotidien[]'  value='*' " . ($perio_jour_mois[0] == '*' ? "checked" : "''") . " onchange='changePerio(\"*\",\"chkbx_task_quotidien\",31);'> " . $msg["planificateur_task_all_days_of_month"] . "</input>";
     for ($i = 1; $i <= 31; $i++) {
         $cochee = false;
         for ($j = 0; $j < sizeof($perio_jour_mois); $j++) {
             if ($perio_jour_mois[$j] == $i) {
                 $cochee = true;
             }
         }
         $perio_quotidien .= "<input type='checkbox' id='chkbx_task_quotidien_" . $i . "' name='chkbx_task_quotidien[]'  value='" . $i . "' " . ($cochee == true ? "checked" : "''") . " onchange='changePerio({$i},\"chkbx_task_quotidien\",31);'/> " . $i . " ";
         if ($i == 15) {
             $perio_quotidien .= "<br />";
         }
     }
     $planificateur_form = str_replace("!!task_perio_quotidien!!", $perio_quotidien, $planificateur_form);
     $perio_hebdo .= "<input type='checkbox' id='chkbx_task_hebdo_0' name='chkbx_task_hebdo[]'  value='*' " . ($perio_jour[0] == '*' ? "checked" : "''") . " onchange='changePerio(\"*\",\"chkbx_task_hebdo\",7);'> " . $msg["planificateur_task_all_days"] . "</input>";
     for ($i = 1; $i <= 7; $i++) {
         $cochee = false;
         for ($j = 0; $j < sizeof($perio_jour); $j++) {
             if ($perio_jour[$j] == $i) {
                 $cochee = true;
             }
         }
         $perio_hebdo .= "<input type='checkbox' id='chkbx_task_hebdo_" . $i . "' name='chkbx_task_hebdo[]'  value='" . $i . "' " . ($cochee == true ? "checked" : "''") . " onchange='changePerio({$i},\"chkbx_task_hebdo\",7);'/> " . $msg["week_days_{$i}"];
         if ($i == 3) {
             $perio_hebdo .= "<br />";
         }
     }
     $planificateur_form = str_replace("!!task_perio_hebdo!!", $perio_hebdo, $planificateur_form);
     $perio_mensuel .= "<input type='checkbox' id='chkbx_task_mensuel_0' name='chkbx_task_mensuel[]'  value='*' " . ($perio_mois[0] == '*' ? " checked " : "''") . " onchange='changePerio(\"*\",\"chkbx_task_mensuel\",12);'> " . $msg["planificateur_task_all_months"] . "</input>";
     for ($i = 1; $i <= 12; $i++) {
         $cochee = false;
         for ($j = 0; $j < sizeof($perio_mois); $j++) {
             if ($perio_mois[$j] == $i) {
                 $cochee = true;
             }
         }
         $perio_mensuel .= "<input type='checkbox' id='chkbx_task_mensuel_" . $i . "' name='chkbx_task_mensuel[]'  value='" . $i . "' " . ($cochee == true ? "checked" : "''") . " onchange='changePerio({$i},\"chkbx_task_mensuel\",12);'> " . ucfirst($msg[$i + 1005]) . "</input>";
         if ($i == 6) {
             $perio_mensuel .= "<br />";
         }
     }
     $planificateur_form = str_replace("!!task_perio_mensuel!!", $perio_mensuel, $planificateur_form);
     $planificateur_form = str_replace("!!timeout!!", $param["timeout"], $planificateur_form);
     $planificateur_form = str_replace("!!histo_day_checked!!", $param["histo_day"] != "" ? " checked " : "", $planificateur_form);
     $planificateur_form = str_replace("!!histo_number_checked!!", $param["histo_number"] != "" ? " checked " : "", $planificateur_form);
     $planificateur_form = str_replace("!!histo_day!!", $param["histo_day"], $planificateur_form);
     $planificateur_form = str_replace("!!histo_day_visible!!", $param["histo_day"] == "" ? "disabled" : "", $planificateur_form);
     $planificateur_form = str_replace("!!histo_number!!", $param["histo_number"], $planificateur_form);
     $planificateur_form = str_replace("!!histo_number_visible!!", $param["histo_number"] == "" ? "disabled" : "", $planificateur_form);
     $planificateur_form = str_replace("!!restart_on_failure_checked!!", $param["restart_on_failure"] ? " checked " : "", $planificateur_form);
     $params_alert_mail = explode(",", $param["alert_mail_on_failure"]);
     $planificateur_form = str_replace("!!alert_mail_on_failure_checked!!", $params_alert_mail[0] ? " checked " : "", $planificateur_form);
     $planificateur_form = str_replace("!!mail_on_failure!!", $params_alert_mail[1], $planificateur_form);
     //Inclusion du formulaire spécifique au type de tâche
     $planificateur_form = str_replace("!!specific_form!!", $form_specific_task, $planificateur_form);
     if ($act == "task_duplicate") {
         $planificateur_id = 0;
     }
     if (!$planificateur_id) {
         $bt_save = $base_path . "/admin.php?categ=planificateur&sub=manager&act=task&type_task_id=" . $type_task_id;
         $bt_duplicate = "";
         $bt_suppr = "";
     } else {
         $bt_save = $base_path . "/admin.php?categ=planificateur&sub=manager&act=task&type_task_id=" . $type_task_id . "&planificateur_id=" . $planificateur_id;
         $bt_duplicate = "<input type='button' class='bouton' value='" . $msg["tache_duplicate_bouton"] . "' onclick='document.location=\"./admin.php?categ=planificateur&sub=manager&act=task_duplicate&type_task_id=" . $type_task_id . "&planificateur_id=" . $planificateur_id . "\"' />";
         $bt_suppr = "<input type='button' class='bouton' value='" . $msg["63"] . "' onClick='location.href=\"{$base_path}/admin.php?categ=planificateur&sub=manager&act=task_del&type_task_id={$type_task_id}&planificateur_id=" . $planificateur_id . "\"'/>";
     }
     $planificateur_form = str_replace("!!bt_save!!", $bt_save, $planificateur_form);
     $planificateur_form = str_replace("!!bt_duplicate!!", $bt_duplicate, $planificateur_form);
     $planificateur_form = str_replace("!!bt_supprimer!!", $bt_suppr, $planificateur_form);
     return $planificateur_form;
 }
Пример #3
0
 function analyse_multifile()
 {
     global $id_rep;
     create_tableau_mimetype();
     $repup = new upload_folder($id_rep);
     if (is_array($this->unzipped_files) && count($this->unzipped_files)) {
         for ($i = 0; $i < sizeof($this->unzipped_files); $i++) {
             $this->infos_docnum['userfile_name'] = $this->unzipped_files[$i]['nom'];
             if ($repup->isHashing()) {
                 $hashname = $repup->hachage($this->infos_docnum['userfile_name']);
                 $chemin = $repup->formate_path_to_save($repup->formate_path_to_nom($hashname));
             } else {
                 $chemin = $repup->formate_path_to_save($this->unzipped_files[$i]["chemin"]);
             }
             if ($this->unzipped_files[$i]['base']) {
                 $this->infos_docnum['contenu'] = file_get_contents($this->unzipped_files[$i]['chemin']);
                 $this->infos_docnum['path'] = '';
             } else {
                 $this->infos_docnum['contenu'] = '';
                 $this->infos_docnum['path'] = $chemin;
             }
             $ext = '';
             if ($this->infos_docnum['userfile_name']) {
                 $ext = extension_fichier($this->infos_docnum['userfile_name']);
                 $this->infos_docnum['userfile_ext'] = $ext;
             }
             if ($this->unzipped_files[$i]['base']) {
                 $this->infos_docnum['contenu_vignette'] = construire_vignette("", $this->infos_docnum['userfile_name']);
             } else {
                 if ($repup->isHashing()) {
                     $this->infos_docnum['contenu_vignette'] = construire_vignette("", $repup->encoder_chaine($hashname . $this->infos_docnum['userfile_name']));
                 } else {
                     $this->infos_docnum['contenu_vignette'] = construire_vignette("", $repup->encoder_chaine($repup->formate_nom_to_path($this->unzipped_files[$i]['chemin']) . $this->infos_docnum['userfile_name']));
                 }
             }
             $mimetype = trouve_mimetype($this->unzipped_files[$i]['chemin'], $this->infos_docnum['userfile_ext']);
             if (!$mimetype) {
                 $mimetype = "application/data";
             }
             $this->infos_docnum['mime'] = $mimetype;
             if ($this->unzipped_files[$i]['base']) {
                 unlink($this->unzipped_files[$i]['chemin']);
             }
             if ($mimetype == 'URL') {
                 $this->infos_docnum['url'] = $this->unzipped_files[$i]['nom'];
                 $this->infos_docnum['nom'] = '';
             } else {
                 $this->infos_docnum['nom'] = $this->unzipped_files[$i]['nom'];
                 $this->infos_docnum['url'] = '';
             }
             $this->update();
             $this->explnum_id = 0;
         }
     }
 }