PluginProbe ʕ •ᴥ•ʔ
CookieYes – Cookie Banner for Cookie Consent (Easy to setup GDPR/CCPA Compliant Cookie Notice) / 3.5.0
CookieYes – Cookie Banner for Cookie Consent (Easy to setup GDPR/CCPA Compliant Cookie Notice) v3.5.0
3.5.1 3.5.0 3.4.2 trunk 1.0.1 1.0.3 1.2 1.2.1 1.2.2 1.3 1.3.1 1.3.2 1.4 1.4.1 1.4.2 1.4.3 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.1.2 2.1.3 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.2.0 3.2.1 3.2.10 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.3.9.1 3.4.0 3.4.1
cookie-law-info / legacy / includes / class-cookie-law-info-activator.php
cookie-law-info / legacy / includes Last commit date
class-cookie-law-info-activator.php 1 month ago class-cookie-law-info-cookieyes.php 1 month ago class-cookie-law-info-deactivator.php 1 month ago class-cookie-law-info-i18n.php 1 month ago class-cookie-law-info-languages.php 1 month ago class-cookie-law-info-loader.php 1 month ago class-cookie-law-info-review-request.php 1 month ago class-cookie-law-info.php 1 month ago index.php 1 month ago
class-cookie-law-info-activator.php
143 lines
1 <?php
2
3 if ( ! defined( 'ABSPATH' ) ) {
4 exit;
5 }
6
7 /**
8 * Fired during plugin activation
9 *
10 * @link http://cookielawinfo.com/
11 * @since 1.6.6
12 *
13 * @package Cookie_Law_Info
14 * @subpackage Cookie_Law_Info/includes
15 */
16
17 /**
18 * Fired during plugin activation.
19 *
20 * This class defines all code necessary to run during the plugin's activation.
21 *
22 * @since 1.6.6
23 * @package Cookie_Law_Info
24 * @subpackage Cookie_Law_Info/includes
25 * @author WebToffee <info@webtoffee.com>
26 */
27 class Cookie_Law_Info_Activator {
28
29 /**
30 * Short Description. (use period)
31 *
32 * Long Description.
33 *
34 * @since 1.6.6
35 */
36 private static $db_updates = array(
37 '1.9.5' => array(
38 'wt_cli_update_195_db_version',
39 ),
40 );
41
42 public static function init() {
43 add_action( 'init', array( __CLASS__, 'check_version' ), 5 );
44 }
45
46 public static function activate() {
47 global $wpdb;
48 require_once ABSPATH . 'wp-admin/includes/upgrade.php';
49 Cookie_Law_Info::check_for_upgrade();
50
51 if ( is_multisite() ) {
52 // Get all blogs in the network and activate plugin on each one
53 $blog_ids = $wpdb->get_col( "SELECT blog_id FROM $wpdb->blogs" ); // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching
54 foreach ( $blog_ids as $blog_id ) {
55 switch_to_blog( $blog_id );
56 self::install_tables();
57 Cookie_Law_Info::cli_patches();
58 restore_current_blog();
59 }
60 } else {
61 self::install_tables();
62 Cookie_Law_Info::cli_patches();
63 }
64
65 }
66 public static function install_tables() {
67 global $wpdb;
68 // install necessary tables
69 }
70 public static function needs_db_update() {
71 $current_db_version = get_option( 'wt_cli_db_version', Cookie_Law_Info::$db_initial_version ); // @since 1.9.6 introduced DB migrations
72 $updates = self::get_db_update_callbacks();
73 $update_versions = array_keys( $updates );
74 usort( $update_versions, 'version_compare' );
75
76 return ! is_null( $current_db_version ) && version_compare( $current_db_version, end( $update_versions ), '<' );
77 }
78
79 public static function get_db_update_callbacks() {
80 return self::$db_updates;
81 }
82
83 public static function update_db_version( $version = null ) {
84 update_option( 'wt_cli_db_version', is_null( $version ) ? CLI_VERSION : $version );
85 }
86
87 private static function maybe_update_db_version() {
88
89 if ( self::needs_db_update() ) {
90 self::update();
91 } else {
92 self::update_db_version(); // First time install
93 }
94 }
95
96 private static function update() {
97 $current_db_version = get_option( 'wt_cli_db_version', Cookie_Law_Info::$db_initial_version );
98
99 foreach ( self::get_db_update_callbacks() as $version => $update_callbacks ) {
100
101 if ( version_compare( $current_db_version, $version, '<' ) ) {
102 foreach ( $update_callbacks as $update_callback ) {
103 self::$update_callback();
104 }
105 }
106 }
107 }
108
109 private static function wt_cli_update_195_db_version() {
110
111 if ( Cookie_Law_Info::maybe_first_time_install() === true ) {
112 self::update_cookie_db_version( '2.0' );
113 } else {
114 self::update_cookie_db_version( '1.0' );
115 }
116 self::update_db_version();
117 }
118 /**
119 * Check the plugin version and run the updater is required.
120 *
121 * This check is done on all requests and runs if the versions do not match.
122 */
123 public static function check_version() {
124 if ( ! defined( 'IFRAME_REQUEST' ) && version_compare( get_option( 'wt_cli_version', '1.9.5' ), CLI_VERSION, '<' ) ) {
125 self::install();
126 }
127 }
128 private static function update_plugin_version() {
129 update_option( 'wt_cli_version', CLI_VERSION );
130 }
131 public static function install() {
132 self::maybe_update_db_version();
133 self::update_plugin_version();
134 }
135 public static function update_cookie_db_version( $version = null ) {
136 update_option( 'wt_cli_cookie_db_version', is_null( $version ) ? '1.0' : $version );
137 }
138 public static function get_cookie_db_version() {
139 return get_option( 'wt_cli_cookie_db_version', false );
140 }
141 }
142 Cookie_Law_Info_Activator::init();
143