PluginProbe ʕ •ᴥ•ʔ
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode / 4.2.8
Cookiebot by Usercentrics – Automatic Cookie Banner for GDPR/CCPA & Google Consent Mode v4.2.8
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 / pages / Multiple_Page.php
cookiebot / src / settings / pages Last commit date
Dashboard_Page.php 3 years ago Debug_Page.php 3 years ago Gtm_Page.php 3 years ago Iab_Page.php 4 years ago Legislations_Page.php 4 years ago Multiple_Page.php 3 years ago Settings_Page.php 3 years ago Settings_Page_Interface.php 3 years ago Support_Page.php 3 years ago
Multiple_Page.php
82 lines
1 <?php
2
3 namespace cybot\cookiebot\settings\pages;
4
5 use cybot\cookiebot\lib\Cookiebot_WP;
6 use cybot\cookiebot\lib\Supported_Regions;
7 use InvalidArgumentException;
8 use function cybot\cookiebot\lib\asset_url;
9 use function cybot\cookiebot\lib\include_view;
10
11 class Multiple_Page implements Settings_Page_Interface {
12
13 private function selectedRegionList() {
14 $countries = Supported_Regions::get();
15 $list = explode( ', ', esc_attr( get_option( 'cookiebot-second-banner-regions' ) ) );
16 $ccpa = esc_attr( get_option( 'cookiebot-ccpa' ) );
17
18 if ( $ccpa === '1' && ! in_array( 'US-06', $list, true ) ) {
19 array_push( $list, 'US-06' );
20 }
21
22 $selected = array();
23
24 foreach ( $list as $item ) {
25 if ( isset( $countries[ $item ] ) ) {
26 $selected[ $item ] = $countries[ $item ];
27 }
28 }
29
30 return $selected;
31 }
32
33 private function retroSecondaryId() {
34 $ccpa_group_id = esc_attr( get_option( 'cookiebot-ccpa-domain-group-id' ) );
35 $secondary_group_id = esc_attr( get_option( 'cookiebot-second-banner-id' ) );
36
37 if ( $ccpa_group_id && ! $secondary_group_id ) {
38 $secondary_group_id = $ccpa_group_id;
39 update_option( 'cookiebot-second-banner-id', $ccpa_group_id );
40 delete_option( 'cookiebot-ccpa-domain-group-id' );
41 }
42
43 return $secondary_group_id;
44 }
45
46 public function getCountryName( $code ) {
47 $countries = Supported_Regions::get();
48
49 return $countries[ $code ];
50 }
51
52 /**
53 * @throws InvalidArgumentException
54 */
55 public function display() {
56 $args = array(
57 'cbid' => Cookiebot_WP::get_cbid(),
58 'secondary_group_id' => $this->retroSecondaryId(),
59 'supported_regions' => Supported_Regions::get(),
60 'ccpa_compatibility' => esc_attr( get_option( 'cookiebot-ccpa' ) ),
61 'selected_regions' => $this->selectedRegionList(),
62 );
63
64 wp_enqueue_style(
65 'cookiebot-multiple-page-css',
66 asset_url( 'css/backend/multiple_page.css' ),
67 null,
68 Cookiebot_WP::COOKIEBOT_PLUGIN_VERSION
69 );
70
71 wp_enqueue_script(
72 'cookiebot-multiple-page-js',
73 asset_url( 'js/backend/multiple-page.js' ),
74 null,
75 Cookiebot_WP::COOKIEBOT_PLUGIN_VERSION,
76 true
77 );
78
79 include_view( 'admin/settings/multiple-configuration/page.php', $args );
80 }
81 }
82