PluginProbe
GiveWP – Donation Plugin and Fundraising Platform / 4.16.8.1
GiveWP – Donation Plugin and Fundraising Platform v4.16.8.1
4.16.9 4.16.8.1 4.16.8 4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 All 255 releases
give / src / Tracking / Events / ThemeTracking.php

ThemeTracking.php in GiveWP – Donation Plugin and Fundraising Platform 4.16.8.1, at src/Tracking/Events/ThemeTracking.php

63 lines 1.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Give\Tracking\Events;
4
5 use Give\Tracking\Contracts\TrackEvent;
6 use Give\Tracking\Enum\EventType;
7 use Give\Tracking\TrackingData\ThemeData;
8 use Give\Tracking\TrackRegisterer;
9 use Give\Traits\HasWpTheme;
10 use WP_Upgrader;
11
12 /**
13 * Class ThemeTracking
14 *
15 * This class setup event to send tracked data request when active theme changes.
16 *
17 * @package Give\Tracking\Admin\Events
18 * @since 2.10.0
19 */
20 class ThemeTracking extends TrackEvent
21 {
22 use HasWpTheme;
23
24 /**
25 * @var string
26 */
27 protected $dataClassName = ThemeData::class;
28
29 /**
30 * GivePluginSettingsTracking constructor.
31 *
32 * @param TrackRegisterer $track
33 */
34 public function __construct(TrackRegisterer $track)
35 {
36 $this->eventType = new EventType(EventType::THEME_SWITCHED);
37 parent::__construct($track);
38 }
39
40 /**
41 * Theme update tracking handler.
42 *
43 * @since 2.10.0
44 *
45 * @param bool|WP_Upgrader $upgrader
46 * @param array $data
47 */
48 public function themeUpdateTrackingHandler($upgrader = false, $data = [])
49 {
50 // Return if it's not a WordPress core update.
51 if ( ! $upgrader || ! isset($data['type']) || 'theme' !== $data['type']) {
52 return;
53 }
54
55 foreach ($data['themes'] as $theme) {
56 if (get_stylesheet() === $theme || get_template() === $theme || $this->isParentTheme($theme)) {
57 $this->trackId = new EventType(EventType::THEME_UPDATED);
58 $this->record();
59 }
60 }
61 }
62 }
63