<?php
require_once 'config.php';
require_once 'includes/Database.php';

$db = new Database();

echo "=== MODAL TARİHÇE TESTİ ===\n\n";

// Test tarihleri (Kasım 2025)
$startDate = '2025-11-01';
$endDate = '2025-11-30';

// Ortadaki tarihi hesapla (get_bonus_details.php mantığı)
$startTimestamp = strtotime($startDate);
$endTimestamp = strtotime($endDate);
$middleTimestamp = $startTimestamp + (($endTimestamp - $startTimestamp) / 2);
$referenceDate = date('Y-m-d', $middleTimestamp);

echo "Tarih Aralığı: $startDate ~ $endDate\n";
echo "Referans Tarih: $referenceDate\n\n";

// Criteria'dan değeri çek
$criteria = $db->fetchOne("
    SELECT point_value
    FROM criteria
    WHERE code = 'egitim_orani' AND is_active = 1
");
echo "1. Criteria'daki değer: " . ($criteria ? $criteria['point_value'] : 'YOK') . "\n";

// Tarihçeden değeri çek
$history = $db->fetchOne("
    SELECT point_value
    FROM criteria_history
    WHERE criteria_code = 'egitim_orani'
      AND start_date <= ?
      AND (end_date IS NULL OR end_date >= ?)
    ORDER BY start_date DESC
    LIMIT 1
", [$referenceDate, $referenceDate]);

echo "2. Tarihçedeki değer: " . ($history ? $history['point_value'] : 'YOK') . "\n\n";

// Sonuç
if ($history && isset($history['point_value'])) {
    $finalValue = floatval($history['point_value']);
    echo "3. KULLANILACAK DEĞER: $finalValue (tarihçeden) ✓\n";
} else {
    $finalValue = $criteria ? floatval($criteria['point_value']) : 0;
    echo "3. KULLANILACAK DEĞER: $finalValue (criteria'dan) ✓\n";
}

echo "\n=== SONUÇ ===\n";
echo "Modalda gösterilecek değer: $finalValue\n";
echo "\nBu değer şu hesaplamalarda kullanılacak:\n";
echo "  • Paket puanı hesaplama\n";
echo "  • (X / Y) × $finalValue = puan\n";
echo "  • Toplam performans puanı\n";
