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 / ShortcodeParser / MyAccount / view-subscription.tmpl.php
wp-user-avatar / src / ShortcodeParser / MyAccount Last commit date
MyAccountTag.php 4 years ago account-settings.tmpl.php 4 years ago billing-details.tmpl.php 4 years ago change-password.tmpl.php 4 years ago dashboard.tmpl.php 5 years ago edit-profile.tmpl.php 4 years ago email-notifications.tmpl.php 4 years ago index.php 5 years ago orders.tmpl.php 4 years ago subscriptions.tmpl.php 4 years ago view-order.tmpl.php 4 years ago view-subscription.tmpl.php 4 years ago
view-subscription.tmpl.php
143 lines
1 <?php
2
3 use ProfilePress\Core\Membership\Models\Customer\CustomerFactory;
4 use ProfilePress\Core\Membership\Models\Order\OrderFactory;
5 use ProfilePress\Core\Membership\Models\Order\OrderStatus;
6 use ProfilePress\Core\Membership\Models\Subscription\SubscriptionFactory;
7 use ProfilePress\Core\Membership\Models\Subscription\SubscriptionStatus;
8 use ProfilePress\Core\Membership\PaymentMethods\PaymentMethods;
9 use ProfilePress\Core\ShortcodeParser\MyAccount\MyAccountTag;
10
11 if ( ! defined('ABSPATH')) {
12 exit;
13 }
14
15 if ( ! is_user_logged_in()) return;
16
17 $sub = SubscriptionFactory::fromId(ppressGET_var('sub_id'));
18
19 $customer_id = CustomerFactory::fromUserId(get_current_user_id())->id;
20
21 $payment_method = PaymentMethods::get_instance()->get_by_id($sub->get_payment_method());
22
23 ?>
24 <div class="profilepress-myaccount-orders-subs">
25
26 <?php
27
28 if ( ! $sub->exists() || $sub->customer_id != $customer_id) :
29 printf('<p class="profilepress-myaccount-alert pp-alert-danger">%s</p>', esc_html__('Invalid subscription', 'wp-user-avatar'));
30 else :
31 $plan = ppress_get_plan($sub->plan_id);
32 $sub_orders = $sub->get_all_orders();
33
34 $parent_order = OrderFactory::fromId($sub->parent_order_id);
35 $actions = [];
36
37 if ( ! $sub->has_cancellation_requested() && $sub->can_cancel()) {
38 $actions['cancel'] = esc_html__('Cancel', 'wp-user-avatar');
39 }
40
41 /**
42 * @todo when plan group launches, do not show resubscribe button if expired/cancelled plan belongs to
43 * a plan group where the customer has an active plan
44 */
45 if ($sub->is_cancelled() || $sub->is_expired()) {
46 $actions['resubscribe'] = esc_html__('Resubscribe', 'wp-user-avatar');
47 }
48
49 do_action('ppress_myaccount_subscription_action_status', $sub, ppressGET_var('ppress-myac-sub-message'));
50 ?>
51
52 <div class="profilepress-myaccount-order-details-wrap">
53 <div class="ppress-details-table-wrap">
54 <table class="ppress-details-table">
55 <tbody>
56 <tr>
57 <td><?php esc_html_e('Status', 'wp-user-avatar'); ?></td>
58 <td>
59 <span class="sub-status <?= $sub->status ?>"><?= SubscriptionStatus::get_label($sub->status) ?></span>
60 </td>
61 </tr>
62 <tr>
63 <td><?php esc_html_e('Plan', 'wp-user-avatar'); ?></td>
64 <td><?= $plan->name ?></td>
65 </tr>
66 <tr>
67 <td><?php esc_html_e('Terms', 'wp-user-avatar'); ?></td>
68 <td><?= $sub->get_subscription_terms() ?></td>
69 </tr>
70 <tr>
71 <td><?php esc_html_e('Initial Amount', 'wp-user-avatar'); ?></td>
72 <td><?= ppress_display_amount($sub->initial_amount, $parent_order->currency) ?></td>
73 </tr>
74 <tr>
75 <td><?php esc_html_e('Start Date', 'wp-user-avatar'); ?></td>
76 <td><?= ppress_format_date($sub->created_date) ?></td>
77 </tr>
78 <tr>
79 <td><?php echo ($sub->is_cancelled() || $sub->has_cancellation_requested()) ? esc_html__('Expiration Date', 'wp-user-avatar') : esc_html__('Renewal Date', 'wp-user-avatar'); ?></td>
80 <td><?= $sub->get_formatted_expiration_date() ?></td>
81 </tr>
82 <tr>
83 <td><?php esc_html_e('Payment', 'wp-user-avatar'); ?></td>
84 <td><?php printf(esc_html__('Via %s', 'wp-user-avatar'), $payment_method->title) ?></td>
85 </tr>
86 <?php if ( ! empty($actions)) : ?>
87 <tr>
88 <td><?php esc_html_e('Actions', 'wp-user-avatar'); ?></td>
89 <td>
90 <?php foreach ($actions as $action => $label) :
91 $url = wp_nonce_url(
92 add_query_arg(['ppress_myac_sub_action' => $action, 'sub_id' => $sub->id]),
93 $sub->id . $action
94 ); ?>
95 <a href="<?php echo esc_url($url); ?>" class="ppress-myac-action ppress-<?php echo sanitize_html_class($action) ?> ppress-confirm-delete"><?php echo esc_html($label); ?></a>
96 <?php endforeach; ?>
97 </td>
98 </tr>
99 <?php endif; ?>
100 </tbody>
101 </table>
102 </div>
103 </div>
104
105 <?php if ( ! empty($sub_orders)) : ?>
106
107 <h2><?= sprintf(esc_html__('Subscription Orders', 'wp-user-avatar'), $sub->id) ?></h2>
108
109 <div class="profilepress-myaccount-sub-order-details-wrap">
110 <div class="profilepress-myaccount-sub-order-details-table-wrap">
111 <table class="ppress-details-table">
112 <thead>
113 <tr>
114 <th><?php esc_html_e('Order', 'wp-user-avatar') ?></th>
115 <th><?php esc_html_e('Date', 'wp-user-avatar') ?></th>
116 <th><?php esc_html_e('Status', 'wp-user-avatar') ?></th>
117 <th><?php esc_html_e('Total', 'wp-user-avatar') ?></th>
118 </tr>
119 </thead>
120 <tbody>
121 <?php foreach ($sub_orders as $sub_order) : $view_order_url = add_query_arg(['order_key' => $sub_order->order_key], MyAccountTag::get_endpoint_url('list-orders'));
122 ?>
123 <tr>
124 <td>
125 <a href="<?php echo esc_url($view_order_url) ?>">#<?= $sub_order->get_reduced_order_key() ?></a>
126 </td>
127 <td><?= ppress_format_date($sub_order->date_created) ?></td>
128 <td><?= OrderStatus::get_label($sub_order->status) ?></td>
129 <td><?= ppress_display_amount($sub_order->total, $sub_order->currency) ?></td>
130 </tr>
131 <?php endforeach; ?>
132 </tbody>
133 </table>
134 </div>
135 </div>
136
137 <?php endif; ?>
138 <?php endif; ?>
139
140 </div>
141 <?php
142
143 do_action('ppress_myaccount_view_order_details');