PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.1.6
GiveWP – Donation Plugin and Fundraising Platform v2.1.6
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 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
320 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 // Do not show company field if empty
57 'display' => empty( $company_name ) ? false : $give_receipt_args['company_name'],
58 );
59
60 $give_receipt_args['donation_receipt']['date'] = array(
61 'name' => __( 'Date', 'give' ),
62 'value' => date_i18n( give_date_format(), strtotime( give_get_payment_completed_date( $donation_id ) ) ),
63 'display' => $give_receipt_args['date'],
64 );
65
66 $give_receipt_args['donation_receipt']['total_donation'] = array(
67 'name' => __( 'Total Donation', 'give' ),
68 'value' => give_donation_amount( $donation_id, array( 'currency' => true, 'amount' => true, 'type' => 'receipt' ) ),
69 'display' => $give_receipt_args['price'],
70 );
71
72 $give_receipt_args['donation_receipt']['donation'] = array(
73 'name' => __( 'Donation', 'give' ),
74 'value' => $donation,
75 'display' => true,
76 );
77
78 $give_receipt_args['donation_receipt']['donation_status'] = array(
79 'name' => __( 'Donation Status', 'give' ),
80 'value' => esc_attr( $status_label ),
81 'display' => $give_receipt_args['payment_status'],
82 );
83
84 $give_receipt_args['donation_receipt']['donation_id'] = array(
85 'name' => __( 'Donation ID', 'give' ),
86 'value' => $donation_number,
87 'display' => $give_receipt_args['payment_id'],
88 );
89
90 $give_receipt_args['donation_receipt']['payment_key'] = array(
91 'name' => __( 'Payment Key', 'give' ),
92 'value' => get_post_meta( $donation_id, '_give_payment_purchase_key', true ),
93 'display' => $give_receipt_args['payment_key'],
94 );
95
96 $give_receipt_args['donation_receipt']['payment_method'] = array(
97 'name' => __( 'Payment Method', 'give' ),
98 'value' => give_get_gateway_checkout_label( give_get_payment_gateway( $donation_id ) ),
99 'display' => $give_receipt_args['payment_method'],
100 );
101
102 /**
103 * Extend Give Donation Receipt
104 *
105 * You can easily extend the donation receipt argument using the filter give_donation_receipt_args
106 *
107 * @params array $give_receipt_args['donation_receipt'] Array of arguments for Donation Receipt.
108 * @params int $donation_id Donation ID.
109 * @params int $form_id Donation Form ID.
110 *
111 * @since 1.8.8
112 */
113 $give_receipt_args['donation_receipt'] = apply_filters( 'give_donation_receipt_args', $give_receipt_args['donation_receipt'], $donation_id, $form_id );
114
115 // When the donation were made through offline donation, We won't show receipt and payment status though.
116 if ( 'offline' === give_get_payment_gateway( $payment->ID ) && 'pending' === $status ) {
117
118 /**
119 * Before the offline donation receipt content starts.
120 *
121 * @since 1.8.14
122 *
123 * @param Give_Payment $payment Donation payment object.
124 * @param array $give_receipt_args Receipt Arguments.
125 */
126 do_action( 'give_receipt_before_offline_payment', $payment, $give_receipt_args );
127 ?>
128 <h2><?php echo apply_filters( 'give_receipt_offline_payment_heading', __( 'Your Donation is Almost Complete!', 'give' ) ); ?></h2>
129 <div id="give_donation_receipt" class="<?php echo esc_attr( apply_filters( 'give_receipt_offline_payment_classes', 'give_receipt_offline_payment' ) ); ?>">
130 <?php
131 // Instruction for offline donation.
132 $offline_instruction = give_get_offline_payment_instruction( $form_id, true );
133
134 /**
135 * Instruction for the offline donation.
136 *
137 * @since 1.8.14
138 *
139 * @param string $offline_instruction Offline instruction content.
140 * @param Give_Payment $payment Payment object.
141 * @param integer $form_id Donation form id.
142 */
143 echo apply_filters( 'give_receipt_offline_payment_instruction', $offline_instruction, $payment, $form_id );
144 ?>
145 </div>
146 <?php
147 /**
148 * After the offline donation content ends.
149 *
150 * @since 1.8.14
151 *
152 * @param Give_Payment $payment Donation payment object.
153 * @param array $give_receipt_args Receipt Arguments.
154 */
155 do_action( 'give_receipt_after_offline_payment', $payment, $give_receipt_args );
156
157 return;
158 }
159
160 // Show payment status notice based on shortcode attribute.
161 if ( filter_var( $give_receipt_args['status_notice'], FILTER_VALIDATE_BOOLEAN ) ) {
162 $notice_message = '';
163 $notice_type = 'warning';
164
165 switch ( $status ) {
166 case 'publish':
167 $notice_message = __( 'Payment Complete: Thank you for your donation.', 'give' );
168 $notice_type = 'success';
169 break;
170 case 'pending':
171 $notice_message = __( 'Payment Pending: Your donation is currently processing.', 'give' );
172 $notice_type = 'warning';
173 break;
174 case 'refunded':
175 $notice_message = __( 'Payment Refunded: Your donation has been refunded.', 'give' );
176 $notice_type = 'warning';
177 break;
178 case 'preapproval':
179 $notice_message = __( 'Payment Preapproved: Thank you for your donation.', 'give' );
180 $notice_type = 'warning';
181 break;
182 case 'failed':
183 $notice_message = __( 'Payment Failed: Please contact the site owner for assistance.', 'give' );
184 $notice_type = 'error';
185 break;
186 case 'cancelled':
187 $notice_message = __( 'Payment Cancelled: Your donation has been cancelled.', 'give' );
188 $notice_type = 'error';
189 break;
190 case 'abandoned':
191 $notice_message = __( 'Payment Abandoned: This donation has not been completed.', 'give' );
192 $notice_type = 'error';
193 break;
194 case 'revoked':
195 $notice_message = __( 'Payment Revoked: Please contact the site owner for assistance.', 'give' );
196 $notice_type = 'error';
197 break;
198 }
199
200 if ( ! empty( $notice_message ) ) {
201 /**
202 * Filters payment status notice for receipts.
203 *
204 * By default, a success, warning, or error notice appears on the receipt
205 * with payment status. This filter allows the HTML markup
206 * and messaging for that notice to be customized.
207 *
208 * @since 1.0
209 *
210 * @param string $notice HTML markup for the default notice.
211 * @param int $id Post ID where the notice is displayed.
212 * @param string $status Payment status.
213 * @param int $donation_id Donation ID.
214 */
215 echo apply_filters( 'give_receipt_status_notice', Give()->notices->print_frontend_notice( $notice_message, false, $notice_type ), $id, $status, $donation_id );
216 }
217 }// End if().
218
219 /**
220 * Fires in the payment receipt shortcode, before the receipt main table.
221 *
222 * Allows you to add elements before the table.
223 *
224 * @since 1.0
225 *
226 * @param object $payment The payment object.
227 * @param array $give_receipt_args Receipt_argument.
228 */
229 do_action( 'give_payment_receipt_before_table', $payment, $give_receipt_args );
230 ?>
231
232 <table id="give_donation_receipt" class="give-table">
233 <thead>
234 <?php
235 /**
236 * Fires in the payment receipt shortcode, before the receipt first header item.
237 *
238 * Allows you to add new <th> elements before the receipt first header item.
239 *
240 * @since 1.7
241 *
242 * @param object $payment The payment object.
243 * @param array $give_receipt_args Receipt_argument.
244 */
245 do_action( 'give_payment_receipt_header_before', $payment, $give_receipt_args );
246 ?>
247 <tr>
248 <th scope="colgroup" colspan="2">
249 <span class="give-receipt-thead-text"><?php esc_html_e( 'Donation Receipt', 'give' ) ?></span>
250 </th>
251 </tr>
252 <?php
253 /**
254 * Fires in the payment receipt shortcode, after the receipt last header item.
255 *
256 * Allows you to add new <th> elements after the receipt last header item.
257 *
258 * @since 1.7
259 *
260 * @param object $payment The payment object.
261 * @param array $give_receipt_args Receipt_argument.
262 */
263 do_action( 'give_payment_receipt_header_after', $payment, $give_receipt_args );
264 ?>
265 </thead>
266
267 <tbody>
268 <?php
269 /**
270 * Fires in the payment receipt shortcode, before the receipt first item.
271 *
272 * Allows you to add new <td> elements before the receipt first item.
273 *
274 * @since 1.7
275 *
276 * @param object $payment The payment object.
277 * @param array $give_receipt_args Receipt_argument.
278 */
279 do_action( 'give_payment_receipt_before', $payment, $give_receipt_args );
280 ?>
281
282 <?php foreach ( $give_receipt_args['donation_receipt'] as $receipt_item ) { ?>
283 <?php if ( filter_var( $receipt_item['display'], FILTER_VALIDATE_BOOLEAN ) ) : ?>
284 <tr>
285 <td scope="row"><strong><?php echo $receipt_item['name']; ?></strong></td>
286 <td><?php echo $receipt_item['value']; ?></td>
287 </tr>
288 <?php endif; ?>
289 <?php } ?>
290
291 <?php
292 /**
293 * Fires in the payment receipt shortcode, after the receipt last item.
294 *
295 * Allows you to add new <td> elements after the receipt last item.
296 *
297 * @since 1.7
298 *
299 * @param object $payment The payment object.
300 * @param array $give_receipt_args Receipt_argument.
301 */
302 do_action( 'give_payment_receipt_after', $payment, $give_receipt_args );
303 ?>
304 </tbody>
305 </table>
306
307 <?php
308 /**
309 * Fires in the payment receipt shortcode, after the receipt main table.
310 *
311 * Allows you to add elements after the table.
312 *
313 * @since 1.7
314 *
315 * @param object $payment The payment object.
316 * @param array $give_receipt_args Receipt_argument.
317 */
318 do_action( 'give_payment_receipt_after_table', $payment, $give_receipt_args );
319 ?>
320