PluginProbe
Defender Security – Malware Scanner, Login Security & Firewall / 5.5.1
Defender Security – Malware Scanner, Login Security & Firewall v5.5.1
6.3.0 6.2.3 6.2.4 6.2.0 6.2.1 6.2.2 6.1.0 5.3.1 5.4.0 5.4.1 5.5.0 5.5.1 5.6.0 5.6.1 5.6.2 5.7.0 5.7.1 5.7.2 5.8.0 5.8.1 5.9.0 6.0.0 6.0.1 3.0.1 3.1.0 All 141 releases
defender-security / src / class-bootstrap.php

class-bootstrap.php in Defender Security – Malware Scanner, Login Security & Firewall 5.5.1, at src/class-bootstrap.php

91 lines 2.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace WP_Defender;
4
5 use WP_Defender\Traits\Defender_Bootstrap;
6
7 /**
8 * Class Bootstrap
9 *
10 * @package WP_Defender
11 */
12 class Bootstrap {
13 use Defender_Bootstrap;
14
15 /**
16 * Activation.
17 */
18 public function activation_hook(): void {
19 $this->activation_hook_common();
20 $this->set_free_installation_timestamp();
21 }
22
23 /**
24 * Add option with plugin install date.
25 *
26 * @since 2.4
27 */
28 protected function set_free_installation_timestamp(): void {
29 // It's for both cases because don’t have a Pro checking during plugin activation.
30 if ( empty( get_site_option( 'defender_free_install_date' ) ) ) {
31 update_site_option( 'defender_free_install_date', time() );
32 }
33 }
34
35 /**
36 * Load all modules.
37 */
38 public function init_modules(): void {
39 $this->init_modules_common();
40 $this->init_free_dashboard();
41 }
42
43 /**
44 * Load Free Dashboard module.
45 */
46 public function init_free_dashboard(): void {
47 $file_path = defender_path( 'extra/free-dashboard/module.php' );
48 if ( file_exists( $file_path ) ) {
49 require_once $file_path;
50
51 add_filter( 'wdev_email_message_' . DEFENDER_PLUGIN_BASENAME, array( $this, 'defender_ads_message' ) );
52
53 $screen_prefix = 'defender';
54 $screen_suffix = is_multisite() ? '-network' : '';
55
56 $free_install_date = get_site_option( 'defender_free_install_date', false );
57
58 do_action(
59 'wpmudev_register_notices',
60 'defender',
61 array(
62 'basename' => DEFENDER_PLUGIN_BASENAME,
63 'title' => 'Defender',
64 'wp_slug' => 'defender-security',
65 'cta_email' => __( 'Get Secure!', 'defender-security' ),
66 'installed_on' => $free_install_date ?: time(),
67 'screens' => array(
68 'toplevel_page_wp-defender' . $screen_suffix,
69 $screen_prefix . '_page_wdf-hardener' . $screen_suffix,
70 $screen_prefix . '_page_wdf-scan' . $screen_suffix,
71 $screen_prefix . '_page_wdf-logging' . $screen_suffix,
72 $screen_prefix . '_page_wdf-ip-lockout' . $screen_suffix,
73 $screen_prefix . '_page_wdf-waf' . $screen_suffix,
74 $screen_prefix . '_page_wdf-2fa' . $screen_suffix,
75 $screen_prefix . '_page_wdf-advanced-tools' . $screen_suffix,
76 $screen_prefix . '_page_wdf-notification' . $screen_suffix,
77 $screen_prefix . '_page_wdf-setting' . $screen_suffix,
78 ),
79 )
80 );
81 }
82 }
83
84 /**
85 * @return string
86 */
87 public function defender_ads_message(): string {
88 return __( "You're awesome for installing Defender! Are you interested in how to make the most of this plugin? We've collected all the best security resources we know in a single email - just for users of Defender!", 'defender-security' );
89 }
90 }
91