<?php

// echo '<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimal-ui">';
// echo "KISA BİR BAKIMDAYIZ AZ SONRA YAYINA GEÇECEĞİZ";
// echo "<br>";
// echo $_SERVER["SERVER_ADDR"];
// die();

date_default_timezone_set('Europe/Istanbul');
try {
     $db = new PDO("mysql:host=localhost;dbname=heysen_db;charset=utf8mb4", "heysen_db", "VAXw_jJki{uc");
} catch ( PDOException $e ){
     print $e->getMessage();
}

if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
  $_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}



// IP kontrolü önden yapılmalı (cookie oluşturulabilmesi için header gönderilmeden önce)
$GLOBALS['turkey_ip_checked'] = false;


// Kullanıcının IP'sinin Türkiye'den olup olmadığını kontrol et
function isTurkeyIP() {
    // Global değişkende zaten kontrol edildiyse tekrar kontrol etme
    if ($GLOBALS['turkey_ip_checked']) {
        return $GLOBALS['is_turkey_ip_result'];
    }
    
    // Cookie cache kontrolü (1 saat)
    if (isset($_COOKIE['is_turkey_ip'])) {
        $result = $_COOKIE['is_turkey_ip'] === 'true';
        $GLOBALS['turkey_ip_checked'] = true;
        $GLOBALS['is_turkey_ip_result'] = $result;
        return $result;
    }
    
    $user_ip = $_SERVER['REMOTE_ADDR'];
    
    // Localhost kontrolü
    if ($user_ip == '127.0.0.1' || $user_ip == '::1' || strpos($user_ip, '192.168.') === 0) {
        @setcookie('is_turkey_ip', 'true', time() + 3600); // 1 saat cache
        $GLOBALS['turkey_ip_checked'] = true;
        $GLOBALS['is_turkey_ip_result'] = true;
        return true;
    }
    
    // cURL ile API 1: ipapi.co (HTTPS)
    if (function_exists('curl_init')) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, "https://ipapi.co/{$user_ip}/country_code/");
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 3);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        $response = curl_exec($ch);
        $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        curl_close($ch);
        
        if ($response && $http_code == 200 && trim($response) == 'TR') {
            @setcookie('is_turkey_ip', 'true', time() + 3600); // 1 saat cache
            $GLOBALS['turkey_ip_checked'] = true;
            $GLOBALS['is_turkey_ip_result'] = true;
            return true;
        }
        
        // API 2: ip-api.com (HTTP)
        $ch2 = curl_init();
        curl_setopt($ch2, CURLOPT_URL, "http://ip-api.com/json/{$user_ip}?fields=countryCode");
        curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch2, CURLOPT_TIMEOUT, 3);
        $response2 = curl_exec($ch2);
        $http_code2 = curl_getinfo($ch2, CURLINFO_HTTP_CODE);
        curl_close($ch2);
        
        if ($response2 && $http_code2 == 200) {
            $data = json_decode($response2, true);
            if (isset($data['countryCode']) && $data['countryCode'] == 'TR') {
                @setcookie('is_turkey_ip', 'true', time() + 3600); // 1 saat cache
                $GLOBALS['turkey_ip_checked'] = true;
                $GLOBALS['is_turkey_ip_result'] = true;
                return true;
            }
        }
    }
    
    // API'ler erişilemezse false döndür (1 saat cache)
    @setcookie('is_turkey_ip', 'false', time() + 3600);
    $GLOBALS['turkey_ip_checked'] = true;
    $GLOBALS['is_turkey_ip_result'] = false;
    return false;
}


function time_ago($datetime){

    $now = new DateTime;
    $ago = new DateTime($datetime);
    $diff = $now->diff($ago);

    $diff->w = floor($diff->d / 7);
    $diff->d -= $diff->w * 7;

    $time_arr = [
        'y' => 'yıl',
        'm' => 'ay',
        'w' => 'hafta',
        'd' => 'gün',
        'h' => 'saat',
        'i' => 'dakika',
        's' => 'saniye'
    ];
    foreach($time_arr as $k => &$v){
        if($diff->$k){
            $v = $diff->$k . ' ' . $v;
        }else{
            unset($time_arr[$k]);
        }
    }

    return $time_arr ? implode(', ', array_slice($time_arr, 0, 1)) . ' önce' : 'Az önce';
}

?>