summaryrefslogtreecommitdiff
path: root/mirrors/index.php
blob: 617967c085539fe47d60fa99c8e5a0d2eb90b17c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php
require_once "../init.php";

require_once BASE . "/lib/mysql.php";
require_once BASE . "/lib/style.php";

$cutoff = 3600;

$result = mysql_run_query(
  "SELECT " .
  "GROUP_CONCAT(`l_ms`.`protocol`) AS `protocols`," .
  "SUBSTRING(`l_ms`.`url`,LENGTH(`l_ms`.`protocol`)+4) AS `url`," .
  "`l_ms`.`country`," .
  "`l_ms`.`country_code`," .
  "`l_ms`.`isos`," .
  "`l_ms`.`ipv4`," .
  "`l_ms`.`ipv6`" .
  " FROM (" .
    "SELECT " .
    "`mirror_statuses`.`url`," .
    "MAX(`mirror_statuses`.`start`) AS `start`" .
    " FROM `mirror_statuses`" .
    " WHERE `mirror_statuses`.`start` > UNIX_TIMESTAMP(NOW())-" . $cutoff .
    " GROUP BY `mirror_statuses`.`url`" .
  ") AS `ls`" .
  " JOIN `mirror_statuses` AS `l_ms`" .
  " ON `ls`.`url`=`l_ms`.`url`" .
  " AND `ls`.`start`=`l_ms`.`start`" .
  " GROUP BY SUBSTRING(`l_ms`.`url`,LENGTH(`l_ms`.`protocol`)+4)"
);

$last_check = 0;
$max_count = 0;

while($row = $result->fetch_assoc())
  $rows[] = $row;

print_header("Mirror Overview");

?>
      <div id="dev-mirrorlist" class="box">
        <h2>Mirror Overview</h2>
        <table class="results">
          <thead>
            <tr>
              <th>Server</th>
              <th>Country</th>
              <th>ISOs</th>
              <th>Protocols</th>
            </tr>
          </thead>
          <tbody>
<?php

$oddity = "odd";
foreach ($rows as $row) {
  print "            <tr class=\"" . $oddity ."\">\n";
  print "              <td>\n";
  print "                " . $row["url"] . "\n";
  print "              </td>\n";
  print "              <td class=\"country\">\n";
  print "                <span class=\"fam-flag fam-flag-" . $row["country_code"] . "\" title=\"" . $row["country"] . "\">\n";
  print "                </span>\n";
  print "                  " . $row["country"] . "\n";
  print "              </td>\n";
  print "              <td>\n";
  if ($row["isos"])
    print "                Yes\n";
  else
    print "                No\n";
  print "              </td>\n";
  print "              <td class=\"wrap\">\n";
  print "                " . $row["protocols"] . "\n";
  print "              </td>\n";
  print "            </tr>\n";
  if ($oddity == "odd")
    $oddity = "even";
  else
    $oddity = "odd";
}

?>
          </tbody>
        </table>
      </div>
<?php

  print_footer();