mirror of
https://code.mensbeam.com/MensBeam/Arsse.git
synced 2024-12-23 09:02:41 +00:00
48 lines
No EOL
2.6 KiB
SQL
48 lines
No EOL
2.6 KiB
SQL
-- SPDX-License-Identifier: MIT
|
|
-- Copyright 2017 J. King, Dustin Wilson et al.
|
|
-- See LICENSE and AUTHORS files for details
|
|
|
|
-- Sessions for Tiny Tiny RSS (and possibly others)
|
|
create table arsse_sessions (
|
|
id text primary key, -- UUID of session
|
|
created text not null default CURRENT_TIMESTAMP, -- Session start timestamp
|
|
expires text not null, -- Time at which session is no longer valid
|
|
user text not null references arsse_users(id) on delete cascade on update cascade -- user associated with the session
|
|
) without rowid;
|
|
|
|
-- User-defined article labels for Tiny Tiny RSS
|
|
create table arsse_labels (
|
|
id integer primary key, -- numeric ID
|
|
owner text not null references arsse_users(id) on delete cascade on update cascade, -- owning user
|
|
name text not null, -- label text
|
|
modified text not null default CURRENT_TIMESTAMP, -- time at which the label was last modified
|
|
unique(owner,name)
|
|
);
|
|
|
|
-- Labels assignments for articles
|
|
create table arsse_label_members (
|
|
label integer not null references arsse_labels(id) on delete cascade,
|
|
article integer not null references arsse_articles(id) on delete cascade,
|
|
subscription integer not null references arsse_subscriptions(id) on delete cascade, -- Subscription is included so that records are deleted when a subscription is removed
|
|
assigned boolean not null default 1,
|
|
modified text not null default CURRENT_TIMESTAMP,
|
|
primary key(label,article)
|
|
) without rowid;
|
|
|
|
-- alter marks table to add Tiny Tiny RSS' notes
|
|
alter table arsse_marks rename to arsse_marks_old;
|
|
create table arsse_marks(
|
|
article integer not null references arsse_articles(id) on delete cascade,
|
|
subscription integer not null references arsse_subscriptions(id) on delete cascade on update cascade,
|
|
read boolean not null default 0,
|
|
starred boolean not null default 0,
|
|
modified text not null default CURRENT_TIMESTAMP,
|
|
note text not null default '',
|
|
primary key(article,subscription)
|
|
);
|
|
insert into arsse_marks(article,subscription,read,starred,modified) select article,subscription,read,starred,modified from arsse_marks_old;
|
|
drop table arsse_marks_old;
|
|
|
|
-- set version marker
|
|
pragma user_version = 2;
|
|
update arsse_meta set value = '2' where key = 'schema_version'; |