PluginProbe
Float menu – awesome floating side menu / 6.1
Float menu – awesome floating side menu v6.1
7.2.5 trunk 2.1 2.2 3.0.1 3.1 3.2.2 3.3.1 3.5 3.5.1 3.5.2 3.5.3. 3.5.4 4.0 4.1 4.1.1 4.2 4.3 4.3.1 4.3.2 5.0 5.0.1 5.0.2 5.0.3 5.1 All 57 releases
← All changes | admin/class-wowp-admin.php +30 -60 trunk6.1 View file →
@@ -15,10 +15,8 @@
15 15 namespace FloatMenuLite;
16 16
17 17 use FloatMenuLite\Admin\AdminActions;
18 18 use FloatMenuLite\Admin\Dashboard;
19 -use FloatMenuLite\Admin\Demo;
20 -use FloatMenuLite\Admin\Settings;
21 19
22 20 defined( 'ABSPATH' ) || exit;
23 21
24 22 class WOWP_Admin {
@@ -24,74 +22,53 @@
24 22 class WOWP_Admin {
25 23 public function __construct() {
26 24 Dashboard::init();
27 25 AdminActions::init();
28 - Demo::init();
26 + $this->includes();
29 27
30 - add_action( 'wp_ajax_' . WOWP_Plugin::PREFIX . '_ajax_settings', [ Settings::class, 'save_item' ] );
31 28 add_action( WOWP_Plugin::PREFIX . '_admin_header_links', [ $this, 'plugin_links' ] );
32 29 add_filter( WOWP_Plugin::PREFIX . '_save_settings', [ $this, 'save_settings' ] );
33 30 add_action( WOWP_Plugin::PREFIX . '_admin_load_assets', [ $this, 'load_assets' ] );
34 31 }
35 32
33 + public function includes(): void {
34 + require_once plugin_dir_path( __FILE__ ) . 'class-settings-helper.php';
35 + }
36 +
36 37 public function plugin_links(): void {
37 - $links = [
38 - 'change' => __( 'Check for Updates', 'float-menu' ),
39 - 'rating' => __( 'Rate Us', 'float-menu', ),
40 - 'pro' => __( 'Pro Plugin', 'float-menu' ),
41 - 'docs' => __( 'Documentation', 'float-menu' ),
42 - 'demo' => __( 'Pro Demo', 'float-menu' ),
43 - ];
44 -
45 - echo '<div class="wpie-links">';
46 -
47 - $i = 1;
48 - foreach ( $links as $slug => $title ) {
49 -
50 - $link = WOWP_Plugin::info( $slug );
51 - if ( empty( $link ) ) {
52 - continue;
53 - }
54 -
55 - if ( $i % 3 === 0 ) {
56 - echo '<span class="wpie-links-divider">|</span>';
57 - }
58 -
59 - echo '<a href="' . esc_url( $link ) . '" class="wowp-link-' . esc_attr( $slug ) . '" target="_blank">' . esc_html( $title ) . '</a>';
60 -
61 - $i ++;
62 - }
63 -
64 - echo '</div>';
38 + ?>
39 + <div class="wpie-links">
40 + <a href="<?php echo esc_url(WOWP_Plugin::info('pro'));?>" target="_blank">PRO Plugin</a>
41 + <a href="<?php echo esc_url(WOWP_Plugin::info('support'));?>" target="_blank">Support</a>
42 + <a href="<?php echo esc_url(WOWP_Plugin::info('rating'));?>" target="_blank" class="wpie-color-orange">Rating</a>
43 + <a href="https://www.wordfence.com/r/a0fe3fadb6e08d58/products/wordfence-free/" class="wpie-color-success" target="_blank">Secure your site</a>
44 + </div>
45 + <?php
65 46 }
66 -
67 47 public function save_settings( $request ) {
68 48
69 - $param = ! empty( $request ) ? map_deep( wp_unslash( $request ), 'sanitize_text_field' ) : [];
49 + $param = ! empty( $request ) ? map_deep( $request, 'sanitize_text_field' ) : [];
70 50
71 - if ( isset( $request['menu_1']['item_text'] ) ) {
72 - $param['menu_1']['item_text'] = map_deep( wp_unslash( $request['menu_1']['item_text'] ), array(
51 + if ( isset( $request['menu_1']['item_tooltip'] ) ) {
52 + $param['menu_1']['item_tooltip'] = map_deep( $request['menu_1']['item_tooltip'], array(
73 53 $this,
74 - 'sanitize_text'
54 + 'sanitize_tooltip'
75 55 ) );
76 56 }
77 57
78 - if ( isset( $request['menu_1']['popupcontent'] ) ) {
79 - $param['menu_1']['popupcontent'] = map_deep( wp_unslash( $request['menu_1']['popupcontent'] ), array(
58 + if ( isset( $request['menu_1']['item_text'] ) ) {
59 + $param['menu_1']['item_text'] = map_deep( $request['menu_1']['item_text'], [
80 60 $this,
81 61 'sanitize_text'
82 - ) );
62 + ] );
83 63 }
84 64
85 - if ( isset( $request['menu_1']['item_link'] ) ) {
86 - $param['menu_1']['item_link'] = map_deep( wp_unslash( $request['menu_1']['item_link'] ), array($this, 'sanitize_link') );
65 + if ( isset( $request['popupcontent'] ) ) {
66 + $param['popupcontent'] = wp_kses_post( wp_unslash( $request['popupcontent'] ) );
87 67 }
88 68
89 - if ( isset( $request['link'] ) ) {
90 - $param['link'] = $this->sanitize_link( wp_unslash( $request['link'] ) );
91 - }
69 + return $param;
92 70
93 - return $param;
94 71 }
95 72
96 73 public function sanitize_text( $text ): string {
97 74 return wp_kses_post( wp_unslash( $text ) );
@@ -100,16 +77,9 @@
100 77 public function sanitize_tooltip( $text ): string {
101 78 return sanitize_text_field( wp_unslash( $text ) );
102 79 }
103 80
104 - public function sanitize_link( $link ) {
105 - if ( wp_http_validate_url( $link ) ) {
106 - return esc_url_raw( $link );
107 - }
108 - return sanitize_text_field( $link );
109 - }
110 81
111 -
112 82 public function load_assets(): void {
113 83
114 84 wp_enqueue_style( 'wp-color-picker' );
115 85 wp_enqueue_script( 'wp-color-picker' );
@@ -118,21 +88,21 @@
118 88 wp_enqueue_media();
119 89
120 90 $handle = WOWP_Plugin::SLUG;
121 91 $version = WOWP_Plugin::info( 'version' );
122 - $url_assets = WOWP_Plugin::url() . 'vendors/';
92 + $url_assets = WOWP_Plugin::url() . 'vendors/';
123 93
124 - $url_fontawesome = $url_assets . 'fontawesome/css/all.min.css';
125 - wp_enqueue_style( $handle . '-fontawesome', $url_fontawesome, null, '7.1' );
126 -
127 - $fonticonpicker_js = $url_assets . 'fonticonpicker/js/jquery.fonticonpicker.js';
94 + $fonticonpicker_js = $url_assets . 'fonticonpicker/fonticonpicker.min.js';
128 95 wp_enqueue_script( $handle . '-fonticonpicker', $fonticonpicker_js, array( 'jquery' ), $version, true );
129 96
130 - $fonticonpicker_css = $url_assets . 'fonticonpicker/css/base/jquery.fonticonpicker.css';
97 + $fonticonpicker_css = $url_assets . 'fonticonpicker/css/fonticonpicker.min.css';
131 98 wp_enqueue_style( $handle . '-fonticonpicker', $fonticonpicker_css, null, $version );
132 99
133 - $fonticonpicker_dark_css = $url_assets . 'fonticonpicker/css/themes/dark-grey-theme/jquery.fonticonpicker.darkgrey.css';
100 + $fonticonpicker_dark_css = $url_assets . 'fonticonpicker/fonticonpicker.darkgrey.min.css';
134 101 wp_enqueue_style( $handle . '-fonticonpicker-darkgrey', $fonticonpicker_dark_css, null, $version );
102 +
103 + $url_fontawesome = $url_assets . 'fontawesome/css/all.min.css';
104 + wp_enqueue_style( 'wowp-fontawesome', $url_fontawesome, null, '6.6' );
135 105
136 106 }
137 107
138 108 }