summaryrefslogtreecommitdiff
path: root/includes/system
diff options
context:
space:
mode:
authorMinteck <contact@minteck.org>2022-10-18 08:59:09 +0200
committerMinteck <contact@minteck.org>2022-10-18 08:59:09 +0200
commit2c4ae43e688a9873e86211ea0e7aeb9ba770dd77 (patch)
tree17848d95522dab25d3cdeb9c4a6450e2a234861f /includes/system
parent108525534c28013cfe1897c30e4565f9893f3766 (diff)
downloadpluralconnect-2c4ae43e688a9873e86211ea0e7aeb9ba770dd77.tar.gz
pluralconnect-2c4ae43e688a9873e86211ea0e7aeb9ba770dd77.tar.bz2
pluralconnect-2c4ae43e688a9873e86211ea0e7aeb9ba770dd77.zip
Update
Diffstat (limited to 'includes/system')
-rw-r--r--includes/system/compare.inc2
-rw-r--r--includes/system/history.inc477
-rw-r--r--includes/system/history.old.inc528
-rw-r--r--includes/system/species.inc2
-rw-r--r--includes/system/tree.inc2
5 files changed, 574 insertions, 437 deletions
diff --git a/includes/system/compare.inc b/includes/system/compare.inc
index de777aa..d2023e4 100644
--- a/includes/system/compare.inc
+++ b/includes/system/compare.inc
@@ -1,4 +1,4 @@
-<?php global $system; global $systemCommonName; global $systemID; $title = "Compare members · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc'; global $travelling;
+<?php global $system; global $systemCommonName; global $systemID; $pages = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/pages.json"), true); $title = $pages["s:compare"]["name"] . " · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc'; global $travelling;
$members = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/$systemID/members.json"), true);
diff --git a/includes/system/history.inc b/includes/system/history.inc
index ee687d7..31a7c73 100644
--- a/includes/system/history.inc
+++ b/includes/system/history.inc
@@ -1,4 +1,4 @@
-<?php global $system; global $systemCommonName; global $systemID; $title = "Front history · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc';
+<?php global $system; global $systemCommonName; $pages = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/pages.json"), true); $title = $pages["s:history"]["name"] . " · " . $systemCommonName; global $systemID; $title = "Front history · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc';
function getMember(string $id) {
global $systemID;
@@ -75,17 +75,6 @@ function getMember(string $id) {
}
}
- $switches1 = getSwitchesForDay(0);
- $switches2 = getSwitchesForDay(1);
- $switches3 = getSwitchesForDay(2);
- $switches4 = getSwitchesForDay(3);
- $switches5 = getSwitchesForDay(4);
- $switches6 = getSwitchesForDay(5);
- $switches7 = getSwitchesForDay(6);
- $switches8 = getSwitchesForDay(7);
- $switches9 = getSwitchesForDay(8);
- $switches10 = getSwitchesForDay(9);
-
?>
<h2>Front history in the <?= $systemCommonName ?></h2>
<div class="alert alert-warning" id="timezone" style="display: none;">
@@ -95,430 +84,50 @@ function getMember(string $id) {
document.getElementById("timezone-name").innerText = new Date().toTimeString().split("(")[1].split(")")[0];
</script>
</div>
- <h4>Today</h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches1);
-
- $fronters[] = [
- "member" => isset($switches2[0]) ? (isset($switches2[0]["members"]) && isset($switches2[0]["members"][0]) ? $switches2[0]["members"][0] : null) : (isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][0]) ? $switches3[0]["members"][0] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][0]) ? $switches4[0]["members"][0] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]))))))),
- "member2" => isset($switches2[0]) ? (isset($switches2[0]["members"]) && isset($switches2[0]["members"][1]) ? $switches2[0]["members"][1] : null) : (isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][1]) ? $switches3[0]["members"][1] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][1]) ? $switches4[0]["members"][1] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]))))))),
- "date" => strtotime(isset($switches2[0]) ? $switches2[0]["timestamp"] : (isset($switches3[0]) ? $switches3[0]["timestamp"] : (isset($switches4[0]) ? $switches4[0]["timestamp"] : (isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))))))))
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ <?php foreach ([
+ [ "Today", 0 ],
+ [ "Yesterday", 1 ],
+ [ date('D j M', time() - (86400 * 2)), 2 ],
+ [ date('D j M', time() - (86400 * 3)), 3 ],
+ [ date('D j M', time() - (86400 * 4)), 4 ],
+ [ date('D j M', time() - (86400 * 5)), 5 ],
+ [ date('D j M', time() - (86400 * 6)), 6 ],
+ [ date('D j M', time() - (86400 * 7)), 7 ],
+ [ date('D j M', time() - (86400 * 8)), 8 ],
+ [ date('D j M', time() - (86400 * 9)), 9 ],
+ ] as $day):
+ $switchesDay = getSwitchesForDay($day[1]);
+ $switchesDay[] = getSwitchBefore($switchesDay[count($switchesDay) - 1]["id"]);
?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 0) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 0) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <h4 style="margin-top:15px;"><?= $day[0] ?></h4>
+ <?php foreach ($switchesDay as $switch): $switch["timestamp"] = strtotime($switch["timestamp"]); ?>
+ <?php if (isset($switch["members"][0])): $member = getMemberWithoutSystem($switch["members"][0]); ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($switch["timestamp"], $day[1]) ? strtotime(date('Y-m-d', $switch["timestamp"])) : $switch["timestamp"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($switch["timestamp"], $day[1]) ? "00:00" : date('H:i', $switch["timestamp"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (count($switch["members"]) > 1): ?>
+ (with
+ <?php if (isset($switch["members"][1])): $member2 = getMember($switch["members"][1]); ?><a class="member-link" href="/<?= $member2["name"] ?>"><img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a><?php endif; ?><?php if (isset($switch["members"][2])): $member2 = getMember($switch["members"][2]); ?>, <a class="member-link" href="/<?= $member2["name"] ?>"><img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a><?php endif; ?><?php if (isset($switch["members"][3])): $member2 = getMember($switch["members"][3]); ?>, <a class="member-link" href="/<?= $member2["name"] ?>"><img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a><?php endif; ?>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($switch["timestamp"], $day[1]) ? strtotime(date('Y-m-d', $switch["timestamp"])) : $switch["timestamp"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($switch["timestamp"], $day[1]) ? "00:00" : date('H:i', $switch["timestamp"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
<?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 0) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 0) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;">Yesterday</h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches2);
-
- $fronters[] = [
- "member" => isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][0]) ? $switches3[0]["members"][0] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][0]) ? $switches4[0]["members"][0] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0])))))),
- "member2" => isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][1]) ? $switches3[0]["members"][1] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][1]) ? $switches4[0]["members"][1] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1])))))),
- "date" => strtotime(isset($switches3[0]) ? $switches3[0]["timestamp"] : (isset($switches4[0]) ? $switches4[0]["timestamp"] : (isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])))))))
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 1) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 1) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 1) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 1) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 2)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches3);
-
- $fronters[] = [
- "member" => isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][0]) ? $switches4[0]["members"][0] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]))))),
- "member2" => isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][1]) ? $switches4[0]["members"][1] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]))))),
- "date" => strtotime(isset($switches4[0]) ? $switches4[0]["timestamp"] : (isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))))))
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 2) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 2) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 2) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 2) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 3)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches4);
-
- $fronters[] = [
- "member" => isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0])))),
- "member2" => isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1])))),
- "date" => strtotime(isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])))))
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 3) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 3) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 3) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 3) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 4)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches5);
-
- $fronters[] = [
- "member" => isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]))),
- "member2" => isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]))),
- "date" => strtotime(isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))))
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 4) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 4) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 4) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 4) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 5)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches6);
-
- $fronters[] = [
- "member" => isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0])),
- "member2" => isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1])),
- "date" => strtotime(isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])))
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 5) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 5) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 5) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 5) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 6)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches7);
-
- $fronters[] = [
- "member" => isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]),
- "member2" => isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]),
- "date" => strtotime(isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 6) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 6) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 6) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 6) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 7)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches8);
-
- $fronters[] = [
- "member" => isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0],
- "member2" => isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1],
- "date" => strtotime(isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 8)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches9);
-
- $fronters[] = [
- "member" => isset($switches10[0]) ? $switches10[0]["members"][0] : getSwitchBefore($switches9[count($switches9) - 1]["id"])["members"][0],
- "member2" => isset($switches10[0]) && isset($switches10[0]["members"]) && isset($switches10[0]["members"][1]) ? $switches10[0]["members"][1] : (isset(getSwitchBefore($switches9[count($switches9) - 1]["id"])["members"][1]) ? getSwitchBefore($switches9[count($switches9) - 1]["id"])["members"][1] : null),
- "date" => strtotime(isset($switches10[0]) ? $switches10[0]["timestamp"] : getSwitchBefore($switches9[count($switches9) - 1]["id"])["timestamp"])
- ];
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 8) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 8) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
- <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 9)) ?></h4>
- <?php
-
- $fronters = array_map(function ($i) {
- return [
- "member" => $i["members"][0] ?? null,
- "member2" => $i["members"][1] ?? null,
- "date" => strtotime($i["timestamp"])
- ];
- }, $switches10);
-
- foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
- ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 9) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 9) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <a class="member-link" href="/<?= $member["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
- </a>
- <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
- (with <a class="member-link" href="/<?= $member2["name"] ?>">
- <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
- <?php endif; ?>
- </span>
- </div>
- <?php else: ?>
- <div class="fronter">
- <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
- <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
- </span>
- <span class="fronter-profile" style="vertical-align: middle;">
- <span class="text-muted">Fallback pony</span>
- </span>
- </div>
- <?php endif; endforeach; ?>
+ <?php endforeach; ?>
+ <?php endforeach; ?>
</div>
<script>
Array.from(document.getElementsByClassName("fronter-date")).forEach((i) => { i.innerText = new Date(parseInt(i.getAttribute("data-date-time").trim()) * 1000).toTimeString().split(" ")[0].substring(0, 5) + " " });
diff --git a/includes/system/history.old.inc b/includes/system/history.old.inc
new file mode 100644
index 0000000..ee687d7
--- /dev/null
+++ b/includes/system/history.old.inc
@@ -0,0 +1,528 @@
+<?php global $system; global $systemCommonName; global $systemID; $title = "Front history · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc';
+
+function getMember(string $id) {
+ global $systemID;
+
+ $members = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/$systemID/members.json"), true);
+ $member = null;
+
+ foreach ($members as $m) {
+ if ($m["id"] === $id) $member = $m;
+ }
+
+ return $member;
+}
+
+?>
+
+ <br>
+ <div class="container" id="page-content">
+ <?php
+
+ $switches = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/$systemID/switches.json"), true);
+ uksort($switches, function ($a, $b) {
+ if (isset($b["timestamp"]) && isset($a["timestamp"])) {
+ return strtotime($b["timestamp"]) - strtotime($a["timestamp"]);
+ } else {
+ return null;
+ }
+ });
+
+ function getSwitchesForDay(int $day) {
+ global $switches;
+
+ $filtered = array_values(array_filter($switches, function ($i) use ($day) {
+ $diff = strtotime(date("Y-m-d")) - strtotime(explode("T", $i["timestamp"])[0]);
+ return $diff <= (86400 * $day) && $diff > (86400 * ($day - 1));
+ }));
+
+ uksort($filtered, function ($a, $b) {
+ if (isset($b["timestamp"]) && isset($a["timestamp"])) {
+ return strtotime($b["timestamp"]) - strtotime($a["timestamp"]);
+ } else {
+ return null;
+ }
+ });
+
+ return $filtered;
+ }
+
+ function getSwitchBefore(string $id) {
+ global $switches;
+
+ $currentPassed = false;
+ $before = null;
+
+ foreach ($switches as $switch) {
+ if ($currentPassed) {
+ $before = $switch;
+ break;
+ } else {
+ if ($switch["id"] === $id) {
+ $currentPassed = true;
+ }
+ }
+ }
+
+ return $before;
+ }
+
+ function isNotToday(int $timestamp, int $offset) {
+ if (date('Y-m-d', $timestamp) !== date('Y-m-d', time() - (86400 * $offset))) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ $switches1 = getSwitchesForDay(0);
+ $switches2 = getSwitchesForDay(1);
+ $switches3 = getSwitchesForDay(2);
+ $switches4 = getSwitchesForDay(3);
+ $switches5 = getSwitchesForDay(4);
+ $switches6 = getSwitchesForDay(5);
+ $switches7 = getSwitchesForDay(6);
+ $switches8 = getSwitchesForDay(7);
+ $switches9 = getSwitchesForDay(8);
+ $switches10 = getSwitchesForDay(9);
+
+ ?>
+ <h2>Front history in the <?= $systemCommonName ?></h2>
+ <div class="alert alert-warning" id="timezone" style="display: none;">
+ Times on this page are now shown using your local timezone (<span id="timezone-name">-</span>). Days start at <span id="day-start">-</span> (00:00 on UTC).
+ <script>
+ document.getElementById("day-start").innerText = new Date(<?= strtotime(date('Y-m-d')) ?> * 1000).toTimeString().substring(0, 5);
+ document.getElementById("timezone-name").innerText = new Date().toTimeString().split("(")[1].split(")")[0];
+ </script>
+ </div>
+ <h4>Today</h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches1);
+
+ $fronters[] = [
+ "member" => isset($switches2[0]) ? (isset($switches2[0]["members"]) && isset($switches2[0]["members"][0]) ? $switches2[0]["members"][0] : null) : (isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][0]) ? $switches3[0]["members"][0] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][0]) ? $switches4[0]["members"][0] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]))))))),
+ "member2" => isset($switches2[0]) ? (isset($switches2[0]["members"]) && isset($switches2[0]["members"][1]) ? $switches2[0]["members"][1] : null) : (isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][1]) ? $switches3[0]["members"][1] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][1]) ? $switches4[0]["members"][1] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]))))))),
+ "date" => strtotime(isset($switches2[0]) ? $switches2[0]["timestamp"] : (isset($switches3[0]) ? $switches3[0]["timestamp"] : (isset($switches4[0]) ? $switches4[0]["timestamp"] : (isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))))))))
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 0) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 0) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 0) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 0) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;">Yesterday</h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches2);
+
+ $fronters[] = [
+ "member" => isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][0]) ? $switches3[0]["members"][0] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][0]) ? $switches4[0]["members"][0] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0])))))),
+ "member2" => isset($switches3[0]) ? (isset($switches3[0]["members"]) && isset($switches3[0]["members"][1]) ? $switches3[0]["members"][1] : null) : (isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][1]) ? $switches4[0]["members"][1] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1])))))),
+ "date" => strtotime(isset($switches3[0]) ? $switches3[0]["timestamp"] : (isset($switches4[0]) ? $switches4[0]["timestamp"] : (isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])))))))
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 1) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 1) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 1) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 1) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 2)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches3);
+
+ $fronters[] = [
+ "member" => isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][0]) ? $switches4[0]["members"][0] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]))))),
+ "member2" => isset($switches4[0]) ? (isset($switches4[0]["members"]) && isset($switches4[0]["members"][1]) ? $switches4[0]["members"][1] : null) : (isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]))))),
+ "date" => strtotime(isset($switches4[0]) ? $switches4[0]["timestamp"] : (isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))))))
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 2) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 2) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 2) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 2) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 3)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches4);
+
+ $fronters[] = [
+ "member" => isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][0]) ? $switches5[0]["members"][0] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0])))),
+ "member2" => isset($switches5[0]) ? (isset($switches5[0]["members"]) && isset($switches5[0]["members"][1]) ? $switches5[0]["members"][1] : null) : (isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1])))),
+ "date" => strtotime(isset($switches5[0]) ? $switches5[0]["timestamp"] : (isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])))))
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 3) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 3) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 3) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 3) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 4)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches5);
+
+ $fronters[] = [
+ "member" => isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][0]) ? $switches6[0]["members"][0] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]))),
+ "member2" => isset($switches6[0]) ? (isset($switches6[0]["members"]) && isset($switches6[0]["members"][1]) ? $switches6[0]["members"][1] : null) : (isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]))),
+ "date" => strtotime(isset($switches6[0]) ? $switches6[0]["timestamp"] : (isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))))
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 4) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 4) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 4) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 4) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 5)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches6);
+
+ $fronters[] = [
+ "member" => isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][0]) ? $switches7[0]["members"][0] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0])),
+ "member2" => isset($switches7[0]) ? (isset($switches7[0]["members"]) && isset($switches7[0]["members"][1]) ? $switches7[0]["members"][1] : null) : (isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1])),
+ "date" => strtotime(isset($switches7[0]) ? $switches7[0]["timestamp"] : (isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])))
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 5) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 5) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 5) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 5) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 6)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches7);
+
+ $fronters[] = [
+ "member" => isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][0]) ? $switches8[0]["members"][0] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0]),
+ "member2" => isset($switches8[0]) ? (isset($switches8[0]["members"]) && isset($switches8[0]["members"][1]) ? $switches8[0]["members"][1] : null) : (isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1]),
+ "date" => strtotime(isset($switches8[0]) ? $switches8[0]["timestamp"] : (isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"]))
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 6) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 6) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member2["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 6) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 6) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 7)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches8);
+
+ $fronters[] = [
+ "member" => isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][0]) ? $switches9[0]["members"][0] : null) : $switches10[0]["members"][0],
+ "member2" => isset($switches9[0]) ? (isset($switches9[0]["members"]) && isset($switches9[0]["members"][1]) ? $switches9[0]["members"][1] : null) : $switches10[0]["members"][1],
+ "date" => strtotime(isset($switches9[0]) ? $switches9[0]["timestamp"] : $switches10[0]["timestamp"])
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 8)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches9);
+
+ $fronters[] = [
+ "member" => isset($switches10[0]) ? $switches10[0]["members"][0] : getSwitchBefore($switches9[count($switches9) - 1]["id"])["members"][0],
+ "member2" => isset($switches10[0]) && isset($switches10[0]["members"]) && isset($switches10[0]["members"][1]) ? $switches10[0]["members"][1] : (isset(getSwitchBefore($switches9[count($switches9) - 1]["id"])["members"][1]) ? getSwitchBefore($switches9[count($switches9) - 1]["id"])["members"][1] : null),
+ "date" => strtotime(isset($switches10[0]) ? $switches10[0]["timestamp"] : getSwitchBefore($switches9[count($switches9) - 1]["id"])["timestamp"])
+ ];
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 8) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 8) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ <h4 style="margin-top:15px;"><?= date('D j M', time() - (86400 * 9)) ?></h4>
+ <?php
+
+ $fronters = array_map(function ($i) {
+ return [
+ "member" => $i["members"][0] ?? null,
+ "member2" => $i["members"][1] ?? null,
+ "date" => strtotime($i["timestamp"])
+ ];
+ }, $switches10);
+
+ foreach ($fronters as $fronter): if (isset($fronter["member"])): $member = getMember($fronter["member"]);
+ ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 9) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 9) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <a class="member-link" href="/<?= $member["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member["display_name"] ?? $member["name"] ?>
+ </a>
+ <?php if (isset($fronter["member2"])): $member2 = getMember($fronter["member2"]); ?>
+ (with <a class="member-link" href="/<?= $member2["name"] ?>">
+ <img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= $member2["display_name"] ?? $member2["name"] ?></a>)
+ <?php endif; ?>
+ </span>
+ </div>
+ <?php else: ?>
+ <div class="fronter">
+ <span class="fronter-date" data-date-time="<?= isNotToday($fronter["date"], 7) ? strtotime(date('Y-m-d', $fronter["date"])) : $fronter["date"] ?>" style="opacity:.5;font-family: monospace;font-size:14px;vertical-align: middle;">
+ <?= isNotToday($fronter["date"], 7) ? "00:00" : date('H:i', $fronter["date"]) ?>
+ </span>
+ <span class="fronter-profile" style="vertical-align: middle;">
+ <span class="text-muted">Fallback pony</span>
+ </span>
+ </div>
+ <?php endif; endforeach; ?>
+ </div>
+ <script>
+ Array.from(document.getElementsByClassName("fronter-date")).forEach((i) => { i.innerText = new Date(parseInt(i.getAttribute("data-date-time").trim()) * 1000).toTimeString().split(" ")[0].substring(0, 5) + " " });
+ document.getElementById("timezone").style.display = "";
+ </script>
+
+<?php require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/footer.inc'; ?> \ No newline at end of file
diff --git a/includes/system/species.inc b/includes/system/species.inc
index bd37d7b..cca1eb8 100644
--- a/includes/system/species.inc
+++ b/includes/system/species.inc
@@ -1,4 +1,4 @@
-<?php global $system; global $systemCommonName; global $systemID; $title = "Members by species · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc'; global $travelling;
+<?php global $system; global $systemCommonName; global $systemID; $pages = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/pages.json"), true); $title = $pages["s:species"]["name"] . " · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc'; global $travelling;
$members = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/$systemID/members.json"), true);
$members = scoreOrder($members, $systemID);
diff --git a/includes/system/tree.inc b/includes/system/tree.inc
index c3cc5c4..92e7c08 100644
--- a/includes/system/tree.inc
+++ b/includes/system/tree.inc
@@ -1,4 +1,4 @@
-<?php global $system; global $systemCommonName; global $systemID; $title = "System tree · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc';
+<?php global $system; global $systemCommonName; global $systemID; $pages = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/pages.json"), true); $title = $pages["s:tree"]["name"] . " · " . $systemCommonName; require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/header.inc';
$members = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/$systemID/members.json"), true);
$members = scoreOrder($members, $systemID);