diff --git a/createDatabase.ts b/createDatabase.ts
index 72ac2d8..03e9acc 100644
--- a/createDatabase.ts
+++ b/createDatabase.ts
@@ -1,4 +1,4 @@
-import { sql } from "bun";
+import sql from "~/server/components/postgres";
const createUsers = await sql`
create table if not exists users (
@@ -42,6 +42,17 @@ create table if not exists newsProvidersZh (
)
`;
+
+const createGoLinks = await sql`
+create table if not exists go_links {
+ uuid text primary key,
+ title text,
+ slug text unique not null,
+ forwardUrl text not null,
+ created_at timestampz default current_timestamp
+}
+`
+/*
const createAdminPosts = await sql`
create table if not exists adminPosts (
uuid text primary key,
@@ -59,6 +70,6 @@ create table if not exists adminUsers (
created_at timestampz default current_timestamp,
lastlogged_at timestampz default current_timestamp,
)
-`;
+`;*/
console.log("Creation Complete");
diff --git a/pages/admin/login.vue b/pages/admin/login.vue
deleted file mode 100644
index f0677a7..0000000
--- a/pages/admin/login.vue
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/server/components/postgres.ts b/server/components/postgres.ts
new file mode 100644
index 0000000..de922b2
--- /dev/null
+++ b/server/components/postgres.ts
@@ -0,0 +1,7 @@
+import { SQL } from "bun";
+
+const postgres = new SQL({
+ url: process.env.POSTGRES_URL,
+})
+
+export default postgres;
\ No newline at end of file
diff --git a/server/routes/go/[slug].ts b/server/routes/go/[slug].ts
index e69de29..7526b28 100644
--- a/server/routes/go/[slug].ts
+++ b/server/routes/go/[slug].ts
@@ -0,0 +1,24 @@
+import sql from "~/server/components/postgres";
+export default defineEventHandler(async (event) => {
+ const slug = getRouterParam(event, 'slug');
+ if (!slug || typeof slug !== 'string') {
+ throw createError({
+ statusCode: 400,
+ message: 'Invalid slug parameter'
+ });
+ }
+ const cleanSlug = slug.replace(/[^a-zA-Z0-9-_]/g, '');
+ try {
+ const result = await sql`
+ select * from go_links
+ where slug = ${cleanSlug}
+ `
+ return result.rows[0] || null;
+ } catch (error) {
+ console.error('Database error:', error);
+ throw createError({
+ statusCode: 500,
+ message: 'Internal server error'
+ });
+ }
+})
\ No newline at end of file