diff --git a/public/88x31/arimelody_me.gif b/public/88x31/arimelody_me.gif deleted file mode 100644 index 6227206..0000000 Binary files a/public/88x31/arimelody_me.gif and /dev/null differ diff --git a/public/88x31/esoteric/gnu-linux.gif b/public/88x31/esoteric/gnu-linux.gif deleted file mode 100644 index 89e3562..0000000 Binary files a/public/88x31/esoteric/gnu-linux.gif and /dev/null differ diff --git a/public/88x31/esoteric/html.gif b/public/88x31/esoteric/html.gif deleted file mode 100644 index dd832a0..0000000 Binary files a/public/88x31/esoteric/html.gif and /dev/null differ diff --git a/public/88x31/esoteric/ublock.png b/public/88x31/esoteric/ublock.png deleted file mode 100644 index 5ce5191..0000000 Binary files a/public/88x31/esoteric/ublock.png and /dev/null differ diff --git a/public/88x31/esoteric/vivaldi.gif b/public/88x31/esoteric/vivaldi.gif deleted file mode 100644 index ba52da7..0000000 Binary files a/public/88x31/esoteric/vivaldi.gif and /dev/null differ diff --git a/public/88x31/esoteric/xkcd.gif b/public/88x31/esoteric/xkcd.gif deleted file mode 100644 index f484402..0000000 Binary files a/public/88x31/esoteric/xkcd.gif and /dev/null differ diff --git a/public/88x31/freeplay_floof_company.png b/public/88x31/freeplay_floof_company.png deleted file mode 100644 index 5fbaf74..0000000 Binary files a/public/88x31/freeplay_floof_company.png and /dev/null differ diff --git a/public/88x31/invoxiplaygames_uk.png b/public/88x31/invoxiplaygames_uk.png deleted file mode 100644 index e64f0ab..0000000 Binary files a/public/88x31/invoxiplaygames_uk.png and /dev/null differ diff --git a/public/88x31/ioletsgo_gay.gif b/public/88x31/ioletsgo_gay.gif deleted file mode 100644 index 8edb51c..0000000 Binary files a/public/88x31/ioletsgo_gay.gif and /dev/null differ diff --git a/public/88x31/jaiden_sh.png b/public/88x31/jaiden_sh.png deleted file mode 100644 index 0cf875e..0000000 Binary files a/public/88x31/jaiden_sh.png and /dev/null differ diff --git a/public/88x31/mae_wtf.png b/public/88x31/mae_wtf.png deleted file mode 100644 index 7a30c3d..0000000 Binary files a/public/88x31/mae_wtf.png and /dev/null differ diff --git a/public/88x31/micro_pages_gay.png b/public/88x31/micro_pages_gay.png deleted file mode 100644 index 0c00824..0000000 Binary files a/public/88x31/micro_pages_gay.png and /dev/null differ diff --git a/public/88x31/moth_monster.png b/public/88x31/moth_monster.png deleted file mode 100644 index 4a8fe10..0000000 Binary files a/public/88x31/moth_monster.png and /dev/null differ diff --git a/public/88x31/owenzimmerman_com.png b/public/88x31/owenzimmerman_com.png deleted file mode 100644 index 1cdac5b..0000000 Binary files a/public/88x31/owenzimmerman_com.png and /dev/null differ diff --git a/public/88x31/sneexy_pages_gay.gif b/public/88x31/sneexy_pages_gay.gif deleted file mode 100644 index 166ebf4..0000000 Binary files a/public/88x31/sneexy_pages_gay.gif and /dev/null differ diff --git a/public/88x31/translunar_academy.png b/public/88x31/translunar_academy.png deleted file mode 100644 index d4df1bf..0000000 Binary files a/public/88x31/translunar_academy.png and /dev/null differ diff --git a/public/88x31/whois_slipfox_xyz.png b/public/88x31/whois_slipfox_xyz.png deleted file mode 100644 index 29e5e90..0000000 Binary files a/public/88x31/whois_slipfox_xyz.png and /dev/null differ diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index b491051..0000000 Binary files a/public/favicon.ico and /dev/null differ diff --git a/src/app/favicon.ico/route.tsx b/src/app/favicon.ico/route.tsx new file mode 100644 index 0000000..80c9e41 --- /dev/null +++ b/src/app/favicon.ico/route.tsx @@ -0,0 +1,6 @@ + +import { NextRequest } from "next/server"; + +export async function GET(request: NextRequest) { + return Response.redirect("https://cdn.abtmtr.link/site_content/favicon.ico"); +} \ No newline at end of file diff --git a/src/app/orgs/organizations.json b/src/app/orgs/organizations.json deleted file mode 100644 index b87f0f2..0000000 --- a/src/app/orgs/organizations.json +++ /dev/null @@ -1,54 +0,0 @@ -[ - { - "name": "abtmtr.link", - "main": { - "title": "Systems Administrator", - "email": "me@abtmtr.link", - "url": "https://abtmtr.link/" - }, - "involvement": [ - { - "description": "It's me", - "start": "August 2023" - } - ] - }, - { - "name": "Fyra Labs", - "main": { - "title": "Artist in Residence", - "email": "mtr@fyralabs.com", - "url": "https://fyralabs.com/about/" - }, - "involvement": [ - { - "description": "Drew Plasmanine art for Jaiden and Lleyton", - "date": "March 2024" - }, - { - "description": "Testing for UM on ARM Chromebooks", - "supervisor": "Owen Zimmerman", - "start": "April 2024" - }, - { - "description": "Miscellaneous involvement", - "start": "April 2024" - } - ] - }, - { - "name": "Team Elrant", - "main": { - "title": "Member", - "email": "abtmtr@elrant.team", - "url": "https://github.com/orgs/elrant/people" - }, - "involvement": [ - { - "_type": "default", - "description": "Member", - "start": "May 2024" - } - ] - } -] diff --git a/src/app/orgs/page.tsx b/src/app/orgs/page.tsx index 2fcfa8f..9d32898 100644 --- a/src/app/orgs/page.tsx +++ b/src/app/orgs/page.tsx @@ -1,42 +1,60 @@ import { MainLayout } from "@/layout/MainLayout/MainLayout"; import Link from "next/link"; -import o from "./organizations.json"; -import { ConditionalNull } from "@/components/utility/Conditional"; +import { ConditionalNull, ConditionalParent } from "@/components/utility/Conditional"; export default async function Home() { + const o = await fetch("https://cdn.abtmtr.link/site_content/organizations.json").then(x=>x.json()).catch(_ => null); const organizations: { name: string, + url: string, main: { - title: string, + title?: string, email?: string, - url: string + url?: string, }, involvement: { description: string, supervisor?: string, + url?: string, start?: string, date?: string, end?: string }[] - }[] = o; + }[] = o.reverse(); return ( ORGANIZATIONS -

Organizations, corporations, companies, or just general groups I'm a part of.

-

All of it's listed here, as well as my work for them.

+

Organizations I've contributed to, corporations/companies I've done work for, or just general groups I'm a part of.

+

All of it's listed here, as well as what I've done.

{organizations.map((organization) => (
-

{organization.name}

-

{organization.main.title} +

{organization.name}

+

+ + + {x} + }> + {organization.main.title} + + + + {" - "} + - {" - "}{organization.main.email} + {organization.main.email}

- {organization.involvement.map((involvement) => (<> + {organization.involvement.reverse().map((involvement) => (<>
-

{involvement.description}

+

+ + {x} + }> + {involvement.description} + +

- {involvement.supervisor} + w/ {involvement.supervisor} {" - "} diff --git a/src/app/page.tsx b/src/app/page.tsx index ce20ddf..0f99e86 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,12 +1,12 @@ import { MainLayout } from "@/layout/MainLayout/MainLayout"; import Link from "next/link"; -import buttons from "@/buttons.json"; import Searchbar from "@/components/Searchbar/Searchbar"; export default async function Home() { - const data = await fetch("https://pronouns.cc/api/v1/users/mtr").then(x=>x.json()); + const buttons = await fetch("https://cdn.abtmtr.link/site_content/buttons.json").then(x=>x.json()).catch(_ => null); + const data = await fetch("https://pronouns.cc/api/v1/users/mtr").then(x=>x.json()).catch(_ => null); const domainreq = await fetch("https://blog.abtmtr.link/api/collections/paste/posts/domain") - .then(x=>x.json()); + .then(x=>x.json()).catch(_ => "[]"); const domains = JSON.parse(domainreq?.data?.body.replace(/[ā€œā€]/g, "\"")) ?? []; const goodNames = data.names.filter((x:{status:string})=>x.status == "okay"); @@ -39,95 +39,11 @@ export default async function Home() { flexWrap: "wrap", padding: 8, gap: 8 - }}>{buttons.map((button) => ( + }}>{buttons.map((button:{href: string, img: string, alt: string}) => ( {button.alt} ))}

) -} - -/* -{ - "id": "clhd8desmggedm3q1t3g", - "id_new": "251576323070604865", - "sid": "qftsk", - "name": "mtr", - "display_name": "abtmtr.link: FURRY REVOLUTION", - "bio": "https://abtmtr.link/\nminor (16)\nabtmtr.link sysadmin\nšŸ‡©šŸ‡“ & šŸ³ļøā€āš§ļø-ish & pluralflux ND 󠁛󠀣󠀰󠀰󠀰󠀰󠀰󠀰󠀬󠀣󠁦󠁦󠀓󠀰󠀰󠀰󠁝", - "member_title": "Managers", - "avatar": "dfa7038db301508df749772f07ae9302fb0b9d71dff6770f9a6fefb6cf16f2e3", - "links": [ - "https://last.fm/user/MeowcaTheoRange", - "https://liberapay.com/abtmtr.link/", - "https://beta.trollcall.xyz/clan/meowcatheorange", - "https://movie-web.app/", - "https://picrew.me/en/image_maker/92646", - "https://pronouns.cc/@mtr" - ], - "names": [ - { - "value": "MeowcaTheoRange", - "status": "okay" - }, - { - "value": "abtmtr.link", - "status": "okay" - }, - { - "value": "Theo", - "status": "okay" - } - ], - "pronouns": [ - { - "pronouns": "[any]", - "display_text": null, - "status": "okay" - } - ], - "members": [ - { - "id": "cng1h37m985pb3k8ohe0", - "id_new": "286009441537261082", - "sid": "shdvoo", - "name": "MeowcaTheoRange", - "display_name": "MeowcaTheoRange", - "bio": "totality in association.", - "avatar": "a686a0bfeeb19ce6591a3bef6bb0f4ff38586f0d75b857cb21c3d86ae42b39e4", - "links": [ - - ], - "names": [ - { - "value": "Theo", - "status": "okay" - }, - { - "value": "Thea", - "status": "okay" - } - ], - "pronouns": [ - { - "pronouns": "[any]", - "display_text": null, - "status": "okay" - } - ] - } - ], - "fields": [ - - ], - "custom_preferences": { - - }, - "flags": [ - - ], - "badges": 0, - "utc_offset": -18000 -} -*/ \ No newline at end of file +} \ No newline at end of file diff --git a/src/buttons.json b/src/buttons.json deleted file mode 100644 index e6775ca..0000000 --- a/src/buttons.json +++ /dev/null @@ -1,87 +0,0 @@ -[ - { - "href": "https://jaiden.sh/", - "img": "/88x31/jaiden_sh.png", - "alt": "jaiden.sh" - }, - { - "href": "https://owenzimmerman.com/", - "img": "/88x31/owenzimmerman_com.png", - "alt": "owenzimmerman.com" - }, - { - "href": "https://arimelody.me/", - "img": "/88x31/arimelody_me.gif", - "alt": "arimelody.me" - }, - { - "href": "https://freeplay.floof.company/", - "img": "/88x31/freeplay_floof_company.png", - "alt": "freeplay.floof.company" - }, - { - "href": "https://invoxiplaygames.uk/", - "img": "/88x31/invoxiplaygames_uk.png", - "alt": "invoxiplaygames.uk" - }, - { - "href": "https://ioletsgo.gay/", - "img": "/88x31/ioletsgo_gay.gif", - "alt": "ioletsgo.gay" - }, - { - "href": "https://mae.wtf/", - "img": "/88x31/mae_wtf.png", - "alt": "mae.wtf" - }, - { - "href": "https://micro.pages.gay/", - "img": "/88x31/micro_pages_gay.png", - "alt": "micro.pages.gay" - }, - { - "href": "https://sneexy.pages.gay/", - "img": "/88x31/sneexy_pages_gay.gif", - "alt": "sneexy.pages.gay" - }, - { - "href": "https://whois.slipfox.xyz/", - "img": "/88x31/whois_slipfox_xyz.png", - "alt": "whois.slipfox.xyz" - }, - { - "href": "https://moth.monster/", - "img": "/88x31/moth_monster.png", - "alt": "moth.monster" - }, - { - "href": "https://translunar.academy/", - "img": "/88x31/translunar_academy.png", - "alt": "translunar.academy" - }, - { - "href": "https://ultramarine-linux.org/", - "img": "/88x31/esoteric/gnu-linux.gif", - "alt": "Made on GNU/Linux" - }, - { - "href": "https://abtmtr.link/projects/item/normalize", - "img": "/88x31/esoteric/html.gif", - "alt": " - Learn it today!" - }, - { - "href": "https://vivaldi.com", - "img": "/88x31/esoteric/vivaldi.gif", - "alt": "I use Vivaldi" - }, - { - "href": "https://ublockorigin.com", - "img": "/88x31/esoteric/ublock.png", - "alt": "uBlock Origin Now!" - }, - { - "href": "https://channelstore.roku.com/details/7da3fa0c2209746730df8a4e21e83b02", - "img": "/88x31/esoteric/xkcd.gif", - "alt": "xkcd" - } -] \ No newline at end of file