Total Clicks/Signups
Verified Members
₹
Current Balance
₹
Total Earned
Quick Actions
Recent Signups
| Date | Status | Verified | Points Earned | Your Commission | |
|---|---|---|---|---|---|
| Completed Clicked | ✓ Verified Pending | pts - | ₹ |
prepare(" SELECT COUNT(*) as total_signups, SUM(CASE WHEN signup_completed = 1 THEN 1 ELSE 0 END) as completed_signups, SUM(CASE WHEN email_verified = 1 THEN 1 ELSE 0 END) as verified_signups, SUM(reward_amount) as total_rewards_distributed, SUM(commission_earned) as total_commission_earned FROM affiliate_signups WHERE affiliate_id = ? "); $stmt->execute([$partner['id']]); $signupStats = $stmt->fetch(); // Get recent signups with member details $stmt = $shopPdo->prepare(" SELECT asig.id, asig.panel_user_id, asig.email, asig.signup_completed, asig.email_verified, asig.reward_amount, asig.commission_earned, asig.clicked_at, asig.signed_up_at, asig.verified_at FROM affiliate_signups asig WHERE asig.affiliate_id = ? ORDER BY asig.clicked_at DESC LIMIT 10 "); $stmt->execute([$partner['id']]); $recentSignups = $stmt->fetchAll(); // Get member details from panel database for completed signups $memberDetails = []; if (!empty($recentSignups)) { $memberIds = array_filter(array_column($recentSignups, 'panel_user_id')); if (!empty($memberIds)) { $placeholders = str_repeat('?,', count($memberIds) - 1) . '?'; $stmt = $panelPdo->prepare(" SELECT u.id, u.email, u.status, u.email_verified, u.onboarding_completed, u.created_at, u.last_login, up.points, up.total_earned, up.total_redeemed FROM users u LEFT JOIN user_points up ON u.id = up.user_id WHERE u.id IN ($placeholders) "); $stmt->execute($memberIds); $members = $stmt->fetchAll(); foreach ($members as $member) { $memberDetails[$member['id']] = $member; } } } // Get pending redemption requests $stmt = $shopPdo->prepare(" SELECT COUNT(*) as pending_count, SUM(amount) as pending_amount FROM partner_redemptions WHERE affiliate_id = ? AND status = 'pending' "); $stmt->execute([$partner['id']]); $redemptionStats = $stmt->fetch(); } catch (Exception $e) { logPartnerActivity('Error fetching dashboard stats', [ 'partner_id' => $partner['id'], 'error' => $e->getMessage() ]); $signupStats = ['total_signups' => 0, 'completed_signups' => 0, 'verified_signups' => 0]; $recentSignups = []; $redemptionStats = ['pending_count' => 0, 'pending_amount' => 0]; } $page_title = 'Partner Dashboard'; ?>
Total Clicks/Signups
Verified Members
Current Balance
Total Earned
| Date | Status | Verified | Points Earned | Your Commission | |
|---|---|---|---|---|---|
| Completed Clicked | ✓ Verified Pending | pts - | ₹ |