exit(']¤[' . '<tr>' . $retour_cellules_non . '<td><label class="erreur">Erreur : ' . html($fichier_nom) . ' contient une sauvegarde plus récente que celle supportée par cette installation ! Il faut mettre à jour SACoche.</label></td>' . '</tr>'); } // Insérer l'enregistrement dans la base du webmestre // Créer le fichier de connexion de la base de données de la structure // Créer la base de données de la structure // Créer un utilisateur pour la base de données de la structure et lui attribuer ses droits $base_id = Webmestre::ajouter_structure($import_id, $geo_id, $uai, $localisation, $denomination, $contact_nom, $contact_prenom, $contact_courriel, $date); // Créer les dossiers de fichiers temporaires par établissement foreach (FileSystem::$tab_dossier_tmp_structure as $dossier) { FileSystem::creer_dossier($dossier . $base_id); FileSystem::ecrire_fichier_index($dossier . $base_id); } // Charger les paramètres de connexion à cette base afin de pouvoir y effectuer des requêtes charger_parametres_mysql_supplementaires($base_id); // Restaurer des fichiers de svg et mettre la base à jour si besoin. $texte_etape = restaurer_tables_base_etablissement($dossier_temp_sql, 0); // Supprimer le dossier temporaire FileSystem::supprimer_dossier($dossier_temp_sql); // Retour du succès, appel suivant $retour_cellules_oui = '<td class="nu"><input type="checkbox" name="f_ids" value="' . $base_id . '" /></td><td class="label">' . $base_id . '</td><td class="label">' . html($localisation . ' | ' . $denomination . ' [' . $uai . ']') . '</td><td class="label">' . html($contact_nom . ' ' . $contact_prenom . ' (' . $contact_courriel . ')') . '</td>'; exit(']¤[' . '<tr>' . $retour_cellules_oui . '<td class="label"><label class="valide">' . $texte_etape . ' avec succès.</label></td>' . '</tr>'); } elseif ($action == 'importer' && $num && $max && $num == $max) { // Supprimer les fichiers zip des bases foreach ($_SESSION['tab_info'] as $key => $tab_infos) { FileSystem::supprimer_fichier(CHEMIN_DOSSIER_DUMP . $tab_infos['fichier_nom'], TRUE); } // Game over unset($_SESSION['datetime'], $_SESSION['alea'], $_SESSION['tab_info']); exit(']¤[' . 'ok'); } // ////////////////////////////////////////////////////////////////////////////////////////////////////
// //////////////////////////////////////////////////////////////////////////////////////////////////// // Restaurer la base // //////////////////////////////////////////////////////////////////////////////////////////////////// if( ($action=='restaurer') && $etape ) { if($etape==1) { // Bloquer l'application LockAcces::bloquer_application('automate',$_SESSION['BASE'],'Restauration de la base en cours.'); // Notifications (rendues visibles ultérieurement) $notification_contenu = date('d-m-Y H:i:s').' '.$_SESSION['USER_PRENOM'].' '.$_SESSION['USER_NOM'].' a lancé une restauration de la base de données.'."\r\n"; DB_STRUCTURE_NOTIFICATION::enregistrer_action_admin( $notification_contenu , $_SESSION['USER_ID'] ); } // Restaurer des fichiers de svg et mettre la base à jour si besoin. $texte_etape = restaurer_tables_base_etablissement($dossier_temp,$etape); if(strpos($texte_etape,'terminée')) { $class = "valide"; // Débloquer l'application LockAcces::debloquer_application('automate',$_SESSION['BASE']); // Supprimer le dossier temporaire FileSystem::supprimer_dossier($dossier_temp); } else { $class = "loader"; $top_arrivee = microtime(TRUE); $duree = number_format($top_arrivee - $top_depart,2,',',''); $texte_etape .= ' en '.$duree.'s'; }