Esempio n. 1
0
    $impname = basename($impname);
    if ($function == 'dbimport' && substr($impname, -4, 4) != '.sql') {
        $impname = '';
    } elseif ($function == 'fileimport' && substr($impname, -7, 7) != '.tar.gz') {
        $impname = '';
    } elseif (($function == 'delete' || $function == 'download') && substr($impname, -4, 4) != '.sql' && substr($impname, -7, 7) != '.tar.gz') {
        $impname = '';
    }
}
if ($function == 'delete' && $impname) {
    // ------------------------------ FUNC DELETE
    if (rex_file::delete(rex_backup::getDir() . '/' . $impname)) {
    }
    $success = rex_i18n::msg('backup_file_deleted');
} elseif ($function == 'download' && $impname && is_readable(rex_backup::getDir() . '/' . $impname)) {
    rex_response::sendFile(rex_backup::getDir() . '/' . $impname, substr($impname, -7, 7) != '.tar.gz' ? 'tar/gzip' : 'plain/test', 'attachment');
    exit;
} elseif ($function == 'dbimport') {
    // ------------------------------ FUNC DBIMPORT
    // noch checken das nicht alle tabellen geloescht werden
    // install/temp.sql aendern
    if (isset($_FILES['FORM']) && $_FILES['FORM']['size']['importfile'] < 1 && $impname == '') {
        $error = rex_i18n::msg('backup_no_import_file_chosen_or_wrong_version') . '<br>';
    } else {
        if ($impname != '') {
            $file_temp = rex_backup::getDir() . '/' . $impname;
        } else {
            $file_temp = rex_backup::getDir() . '/temp.sql';
        }
        if ($impname != '' || @move_uploaded_file($_FILES['FORM']['tmp_name']['importfile'], $file_temp)) {
            $state = rex_backup::importDb($file_temp);
Esempio n. 2
0
            // ------------------------------ /FUNC EXPORT SQL
        } elseif ($exporttype == 'files') {
            // ------------------------------ FUNC EXPORT FILES
            $header = 'tar/gzip';
            if (empty($EXPDIR)) {
                $error = rex_i18n::msg('backup_please_choose_folder');
            } else {
                $content = rex_backup::exportFiles($EXPDIR);
                $hasContent = rex_file::put($export_path . $filename . $ext, $content);
            }
            // ------------------------------ /FUNC EXPORT FILES
        }
        if ($hasContent) {
            if ($exportdl) {
                $filename = $filename . $ext;
                rex_response::sendFile($export_path . $filename, $header, 'attachment');
                rex_file::delete($export_path . $filename);
                exit;
            } else {
                $success = rex_i18n::msg('backup_file_generated_in') . ' ' . strtr($filename . $ext, '\\', '/');
            }
        } else {
            $error = rex_i18n::msg('backup_file_could_not_be_generated') . ' ' . rex_i18n::msg('backup_check_rights_in_directory') . ' ' . $export_path;
        }
    }
}
if ($success != '') {
    echo rex_view::success($success);
}
if ($error != '') {
    echo rex_view::error($error);