Esempio n. 1
0
    if ('1' == pb_backupbuddy::_POST('migrateHtaccess')) {
        $restoreData['migrateHtaccess'] = true;
    } else {
        $restoreData['migrateHtaccess'] = false;
    }
    if ('all' == pb_backupbuddy::_POST('zipMethodStrategy') || 'ziparchive' == pb_backupbuddy::_POST('zipMethodStrategy') || 'pclzip' == pb_backupbuddy::_POST('zipMethodStrategy')) {
        $restoreData['zipMethodStrategy'] = pb_backupbuddy::_POST('zipMethodStrategy');
    }
    return $restoreData;
}
// End parse_options().
// Turn on maintenance mode for WordPress to prevent browsing the site until it is fully imported.
$restore->maintenanceOn();
if (true !== $restore->_state['skipUnzip']) {
    // Unzip backup archive. For DB-only only restores SQL files to temp directory. For files, unzips all to ABSPATH.
    $results = $restore->restoreFiles();
    if (true !== $results) {
        // Unzip failed.
        pb_backupbuddy::alert('File extraction process did not complete successfully. Unable to continue to next step. Manually extract the backup ZIP file and choose to "Skip File Extraction" from the advanced options on Step 1. Details: ' . $restore->getErrors(), true, '9005');
    } else {
        // Unzip success.
        echo "<script>bb_action( 'unzipSuccess' );</script>";
        if (false === $restore->_state['restoreFiles']) {
            // Skip restoring files.
            pb_backupbuddy::status('details', 'SKIPPING restore of files based on settings from Step 1.');
            echo "<script>bb_action( 'filesRestoreSkipped' );</script>";
        } else {
            // Unzip all files and/or database sql files.
            echo "<script>bb_action( 'filesRestoreSuccess' );</script>";
        }
    }
Esempio n. 2
0
}
if ('1' == pb_backupbuddy::_POST('forceMysqlCompatibility')) {
    $restoreData['forceMysqlMethods'] = array('php');
}
$restoreData['restoreDatabase'] = true;
$restoreData['restoreFiles'] = false;
$restoreData['restoreFileRoot'] = $restoreData['tempPath'];
if ('2' == pb_backupbuddy::$options['zip_method_strategy']) {
    $restoreData['zipMethodStrategy'] = 'all';
} else {
    $restoreData['zipMethodStrategy'] = pb_backupbuddy::$options['zip_method_strategy'];
}
// Instantiate rollback.
require_once pb_backupbuddy::plugin_path() . '/classes/restore.php';
$rollback = new backupbuddy_restore('rollback', $restoreData);
$status = $rollback->restoreFiles();
if (false === $status) {
    $errors = $rollback->getErrors();
    if (count($errors) > 0) {
        pb_backupbuddy::alert('Errors were encountered: ' . implode(', ', $errors) . ' If seeking support please click to Show Advanced Details above and provide a copy of the log.');
    }
    return;
}
$status = $rollback->determineDatabaseFiles();
if (false === $status) {
    $errors = $rollback->getErrors();
    if (count($errors) > 0) {
        pb_backupbuddy::alert('Errors were encountered: ' . implode(', ', $errors) . ' If seeking support please click to Show Advanced Details above and provide a copy of the log.');
    }
    return;
}