PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backup, Restore, Migration & Clone / 4.8.1
WP STAGING – WordPress Backup, Restore, Migration & Clone v4.8.1
4.9.1 4.9.0 4.8.1 trunk 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.10.0 3.2.0 3.3.1 3.3.2 3.3.3 3.4.1 3.4.3 3.5.0 3.6.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.8.0
wp-staging / Basic / Notices / BasicNotices.php
wp-staging / Basic / Notices Last commit date
BasicNotices.php 3 months ago RatingNotice.php 2 years ago
BasicNotices.php
62 lines
1 <?php
2
3 namespace WPStaging\Basic\Notices;
4
5 use Exception;
6 use WPStaging\Basic\Ajax\ProCronsCleaner;
7 use WPStaging\Framework\Assets\Assets;
8 use WPStaging\Framework\Notices\Notices;
9 use WPStaging\Framework\Traits\NoticesTrait;
10
11 class BasicNotices
12 {
13 use NoticesTrait;
14
15 /** @var bool */
16 private $showAllNotices;
17
18 /** @var RatingNotice */
19 private $ratingNotice;
20
21 /** @var ProCronsCleaner */
22 private $proCronsCleaner;
23
24 /** @var Assets */
25 private $assets;
26
27 public function __construct(Assets $assets, RatingNotice $ratingNotice, ProCronsCleaner $proCronsCleaner)
28 {
29 $this->showAllNotices = Notices::SHOW_ALL_NOTICES;
30 $this->noticesViewPath = WPSTG_VIEWS_DIR . "notices/";
31 $this->assets = $assets;
32 $this->ratingNotice = $ratingNotice;
33 $this->proCronsCleaner = $proCronsCleaner;
34 }
35
36 /**
37 * Load admin notices for FREE version only
38 * @throws Exception
39 */
40 public function renderNotices()
41 {
42 $viewsNoticesPath = $this->noticesViewPath;
43
44 // Only show below notices on WP Staging admin pages
45 if (!$this->isWPStagingAdminPage()) {
46 return;
47 }
48
49 // Show notice "rate the plugin"
50 // We used to have this message on all pages but added a new nonce based authentication check.
51 // As the nonce is not loaded on all pages we had to move this message to wp staging pages only.
52 // @todo add our nonce to all wp staging pages and move this message back to all pages
53 if ($this->showAllNotices || $this->ratingNotice->shouldShowRatingNotice()) {
54 require_once "{$viewsNoticesPath}rating.php";
55 }
56
57 if ($this->showAllNotices || $this->proCronsCleaner->haveProCrons()) {
58 require_once "{$viewsNoticesPath}pro-crons-notice.php";
59 }
60 }
61 }
62