Started working on the view upload page

This commit is contained in:
Leon Mika 2026-03-02 22:26:40 +11:00
parent 0a9af9cde8
commit 48f39133d7
18 changed files with 327 additions and 45 deletions

View file

@ -2,7 +2,10 @@
SELECT * FROM uploads WHERE site_id = ? ORDER BY created_at DESC;
-- name: SelectUploadByID :one
SELECT * FROM uploads WHERE id = ?;
SELECT * FROM uploads WHERE id = ? LIMIT 1;
-- name: SelectUploadBySiteIDAndSlug :one
SELECT * FROM uploads WHERE site_id = ? AND slug = ? LIMIT 1;
-- name: InsertUpload :exec
INSERT INTO uploads (
@ -10,9 +13,11 @@ INSERT INTO uploads (
guid,
mime_type,
filename,
created_at,
alt
) VALUES (?, ?, ?, ?, ?, ?)
file_size,
slug,
alt,
created_at
) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
RETURNING id;
-- name: UpdateUpload :exec

View file

@ -1,27 +1,28 @@
CREATE TABLE uploads (
id SERIAL PRIMARY KEY,
id INTEGER PRIMARY KEY AUTOINCREMENT,
site_id INT NOT NULL,
guid TEXT NOT NULL,
mime_type TEXT NOT NULL,
filename TEXT NOT NULL,
file_size INT NOT NULL,
file_size INT NOT NULL,
slug TEXT NOT NULL,
alt TEXT NOT NULL,
created_at INT NOT NULL,
FOREIGN KEY (site_id) REFERENCES sites (id) ON DELETE CASCADE
);
CREATE INDEX idx_uploads_site ON uploads (site_id);
CREATE UNIQUE INDEX idx_uploads_guid ON sites (guid);
CREATE UNIQUE INDEX idx_uploads_guid ON uploads (guid);
CREATE UNIQUE INDEX idx_uploads_site_slug ON uploads (site_id, slug);
CREATE TABLE pending_uploads (
id SERIAL PRIMARY KEY,
site_id INT NOT NULL,
guid TEXT NOT NULL,
user_id INT NOT NULL,
filename TEXT NOT NULL,
file_size INT NOT NULL,
mime_type TEXT NOT NULL,
upload_started_at INT NOT NULL,
id INTEGER PRIMARY KEY AUTOINCREMENT,
site_id INT NOT NULL,
guid TEXT NOT NULL,
user_id INT NOT NULL,
filename TEXT NOT NULL,
file_size INT NOT NULL,
mime_type TEXT NOT NULL,
upload_started_at INT NOT NULL,
FOREIGN KEY (site_id) REFERENCES sites (id) ON DELETE CASCADE,
FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE
);