Parameter to obfuscate times.
authorCMDR furrycat <elite@furrycat.net>
Wed, 16 Mar 2016 08:47:49 +0000 (04:47 -0400)
committerCMDR furrycat <elite@furrycat.net>
Wed, 16 Mar 2016 08:47:49 +0000 (04:47 -0400)
lib/elite_time.php
lib/race.php

index 9930334..39134f7 100644 (file)
@@ -14,7 +14,7 @@
     return sprintf("%04d%s", $year - 1286, $remainder);
   }
 
-  function format_time($time) {
+  function format_time($time, $obfuscate = 0) {
     if (! preg_match('/^\d+$/', $time)) return "";
 
     $ret = "";
@@ -33,6 +33,8 @@
     $seconds = $time;
     $ret .= sprintf("%02d:%02d:%02d", $hours, $minutes, $seconds);
 
+    for ($i = 1; $i <= min($obfuscate, 6); $i++) $ret = preg_replace('/[0-9](?=[:-]*$)/', '-', $ret, 1);
+
     return $ret;
   }
 
index 7dbe4a8..e71dc72 100644 (file)
     return (array_key_exists($condition, $formats) && $formats[$condition][0] >= $formats[$format][0]);
   }
 
-  function show_entry($sort, $format, $entry, $allotted_time, $has_joker, $has_prizes, $position, $rank, $ship_rank, $row, $type, $prize_name, $blue_count = 0, $white_count = 0) {
+  function show_entry($sort, $format, $obfuscate, $entry, $allotted_time, $has_joker, $has_prizes, $position, $rank, $ship_rank, $row, $type, $prize_name, $blue_count = 0, $white_count = 0) {
     $fields = array();
     if ($sort == "start_time") $fields[] = elite_time($entry->getStartTime());
     else {
       $fields[] = ($allotted_time > 0) ? format_time($allotted_time + $bonus_time) : '';
       $fields[] = ($bonus_time > 0) ? format_time($bonus_time) : '';
     }
-    $fields[] = format_time($entry->getRacedTime());
+    $fields[] = format_time($entry->getRacedTime(), $obfuscate);
     if ($allotted_time || $has_joker) $fields[] = ($allotted_time > 0) ? format_time($entry->getTotalTime()) : '';
     if ($allotted_time) {
       $fields[] = format_speed($entry->getBestSpeed());
     $format = (array_key_exists("format", $params)) ? $params["format"] : "ships";
     $prize_filter = (array_key_exists("prizes", $params)) ? (int) $params["prizes"] : null;
     $limit = (array_key_exists("limit", $params)) ? (int) $params["limit"] : null;
+    $obfuscate = (array_key_exists("obfuscate", $params)) ? (int) $params["obfuscate"] : null;
 
     $rq = new RaceQuery;
     if ($action) $rq->filterById($action);