upgrader =& $upgrader; } } /** * Set the upgrader result and store it as a property in the parent class. * * @since 1.5.13 * * @param object $result The result of the install process. * * @return void */ public function set_result($result) { $this->result = $result; } /** * Empty out the header of its HTML content and only check to see if it has * been performed or not. * * @since 1.5.13 * * @return void */ public function header() { } /** * Empty out the footer of its HTML contents. * * @since 1.5.13 * * @return void */ public function footer() { } /** * Instead of outputting HTML for errors, send proper WordPress AJAX error response. * * @since 1.5.13 * * @param array $errors Array of errors with the install process. * * @return void */ public function error($errors) { if (!empty($errors)) { wp_send_json_error(array('message' => esc_html__('There was an error installing the upgrade. Please try again.', 'duplicator'))); } } /** * Empty out the feedback method to prevent outputting HTML strings as the install * is progressing. * * @since 1.5.13 * * @param string $string The feedback string. * @param mixed ...$args Additional arguments. * * @return void */ public function feedback($string, ...$args) { } }