summaryrefslogtreecommitdiff
path: root/pages/api/badger.php
diff options
context:
space:
mode:
Diffstat (limited to 'pages/api/badger.php')
-rw-r--r--pages/api/badger.php47
1 files changed, 47 insertions, 0 deletions
diff --git a/pages/api/badger.php b/pages/api/badger.php
new file mode 100644
index 0000000..76f017e
--- /dev/null
+++ b/pages/api/badger.php
@@ -0,0 +1,47 @@
+<?php
+
+require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/util/functions.inc";
+
+$list = scoreOrderGlobal();
+
+function getAge($metadata) {
+ if (!isset($metadata["birth"]["year"]) || $metadata["birth"]["age"] > 0) {
+ if ($metadata["birth"]["age"] === -1) {
+ $age = " - Eternal";
+ } elseif ($metadata["birth"]["age"] <= 0) {
+ $age = "";
+ } else {
+ $age = " - " . ($metadata["birth"]["age"]);
+ }
+ } else {
+ if ($metadata["birth"]["year"] <= 1900) {
+ $age = "";
+ } else {
+ $age = " - " . ((int)date('Y') - $metadata["birth"]["year"] + (strtotime(date('Y') . "-" . $metadata["birth"]["date"]) <= time() ? 0 : -1));
+ }
+ }
+
+ return $age;
+}
+
+header("Content-Type: application/json");
+die(json_encode(array_map(function ($i) {
+ return [
+ "id" => $i["id"],
+ "name" => $i["display_name"] ?? $i["name"],
+ "system" => $i["system"],
+ "pronouns" => $i["pronouns"],
+ "species" => match ($i["_metadata"]["species"][0]) {
+ "earth" => $i["_metadata"]["robot"] ? "Robot earth pony" : (!$i["_metadata"]["plush"] ? "Earth pony" : "Earth pony plush"),
+ "alicorn" => $i["_metadata"]["robot"] ? "Robot alicorn" : (!$i["_metadata"]["plush"] ? "Alicorn" : "Alicorn plush"),
+ "crystal" => $i["_metadata"]["robot"] ? "Robot crystal pony" : (!$i["_metadata"]["plush"] ? "Crystal pony" : "Crystal pony plush"),
+ "pegasus" => $i["_metadata"]["robot"] ? "Robot pegasus" : (!$i["_metadata"]["plush"] ? "Pegasus" : "Pegasus plush"),
+ "batpony" => $i["_metadata"]["robot"] ? "Robot bat pony" : (!$i["_metadata"]["plush"] ? "Bat pony" : "Bat pony plush"),
+ "unicorn" => $i["_metadata"]["robot"] ? "Robot unicorn" : (!$i["_metadata"]["plush"] ? "Unicorn" : "Unicorn plush"),
+ "changeling" => "Changeling",
+ default => $i["_metadata"]["species"][0] . "_" . $i["_metadata"]["robot"]
+ },
+ "age" => getAge($i["_metadata"]),
+ "avatar" => "https://ponies.equestria.horse" . getAsset($i["system"], $i["id"], "heads")
+ ];
+}, $list), JSON_PRETTY_PRINT)); \ No newline at end of file