$cn->exec_sql("create database " . $name . " encoding='utf8'"); $args = " -d {$name} " . $_FILES['file']['tmp_name']; $status = exec(PG_RESTORE . $args); $test = new Database($id, 'mod'); if ($test->exist_table('version')) { echo '<h2 class="info"> ' . _('Restauration réussie du dossier ') . $lname . '</h2>'; $test->close(); } else { $test->close(); echo '<h2 class="error"> ' . _('Problème lors de la restauration ') . $lname . '</h2>'; $cn->exec_sql('delete from modeledef where mod_id=$1', array($id)); $cn->exec_sql('drop database ' . $name); exit; } $new_cn = new Database($id, 'mod'); $new_cn->apply_patch($name, 0); echo '<span class="error">' . _('Ne pas recharger la page, sinon votre base de données sera restaurée une fois de plus') . '</span>'; echo $retour; echo '</div>'; } } else { echo '<div class="content" style="width:80%;margin-left:10%">'; echo '<form method="POST" action="admin_repo.php" enctype="multipart/form-data" >'; echo HtmlInput::hidden('action', 'restore'); echo HtmlInput::hidden('sa', 'r'); echo '<table>'; echo '<tr><td>' . _("Nom de la base de donnée") . HtmlInput::infobulle(29) . '</td>'; $wNom = new IText(); $wNom->name = "database"; $wNom->size = 30; echo '<td>' . $wNom->input() . '</td></tr>';
echo_warning(_("Dossier inexistant") . " {$name}"); } } //---------------------------------------------------------------------- // Upgrade the template //---------------------------------------------------------------------- $Resdossier = $cn->exec_sql("select mod_id, mod_name from modeledef"); $MaxDossier = $cn->size(); echo "<h2>Mise à jour modèle</h2>"; for ($e = 0; $e < $MaxDossier; $e++) { $db_row = Database::fetch_array($Resdossier, $e); echo "<h3>Patching " . $db_row['mod_name'] . "</h3>"; $name = $cn->format_name($db_row['mod_id'], 'mod'); if ($cn->exist_database($name) > 0) { $db = new Database($db_row['mod_id'], 'mod'); $db->apply_patch($db_row['mod_name']); } else { echo_warning(_("Modèle inexistant") . " {$name}"); } } //---------------------------------------------------------------------- // Upgrade the account_repository //---------------------------------------------------------------------- echo "<h2>Mise à jour Repository</h2>"; $cn = new Database(); if (DEBUG == false) { ob_start(); } $MaxVersion = DBVERSIONREPO - 1; for ($i = 4; $i <= $MaxVersion; $i++) { if ($cn->get_version() <= $i) {