summaryrefslogtreecommitdiff
path: root/includes/system/species.inc
diff options
context:
space:
mode:
authorMinteck <contact@minteck.org>2022-10-10 20:51:39 +0200
committerMinteck <contact@minteck.org>2022-10-10 20:51:39 +0200
commit108525534c28013cfe1897c30e4565f9893f3766 (patch)
treedd3e5132971f96ab5f05e7f3f8f6dbbf379a19bd /includes/system/species.inc
parent2162eaa06f7e4764eb3dcfe130ec2c711d0c62ab (diff)
downloadpluralconnect-108525534c28013cfe1897c30e4565f9893f3766.tar.gz
pluralconnect-108525534c28013cfe1897c30e4565f9893f3766.tar.bz2
pluralconnect-108525534c28013cfe1897c30e4565f9893f3766.zip
Update
Diffstat (limited to 'includes/system/species.inc')
-rw-r--r--includes/system/species.inc70
1 files changed, 70 insertions, 0 deletions
diff --git a/includes/system/species.inc b/includes/system/species.inc
new file mode 100644
index 0000000..bd37d7b
--- /dev/null
+++ b/includes/system/species.inc
@@ -0,0 +1,70 @@
+<?php global $system; global $systemCommonName; global $systemID; $title = "Members by species ยท " . $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);
+
+function species(array $members, string $id, string $name) { global $systemID; ?>
+ <?php
+
+ $members = [
+ ...array_filter($members, function ($i) {
+ global $travelling;
+ return !$travelling[$i['id']]['travelling'];
+ }),
+ ...array_filter(json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/" . ($systemID === "gdapd" ? "ynmuc" : "gdapd") . "/members.json"), true), function ($i) use ($id, $systemID) {
+ global $travelling;
+ return $travelling[$i['id']]['travelling'] && in_array($id, parseMetadata(json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/metadata/" . $i['id'] . ".json"), true))["species"]);
+ })
+ ];
+
+ ?>
+ <div class="relation" style="background-color:rgba(255, 255, 255, .1);margin-bottom:10px;padding:10px;border-radius:10px;display:grid;grid-template-columns: 1fr 4fr;">
+ <div class="relation-intro" style="background-color:rgba(255, 255, 255, .05);border-right:1px solid rgba(255, 255, 255, .1);margin:-10px;padding:10px;border-top-left-radius:10px;border-bottom-left-radius:10px;color: white;text-decoration: none;">
+ <img src="/assets/species/<?= $id ?>.png" style="width:24px;"><span class="species-name"> <?= $name ?></span> (<?= count($members) ?>)
+ </div>
+
+ <div class="relation-item" style="margin-left:10px;padding:0 20px;">
+ <?php if (count($members) > 0): ?>
+ <?php $index = 0; foreach ($members as $member): ?>
+ <a class="member-link" href="/<?= $member["name"] ?>"><img src="<?= getAsset($systemID, $member["id"], "heads") ?>" style="width:24px;"> <?= getMiniName($member["display_name"] ?? $member["name"]) ?></a><?php if ($index + 2 <= count($members)) echo('<span class="list-separator-desktop">, &nbsp;</span><span class="list-separator-mobile"><br></span>'); $index++; endforeach; ?>
+ <?php else: ?>-<?php endif; ?>
+ </div>
+ </div>
+<?php }
+
+?>
+
+ <br>
+ <div class="container" id="page-content">
+ <h2><?= $systemCommonName ?> members by species</h2>
+ <?php
+
+ $earth = [];
+ $pegasus = [];
+ $unicorn = [];
+ $alicorn = [];
+ $batpony = [];
+ $crystal = [];
+
+ foreach ($members as $member) {
+ foreach ($member["_metadata"]["species"] as $species) {
+ if ($species === "earth") $earth[] = $member;
+ if ($species === "pegasus") $pegasus[] = $member;
+ if ($species === "unicorn") $unicorn[] = $member;
+ if ($species === "alicorn") $alicorn[] = $member;
+ if ($species === "batpony") $batpony[] = $member;
+ if ($species === "crystal") $crystal[] = $member;
+ }
+ }
+
+ ?>
+
+ <?php species($earth, "earth", "Earth ponies"); ?>
+ <?php species($pegasus, "pegasus", "Pegasi"); ?>
+ <?php species($unicorn, "unicorn", "Unicorns"); ?>
+ <?php species($alicorn, "alicorn", "Alicorns"); ?>
+ <?php species($batpony, "batpony", "Bat ponies"); ?>
+ <?php species($crystal, "crystal", "Crystal ponies"); ?>
+ </div>
+
+<?php require_once $_SERVER['DOCUMENT_ROOT'] . '/includes/footer.inc'; ?> \ No newline at end of file