PluginProbe ʕ •ᴥ•ʔ
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode / 4.4.2
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode v4.4.2
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 1 year ago templates 1 year ago Menu_Settings.php 1 year ago Network_Menu_Settings.php 1 year ago
Network_Menu_Settings.php
157 lines
1 <?php
2
3 namespace cybot\cookiebot\settings;
4
5 use cybot\cookiebot\lib\Cookiebot_Frame;
6 use cybot\cookiebot\lib\Cookiebot_WP;
7 use cybot\cookiebot\settings\pages\Support_Page;
8 use InvalidArgumentException;
9 use function cybot\cookiebot\lib\asset_url;
10 use function cybot\cookiebot\lib\include_view;
11
12 class Network_Menu_Settings {
13
14
15 const ICON = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzY0ODFfMzE4MTUpIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01Ljg2MTYgNS44MDUyVjE5LjgxMTRDNS44NjE2IDI3LjUzNjMgMTIuMjAzOSAzMy44MTc2IDIwLjAwMzkgMzMuODE3NkMyNy44MDM4IDMzLjgxNzYgMzQuMTQ2MiAyNy41MzYzIDM0LjE0NjIgMTkuODExNFY1LjgwNTJINS44NjE2Wk0yMCAzOS42MjI4QzguOTc2MzggMzkuNjIwNyAwIDMwLjczNzEgMCAxOS44MTE0VjBINDBWMTkuODExNEM0MCAzMC43Mjk0IDMxLjAzMTQgMzkuNjIwNyAyMCAzOS42MjI4Wk0yMi42ODk0IDI2Ljk0ODZMMjIuNjg4OCAyNi45NDk5SDE1LjkyTDE1LjkzMTIgMjYuOTI2Nkw5Ljk4OTIxIDE2LjU4MjFIMTYuNzY1N0wxOS4wMTA2IDIwLjQ5MDJMMjMuNzEyMiAxMC42NjMxSDMwLjQ4ODhMMjIuNzAzNSAyNi45MTkyTDIyLjcyMDQgMjYuOTQ4NkgyMi42ODk0WiIgZmlsbD0iYmxhY2siLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF82NDgxXzMxODE1Ij4KPHJlY3Qgd2lkdGg9IjQwIiBoZWlnaHQ9IjQwIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=';
16
17 public function add_menu() {
18 add_action( 'network_admin_menu', array( $this, 'add_network_menu' ), 1 );
19 add_action(
20 'network_admin_edit_cookiebot_network_settings',
21 array(
22 $this,
23 'network_settings_save',
24 )
25 );
26 }
27
28 /**
29 * Cookiebot_WP Add menu for network sites
30 *
31 * @version 2.2.0
32 * @since 2.2.0
33 */
34 public function add_network_menu() {
35 add_menu_page(
36 'Cookiebot',
37 __( 'Cookiebot', 'cookiebot' ),
38 'manage_network_options',
39 'cookiebot_network',
40 array( $this, 'display' ),
41 static::ICON
42 );
43 add_submenu_page(
44 'cookiebot_network',
45 __( 'Cookiebot Settings', 'cookiebot' ),
46 __( 'Settings', 'cookiebot' ),
47 'network_settings_page',
48 'cookiebot_network',
49 array( $this, 'display' )
50 );
51 add_submenu_page(
52 'cookiebot_network',
53 __( 'Cookiebot Support', 'cookiebot' ),
54 __( 'Support', 'cookiebot' ),
55 'network_settings_page',
56 'cookiebot_support',
57 array( new Support_Page(), 'display' )
58 );
59 }
60
61 /**
62 * Cookiebot_WP Cookiebot save network settings
63 *
64 * @version 2.2.0
65 * @since 2.2.0
66 */
67 public function network_settings_save() {
68 check_admin_referer( 'cookiebot-network-settings' );
69
70 update_site_option(
71 'cookiebot-cbid',
72 ! empty( $_POST['cookiebot-cbid'] ) ? $_POST['cookiebot-cbid'] : ''
73 );
74 update_site_option(
75 'cookiebot-ruleset-id',
76 ! empty( $_POST['cookiebot-ruleset-id'] ) ? $_POST['cookiebot-ruleset-id'] : ''
77 );
78 update_site_option(
79 'cookiebot-script-tag-uc-attribute',
80 ! empty( $_POST['cookiebot-script-tag-uc-attribute'] ) ? $_POST['cookiebot-script-tag-uc-attribute'] : ''
81 );
82 update_site_option(
83 'cookiebot-script-tag-cd-attribute',
84 ! empty( $_POST['cookiebot-script-tag-cd-attribute'] ) ? $_POST['cookiebot-script-tag-cd-attribute'] : ''
85 );
86 update_site_option(
87 'cookiebot-autoupdate',
88 ! empty( $_POST['cookiebot-autoupdate'] ) ? $_POST['cookiebot-autoupdate'] : ''
89 );
90 update_site_option(
91 'cookiebot-nooutput',
92 ! empty( $_POST['cookiebot-nooutput'] ) ? $_POST['cookiebot-nooutput'] : ''
93 );
94 update_site_option(
95 'cookiebot-nooutput-admin',
96 ! empty( $_POST['cookiebot-nooutput-admin'] ) ? $_POST['cookiebot-nooutput-admin'] : ''
97 );
98 update_site_option(
99 'cookiebot-cookie-blocking-mode',
100 ! empty( $_POST['cookiebot-cookie-blocking-mode'] ) ? $_POST['cookiebot-cookie-blocking-mode'] : ''
101 );
102
103 wp_safe_redirect(
104 add_query_arg(
105 array(
106 'page' => 'cookiebot_network',
107 'updated' => true,
108 ),
109 network_admin_url( 'admin.php' )
110 )
111 );
112 exit;
113 }
114
115 /**
116 * Cookiebot_WP Cookiebot network setting page
117 *
118 * @throws InvalidArgumentException
119 * @since 2.2.0
120 * @version 2.2.0
121 */
122 public function display() {
123 $cbm = get_site_option( 'cookiebot-cookie-blocking-mode', 'manual' );
124
125 wp_enqueue_script(
126 'cookiebot-network-settings-page-js',
127 asset_url( 'js/backend/network-settings-page.js' ),
128 null,
129 Cookiebot_WP::COOKIEBOT_PLUGIN_VERSION,
130 true
131 );
132
133 wp_add_inline_script(
134 'cookiebot-network-settings-page-js',
135 'const cookiebotNetworkSettings = ' . wp_json_encode( array( 'cbm' => esc_attr( $cbm ) ) ),
136 'before'
137 );
138
139 wp_enqueue_style(
140 'cookiebot-settings-page-css',
141 asset_url( 'css/backend/settings-page.css' ),
142 null,
143 Cookiebot_WP::COOKIEBOT_PLUGIN_VERSION
144 );
145
146 include_view(
147 Cookiebot_Frame::get_view_path( true ) . 'network-settings-page.php',
148 array(
149 'cookiebot_gdpr_url' => 'https://www.cookiebot.com/' . Cookiebot_WP::get_manager_language() . '/gdpr/?utm_source=wordpress&utm_medium=referral&utm_campaign=banner',
150 'logo' => CYBOT_COOKIEBOT_PLUGIN_URL . 'cookiebot-logo.png',
151 'cbm' => $cbm,
152 'ruleset_id' => ! empty( get_site_option( 'cookiebot-ruleset-id' ) ) ? get_site_option( 'cookiebot-ruleset-id' ) : 'settings',
153 )
154 );
155 }
156 }
157