PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 1.0.7
Adminify – White Label, Admin Menu Editor, Login Customizer v1.0.7
4.3.2 4.3.1 4.3.0 4.2.26 4.2.25 4.2.24 4.2.23 4.2.22 4.2.21 4.2.20 4.2.19 4.2.18 4.2.17 4.2.16 4.2.15 4.2.14 4.2.13 4.2.12 4.2.11 4.2.10 4.2.9 4.2.8 4.2.7 4.2.6 4.2.5 All 165 releases
← All changes | Inc/Classes/Adminify_Rollback.php +148 -137 4.2.141.0.7 View file →
@@ -1,199 +1,210 @@
1 1 <?php
2 2
3 -namespace PXLBSAdminify\Inc\Classes;
3 +namespace WPAdminify\Inc\Classes;
4 4
5 -if ( ! defined( 'ABSPATH' ) ) {
6 - exit;
7 -}
5 +if (!defined('ABSPATH')) exit;
8 6
9 -class Adminify_Rollback {
7 +class Adminify_Rollback
8 +{
10 9
10 + protected $package_url;
11 11
12 - protected $package_url;
12 + protected $version;
13 13
14 - protected $version;
14 + protected $plugin_name = WP_ADMINIFY;
15 15
16 - protected $plugin_name = PXLBSADMINIFY;
16 + protected $plugin_slug;
17 17
18 - protected $plugin_slug;
18 + private static $instance = null;
19 19
20 - private static $instance = null;
20 + public function __construct($args = [])
21 + {
22 + add_action('admin_post_wp_adminify_rollback_version', [$this, 'jltwp_adminify_post_addons_rollback']);
21 23
22 - public function __construct( $args = [] ) {
23 - add_action( 'admin_post_wp_adminify_rollback_version', [ $this, 'post_addons_rollback' ] );
24 + foreach ($args as $key => $value) {
25 + $this->{$key} = $value;
26 + }
27 + }
24 28
25 - foreach ( $args as $key => $value ) {
26 - $this->{$key} = $value;
27 - }
28 - }
29 29
30 + /**
31 + * Rollback function
32 + */
33 + public function jltwp_adminify_post_addons_rollback()
34 + {
30 35
31 - /**
32 - * Rollback function
33 - */
34 - public function post_addons_rollback() {
35 - check_admin_referer( 'pxlbsadminify_rollback_version' );
36 + check_admin_referer('wp_adminify_rollback_version');
36 37
37 - $rollback_versions = $this->get_rollback_versions();
38 + $rollback_versions = $this->get_rollback_versions();
38 39
39 - if ( empty( $_GET['version'] ) || ! in_array( $_GET['version'], $rollback_versions ) ) {
40 - wp_die( esc_html__( 'Error occurred, The version selected is invalid. Try selecting different version.', 'adminify' ) );
41 - }
40 + if (empty($_GET['version']) || !in_array($_GET['version'], $rollback_versions)) {
41 + wp_die(esc_html__('Error occurred, The version selected is invalid. Try selecting different version.', WP_ADMINIFY_TD));
42 + }
42 43
43 - $plugin_slug = basename( PXLBSADMINIFY_BASE, '.php' );
44 - $plugin_version = sanitize_text_field( wp_unslash($_GET['version']) );
44 + $plugin_slug = basename(WP_ADMINIFY_BASE, '.php');
45 + $plugin_version = $_GET['version'];
45 46
46 - $pxlbsadminify_rollback = new self(
47 - [
48 - 'version' => $plugin_version,
49 - 'plugin_name' => $this->plugin_name,
50 - 'plugin_slug' => $plugin_slug,
51 - 'package_url' => sprintf( 'https://downloads.wordpress.org/plugin/%s.%s.zip', $plugin_slug, $plugin_version ),
52 - ]
53 - );
47 + $jltwp_adminify_rollback = new self(
48 + [
49 + 'version' => $plugin_version,
50 + 'plugin_name' => $this->plugin_name,
51 + 'plugin_slug' => $plugin_slug,
52 + 'package_url' => sprintf('https://downloads.wordpress.org/plugin/%s.%s.zip', $plugin_slug, $_GET['version']),
53 + ]
54 + );
54 55
55 - $pxlbsadminify_rollback->run();
56 + $jltwp_adminify_rollback->run();
56 57
57 - wp_die( '', esc_html__( 'Rollback to Previous Version', 'adminify' ), [ 'response' => 200 ] );
58 - }
58 + wp_die('', __('Rollback to Previous Version', MELA_TD), ['response' => 200,]);
59 + }
59 60
60 61
61 62
62 63
63 - public function get_rollback_versions() {
64 - $rollback_versions = get_transient( 'pxlbsadminify_rollback_versions_' . PXLBSADMINIFY_VER );
65 - if ( false === $rollback_versions ) {
66 - $max_versions = 30;
64 + public function get_rollback_versions()
65 + {
66 + $rollback_versions = get_transient('wp_adminify_rollback_versions_' . WP_ADMINIFY_VER);
67 + if (false === $rollback_versions) {
68 + $max_versions = 30;
67 69
68 - require_once ABSPATH . 'wp-admin/includes/plugin-install.php';
70 + require_once ABSPATH . 'wp-admin/includes/plugin-install.php';
69 71
70 - $plugin_information = plugins_api(
71 - 'plugin_information',
72 - [
73 - 'slug' => 'adminify',
74 - ]
75 - );
72 + $plugin_information = plugins_api(
73 + 'plugin_information',
74 + [
75 + 'slug' => 'adminify',
76 + ]
77 + );
76 78
77 - if ( empty( $plugin_information->versions ) || ! is_array( $plugin_information->versions ) ) {
78 - return [];
79 - }
79 + if (empty($plugin_information->versions) || !is_array($plugin_information->versions)) {
80 + return [];
81 + }
80 82
81 - krsort( $plugin_information->versions );
83 + krsort($plugin_information->versions);
82 84
83 - $rollback_versions = [];
85 + $rollback_versions = [];
84 86
85 - $current_index = 0;
86 - foreach ( $plugin_information->versions as $version => $download_link ) {
87 - if ( $max_versions <= $current_index ) {
88 - break;
89 - }
87 + $current_index = 0;
88 + foreach ($plugin_information->versions as $version => $download_link) {
89 + if ($max_versions <= $current_index) {
90 + break;
91 + }
90 92
91 - $lowercase_version = strtolower( $version );
92 - $is_valid_rollback_version = ! preg_match( '/(trunk|beta|rc|dev)/i', $lowercase_version );
93 + $lowercase_version = strtolower($version);
94 + $is_valid_rollback_version = !preg_match('/(trunk|beta|rc|dev)/i', $lowercase_version);
93 95
94 - $is_valid_rollback_version = apply_filters(
95 - 'pxlbsadminify/options/rollback/is_valid_rollback_version',
96 - $is_valid_rollback_version,
97 - $lowercase_version
98 - );
96 + $is_valid_rollback_version = apply_filters(
97 + 'adminify/options/rollback/is_valid_rollback_version',
98 + $is_valid_rollback_version,
99 + $lowercase_version
100 + );
99 101
100 - if ( ! $is_valid_rollback_version ) {
101 - continue;
102 - }
102 + if (!$is_valid_rollback_version) {
103 + continue;
104 + }
103 105
104 - if ( version_compare( $version, PXLBSADMINIFY_VER, '>=' ) ) {
105 - continue;
106 - }
106 + if (version_compare($version, WP_ADMINIFY_VER, '>=')) {
107 + continue;
108 + }
107 109
108 - $current_index++;
109 - $rollback_versions[] = $version;
110 - }
110 + $current_index++;
111 + $rollback_versions[] = $version;
112 + }
111 113
112 - set_transient( 'pxlbsadminify_rollback_versions_' . PXLBSADMINIFY_VER, $rollback_versions, WEEK_IN_SECONDS );
113 - }
114 + set_transient('wp_adminify_rollback_versions_' . WP_ADMINIFY_VER, $rollback_versions, WEEK_IN_SECONDS);
115 + }
114 116
115 - return $rollback_versions;
116 - }
117 + return $rollback_versions;
118 + }
117 119
118 120
119 121
120 - private function print_inline_style() {
121 - ?>
122 - <style>
123 - .wrap {
124 - overflow: hidden;
125 - }
122 + private function print_inline_style()
123 + {
124 +?>
125 + <style>
126 + .wrap {
127 + overflow: hidden;
128 + }
126 129
127 - h1 {
128 - background: #0347FF;
129 - text-align: center;
130 - color: #fff !important;
131 - padding: 70px !important;
132 - text-transform: uppercase;
133 - letter-spacing: 1px;
134 - }
130 + h1 {
131 + background: #0347FF;
132 + text-align: center;
133 + color: #fff !important;
134 + padding: 70px !important;
135 + text-transform: uppercase;
136 + letter-spacing: 1px;
137 + }
135 138
136 - h1 img {
137 - max-width: 300px;
138 - display: block;
139 - margin: auto auto 50px;
140 - }
141 - </style>
139 + h1 img {
140 + max-width: 300px;
141 + display: block;
142 + margin: auto auto 50px;
143 + }
144 + </style>
142 145
143 - <?php
144 - }
146 +<?php
147 + }
145 148
146 - protected function apply_package() {
147 - $update_plugins = get_site_transient( 'update_plugins' );
149 + protected function apply_package()
150 + {
148 151
149 - if ( ! is_object( $update_plugins ) ) {
150 - $update_plugins = new \stdClass();
151 - }
152 + $update_plugins = get_site_transient('update_plugins');
152 153
153 - $plugin_info = new \stdClass();
154 + if (!is_object($update_plugins)) {
154 155
155 - $plugin_info->new_version = $this->version;
156 + $update_plugins = new \stdClass();
157 + }
156 158
157 - $plugin_info->slug = $this->plugin_slug;
159 + $plugin_info = new \stdClass();
158 160
159 - $plugin_info->package = $this->package_url;
161 + $plugin_info->new_version = $this->version;
160 162
161 - $plugin_info->url = 'https://wpadminify.com/';
163 + $plugin_info->slug = $this->plugin_slug;
162 164
163 - $update_plugins->response[ $this->plugin_name ] = $plugin_info;
165 + $plugin_info->package = $this->package_url;
164 166
165 - set_site_transient( 'update_plugins', $update_plugins );
166 - }
167 + $plugin_info->url = 'https://wpadminify.com/';
167 168
168 - protected function upgrade() {
169 - require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
169 + $update_plugins->response[$this->plugin_name] = $plugin_info;
170 170
171 - $logo_url = PXLBSADMINIFY_ASSETS_IMAGE . 'logos/logo-text-dark.svg';
171 + set_site_transient('update_plugins', $update_plugins);
172 + }
172 173
173 - $upgrader_args = [
174 - 'url' => 'update.php?action=upgrade-plugin&plugin=' . rawurlencode( $this->plugin_name ),
175 - 'plugin' => sanitize_text_field( $this->plugin_name ),
176 - 'nonce' => 'upgrade-plugin_' . sanitize_text_field( $this->plugin_name ),
177 - 'title' => '<img src="' . esc_url( $logo_url ) . '" alt="' . esc_attr__( 'Adminify Version Rollback', 'adminify' ) . '">' . esc_html__( 'Rollback to Previous Version ', 'adminify' ),
178 - ];
174 + protected function upgrade()
175 + {
179 176
180 - $this->print_inline_style();
177 + require_once(ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
181 178
182 - $upgrader = new \Plugin_Upgrader( new \Plugin_Upgrader_Skin( $upgrader_args ) );
179 + $logo_url = WP_ADMINIFY_ASSETS_IMAGE . 'logos/logo-text-dark.svg';
183 180
184 - $upgrader->upgrade( $this->plugin_name );
185 - }
181 + $upgrader_args = [
182 + 'url' => 'update.php?action=upgrade-plugin&plugin=' . rawurlencode($this->plugin_name),
183 + 'plugin' => $this->plugin_name,
184 + 'nonce' => 'upgrade-plugin_' . $this->plugin_name,
185 + 'title' => '<img src="' . $logo_url . '" alt="WP Adminify Version Rollback">' . __('Rollback to Previous Version ', WP_ADMINIFY_TD),
186 + ];
186 187
187 - public function run() {
188 - $this->apply_package();
188 + $this->print_inline_style();
189 189
190 - $this->upgrade();
191 - }
190 + $upgrader = new \Plugin_Upgrader(new \Plugin_Upgrader_Skin($upgrader_args));
192 191
193 - public static function get_instance() {
194 - if ( ! self::$instance ) {
195 - self::$instance = new self();
196 - }
197 - return self::$instance;
198 - }
192 + $upgrader->upgrade($this->plugin_name);
193 + }
194 +
195 + public function run()
196 + {
197 +
198 + $this->apply_package();
199 +
200 + $this->upgrade();
201 + }
202 +
203 + public static function get_instance()
204 + {
205 + if (!self::$instance) {
206 + self::$instance = new self;
207 + }
208 + return self::$instance;
209 + }
199 210 }