PluginProbe
The WP Remote WordPress Plugin / 4.86
The WP Remote WordPress Plugin v4.86
6.72 6.69 6.65 6.62 6.48 6.47 4.87 4.97 5.05 5.09 5.16 5.22 5.24 5.25 5.38 5.41 5.42 5.45 5.47 5.53 5.56 5.65 5.68 5.72 5.73 All 53 releases
← All changes | wp_admin.php +65 -91 6.724.86 View file →
@@ -24,9 +24,9 @@
24 24 }
25 25 }
26 26
27 27 function removeAdminNotices() {
28 - if (WPRHelper::getRawParam('REQUEST', 'page') === $this->bvinfo->plugname) {
28 + if (array_key_exists('page', $_REQUEST) && $_REQUEST['page'] == $this->bvinfo->plugname) {
29 29 remove_all_actions('admin_notices');
30 30 remove_all_actions('all_admin_notices');
31 31 }
32 32 }
@@ -33,47 +33,40 @@
33 33
34 34 public function initHandler() {
35 35 if (!current_user_can('activate_plugins'))
36 36 return;
37 - $bvnonce = WPRHelper::getRawParam('REQUEST', 'bvnonce');
38 - $blogvaultkey = WPRHelper::getRawParam('REQUEST', 'blogvaultkey');
39 - $blogvaultkey = $blogvaultkey ? WPRAccount::sanitizeKey($blogvaultkey) : "";
40 37
41 - if ($bvnonce && wp_verify_nonce($bvnonce, "bvnonce") &&
42 - $blogvaultkey && strlen($blogvaultkey) == 64 &&
43 - (WPRHelper::getRawParam('REQUEST', 'page') === $this->bvinfo->plugname)) {
44 - $keys = str_split($blogvaultkey, 32);
38 + if (array_key_exists('bvnonce', $_REQUEST) &&
39 + wp_verify_nonce($_REQUEST['bvnonce'], "bvnonce") &&
40 + array_key_exists('blogvaultkey', $_REQUEST) &&
41 + (strlen(WPRAccount::sanitizeKey($_REQUEST['blogvaultkey'])) == 64) &&
42 + (array_key_exists('page', $_REQUEST) &&
43 + $_REQUEST['page'] == $this->bvinfo->plugname)) {
44 + $keys = str_split($_REQUEST['blogvaultkey'], 32);
45 45 WPRAccount::addAccount($this->settings, $keys[0], $keys[1]);
46 -
47 - $location = WPRHelper::getStringParamSanitized('REQUEST', 'redirect', 'url');
48 - if ($location) {
46 + if (array_key_exists('redirect', $_REQUEST)) {
47 + $location = $_REQUEST['redirect'];
49 48 wp_redirect($this->bvinfo->appUrl()."/dash/redir?q=".urlencode($location));
50 49 exit();
51 50 }
52 51 }
53 -
54 52 if ($this->bvinfo->isActivateRedirectSet()) {
55 53 $this->settings->updateOption($this->bvinfo->plug_redirect, 'no');
56 54 ##ACTIVATEREDIRECTCODE##
57 - if (!wp_doing_ajax()) {
58 - wp_redirect($this->mainUrl());
59 - }
55 + wp_redirect($this->mainUrl());
60 56 }
61 57 }
62 58
63 59 public function wprsecAdminMenu($hook) {
64 - if ($hook === 'toplevel_page_wpremote' || WPRHelper::safePregMatch("/wpr_add_account$/", $hook) || WPRHelper::safePregMatch("/wpr_account_details$/", $hook)) {
65 - wp_enqueue_style( 'bootstrap', plugins_url('css/bootstrap.min.css', __FILE__), array(), $this->bvinfo->version);
66 - wp_enqueue_style( 'bvplugin', plugins_url('css/bvplugin.min.css', __FILE__), array(), $this->bvinfo->version);
67 - wp_enqueue_script( 'wpr-connection-key', plugins_url('js/connection-key.js', __FILE__), array(), $this->bvinfo->version, true);
60 + if ($hook === 'toplevel_page_wpremote' || preg_match("/wpr_add_account$/", $hook) || preg_match("/wpr_account_details$/", $hook)) {
61 + wp_enqueue_style( 'bootstrap', plugins_url('css/bootstrap.min.css', __FILE__));
62 + wp_enqueue_style( 'bvplugin', plugins_url('css/bvplugin.min.css', __FILE__));
68 63 }
69 64 }
70 65
71 66 public function menu() {
72 - $brand = $this->bvinfo->getPluginWhitelabelInfo();
73 - $can_whitelabel = $this->bvinfo->canWhiteLabel();
74 - $hide_from_menu = array_key_exists('hide', $brand) || array_key_exists('hide_from_menu', $brand);
75 - if (!$can_whitelabel || !$hide_from_menu) {
67 + $brand = $this->bvinfo->getBrandInfo();
68 + if (!is_array($brand) || (!array_key_exists('hide', $brand) && !array_key_exists('hide_from_menu', $brand))) {
76 69 $bname = $this->bvinfo->getBrandName();
77 70 $icon = $this->bvinfo->getBrandIcon();
78 71 add_menu_page($bname, $bname, 'manage_options', $this->bvinfo->plugname,
79 72 array($this, 'adminPage'), plugins_url($icon, __FILE__ ));
@@ -80,17 +73,13 @@
80 73 }
81 74 }
82 75
83 76 public function hidePluginUpdate($plugins) {
84 - if (!$this->bvinfo->canWhiteLabel()) {
85 - return $plugins;
86 - }
87 - $whitelabel_infos = $this->bvinfo->getPluginsWhitelabelInfos();
88 - foreach ($whitelabel_infos as $slug => $brand) {
89 - if ($this->bvinfo->canWhiteLabel($slug) && isset($plugins->response[$slug]) && is_array($brand)) {
90 - if (array_key_exists('hide_from_menu', $brand) || array_key_exists('hide', $brand)) {
91 - unset($plugins->response[$slug]);
92 - }
77 + $brand = $this->bvinfo->getBrandInfo();
78 + $bvslug = $this->bvinfo->slug;
79 + if (isset($plugins->response[$bvslug]) && is_array($brand)) {
80 + if (array_key_exists('hide_from_menu', $brand) || array_key_exists('hide', $brand)) {
81 + unset($plugins->response[$bvslug]);
93 82 }
94 83 }
95 84 return $plugins;
96 85 }
@@ -95,16 +84,14 @@
95 84 return $plugins;
96 85 }
97 86
98 87 public function hidePluginDetails($plugin_metas, $slug) {
99 - if (!is_array($plugin_metas) || !$this->bvinfo->canWhiteLabel($slug)) {
100 - return $plugin_metas;
101 - }
102 - $whitelabel_info = $this->bvinfo->getPluginWhitelabelInfo($slug);
103 - if (array_key_exists('hide_plugin_details', $whitelabel_info)) {
88 + $brand = $this->bvinfo->getBrandInfo();
89 + $bvslug = $this->bvinfo->slug;
90 +
91 + if ($slug === $bvslug && is_array($brand) && array_key_exists('hide_plugin_details', $brand)){
104 92 foreach ($plugin_metas as $pluginKey => $pluginValue) {
105 - // phpcs:ignore WordPress.WP.I18n.MissingArgDomain
106 - if (strpos($pluginValue, sprintf('>%s<', __('View details')))) {
93 + if (strpos($pluginValue, sprintf('>%s<', translate('View details')))) {
107 94 unset($plugin_metas[$pluginKey]);
108 95 break;
109 96 }
110 97 }
@@ -112,33 +99,31 @@
112 99 return $plugin_metas;
113 100 }
114 101
115 102 public function handlePluginHealthInfo($plugins) {
103 + $brand = $this->bvinfo->getBrandInfo();
104 + $title = $this->bvinfo->title;
116 105 if (!isset($plugins["wp-plugins-active"]) ||
117 - !isset($plugins["wp-plugins-active"]["fields"]) || !$this->bvinfo->canWhiteLabel()) {
106 + !isset($plugins["wp-plugins-active"]["fields"]) ||
107 + !isset($plugins["wp-plugins-active"]["fields"][$title])) {
118 108 return $plugins;
119 109 }
120 -
121 - $whitelabel_infos_by_title = $this->bvinfo->getPluginsWhitelabelInfoByTitle();
122 -
123 - foreach ($whitelabel_infos_by_title as $title => $brand) {
124 - if (is_array($brand) && array_key_exists('slug', $brand) && $this->bvinfo->canWhiteLabel($brand["slug"])) {
125 - if (array_key_exists('hide', $brand)) {
126 - unset($plugins["wp-plugins-active"]["fields"][$title]);
127 - } else {
128 - $plugin = $plugins["wp-plugins-active"]["fields"][$title];
129 - $author = $brand['default_author'];
130 - if (array_key_exists('name', $brand)) {
131 - $plugin["label"] = $brand['name'];
132 - }
133 - if (array_key_exists('author', $brand)) {
134 - $plugin["value"] = str_replace($author, $brand['author'], $plugin["value"]);
135 - }
136 - if (array_key_exists('description', $brand)) {
137 - $plugin["debug"] = str_replace($author, $brand['author'], $plugin["debug"]);
138 - }
139 - $plugins["wp-plugins-active"]["fields"][$title] = $plugin;
110 + if (is_array($brand)) {
111 + if (array_key_exists('hide', $brand)) {
112 + unset($plugins["wp-plugins-active"]["fields"][$title]);
113 + } else {
114 + $plugin = $plugins["wp-plugins-active"]["fields"][$title];
115 + $author = $this->bvinfo->author;
116 + if (array_key_exists('name', $brand)) {
117 + $plugin["label"] = $brand['name'];
140 118 }
119 + if (array_key_exists('author', $brand)) {
120 + $plugin["value"] = str_replace($author, $brand['author'], $plugin["value"]);
121 + }
122 + if (array_key_exists('description', $brand)) {
123 + $plugin["debug"] = str_replace($author, $brand['author'], $plugin["debug"]);
124 + }
125 + $plugins["wp-plugins-active"]["fields"][$title] = $plugin;
141 126 }
142 127 }
143 128 return $plugins;
144 129 }
@@ -144,13 +129,12 @@
144 129 }
145 130
146 131 public function settingsLink($links, $file) {
147 132 #XNOTE: Fix this
148 - if ( $file == plugin_basename( dirname(__FILE__).'/plugin.php' ) ) {
149 - $brand = $this->bvinfo->getPluginWhitelabelInfo();
150 - if (!array_key_exists('hide_plugin_details', $brand)) {
151 - // phpcs:ignore WordPress.WP.I18n.MissingArgDomain
152 - $links[] = '<a href="'.$this->mainUrl().'">'.__('Settings').'</a>';
133 + if ( $file == plugin_basename( dirname(__FILE__).'/blogvault.php' ) ) {
134 + $brand = $this->bvinfo->getBrandInfo();
135 + if (!$brand || !array_key_exists('hide_plugin_details', $brand)) {
136 + $links[] = '<a href="'.$this->mainUrl().'">'.__( 'Settings' ).'</a>';
153 137 }
154 138 }
155 139 return $links;
156 140 }
@@ -155,10 +139,10 @@
155 139 return $links;
156 140 }
157 141
158 142 public function getPluginLogo() {
159 - $brand = $this->bvinfo->getPluginWhitelabelInfo();
160 - if (array_key_exists('logo', $brand)) {
143 + $brand = $this->bvinfo->getBrandInfo();
144 + if (is_array($brand) && array_key_exists('logo', $brand)) {
161 145 return $brand['logo'];
162 146 }
163 147 return $this->bvinfo->logo;
164 148 }
@@ -163,10 +147,10 @@
163 147 return $this->bvinfo->logo;
164 148 }
165 149
166 150 public function getWebPage() {
167 - $brand = $this->bvinfo->getPluginWhitelabelInfo();
168 - if (array_key_exists('webpage', $brand)) {
151 + $brand = $this->bvinfo->getBrandInfo();
152 + if (is_array($brand) && array_key_exists('webpage', $brand)) {
169 153 return $brand['webpage'];
170 154 }
171 155 return $this->bvinfo->webpage;
172 156 }
@@ -175,10 +159,8 @@
175 159 require_once dirname( __FILE__ ) . '/recover.php';
176 160 $bvnonce = wp_create_nonce("bvnonce");
177 161 $public = WPRAccount::getApiPublicKey($this->settings);
178 162 $secret = WPRRecover::defaultSecret($this->settings);
179 - $ctag = WPRRecover::connectionTag($this->settings);
180 - $server_ip = WPRHelper::getStringParamEscaped('SERVER', 'SERVER_ADDR', 'attr');
181 163 $tags = "<input type='hidden' name='url' value='".esc_attr($this->siteinfo->wpurl())."'/>\n".
182 164 "<input type='hidden' name='homeurl' value='".esc_attr($this->siteinfo->homeurl())."'/>\n".
183 165 "<input type='hidden' name='siteurl' value='".esc_attr($this->siteinfo->siteurl())."'/>\n".
184 166 "<input type='hidden' name='dbsig' value='".esc_attr($this->siteinfo->dbsig(false))."'/>\n".
@@ -184,12 +166,11 @@
184 166 "<input type='hidden' name='dbsig' value='".esc_attr($this->siteinfo->dbsig(false))."'/>\n".
185 167 "<input type='hidden' name='plug' value='".esc_attr($this->bvinfo->plugname)."'/>\n".
186 168 "<input type='hidden' name='adminurl' value='".esc_attr($this->mainUrl())."'/>\n".
187 169 "<input type='hidden' name='bvversion' value='".esc_attr($this->bvinfo->version)."'/>\n".
188 - "<input type='hidden' name='serverip' value='".$server_ip."'/>\n".
170 + "<input type='hidden' name='serverip' value='".esc_attr($_SERVER["SERVER_ADDR"])."'/>\n".
189 171 "<input type='hidden' name='abspath' value='".esc_attr(ABSPATH)."'/>\n".
190 172 "<input type='hidden' name='secret' value='".esc_attr($secret)."'/>\n".
191 - "<input type='hidden' name='bvctag' value='".esc_attr($ctag)."'/>\n".
192 173 "<input type='hidden' name='public' value='".esc_attr($public)."'/>\n".
193 174 "<input type='hidden' name='bvnonce' value='".esc_attr($bvnonce)."'/>\n";
194 175 return $tags;
195 176 }
@@ -214,20 +195,13 @@
214 195 require_once dirname( __FILE__ ) . "/admin/account_details.php";
215 196 }
216 197
217 198 public function adminPage() {
218 - $bvnonce = WPRHelper::getRawParam('REQUEST', 'bvnonce');
219 - if ($bvnonce && wp_verify_nonce($bvnonce, 'bvnonce')) {
199 + if (isset($_REQUEST['bvnonce']) && wp_verify_nonce( $_REQUEST['bvnonce'], 'bvnonce' )) {
220 200 $info = array();
221 201 $this->siteinfo->basic($info);
222 -
223 - $pubkey = WPRHelper::getRawParam('REQUEST', 'pubkey');
224 -
225 - if (!empty($pubkey)) {
226 - $pubkey = WPRAccount::sanitizeKey($pubkey);
227 - $this->bvapi->pingbv('/bvapi/disconnect', $info, $pubkey);
228 - WPRAccount::remove($this->settings, $pubkey);
229 - }
202 + $this->bvapi->pingbv('/bvapi/disconnect', $info, $_REQUEST['pubkey']);
203 + WPRAccount::remove($this->settings, $_REQUEST['pubkey']);
230 204 }
231 205 if (WPRAccount::isConfigured($this->settings)) {
232 206 if (!isset($_REQUEST['add_account'])) {
233 207 $this->showAccountDetailsPage();
@@ -238,17 +212,17 @@
238 212 $this->showAddAccountPage();
239 213 }
240 214 }
241 215
242 - public function initWhitelabel($plugins) {
243 - if (!is_array($plugins) || !$this->bvinfo->canWhiteLabel()) {
216 + public function initBranding($plugins) {
217 + $slug = $this->bvinfo->slug;
218 +
219 + if (!is_array($plugins) || !isset($slug, $plugins)) {
244 220 return $plugins;
245 221 }
246 - $whitelabel_infos = $this->bvinfo->getPluginsWhitelabelInfos();
247 - foreach ($whitelabel_infos as $slug => $brand) {
248 - if (!isset($slug) || !$this->bvinfo->canWhiteLabel($slug) || !array_key_exists($slug, $plugins) || !is_array($brand)) {
249 - continue;
250 - }
222 +
223 + $brand = $this->bvinfo->getBrandInfo();
224 + if (is_array($brand)) {
251 225 if (array_key_exists('hide', $brand)) {
252 226 unset($plugins[$slug]);
253 227 } else {
254 228 if (array_key_exists('name', $brand)) {
@@ -276,5 +250,5 @@
276 250 }
277 251 return $plugins;
278 252 }
279 253 }
280 -endif;
254 +endif;