CREATE TABLE IF NOT EXISTS librepages_forgejo_webhooks (
    forgejo_webhook_secret VARCHAR(40) NOT NULL UNIQUE,
    forgejo_url VARCHAR(3000) NOT NULL,
    auth_token VARCHAR(40) NOT NULL UNIQUE,
	ID SERIAL PRIMARY KEY NOT NULL,
	owned_by INTEGER NOT NULL references librepages_users(ID) ON DELETE CASCADE
);

CREATE UNIQUE INDEX librepages_forgejo_webhook_auth_token_index ON librepages_forgejo_webhooks(auth_token);

CREATE TABLE IF NOT EXISTS librepages_forgejo_webhook_site_mapping (
	site_id INTEGER NOT NULL references librepages_sites(ID) ON DELETE CASCADE,
	forgejo_webhook_id INTEGER NOT NULL references librepages_forgejo_webhooks(ID) ON DELETE CASCADE,
    UNIQUE(site_id, forgejo_webhook_id)
);