File "class-rollback-plugin-upgrader.php"
Full path: /home/kosmetik/public_html/wp-content/plugins/wp-rollback/includes/class-rollback-plugin-upgrader.php
File
size: 2.11 B
MIME-type: text/x-php
Charset: utf-8
Download Open Edit Advanced Editor Back
<?php
if (!defined('ABSPATH')) {
exit;
}
class WP_Rollback_Plugin_Upgrader extends Plugin_Upgrader
{
public function rollback($plugin, $args = array())
{
$defaults = array('clear_update_cache' => true);
$parsed_args = wp_parse_args($args, $defaults);
$this->init();
$this->upgrade_strings();
if (0) {
$this->skin->before();
$this->skin->set_result(false);
$this->skin->error('up_to_date');
$this->skin->after();
return false;
}
$plugin_slug = $this->skin->plugin;
$plugin_version = $this->skin->options['version'];
$download_endpoint = 'https://downloads.wordpress.org/plugin/';
$url = $download_endpoint . $plugin_slug . '.' . $plugin_version . '.zip';
$is_plugin_active = is_plugin_active($plugin);
add_filter('upgrader_pre_install', array($this, 'deactivate_plugin_before_upgrade'), 10, 2);
add_filter('upgrader_pre_install', array($this, 'active_before'), 10, 2);
add_filter('upgrader_clear_destination', array($this, 'delete_old_plugin'), 10, 4);
add_filter('upgrader_post_install', array($this, 'active_after'), 10, 2);
$this->run(array('package' => $url, 'destination' => WP_PLUGIN_DIR, 'clear_destination' => true, 'clear_working' => true, 'hook_extra' => array('plugin' => $plugin, 'type' => 'plugin', 'action' => 'update', 'bulk' => 'false')));
remove_action('upgrader_process_complete', 'wp_clean_plugins_cache', 9);
remove_filter('upgrader_pre_install', array($this, 'deactivate_plugin_before_upgrade'));
remove_filter('upgrader_pre_install', array($this, 'active_before'));
remove_filter('upgrader_clear_destination', array($this, 'delete_old_plugin'));
remove_filter('upgrader_post_install', array($this, 'active_after'));
if (!$this->result || is_wp_error($this->result)) {
return $this->result;
}
if ($is_plugin_active) {
activate_plugin($plugin);
}
wp_clean_plugins_cache($parsed_args['clear_update_cache']);
return true;
}
}