diff --git a/api/donorbox-proxy.php b/api/donorbox-proxy.php index 6ec4ba5..7593f7a 100644 --- a/api/donorbox-proxy.php +++ b/api/donorbox-proxy.php @@ -129,12 +129,12 @@ if ($campaign === null) { } // Compter les donateurs réguliers actifs de la campagne ciblée uniquement +// Filtre PHP sur campaign.id (l'API plans ne supporte pas de filtre côté serveur) $campaign_id = $campaign['id'] ?? null; $recurring_count = 0; $plans_page = 1; do { - $plans_url = 'https://donorbox.org/api/v1/plans?per_page=100&page=' . $plans_page - . ($campaign_id ? '&campaign_id=' . urlencode($campaign_id) : ''); + $plans_url = 'https://donorbox.org/api/v1/plans?per_page=100&page=' . $plans_page; $ch_plans = curl_init(); curl_setopt_array($ch_plans, [ @@ -159,6 +159,10 @@ do { if (!is_array($plans)) break; foreach ($plans as $plan) { + // Filtrer sur l'ID de la campagne cible + if (($plan['campaign']['id'] ?? null) !== $campaign_id) { + continue; + } if (isset($plan['status']) && $plan['status'] === 'active') { $recurring_count++; }