<?php
/**
 * SMS উদাহরণ স্ক্রিপ্ট #2: ফি বকেয়া অনুস্মারক
 * 
 * ব্যবহার:
 * php examples/send-fee-reminder.php
 */

require_once(__DIR__ . '/../config/database.php');
require_once(__DIR__ . '/../classes/SMSService.php');

// SMS সেটিংস নিন
$stmt = $pdo->prepare("SELECT key_name, value FROM sms_settings");
$stmt->execute();
$settings = [];
while ($row = $stmt->fetch()) {
    $settings[$row['key_name']] = $row['value'];
}

$apiKey = $settings['api_key'] ?? '';
$callerId = $settings['caller_id'] ?? '1234';

if (empty($apiKey)) {
    die("Error: API Key কনফিগার করা হয়নি\n");
}

// SMS সেবা ইনিশিয়ালাইজ করুন
$smsService = new SMSService($apiKey, $callerId, $pdo);

try {
    // বকেয়া ফি আছে এমন স্টুডেন্ট খুঁজুন
    $stmt = $pdo->prepare("
        SELECT s.id, s.first_name, s.phone, s.guardian_phone, s.student_id,
               COALESCE(SUM(f.amount), 0) as total_due
        FROM students s
        LEFT JOIN fee_transactions f ON s.id = f.student_id AND f.status = 'pending'
        WHERE s.status = 'active'
        AND (s.phone IS NOT NULL OR s.guardian_phone IS NOT NULL)
        GROUP BY s.id
        HAVING total_due > 0
    ");
    
    $stmt->execute();
    $students = $stmt->fetchAll();
    
    if (empty($students)) {
        echo "কোনো বকেয়া ফি নেই\n";
        exit;
    }
    
    echo "📱 " . count($students) . " জন স্টুডেন্টকে ফি অনুস্মারক পাঠাচ্ছি...\n\n";
    
    $totalSent = 0;
    
    // প্রতিটি স্টুডেন্টকে কাস্টম বার্তা পাঠান
    foreach ($students as $student) {
        $message = "{$student['first_name']}, আপনার বকেয়া ফি: " . 
                   number_format($student['total_due'], 2) . " টাকা। " .
                   "অনুগ্রহ করে দ্রুত জমা দিন। ধন্যবাদ!";
        
        // স্টুডেন্টের ফোন নম্বর
        if (!empty($student['phone'])) {
            $result = $smsService->send($student['phone'], $message);
            if ($result['success']) {
                $totalSent++;
                echo "✓ " . $student['first_name'] . " - " . $student['phone'] . "\n";
            } else {
                echo "✗ " . $student['first_name'] . "\n";
            }
        }
        
        // গার্ডিয়ানের ফোন নম্বর
        if (!empty($student['guardian_phone'])) {
            $result = $smsService->send($student['guardian_phone'], $message);
            if ($result['success']) {
                $totalSent++;
            }
        }
    }
    
    echo "\n✓ মোট $totalSent টি SMS পাঠানো হয়েছে\n";
    
} catch (Exception $e) {
    echo "Error: " . $e->getMessage() . "\n";
}
?>
