PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.7.2
GiveWP – Donation Plugin and Fundraising Platform v2.7.2
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 6 years ago backward-compatibility.php 7 years ago class-give-donor-stats.php 6 years ago class-give-donor-wall.php 5 years ago class-give-donors-query.php 6 years ago frontend-donor-functions.php 6 years ago
actions.php
94 lines
1 <?php
2 /**
3 * Insert donor comment to donation.
4 *
5 * @since 2.2.0
6 *
7 * @param int $donation_id
8 * @param array $donation_data
9 */
10 function __give_insert_donor_donation_comment( $donation_id, $donation_data ) {
11 $is_anonymous_donation = isset( $_POST['give_anonymous_donation'] )
12 ? absint( $_POST['give_anonymous_donation'] )
13 : 0;
14
15 if ( ! empty( $_POST['give_comment'] ) ) {
16 $comment_meta = array( 'author_email' => $donation_data['user_info']['email'] );
17
18 if ( ! give_has_upgrade_completed( 'v230_move_donation_note' ) ) {
19 // Backward compatibility.
20 $comment_meta = array( 'comment_author_email' => $donation_data['user_info']['email'] );
21 }
22
23 $comment_id = give_insert_donor_donation_comment(
24 $donation_id,
25 $donation_data['user_info']['donor_id'],
26 trim( $_POST['give_comment'] ), // We are sanitizing comment in Give_comment:add
27 $comment_meta
28 );
29 }
30
31 give_update_meta( $donation_id, '_give_anonymous_donation', $is_anonymous_donation );
32 }
33
34 add_action( 'give_insert_payment', '__give_insert_donor_donation_comment', 10, 2 );
35
36
37 /**
38 * Validate donor comment
39 *
40 * @since 2.2.0
41 */
42 function __give_validate_donor_comment() {
43 // Check wp_check_comment_data_max_lengths for comment length validation.
44 if ( ! empty( $_POST['give_comment'] ) ) {
45 $max_lengths = wp_get_comment_fields_max_lengths();
46 $comment = give_clean( $_POST['give_comment'] );
47
48 if ( mb_strlen( $comment, '8bit' ) > $max_lengths['comment_content'] ) {
49 give_set_error( 'comment_content_column_length', __( 'Your comment is too long.', 'give' ) );
50 }
51 }
52 }
53 add_action( 'give_checkout_error_checks', '__give_validate_donor_comment', 10, 1 );
54
55
56 /**
57 * Update donor comment status when donation status update
58 *
59 * @since 2.2.0
60 *
61 * @param $donation_id
62 * @param $status
63 */
64 function __give_update_donor_donation_comment_status( $donation_id, $status ) {
65 $approve = absint( 'publish' === $status );
66
67 /* @var WP_Comment $note */
68 $donor_comment = give_get_donor_donation_comment( $donation_id, give_get_payment_donor_id( $donation_id ) );
69
70 if ( $donor_comment instanceof WP_Comment ) {
71 wp_set_comment_status( $donor_comment->comment_ID, (string) $approve );
72 }
73 }
74
75 add_action( 'give_update_payment_status', '__give_update_donor_donation_comment_status', 10, 2 );
76
77 /**
78 * Remove donor comment when donation delete
79 *
80 * @since 2.2.0
81 *
82 * @param $donation_id
83 */
84 function __give_remove_donor_donation_comment( $donation_id ) {
85 /* @var WP_Comment $note */
86 $donor_comment = give_get_donor_donation_comment( $donation_id, give_get_payment_donor_id( $donation_id ) );
87
88 if ( $donor_comment instanceof WP_Comment ) {
89 wp_delete_comment( $donor_comment->comment_ID );
90 }
91 }
92
93 add_action( 'give_payment_deleted', '__give_remove_donor_donation_comment', 10 );
94