PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.19.4
GiveWP – Donation Plugin and Fundraising Platform v3.19.4
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 / includes / donors / actions.php
give / includes / donors Last commit date
actions.php 3 years ago backward-compatibility.php 7 years ago class-give-donor-stats.php 6 years ago class-give-donor-wall.php 1 year ago class-give-donors-query.php 1 year ago frontend-donor-functions.php 3 years ago
actions.php
107 lines
1 <?php
2
3 use Give\Framework\PaymentGateways\PaymentGatewayRegister;
4
5 /**
6 * Insert donor comment to donation.
7 *
8 * @since 2.21.0 remove anonymous
9 * @since 2.2.0
10 *
11 * @param int $donation_id
12 * @param array $donation_data
13 */
14 function __give_insert_donor_donation_comment( $donation_id, $donation_data ) {
15 if ( ! empty( $_POST['give_comment'] ) ) {
16 $donation = give()->donations->getById($donation_id);
17 $donation->comment = sanitize_textarea_field(trim($_POST['give_comment']));
18 $donation->save();
19 }
20 }
21
22 add_action( 'give_insert_payment', '__give_insert_donor_donation_comment', 10, 2 );
23
24
25
26 /**
27 * Validate donor comment
28 *
29 * @since 2.2.0
30 */
31 function __give_validate_donor_comment() {
32 // Check wp_check_comment_data_max_lengths for comment length validation.
33 if ( ! empty( $_POST['give_comment'] ) ) {
34 $max_lengths = wp_get_comment_fields_max_lengths();
35 $comment = give_clean( $_POST['give_comment'] );
36
37 if ( mb_strlen( $comment, '8bit' ) > $max_lengths['comment_content'] ) {
38 give_set_error( 'comment_content_column_length', __( 'Your comment is too long.', 'give' ) );
39 }
40 }
41 }
42 add_action( 'give_checkout_error_checks', '__give_validate_donor_comment', 10, 1 );
43
44
45 /**
46 * Update donor comment status when donation status update
47 *
48 * @since 2.2.0
49 *
50 * @param $donation_id
51 * @param $status
52 */
53 function __give_update_donor_donation_comment_status( $donation_id, $status ) {
54 $approve = absint( 'publish' === $status );
55
56 /* @var WP_Comment $note */
57 $donor_comment = give_get_donor_donation_comment( $donation_id, give_get_payment_donor_id( $donation_id ) );
58
59 if ( $donor_comment instanceof WP_Comment ) {
60 wp_set_comment_status( $donor_comment->comment_ID, (string) $approve );
61 }
62 }
63
64 add_action( 'give_update_payment_status', '__give_update_donor_donation_comment_status', 10, 2 );
65
66 /**
67 * Remove donor comment when donation delete
68 *
69 * @since 2.2.0
70 *
71 * @param $donation_id
72 */
73 function __give_remove_donor_donation_comment( $donation_id ) {
74 /* @var WP_Comment $note */
75 $donor_comment = give_get_donor_donation_comment( $donation_id, give_get_payment_donor_id( $donation_id ) );
76
77 if ( $donor_comment instanceof WP_Comment ) {
78 wp_delete_comment( $donor_comment->comment_ID );
79 }
80 }
81
82 add_action( 'give_payment_deleted', '__give_remove_donor_donation_comment', 10 );
83
84
85 /**
86 * Update anonymous donation for legacy gateways
87 *
88 * @since 2.21.3
89 *
90 * @retrun void
91 */
92 function giveUpdateAnonymousDonationForLegacyGateways(int $donationId)
93 {
94 $gatewayId = give_get_meta($donationId,'_give_payment_gateway', true);
95
96 /** @var PaymentGatewayRegister $registrar */
97 $registrar = give(PaymentGatewayRegister::class);
98
99 if (!$registrar->hasPaymentGateway($gatewayId)){
100 $isAnonymousDonation = isset( $_POST['give_anonymous_donation'] ) ? absint( give_clean($_POST['give_anonymous_donation']) ) : 0;
101
102 give_update_meta( $donationId, '_give_anonymous_donation', $isAnonymousDonation );
103 }
104 }
105
106 add_action('give_insert_payment', 'giveUpdateAnonymousDonationForLegacyGateways');
107