$15 GRAYBYTE WORDPRESS FILE MANAGER $41

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 172.67.162.162 | ADMIN IP 216.73.216.51
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/home/bravetechrwanda/itiministry.org/plugins/give/src/Campaigns/Blocks/CampaignDonors/

HOME
Current File : /home/bravetechrwanda/itiministry.org/plugins/give/src/Campaigns/Blocks/CampaignDonors//render.php
<?php

namespace Give\Campaigns\Blocks\CampaignDonors;

use Give\Campaigns\CampaignDonationQuery;
use Give\Campaigns\Models\Campaign;
use Give\Campaigns\Repositories\CampaignRepository;
use Give\Donations\ValueObjects\DonationMetaKeys;
use Give\Donors\ValueObjects\DonorMetaKeys;

/**
 * @since 4.2.0 remove SQL casting
 * @since 4.0.0
 *
 * @var array $attributes
 */

if ( ! isset($attributes['campaignId'])) {
    return;
}

/** @var Campaign $campaign */
$campaign = give(CampaignRepository::class)->getById($attributes['campaignId']);

if ( ! $campaign) {
    return;
}

$sortBy = $attributes['sortBy'] ?? 'top-donors';
$query = (new CampaignDonationQuery($campaign))
    ->joinDonationMeta(DonationMetaKeys::DONOR_ID, 'donorIdMeta')
    ->joinDonationMeta(DonationMetaKeys::AMOUNT, 'amountMeta')
    ->joinDonationMeta(DonationMetaKeys::FEE_AMOUNT_RECOVERED, 'feeAmountRecovered')
    ->joinDonationMeta(DonationMetaKeys::FIRST_NAME, 'donorName')
    ->joinDonationMeta(DonationMetaKeys::ANONYMOUS, 'anonymousMeta')
    ->leftJoin('give_donors', 'donorIdMeta.meta_value', 'donors.id', 'donors')
    ->leftJoin('give_donormeta', 'donorIdMeta.meta_value', 'donorMeta.donor_id', 'donorMeta')
    ->limit($attributes['donorsPerPage'] ?? 5);

if ($sortBy === 'top-donors') {
    $query->select(
        'donorIdMeta.meta_value as id',
        'SUM(amountMeta.meta_value - IFNULL(feeAmountRecovered.meta_value, 0)) AS amount',
        'MAX(donorName.meta_value) AS name',
        'anonymousMeta.meta_value as isAnonymous',
        'donors.email as email',
        'donorMeta.meta_value as avatarId'
    )
        ->where('donorMeta.meta_key', DonorMetaKeys::AVATAR_ID)
        ->groupBy('donorIdMeta.meta_value')
        ->orderBy('amount', 'DESC');
} else {
    $query->joinDonationMeta(DonationMetaKeys::COMPANY, 'companyMeta')
        ->select(
            'donation.ID as donationID',
            'donorIdMeta.meta_value as id',
            'companyMeta.meta_value as company',
            'donation.post_date as date',
            'amountMeta.meta_value - IFNULL(feeAmountRecovered.meta_value, 0) as amount',
            'donorName.meta_value as name',
            'anonymousMeta.meta_value as isAnonymous',
            'donors.email as email',
            'donorMeta.meta_value as avatarId'
        )
        ->where('donorMeta.meta_key', DonorMetaKeys::AVATAR_ID)
        ->orderBy('donation.ID', 'DESC');
}

if ( ! $attributes['showAnonymous']) {
    $query->where('anonymousMeta.meta_value', '1', '!=');
}

(new CampaignDonorsBlockViewModel($campaign, $query->getAll(), $attributes))->render();


Current_dir [ WRITEABLE ] Document_root [ NOT WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
25 May 2026 4.20 PM
bravetechrwanda / bravetechrwanda
0755
resources
--
25 May 2026 4.20 PM
bravetechrwanda / bravetechrwanda
0755
CampaignDonorsBlockViewModel.php
1.806 KB
28 Jan 2026 8.00 PM
bravetechrwanda / bravetechrwanda
0644
app.tsx
0.023 KB
31 Mar 2025 11.17 PM
bravetechrwanda / bravetechrwanda
0644
block.json
1.321 KB
31 Mar 2025 11.17 PM
bravetechrwanda / bravetechrwanda
0644
edit.tsx
4.78 KB
31 Mar 2025 11.17 PM
bravetechrwanda / bravetechrwanda
0644
index.tsx
0.276 KB
31 Mar 2025 11.17 PM
bravetechrwanda / bravetechrwanda
0644
render.php
2.543 KB
28 Jan 2026 8.00 PM
bravetechrwanda / bravetechrwanda
0644
styles.scss
4.764 KB
10 Sep 2025 5.42 PM
bravetechrwanda / bravetechrwanda
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF Static GIF