PluginProbe ʕ •ᴥ•ʔ
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode / 4.0.1
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode v4.0.1
4.7.2 4.7.1 trunk 2.3.0 2.4.0 2.4.1 2.4.2 2.5.0 3.0.0 3.0.1 3.1.0 3.10.0 3.10.1 3.11.1 3.11.2 3.11.3 3.2.0 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.6.2 3.6.5 3.6.6 3.7.0 3.7.1 3.8.0 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.2.0 4.2.1 4.2.10 4.2.11 4.2.12 4.2.13 4.2.14 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.8 4.2.9 4.3.0 4.3.1 4.3.10 4.3.11 4.3.12 4.3.2 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.3.7.1 4.3.8 4.3.9 4.3.9.1 4.4.0 4.4.1 4.4.2 4.5.0 4.5.1 4.5.10 4.5.11 4.5.2 4.5.3 4.5.4 4.5.5 4.5.6 4.5.7 4.5.8 4.5.9 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.7.0
cookiebot / src / settings / Network_Menu_Settings.php
cookiebot / src / settings Last commit date
pages 4 years ago Menu_Settings.php 4 years ago Network_Menu_Settings.php 4 years ago
Network_Menu_Settings.php
122 lines
1 <?php
2
3 namespace cybot\cookiebot\settings;
4
5 use cybot\cookiebot\lib\Cookiebot_WP;
6 use cybot\cookiebot\settings\pages\Support_Page;
7 use InvalidArgumentException;
8 use function cybot\cookiebot\lib\asset_url;
9 use function cybot\cookiebot\lib\include_view;
10
11 class Network_Menu_Settings {
12
13 const ICON = 'data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNzIgNTQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0iI0ZGRkZGRiIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBkPSJNNDYuODcyNTkwMyA4Ljc3MzU4MzM0QzQxLjk0MzkwMzkgMy4zODI5NTAxMSAzNC44NDI0OTQ2IDAgMjYuOTQ4MjgxOSAwIDEyLjA2NTE1NjggMCAwIDEyLjAyNDQ3NzQgMCAyNi44NTc0MjE5YzAgMTQuODMyOTQ0NSAxMi4wNjUxNTY4IDI2Ljg1NzQyMTkgMjYuOTQ4MjgxOSAyNi44NTc0MjE5IDcuODk0MjEyNyAwIDE0Ljk5NTYyMi0zLjM4Mjk1MDIgMTkuOTI0MzA4NC04Ljc3MzU4MzQtMi44ODk2OTY3LTEuMzY4ODY2My01LjM5OTMxMS0zLjQwNTQzOS03LjMyODA4MzgtNS45MDk2MzU4LTMuMTIxNDMwNiAzLjIwOTQxMDQtNy40OTI5OTQ0IDUuMjA0MTI5MS0xMi4zMzIwMjU4IDUuMjA0MTI5MS05LjQ4NDM0NDQgMC0xNy4xNzI5MjQ3LTcuNjYyNjU3Mi0xNy4xNzI5MjQ3LTE3LjExNTAyMzhzNy42ODg1ODAzLTE3LjExNTAyMzcgMTcuMTcyOTI0Ny0xNy4xMTUwMjM3YzQuNzIzNDgyMiAwIDkuMDAxNTU1MiAxLjkwMDU5MzkgMTIuMTA2MjkyIDQuOTc2MzA5IDEuOTU2OTIzNy0yLjY0MTEzMSA0LjU1MDAyNjMtNC43ODU1MTgzIDcuNTUzODE3Ni02LjIwODQzMTg2eiIvPjxwYXRoIGQ9Ik01NS4zODAzMjgyIDQyLjY1MDE5OTFDNDYuMzMzNzIyNyA0Mi42NTAxOTkxIDM5IDM1LjM0MTIwMzEgMzkgMjYuMzI1MDk5NiAzOSAxNy4zMDg5OTYgNDYuMzMzNzIyNyAxMCA1NS4zODAzMjgyIDEwYzkuMDQ2NjA1NSAwIDE2LjM4MDMyODIgNy4zMDg5OTYgMTYuMzgwMzI4MiAxNi4zMjUwOTk2IDAgOS4wMTYxMDM1LTcuMzMzNzIyNyAxNi4zMjUwOTk1LTE2LjM4MDMyODIgMTYuMzI1MDk5NXptLjAyMTMwOTItNy43NTU2MzQyYzQuNzM3MDI3NiAwIDguNTc3MTQ3MS0zLjgyNzE3MiA4LjU3NzE0NzEtOC41NDgyMjc5IDAtNC43MjEwNTYtMy44NDAxMTk1LTguNTQ4MjI4LTguNTc3MTQ3MS04LjU0ODIyOC00LjczNzAyNzUgMC04LjU3NzE0NyAzLjgyNzE3Mi04LjU3NzE0NyA4LjU0ODIyOCAwIDQuNzIxMDU1OSAzLjg0MDExOTUgOC41NDgyMjc5IDguNTc3MTQ3IDguNTQ4MjI3OXoiLz48L2c+PC9zdmc+';
14
15 public function add_menu() {
16 add_action( 'network_admin_menu', array( $this, 'add_network_menu' ), 1 );
17 add_action(
18 'network_admin_edit_cookiebot_network_settings',
19 array(
20 $this,
21 'network_settings_save',
22 )
23 );
24 }
25
26 /**
27 * Cookiebot_WP Add menu for network sites
28 *
29 * @version 2.2.0
30 * @since 2.2.0
31 */
32 public function add_network_menu() {
33 add_menu_page(
34 'Cookiebot',
35 __( 'Cookiebot', 'cookiebot' ),
36 'manage_network_options',
37 'cookiebot_network',
38 array( $this, 'display' ),
39 static::ICON
40 );
41 add_submenu_page(
42 'cookiebot_network',
43 __( 'Cookiebot Settings', 'cookiebot' ),
44 __( 'Settings', 'cookiebot' ),
45 'network_settings_page',
46 'cookiebot_network',
47 array( $this, 'display' )
48 );
49 add_submenu_page(
50 'cookiebot_network',
51 __( 'Cookiebot Support', 'cookiebot' ),
52 __( 'Support', 'cookiebot' ),
53 'network_settings_page',
54 'cookiebot_support',
55 array( new Support_Page(), 'display' )
56 );
57 }
58
59 /**
60 * Cookiebot_WP Cookiebot save network settings
61 *
62 * @version 2.2.0
63 * @since 2.2.0
64 */
65 public function network_settings_save() {
66 check_admin_referer( 'cookiebot-network-settings' );
67
68 update_site_option( 'cookiebot-cbid', $_POST['cookiebot-cbid'] );
69 update_site_option( 'cookiebot-script-tag-uc-attribute', $_POST['cookiebot-script-tag-uc-attribute'] );
70 update_site_option( 'cookiebot-script-tag-cd-attribute', $_POST['cookiebot-script-tag-cd-attribute'] );
71 update_site_option( 'cookiebot-autoupdate', $_POST['cookiebot-autoupdate'] );
72 update_site_option( 'cookiebot-nooutput', $_POST['cookiebot-nooutput'] );
73 update_site_option( 'cookiebot-nooutput-admin', $_POST['cookiebot-nooutput-admin'] );
74 update_site_option( 'cookiebot-cookie-blocking-mode', $_POST['cookiebot-cookie-blocking-mode'] );
75
76 wp_safe_redirect(
77 add_query_arg(
78 array(
79 'page' => 'cookiebot_network',
80 'updated' => true,
81 ),
82 network_admin_url( 'admin.php' )
83 )
84 );
85 exit;
86 }
87
88 /**
89 * Cookiebot_WP Cookiebot network setting page
90 *
91 * @throws InvalidArgumentException
92 * @since 2.2.0
93 * @version 2.2.0
94 */
95 public function display() {
96 $cbm = get_site_option( 'cookiebot-cookie-blocking-mode', 'manual' );
97
98 wp_enqueue_script(
99 'cookiebot-network-settings-page-js',
100 asset_url( 'js/backend/network-settings-page.js' ),
101 null,
102 Cookiebot_WP::COOKIEBOT_PLUGIN_VERSION,
103 true
104 );
105
106 wp_add_inline_script(
107 'cookiebot-network-settings-page-js',
108 'const cookiebotNetworkSettings = ' . wp_json_encode( array( 'cbm' => esc_attr( $cbm ) ) ),
109 'before'
110 );
111
112 include_view(
113 'admin/settings/network-settings-page.php',
114 array(
115 'cookiebot_gdpr_url' => 'https://www.cookiebot.com/goto/gdpr',
116 'logo' => CYBOT_COOKIEBOT_PLUGIN_URL . 'cookiebot-logo.png',
117 'cbm' => $cbm,
118 )
119 );
120 }
121 }
122