File "class-rollback-theme-upgrader.php"

Full path: /home/kosmetik/public_html/wp-content/plugins/wp-rollback/includes/class-rollback-theme-upgrader.php
File size: 1.68 B
MIME-type: text/x-php
Charset: utf-8

Download   Open   Edit   Advanced Editor   Back

<?php

if (!defined('ABSPATH')) {
    exit;
}
class WP_Rollback_Theme_Upgrader extends Theme_Upgrader
{
    public function rollback($theme, $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;
        }
        $theme_slug = $this->skin->theme;
        $theme_version = $this->skin->options['version'];
        $download_endpoint = 'https://downloads.wordpress.org/theme/';
        $url = $download_endpoint . $theme_slug . '.' . $theme_version . '.zip';
        add_filter('upgrader_pre_install', array($this, 'current_before'), 10, 2);
        add_filter('upgrader_post_install', array($this, 'current_after'), 10, 2);
        add_filter('upgrader_clear_destination', array($this, 'delete_old_theme'), 10, 4);
        $this->run(array('package' => $url, 'destination' => get_theme_root(), 'clear_destination' => true, 'clear_working' => true, 'hook_extra' => array('theme' => $theme, 'type' => 'theme', 'action' => 'update')));
        remove_filter('upgrader_pre_install', array($this, 'current_before'));
        remove_filter('upgrader_post_install', array($this, 'current_after'));
        remove_filter('upgrader_clear_destination', array($this, 'delete_old_theme'));
        if (!$this->result || is_wp_error($this->result)) {
            return $this->result;
        }
        wp_clean_themes_cache($parsed_args['clear_update_cache']);
        return true;
    }
}