PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 4.0.5.4
Adminify – White Label, Admin Menu Editor, Login Customizer v4.0.5.4
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/Admin/Frames/Frames.php +18 -51 4.3.24.0.5.4 View file →
@@ -1,9 +1,9 @@
1 1 <?php
2 2
3 -namespace PXLBSAdminify\Inc\Admin\Frames;
3 +namespace WPAdminify\Inc\Admin\Frames;
4 4
5 -use PXLBSAdminify\Inc\Utils;
5 +use WPAdminify\Inc\Utils;
6 6
7 7 // no direct access allowed
8 8 if (!defined('ABSPATH')) {
9 9 exit;
@@ -28,66 +28,33 @@
28 28 add_filter("language_attributes", [$this, "page_attribute"]);
29 29 add_action('admin_enqueue_scripts', [$this, 'load_scripts']);
30 30
31 31 // Reload the page after plugin activation/deactivation
32 - // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- read-only check, no state change.
33 32 if ( isset( $_GET['activate'] ) || isset( $_GET['activate-multi'] ) || isset( $_GET['deactivate'] ) || isset( $_GET['deactivate-multi'] ) ) {
34 - add_action('admin_footer', [$this, 'render_reload_script']);
33 + self::custom_plugin_change_reload();
35 34 }
36 35 }
36 +
37 + static function custom_plugin_change_reload($actual_link = null) {
38 + // if (shortcode_exists('ssa_booking')) {
39 + // return;
40 + // } Commented out to avoid issues with shortcode existence check as this plugin using iframe inside it.
37 41
38 - public static function render_reload_script() {
39 - self::custom_plugin_change_reload();
40 - }
41 -
42 - /**
43 - * Break the current page out of the Adminify UI iframe.
44 - *
45 - * @param string|null $actual_link Optional. URL to send the parent window to.
46 - * When null, the parent simply reloads.
47 - * @return void
48 - */
49 - public static function custom_plugin_change_reload( $actual_link = null ) {
50 - if ( null !== $actual_link ) {
51 - // wp_json_encode(), not esc_js(): esc_js() turns "&" into "&amp;",
52 - // which a classic <script> does not decode, breaking query args.
53 - echo '<script>parent.location.replace(' . wp_json_encode(
54 - esc_url_raw( $actual_link ),
55 - JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX_APOS | JSON_HEX_QUOT
56 - ) . ');</script>';
57 -
58 - // The reload() below would abort the replace() navigation above.
59 - return;
42 + if (!is_null($actual_link)) {
43 + echo "<script type='text/javascript'>
44 + parent.location.replace('$actual_link');
45 + </script>";
46 + return;
47 + }else{
48 + echo '<script type="text/javascript">
49 + parent.location.reload();
50 + </script>';
60 51 }
61 -
62 - echo '<script>parent.location.reload();</script>';
63 52 }
64 53
65 - /**
66 - * Break out of the Adminify UI iframe, decided by the browser.
67 - *
68 - * Same job as custom_plugin_change_reload(), for requests that could not
69 - * be classified server-side because the environment strips Fetch Metadata
70 - * headers (see Utils::has_fetch_metadata()). The script checks the frame
71 - * it actually runs in, so a genuine top-level load is left alone.
72 - *
73 - * @param string $actual_link URL to send the parent window to.
74 - * @return void
75 - */
76 - public static function maybe_break_out_of_frame( $actual_link ) {
77 - $url = wp_json_encode(
78 - esc_url_raw( $actual_link ),
79 - JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX_APOS | JSON_HEX_QUOT
80 - );
81 -
82 - echo '<script>(function(){var f;try{f=window.frameElement;}catch(e){return;}'
83 - . 'if(!f||f.id!=="frame-adminify-app--iframe")return;'
84 - . 'parent.location.replace(' . $url . ');})();</script>';
85 - }
86 -
87 54 public function load_scripts()
88 55 {
89 - wp_enqueue_style('frame-adminify--frame', PXLBSADMINIFY_ASSETS . 'admin/css/frame' . Utils::assets_ext('.css'), [], PXLBSADMINIFY_VER);
56 + wp_enqueue_style('frame-adminify--frame', WP_ADMINIFY_ASSETS . 'admin/css/frame' . Utils::assets_ext('.css'), [], WP_ADMINIFY_VER);
90 57 }
91 58
92 59 public function page_attribute($attr)
93 60 {