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