<?php
   // 1) Încarc JSON-ul și extrag zi/lună/an
   $json = file_get_contents('include/db/ranking.json');
   $data = json_decode($json, true);
   $top10backup_day   = intval($data['top10backup']['day']);
   $top10backup_month = intval($data['top10backup']['month']);
   $top10backup_year  = intval($data['top10backup']['year']);

   // 2) Creez obiectele DateTime cu format fix și validez
   $date1 = DateTime::createFromFormat('j-n-Y', 
       "{$top10backup_day}-{$top10backup_month}-{$top10backup_year}"
   );
   if (!$date1) {
       error_log('top10backup: dată invalidă în ranking.json');
       return;
   }
   $date2 = new DateTime(); // azi
   $diff  = date_diff($date1, $date2);
   if (!$diff) {
       error_log('top10backup: eroare la date_diff');
       return;
   }

   // 3) Dacă a trecut cel puțin o zi, fac backup-ul
   if ($diff->days > 0) {
       // actualizez data în array-ul $data
       $data['top10backup'] = [
           'day'   => intval($date2->format('j')),
           'month' => intval($date2->format('n')),
           'year'  => intval($date2->format('Y')),
       ];

       // Top 10 jucători
       $top = top10players();
       $i = 1; $players = '';
       foreach ($top as $p) {
           $emp = get_player_empire($p['account_id']);
           $players .= '<tr><td></td>'
                     ."<th scope='row'><strong>".$i++."</strong></th>"
                     ."<td>{$p['name']}</td>"
                     ."<td><img src='{$site_url}images/empire/{$emp}.jpg' "
                     ."alt='".emire_name($emp)."' title='".emire_name($emp)."'></td>"
                     .'</tr>';
       }
       $data['top10backup']['players'] = $players;

       // Top 10 guilduri (analog)
       $top = top10guilds();
       $i = 1; $guilds = '';
       foreach ($top as $g) {
           $emp = get_guild_empire($g['master']);
           $guilds .= '<tr><td></td>'
                    ."<th scope='row'><strong>".$i++."</strong></th>"
                    ."<td>{$g['name']}</td>"
                    ."<td><img src='{$site_url}images/empire/{$emp}.jpg' "
                    ."alt='".emire_name($emp)."' title='".emire_name($emp)."'/></td>"
                    .'</tr>';
       }
       $data['top10backup']['guilds'] = $guilds;

       // 4) Salvare JSON
       file_put_contents('include/db/ranking.json',
           json_encode($data)
       );

       // API și curățări
       include 'api.php';
       include 'delete_accounts.php';
   }
?>