You are here

function backup_migrate_ui_manual_restore_form_submit in Backup and Migrate 8.3

Same name and namespace in other branches
  1. 8.2 backup_migrate.module \backup_migrate_ui_manual_restore_form_submit()
  2. 5.2 backup_migrate.module \backup_migrate_ui_manual_restore_form_submit()
  3. 6.3 backup_migrate.module \backup_migrate_ui_manual_restore_form_submit()
  4. 6.2 backup_migrate.module \backup_migrate_ui_manual_restore_form_submit()
  5. 7.3 backup_migrate.module \backup_migrate_ui_manual_restore_form_submit()
  6. 7.2 backup_migrate.module \backup_migrate_ui_manual_restore_form_submit()

The restore submit. Do the restore.

File

./backup_migrate.module, line 1319
Create (manually or scheduled) and restore backups of your Drupal MySQL database with an option to exclude table data (e.g. cache_*)

Code

function backup_migrate_ui_manual_restore_form_submit($form, &$form_state) {
  backup_migrate_include('destinations');
  $validators = array(
    'file_validate_extensions' => array(
      'gz zip sql mysql bz bz2',
    ),
  );
  $values = $form_state['values'];
  if ($values['from'] == 'upload' && ($file = file_save_upload('backup_migrate_restore_upload', $validators))) {
    backup_migrate_perform_restore('upload', $file->uri, $values);
  }
  else {
    if ($values['from'] == 'saved' && ($file = $values['file'])) {
      list($destination, $file_id) = explode('/', $file, 2);
      $file = backup_migrate_perform_restore($destination, $file_id, $form_state['values']);
    }
  }
  $form_state['redirect'] = BACKUP_MIGRATE_MENU_PATH . '/restore';
}