/**
* Get VaultPress site data including, among other things, the date of the last backup if it was completed.
*
* @since 4.3.0
*
* @return mixed|WP_Error VaultPress site data. Otherwise, a WP_Error instance with the corresponding error.
*/
public function get_vaultpress_data()
{
if (!class_exists('VaultPress')) {
return new WP_Error('not_active', esc_html__('The requested Jetpack module is not active.', 'jetpack'), array('status' => 404));
}
$vaultpress = new VaultPress();
if (!$vaultpress->is_registered()) {
return rest_ensure_response(array('code' => 'not_registered', 'message' => esc_html__('You need to register for VaultPress.', 'jetpack')));
}
$data = json_decode(base64_decode($vaultpress->contact_service('plugin_data')));
if (is_wp_error($data)) {
return $data;
} else {
if (!$data->backups->last_backup) {
return rest_ensure_response(array('code' => 'success', 'message' => esc_html__('VaultPress is active and will back up your site soon.', 'jetpack'), 'data' => $data));
} else {
return rest_ensure_response(array('code' => 'success', 'message' => esc_html(sprintf(__('Your site was successfully backed-up %s ago.', 'jetpack'), human_time_diff($data->backups->last_backup, current_time('timestamp')))), 'data' => $data));
}
}
}