PluginProbe ʕ •ᴥ•ʔ
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress / 4.0.3
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress v4.0.3
4.17.2 4.17.1 4.17.0 4.16.19 4.16.18 4.16.17 4.16.16 trunk 1.0 1.0.1 1.0.2 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5a 1.1.6 1.1.7 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.4 1.4.1 1.4.2 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.6 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.7 1.7.1 1.7.2 1.8 1.8.1 1.8.10 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 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.1.9 2.2.10 2.2.11 2.2.12 2.2.13 2.2.14 2.2.15 2.2.16 2.2.2 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 3.0 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.15.0 4.15.1 4.15.10 4.15.11 4.15.12 4.15.13 4.15.14 4.15.15 4.15.16 4.15.17 4.15.18 4.15.19 4.15.2 4.15.20 4.15.20.1 4.15.21 4.15.22 4.15.23 4.15.24 4.15.25 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.10 4.16.11 4.16.12 4.16.13 4.16.14 4.16.15 4.16.2 4.16.3 4.16.4 4.16.5 4.16.6 4.16.7 4.16.8 4.16.9 4.2.0 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.7.0 4.8.0 4.9.0
wp-user-avatar / src / Cron.php
wp-user-avatar / src Last commit date
Admin 4 years ago AdminBarDashboardAccess 4 years ago Classes 4 years ago ContentProtection 4 years ago Functions 4 years ago Membership 4 years ago NavigationMenuLinks 4 years ago RegisterActivation 4 years ago ShortcodeParser 4 years ago Themes 4 years ago Widgets 4 years ago lib 4 years ago templates 4 years ago Base.php 4 years ago Cron.php 4 years ago DBTables.php 4 years ago DBUpdates.php 4 years ago RegisterScripts.php 4 years ago eu-vat-rates.json 4 years ago
Cron.php
59 lines
1 <?php
2
3 namespace ProfilePress\Core;
4
5 use ProfilePress\Core\Membership\Models\Subscription\SubscriptionStatus;
6 use ProfilePress\Core\Membership\Repositories\SubscriptionRepository;
7 use ProfilePressVendor\Carbon\CarbonImmutable;
8
9 class Cron
10 {
11 public function __construct()
12 {
13 add_action('init', [$this, 'create_recurring_schedule']);
14
15 add_action('ppress_daily_recurring_job', [$this, 'check_for_expired_subscriptions']);
16 }
17
18 public function create_recurring_schedule()
19 {
20 if ( ! wp_next_scheduled('ppress_daily_recurring_job')) {
21 wp_schedule_event(time(), 'daily', 'ppress_daily_recurring_job');
22 }
23 }
24
25 /**
26 * Check for expired subscriptions once per day and mark them as expired
27 */
28 public function check_for_expired_subscriptions()
29 {
30 $subs = SubscriptionRepository::init()->retrieveBy([
31 'status' => [SubscriptionStatus::ACTIVE, SubscriptionStatus::TRIALLING],
32 'date_column' => 'expiration_date',
33 'start_date' => CarbonImmutable::now('UTC')->subDay()->startOfDay()->toDateTimeString(),
34 'end_date' => CarbonImmutable::now('UTC')->subDay()->endOfDay()->toDateTimeString(),
35 'number' => 0
36 ]);
37
38 if ( ! empty($subs)) {
39
40 foreach ($subs as $sub) {
41 $sub->expire(true);
42 }
43 }
44 }
45
46 /**
47 * @return self
48 */
49 public static function get_instance()
50 {
51 static $instance = null;
52
53 if (is_null($instance)) {
54 $instance = new self();
55 }
56
57 return $instance;
58 }
59 }