From 72487019b3f255cece40a8073bbad8bc9968a3b7 Mon Sep 17 00:00:00 2001 From: "Alex Pooley (@zuedev)" Date: Wed, 22 Jul 2026 15:32:57 +0100 Subject: major code refactor, add uex lookup --- 174bg/discord-bot/controllers/http.js | 25 ------------------ 174bg/discord-bot/controllers/pocketbase.js | 40 ----------------------------- 2 files changed, 65 deletions(-) delete mode 100644 174bg/discord-bot/controllers/http.js delete mode 100644 174bg/discord-bot/controllers/pocketbase.js (limited to '174bg/discord-bot/controllers') diff --git a/174bg/discord-bot/controllers/http.js b/174bg/discord-bot/controllers/http.js deleted file mode 100644 index 816b73c..0000000 --- a/174bg/discord-bot/controllers/http.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Controller module for interacting with HTTP resources, mainly for fetching JSON data from external APIs. - */ - -/** - * Fetches data from a specified URL and returns the response as JSON or text. - * @param {string} url - The URL to fetch data from. - * @returns {Promise} A Promise that resolves to the parsed JSON object, text, or null if the request fails. - */ -export async function get(url) { - const response = await fetch(url); - - if (!response.ok) return null; - - // is it json? - const contentType = response.headers.get("content-type"); - if (contentType && contentType.includes("application/json")) { - return await response.json(); - } - - // fallback to text - return await response.text(); -}; - -return { get }; \ No newline at end of file diff --git a/174bg/discord-bot/controllers/pocketbase.js b/174bg/discord-bot/controllers/pocketbase.js deleted file mode 100644 index 4046391..0000000 --- a/174bg/discord-bot/controllers/pocketbase.js +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Controller module for interacting with the PocketBase API. - */ - -import PocketBase from "pocketbase"; - -const { POCKETBASE_URL, POCKETBASE_SUPERUSER_EMAIL, POCKETBASE_SUPERUSER_PASSWORD } = process.env; - -/** - * Logs in to the PocketBase API using the superuser credentials. - * @returns {Promise} A Promise that resolves to the authenticated PocketBase instance. - */ -export async function login() { - const pb = new PocketBase(POCKETBASE_URL); - await pb.collection("_superusers").authWithPassword(POCKETBASE_SUPERUSER_EMAIL, POCKETBASE_SUPERUSER_PASSWORD); - return pb; -} - -/** - * Logs out of the PocketBase API by clearing the authentication store. - * @param {PocketBase} pb - The PocketBase instance to log out from. - * @returns {Promise} A Promise that resolves when the logout is complete. - */ -export async function logout(pb) { - await pb.authStore.clear(); -} - -/** - * Retrieves the full list of records from a specified collection in the PocketBase API. - * @param {string} collectionName - The name of the collection to retrieve records from. - * @returns {Promise} A Promise that resolves to an array of records from the specified collection. - */ -export async function getFullList(collectionName) { - const pb = await login(); - const data = await pb.collection(collectionName).getFullList(); - await logout(pb); - return data; -} - -export default { login, logout, getFullList } \ No newline at end of file -- cgit v1.2.3