PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.1.2
GiveWP – Donation Plugin and Fundraising Platform v2.1.2
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 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / templates / shortcode-receipt.php
give / templates Last commit date
emails 8 years ago global 8 years ago single-give-form 8 years ago email-login-form.php 8 years ago give-rtl.css 8 years ago give-rtl.min.css 8 years ago give.css 8 years ago give.min.css 8 years ago history-donations.php 8 years ago payment-processing.php 8 years ago shortcode-form-grid.php 8 years ago shortcode-goal.php 8 years ago shortcode-login.php 8 years ago shortcode-profile-editor.php 8 years ago shortcode-receipt.php 8 years ago shortcode-register.php 8 years ago shortcode-totals-progress.php 8 years ago single-give-form.php 8 years ago
shortcode-receipt.php
319 lines
1 <?php
2 /**
3 * This template is used to display the donation summary with [give_receipt]
4 */
5
6 global $give_receipt_args, $payment;
7
8 // Validation: Ensure $payment var is set.
9 if ( empty( $payment ) ) {
10 $payment = ! empty( $give_receipt_args['id'] ) ? get_post( $give_receipt_args['id'] ) : 0;
11 }
12
13 // Double-Validation: Check for $payment global.
14 if ( empty( $payment ) ) {
15 Give()->notices->print_frontend_notice( __( 'The specified receipt ID appears to be invalid.', 'give' ) );
16
17 return;
18 }
19
20 $donation_id = $payment->ID;
21 $donation_number = Give()->seq_donation_number->get_serial_code( $payment->ID );
22 $form_id = give_get_payment_meta( $donation_id, '_give_payment_form_id', true );
23 $donation = give_get_donation_form_title( $donation_id );
24 $user = give_get_payment_meta_user_info( $donation_id );
25 $email = give_get_payment_user_email( $donation_id );
26 $status = $payment->post_status;
27 $status_label = give_get_payment_status( $payment, true );
28 $company_name = give_get_payment_meta( $donation_id, '_give_donation_company', true );
29
30 /**
31 * Generate Donation Receipt Arguments.
32 *
33 * Added donation receipt array to global variable $give_receipt_args to
34 * manage it from single variable
35 *
36 * @since 1.8.8
37 */
38 $give_receipt_args['donation_receipt']['donor'] = array(
39 'name' => __( 'Donor', 'give' ),
40 'value' => $user['first_name'] . ' ' . $user['last_name'],
41 'display' => $give_receipt_args['donor'],
42 );
43
44 /**
45 * Show Company name on Donation receipt Page
46 *
47 * @since 2.0.7
48 *
49 * @param bool show/hide company name in donation receipt page.
50 *
51 * @return bool show/hide company name in donation receipt page.
52 */
53 $give_receipt_args['donation_receipt']['company_name'] = array(
54 'name' => __( 'Company Name', 'give' ),
55 'value' => esc_attr( $company_name ),
56 'display' => $give_receipt_args['company_name'],
57 );
58
59 $give_receipt_args['donation_receipt']['date'] = array(
60 'name' => __( 'Date', 'give' ),
61 'value' => date_i18n( give_date_format(), strtotime( give_get_payment_completed_date( $donation_id ) ) ),
62 'display' => $give_receipt_args['date'],
63 );
64
65 $give_receipt_args['donation_receipt']['total_donation'] = array(
66 'name' => __( 'Total Donation', 'give' ),
67 'value' => give_donation_amount( $donation_id, array( 'currency' => true, 'amount' => true, 'type' => 'receipt' ) ),
68 'display' => $give_receipt_args['price'],
69 );
70
71 $give_receipt_args['donation_receipt']['donation'] = array(
72 'name' => __( 'Donation', 'give' ),
73 'value' => $donation,
74 'display' => true,
75 );
76
77 $give_receipt_args['donation_receipt']['donation_status'] = array(
78 'name' => __( 'Donation Status', 'give' ),
79 'value' => esc_attr( $status_label ),
80 'display' => $give_receipt_args['payment_status'],
81 );
82
83 $give_receipt_args['donation_receipt']['donation_id'] = array(
84 'name' => __( 'Donation ID', 'give' ),
85 'value' => $donation_number,
86 'display' => $give_receipt_args['payment_id'],
87 );
88
89 $give_receipt_args['donation_receipt']['payment_key'] = array(
90 'name' => __( 'Payment Key', 'give' ),
91 'value' => get_post_meta( $donation_id, '_give_payment_purchase_key', true ),
92 'display' => $give_receipt_args['payment_key'],
93 );
94
95 $give_receipt_args['donation_receipt']['payment_method'] = array(
96 'name' => __( 'Payment Method', 'give' ),
97 'value' => give_get_gateway_checkout_label( give_get_payment_gateway( $donation_id ) ),
98 'display' => $give_receipt_args['payment_method'],
99 );
100
101 /**
102 * Extend Give Donation Receipt
103 *
104 * You can easily extend the donation receipt argument using the filter give_donation_receipt_args
105 *
106 * @params array $give_receipt_args['donation_receipt'] Array of arguments for Donation Receipt.
107 * @params int $donation_id Donation ID.
108 * @params int $form_id Donation Form ID.
109 *
110 * @since 1.8.8
111 */
112 $give_receipt_args['donation_receipt'] = apply_filters( 'give_donation_receipt_args', $give_receipt_args['donation_receipt'], $donation_id, $form_id );
113
114 // When the donation were made through offline donation, We won't show receipt and payment status though.
115 if ( 'offline' === give_get_payment_gateway( $payment->ID ) && 'pending' === $status ) {
116
117 /**
118 * Before the offline donation receipt content starts.
119 *
120 * @since 1.8.14
121 *
122 * @param Give_Payment $payment Donation payment object.
123 * @param array $give_receipt_args Receipt Arguments.
124 */
125 do_action( 'give_receipt_before_offline_payment', $payment, $give_receipt_args );
126 ?>
127 <h2><?php echo apply_filters( 'give_receipt_offline_payment_heading', __( 'Your Donation is Almost Complete!', 'give' ) ); ?></h2>
128 <div id="give_donation_receipt" class="<?php echo esc_attr( apply_filters( 'give_receipt_offline_payment_classes', 'give_receipt_offline_payment' ) ); ?>">
129 <?php
130 // Instruction for offline donation.
131 $offline_instruction = give_get_offline_payment_instruction( $form_id, true );
132
133 /**
134 * Instruction for the offline donation.
135 *
136 * @since 1.8.14
137 *
138 * @param string $offline_instruction Offline instruction content.
139 * @param Give_Payment $payment Payment object.
140 * @param integer $form_id Donation form id.
141 */
142 echo apply_filters( 'give_receipt_offline_payment_instruction', $offline_instruction, $payment, $form_id );
143 ?>
144 </div>
145 <?php
146 /**
147 * After the offline donation content ends.
148 *
149 * @since 1.8.14
150 *
151 * @param Give_Payment $payment Donation payment object.
152 * @param array $give_receipt_args Receipt Arguments.
153 */
154 do_action( 'give_receipt_after_offline_payment', $payment, $give_receipt_args );
155
156 return;
157 }
158
159 // Show payment status notice based on shortcode attribute.
160 if ( filter_var( $give_receipt_args['status_notice'], FILTER_VALIDATE_BOOLEAN ) ) {
161 $notice_message = '';
162 $notice_type = 'warning';
163
164 switch ( $status ) {
165 case 'publish':
166 $notice_message = __( 'Payment Complete: Thank you for your donation.', 'give' );
167 $notice_type = 'success';
168 break;
169 case 'pending':
170 $notice_message = __( 'Payment Pending: Your donation is currently processing.', 'give' );
171 $notice_type = 'warning';
172 break;
173 case 'refunded':
174 $notice_message = __( 'Payment Refunded: Your donation has been refunded.', 'give' );
175 $notice_type = 'warning';
176 break;
177 case 'preapproval':
178 $notice_message = __( 'Payment Preapproved: Thank you for your donation.', 'give' );
179 $notice_type = 'warning';
180 break;
181 case 'failed':
182 $notice_message = __( 'Payment Failed: Please contact the site owner for assistance.', 'give' );
183 $notice_type = 'error';
184 break;
185 case 'cancelled':
186 $notice_message = __( 'Payment Cancelled: Your donation has been cancelled.', 'give' );
187 $notice_type = 'error';
188 break;
189 case 'abandoned':
190 $notice_message = __( 'Payment Abandoned: This donation has not been completed.', 'give' );
191 $notice_type = 'error';
192 break;
193 case 'revoked':
194 $notice_message = __( 'Payment Revoked: Please contact the site owner for assistance.', 'give' );
195 $notice_type = 'error';
196 break;
197 }
198
199 if ( ! empty( $notice_message ) ) {
200 /**
201 * Filters payment status notice for receipts.
202 *
203 * By default, a success, warning, or error notice appears on the receipt
204 * with payment status. This filter allows the HTML markup
205 * and messaging for that notice to be customized.
206 *
207 * @since 1.0
208 *
209 * @param string $notice HTML markup for the default notice.
210 * @param int $id Post ID where the notice is displayed.
211 * @param string $status Payment status.
212 * @param int $donation_id Donation ID.
213 */
214 echo apply_filters( 'give_receipt_status_notice', Give()->notices->print_frontend_notice( $notice_message, false, $notice_type ), $id, $status, $donation_id );
215 }
216 }// End if().
217
218 /**
219 * Fires in the payment receipt shortcode, before the receipt main table.
220 *
221 * Allows you to add elements before the table.
222 *
223 * @since 1.0
224 *
225 * @param object $payment The payment object.
226 * @param array $give_receipt_args Receipt_argument.
227 */
228 do_action( 'give_payment_receipt_before_table', $payment, $give_receipt_args );
229 ?>
230
231 <table id="give_donation_receipt" class="give-table">
232 <thead>
233 <?php
234 /**
235 * Fires in the payment receipt shortcode, before the receipt first header item.
236 *
237 * Allows you to add new <th> elements before the receipt first header item.
238 *
239 * @since 1.7
240 *
241 * @param object $payment The payment object.
242 * @param array $give_receipt_args Receipt_argument.
243 */
244 do_action( 'give_payment_receipt_header_before', $payment, $give_receipt_args );
245 ?>
246 <tr>
247 <th scope="colgroup" colspan="2">
248 <span class="give-receipt-thead-text"><?php esc_html_e( 'Donation Receipt', 'give' ) ?></span>
249 </th>
250 </tr>
251 <?php
252 /**
253 * Fires in the payment receipt shortcode, after the receipt last header item.
254 *
255 * Allows you to add new <th> elements after the receipt last header item.
256 *
257 * @since 1.7
258 *
259 * @param object $payment The payment object.
260 * @param array $give_receipt_args Receipt_argument.
261 */
262 do_action( 'give_payment_receipt_header_after', $payment, $give_receipt_args );
263 ?>
264 </thead>
265
266 <tbody>
267 <?php
268 /**
269 * Fires in the payment receipt shortcode, before the receipt first item.
270 *
271 * Allows you to add new <td> elements before the receipt first item.
272 *
273 * @since 1.7
274 *
275 * @param object $payment The payment object.
276 * @param array $give_receipt_args Receipt_argument.
277 */
278 do_action( 'give_payment_receipt_before', $payment, $give_receipt_args );
279 ?>
280
281 <?php foreach ( $give_receipt_args['donation_receipt'] as $receipt_item ) { ?>
282 <?php if ( filter_var( $receipt_item['display'], FILTER_VALIDATE_BOOLEAN ) ) : ?>
283 <tr>
284 <td scope="row"><strong><?php echo $receipt_item['name']; ?></strong></td>
285 <td><?php echo $receipt_item['value']; ?></td>
286 </tr>
287 <?php endif; ?>
288 <?php } ?>
289
290 <?php
291 /**
292 * Fires in the payment receipt shortcode, after the receipt last item.
293 *
294 * Allows you to add new <td> elements after the receipt last item.
295 *
296 * @since 1.7
297 *
298 * @param object $payment The payment object.
299 * @param array $give_receipt_args Receipt_argument.
300 */
301 do_action( 'give_payment_receipt_after', $payment, $give_receipt_args );
302 ?>
303 </tbody>
304 </table>
305
306 <?php
307 /**
308 * Fires in the payment receipt shortcode, after the receipt main table.
309 *
310 * Allows you to add elements after the table.
311 *
312 * @since 1.7
313 *
314 * @param object $payment The payment object.
315 * @param array $give_receipt_args Receipt_argument.
316 */
317 do_action( 'give_payment_receipt_after_table', $payment, $give_receipt_args );
318 ?>
319