]>
Commit | Line | Data |
---|---|---|
889a5f9f | 1 | drop table if exists ttrss_error_log; |
5d9abb1e | 2 | drop table if exists ttrss_plugin_storage; |
17140b71 AD |
3 | drop table if exists ttrss_linked_feeds; |
4 | drop table if exists ttrss_linked_instances; | |
5 | drop table if exists ttrss_access_keys; | |
6 | drop table if exists ttrss_user_labels2; | |
7 | drop table if exists ttrss_labels2; | |
8 | drop table if exists ttrss_feedbrowser_cache; | |
9 | drop table if exists ttrss_version; | |
10 | drop table if exists ttrss_labels; | |
6aff7845 AD |
11 | drop table if exists ttrss_filters2_rules; |
12 | drop table if exists ttrss_filters2_actions; | |
13 | drop table if exists ttrss_filters2; | |
17140b71 AD |
14 | drop table if exists ttrss_filter_types; |
15 | drop table if exists ttrss_filter_actions; | |
16 | drop table if exists ttrss_user_prefs; | |
17 | drop table if exists ttrss_prefs; | |
18 | drop table if exists ttrss_prefs_types; | |
19 | drop table if exists ttrss_prefs_sections; | |
20 | drop table if exists ttrss_tags; | |
21 | drop table if exists ttrss_enclosures; | |
22 | drop table if exists ttrss_settings_profiles; | |
23 | drop table if exists ttrss_entry_comments; | |
24 | drop table if exists ttrss_user_entries; | |
25 | drop table if exists ttrss_entries; | |
26 | drop table if exists ttrss_scheduled_updates; | |
27 | drop table if exists ttrss_counters_cache; | |
28 | drop table if exists ttrss_cat_counters_cache; | |
29 | drop table if exists ttrss_archived_feeds; | |
30 | drop table if exists ttrss_feeds; | |
31 | drop table if exists ttrss_feed_categories; | |
32 | drop table if exists ttrss_users; | |
33 | drop table if exists ttrss_themes; | |
34 | drop table if exists ttrss_sessions; | |
35 | drop function if exists SUBSTRING_FOR_DATE(timestamp, int, int); | |
e552e5a2 | 36 | |
855d0ecf AD |
37 | begin; |
38 | ||
2aaacbc0 | 39 | create table ttrss_users (id serial not null primary key, |
4e9dd2cd AD |
40 | login varchar(120) not null unique, |
41 | pwd_hash varchar(250) not null, | |
4f628ae5 | 42 | last_login timestamp default null, |
53d6935b | 43 | access_level integer not null default 0, |
8629e09d | 44 | email varchar(250) not null default '', |
73fe13af | 45 | full_name varchar(250) not null default '', |
32be4b10 AD |
46 | email_digest boolean not null default false, |
47 | last_digest_sent timestamp default null, | |
e90053fe | 48 | salt varchar(250) not null default '', |
57e24c82 | 49 | twitter_oauth text default null, |
fb70f26e | 50 | otp_enabled boolean not null default false, |
9507ab7f | 51 | created timestamp default null); |
4e9dd2cd | 52 | |
58fa1bbc | 53 | insert into ttrss_users (login,pwd_hash,access_level) values ('admin', |
7f16656e | 54 | 'SHA1:5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8', 10); |
4e9dd2cd | 55 | |
4a9a8bd8 | 56 | create table ttrss_feed_categories(id serial not null primary key, |
5a214f9d | 57 | owner_uid integer not null references ttrss_users(id) on delete cascade, |
28bcadff | 58 | collapsed boolean not null default false, |
782ddd70 | 59 | order_id integer not null default 0, |
b4f83063 | 60 | view_settings varchar(250) not null default '', |
9432bfa0 | 61 | parent_cat integer references ttrss_feed_categories(id) on delete set null, |
4a9a8bd8 AD |
62 | title varchar(200) not null); |
63 | ||
28a80fbf | 64 | create table ttrss_feeds (id serial not null primary key, |
4e9dd2cd | 65 | owner_uid integer not null references ttrss_users(id) on delete cascade, |
58fa1bbc | 66 | title varchar(200) not null, |
f0907182 | 67 | cat_id integer default null references ttrss_feed_categories(id) on delete set null, |
58fa1bbc | 68 | feed_url text not null, |
b7f4bda2 | 69 | icon_url varchar(250) not null default '', |
d148926e | 70 | update_interval integer not null default 0, |
1089b16b | 71 | purge_interval integer not null default 0, |
ab3d0b99 | 72 | last_updated timestamp default null, |
37d379de | 73 | last_error text not null default '', |
14118af3 | 74 | favicon_avg_color varchar(11) default null, |
e93a3c96 AD |
75 | site_url varchar(250) not null default '', |
76 | auth_login varchar(250) not null default '', | |
de99f500 | 77 | parent_feed integer default null references ttrss_feeds(id) on delete set null, |
5b35b4de | 78 | private boolean not null default false, |
70f6dbb1 | 79 | auth_pass varchar(250) not null default '', |
7da377ca | 80 | hidden boolean not null default false, |
3dd9183c | 81 | include_in_digest boolean not null default true, |
155a2a53 | 82 | rtl_content boolean not null default false, |
fb67e2ba | 83 | cache_images boolean not null default false, |
bfd61d3f | 84 | hide_images boolean not null default false, |
87764a50 | 85 | cache_content boolean not null default false, |
14fb4e91 | 86 | last_viewed timestamp default null, |
3c50da83 | 87 | last_update_started timestamp default null, |
5b8534ef | 88 | update_method integer not null default 0, |
e0382fd6 | 89 | always_display_enclosures boolean not null default false, |
56781036 | 90 | order_id integer not null default 0, |
9382ca84 | 91 | mark_unread_on_update boolean not null default false, |
74b046a1 | 92 | update_on_checksum_change boolean not null default false, |
9382ca84 | 93 | strip_images boolean not null default false, |
b4f83063 | 94 | view_settings varchar(250) not null default '', |
5ab9791f | 95 | pubsub_state integer not null default 0, |
382268c6 | 96 | favicon_last_checked timestamp default null, |
58fa1bbc | 97 | auth_pass_encrypted boolean not null default false); |
28a80fbf | 98 | |
daa25e8a | 99 | create index ttrss_feeds_owner_uid_index on ttrss_feeds(owner_uid); |
44f1eeed | 100 | create index ttrss_feeds_cat_id_idx on ttrss_feeds(cat_id); |
daa25e8a | 101 | |
078b5702 | 102 | insert into ttrss_feeds (owner_uid, title, feed_url) values |
1f8c187d | 103 | (1, 'Tiny Tiny RSS: New Releases', 'http://tt-rss.org/releases.rss'); |
078b5702 | 104 | |
58fa1bbc | 105 | insert into ttrss_feeds (owner_uid, title, feed_url) values |
1f8c187d | 106 | (1, 'Tiny Tiny RSS: Forum', 'http://tt-rss.org/forum/rss.php'); |
28a80fbf | 107 | |
24902606 AD |
108 | create table ttrss_archived_feeds (id integer not null primary key, |
109 | owner_uid integer not null references ttrss_users(id) on delete cascade, | |
58fa1bbc AD |
110 | title varchar(200) not null, |
111 | feed_url text not null, | |
112 | site_url varchar(250) not null default ''); | |
24902606 | 113 | |
4d736378 | 114 | create table ttrss_counters_cache ( |
8a4c759e AD |
115 | feed_id integer not null, |
116 | owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE, | |
117 | updated timestamp not null, | |
118 | value integer not null default 0); | |
119 | ||
f0259baf AD |
120 | create index ttrss_counters_cache_feed_id_idx on ttrss_counters_cache(feed_id); |
121 | create index ttrss_counters_cache_owner_uid_idx on ttrss_counters_cache(owner_uid); | |
122 | create index ttrss_counters_cache_value_idx on ttrss_counters_cache(value); | |
123 | ||
8a4c759e AD |
124 | create table ttrss_cat_counters_cache ( |
125 | feed_id integer not null, | |
4d736378 | 126 | owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE, |
a1eba24b | 127 | updated timestamp not null, |
4d736378 AD |
128 | value integer not null default 0); |
129 | ||
f0259baf AD |
130 | create index ttrss_cat_counters_cache_owner_uid_idx on ttrss_cat_counters_cache(owner_uid); |
131 | ||
58fa1bbc AD |
132 | create table ttrss_entries (id serial not null primary key, |
133 | title text not null, | |
134 | guid text not null unique, | |
135 | link text not null, | |
136 | updated timestamp not null, | |
d76a3b03 | 137 | content text not null, |
466001c4 | 138 | content_hash varchar(250) not null, |
87764a50 | 139 | cached_content text, |
b82af8c3 | 140 | no_orig_date boolean not null default false, |
25ea2805 AD |
141 | date_entered timestamp not null, |
142 | date_updated timestamp not null, | |
eb40e11b | 143 | num_comments integer not null default 0, |
4bc760da | 144 | comments varchar(250) not null default '', |
7bfb3dab | 145 | plugin_data text, |
4bc760da | 146 | author varchar(250) not null default ''); |
c62d62f6 AD |
147 | |
148 | create index ttrss_entries_guid_index on ttrss_entries(guid); | |
894ebcf5 | 149 | -- create index ttrss_entries_title_index on ttrss_entries(title); |
b60e1d86 | 150 | create index ttrss_entries_date_entered_index on ttrss_entries(date_entered); |
bf9fb81f | 151 | create index ttrss_entries_updated_idx on ttrss_entries(updated); |
8bbb8466 AD |
152 | |
153 | create table ttrss_user_entries ( | |
05732aa0 | 154 | int_id serial not null primary key, |
4c193675 | 155 | ref_id integer not null references ttrss_entries(id) ON DELETE CASCADE, |
83cd33fc | 156 | uuid varchar(200) not null, |
58fa1bbc AD |
157 | feed_id int references ttrss_feeds(id) ON DELETE CASCADE, |
158 | orig_feed_id integer references ttrss_archived_feeds(id) ON DELETE SET NULL, | |
8bbb8466 AD |
159 | owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE, |
160 | marked boolean not null default false, | |
ffba8297 | 161 | published boolean not null default false, |
490c366d | 162 | tag_cache text not null, |
905ff52a | 163 | label_cache text not null, |
8bbb8466 | 164 | last_read timestamp, |
afb6038e | 165 | score int not null default 0, |
7873d588 AD |
166 | last_marked timestamp, |
167 | last_published timestamp, | |
c7e51de1 | 168 | note text, |
b82af8c3 | 169 | unread boolean not null default true); |
a0d53889 | 170 | |
894ebcf5 | 171 | -- create index ttrss_user_entries_feed_id_index on ttrss_user_entries(feed_id); |
e2f08094 | 172 | create index ttrss_user_entries_owner_uid_index on ttrss_user_entries(owner_uid); |
daa25e8a | 173 | create index ttrss_user_entries_ref_id_index on ttrss_user_entries(ref_id); |
894ebcf5 | 174 | create index ttrss_user_entries_feed_id on ttrss_user_entries(feed_id); |
e2f08094 | 175 | create index ttrss_user_entries_unread_idx on ttrss_user_entries(unread); |
daa25e8a | 176 | |
8caa7999 AD |
177 | create table ttrss_entry_comments (id serial not null primary key, |
178 | ref_id integer not null references ttrss_entries(id) ON DELETE CASCADE, | |
179 | owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE, | |
180 | private boolean not null default false, | |
181 | date_entered timestamp not null); | |
58fa1bbc | 182 | |
8caa7999 | 183 | create index ttrss_entry_comments_ref_id_index on ttrss_entry_comments(ref_id); |
894ebcf5 | 184 | -- create index ttrss_entry_comments_owner_uid_index on ttrss_entry_comments(owner_uid); |
8caa7999 | 185 | |
58fa1bbc AD |
186 | create table ttrss_filter_types (id integer not null primary key, |
187 | name varchar(120) unique not null, | |
a0d53889 AD |
188 | description varchar(250) not null unique); |
189 | ||
190 | insert into ttrss_filter_types (id,name,description) values (1, 'title', 'Title'); | |
191 | insert into ttrss_filter_types (id,name,description) values (2, 'content', 'Content'); | |
58fa1bbc | 192 | insert into ttrss_filter_types (id,name,description) values (3, 'both', |
bdc00fe0 | 193 | 'Title or Content'); |
58fa1bbc | 194 | insert into ttrss_filter_types (id,name,description) values (4, 'link', |
3a933f22 | 195 | 'Link'); |
58fa1bbc | 196 | insert into ttrss_filter_types (id,name,description) values (5, 'date', |
75fa1e31 | 197 | 'Article Date'); |
fa3317be | 198 | insert into ttrss_filter_types (id,name,description) values (6, 'author', 'Author'); |
c3fc5e47 | 199 | insert into ttrss_filter_types (id,name,description) values (7, 'tag', 'Article Tags'); |
a0d53889 | 200 | |
58fa1bbc AD |
201 | create table ttrss_filter_actions (id integer not null primary key, |
202 | name varchar(120) unique not null, | |
53d6935b AD |
203 | description varchar(250) not null unique); |
204 | ||
58fa1bbc | 205 | insert into ttrss_filter_actions (id,name,description) values (1, 'filter', |
b9ad7cfa | 206 | 'Delete article'); |
53d6935b | 207 | |
58fa1bbc | 208 | insert into ttrss_filter_actions (id,name,description) values (2, 'catchup', |
53d6935b AD |
209 | 'Mark as read'); |
210 | ||
58fa1bbc | 211 | insert into ttrss_filter_actions (id,name,description) values (3, 'mark', |
dd7d3187 AD |
212 | 'Set starred'); |
213 | ||
58fa1bbc | 214 | insert into ttrss_filter_actions (id,name,description) values (4, 'tag', |
de07b5ee | 215 | 'Assign tags'); |
7cb9311b | 216 | |
58fa1bbc | 217 | insert into ttrss_filter_actions (id,name,description) values (5, 'publish', |
0c4811be AD |
218 | 'Publish article'); |
219 | ||
58fa1bbc | 220 | insert into ttrss_filter_actions (id,name,description) values (6, 'score', |
fdb7b03f AD |
221 | 'Modify score'); |
222 | ||
58fa1bbc | 223 | insert into ttrss_filter_actions (id,name,description) values (7, 'label', |
ceb30ba4 AD |
224 | 'Assign label'); |
225 | ||
5e736e45 AD |
226 | insert into ttrss_filter_actions (id,name,description) values (8, 'stop', |
227 | 'Stop / Do nothing'); | |
228 | ||
6aff7845 AD |
229 | create table ttrss_filters2(id serial not null primary key, |
230 | owner_uid integer not null references ttrss_users(id) on delete cascade, | |
231 | match_any_rule boolean not null default false, | |
a3a896a1 | 232 | inverse boolean not null default false, |
8e8c8934 AD |
233 | title varchar(250) not null default '', |
234 | order_id integer not null default 0, | |
6aff7845 | 235 | enabled boolean not null default true); |
fb70f26e | 236 | |
6aff7845 AD |
237 | create table ttrss_filters2_rules(id serial not null primary key, |
238 | filter_id integer not null references ttrss_filters2(id) on delete cascade, | |
239 | reg_exp varchar(250) not null, | |
a3a896a1 | 240 | inverse boolean not null default false, |
6aff7845 AD |
241 | filter_type integer not null references ttrss_filter_types(id), |
242 | feed_id integer references ttrss_feeds(id) on delete cascade default null, | |
243 | cat_id integer references ttrss_feed_categories(id) on delete cascade default null, | |
244 | cat_filter boolean not null default false); | |
245 | ||
246 | create table ttrss_filters2_actions(id serial not null primary key, | |
247 | filter_id integer not null references ttrss_filters2(id) on delete cascade, | |
248 | action_id integer not null default 1 references ttrss_filter_actions(id) on delete cascade, | |
249 | action_param varchar(250) not null default ''); | |
250 | ||
58fa1bbc | 251 | create table ttrss_tags (id serial not null primary key, |
eb36b4eb | 252 | tag_name varchar(250) not null, |
ee9008f9 | 253 | owner_uid integer not null references ttrss_users(id) on delete cascade, |
05732aa0 | 254 | post_int_id integer references ttrss_user_entries(int_id) ON DELETE CASCADE not null); |
eb36b4eb | 255 | |
daa25e8a | 256 | create index ttrss_tags_owner_uid_index on ttrss_tags(owner_uid); |
90c9c16f | 257 | create index ttrss_tags_post_int_id_idx on ttrss_tags(post_int_id); |
daa25e8a | 258 | |
5f171894 AD |
259 | create table ttrss_version (schema_version int not null); |
260 | ||
889a5f9f | 261 | insert into ttrss_version values (118); |
5f171894 | 262 | |
963d3314 AD |
263 | create table ttrss_enclosures (id serial not null primary key, |
264 | content_url text not null, | |
265 | content_type varchar(250) not null, | |
aa6d1e97 | 266 | title text not null, |
ce53e200 | 267 | duration text not null, |
963d3314 AD |
268 | post_id integer references ttrss_entries(id) ON DELETE cascade NOT NULL); |
269 | ||
f0143d4e AD |
270 | create index ttrss_enclosures_post_id_idx on ttrss_enclosures(post_id); |
271 | ||
d9084cf2 AD |
272 | create table ttrss_settings_profiles(id serial not null primary key, |
273 | title varchar(250) not null, | |
274 | owner_uid integer not null references ttrss_users(id) on delete cascade); | |
275 | ||
58fa1bbc | 276 | create table ttrss_prefs_types (id integer not null primary key, |
e0257be1 AD |
277 | type_name varchar(100) not null); |
278 | ||
279 | insert into ttrss_prefs_types (id, type_name) values (1, 'bool'); | |
280 | insert into ttrss_prefs_types (id, type_name) values (2, 'string'); | |
281 | insert into ttrss_prefs_types (id, type_name) values (3, 'integer'); | |
282 | ||
58fa1bbc | 283 | create table ttrss_prefs_sections (id integer not null primary key, |
f9ebb32c | 284 | order_id integer not null, |
e0257be1 AD |
285 | section_name varchar(100) not null); |
286 | ||
f9ebb32c AD |
287 | insert into ttrss_prefs_sections (id, section_name, order_id) values (1, 'General', 0); |
288 | insert into ttrss_prefs_sections (id, section_name, order_id) values (2, 'Interface', 1); | |
289 | insert into ttrss_prefs_sections (id, section_name, order_id) values (3, 'Advanced', 3); | |
290 | insert into ttrss_prefs_sections (id, section_name, order_id) values (4, 'Digest', 2); | |
e0257be1 | 291 | |
2aaacbc0 | 292 | create table ttrss_prefs (pref_name varchar(250) not null primary key, |
e0257be1 | 293 | type_id integer not null references ttrss_prefs_types(id), |
f9ebb32c | 294 | section_id integer not null default 1 references ttrss_prefs_sections(id), |
2b6ed06b | 295 | access_level integer not null default 0, |
ff485f1d AD |
296 | def_value text not null); |
297 | ||
2ced2bb8 AD |
298 | create index ttrss_prefs_pref_name_idx on ttrss_prefs(pref_name); |
299 | ||
923b5c8b AD |
300 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('PURGE_OLD_DAYS', 3, '60', 1); |
301 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('DEFAULT_UPDATE_INTERVAL', 3, '30', 1); | |
302 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('DEFAULT_ARTICLE_LIMIT', 3, '30', 2); | |
881a1580 | 303 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('ALLOW_DUPLICATE_POSTS', 1, 'false', 1); |
923b5c8b AD |
304 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('ENABLE_FEED_CATS', 1, 'true', 2); |
305 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('SHOW_CONTENT_PREVIEW', 1, 'true', 2); | |
306 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('SHORT_DATE_FORMAT', 2, 'M d, G:i', 3); | |
307 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('LONG_DATE_FORMAT', 2, 'D, M d Y - G:i', 3); | |
308 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('COMBINED_DISPLAY_MODE', 1, 'true', 2); | |
309 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('HIDE_READ_FEEDS', 1, 'false', 2); | |
310 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('ON_CATCHUP_SHOW_NEXT_FEED', 1, 'false', 2); | |
311 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('FEEDS_SORT_BY_UNREAD', 1, 'false', 2); | |
312 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('REVERSE_HEADLINES', 1, 'false', 2); | |
313 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('DIGEST_ENABLE', 1, 'false', 4); | |
314 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('CONFIRM_FEED_CATCHUP', 1, 'true', 2); | |
315 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('CDM_AUTO_CATCHUP', 1, 'false', 2); | |
316 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_DEFAULT_VIEW_MODE', 2, 'adaptive', 1); | |
317 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_DEFAULT_VIEW_LIMIT', 3, '30', 1); | |
318 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_PREFS_ACTIVE_TAB', 2, '', 1); | |
319 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('STRIP_UNSAFE_TAGS', 1, 'true', 3); | |
320 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('BLACKLISTED_TAGS', 2, 'main, generic, misc, uncategorized, blog, blogroll, general, news', 3); | |
321 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('FRESH_ARTICLE_MAX_AGE', 3, '24', 2); | |
322 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('DIGEST_CATCHUP', 1, 'false', 4); | |
323 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('CDM_EXPANDED', 1, 'true', 2); | |
324 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('PURGE_UNREAD_ARTICLES', 1, 'true', 3); | |
325 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('HIDE_READ_SHOWS_SPECIAL', 1, 'true', 2); | |
326 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('VFEED_GROUP_BY_FEED', 1, 'false', 2); | |
327 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('STRIP_IMAGES', 1, 'false', 2); | |
328 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_DEFAULT_VIEW_ORDER_BY', 2, 'default', 1); | |
329 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('ENABLE_API_ACCESS', 1, 'false', 1); | |
330 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_COLLAPSED_SPECIAL', 1, 'false', 1); | |
331 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_COLLAPSED_LABELS', 1, 'false', 1); | |
332 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_COLLAPSED_UNCAT', 1, 'false', 1); | |
333 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_COLLAPSED_FEEDLIST', 1, 'false', 1); | |
334 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_MOBILE_ENABLE_CATS', 1, 'false', 1); | |
335 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_MOBILE_SHOW_IMAGES', 1, 'false', 1); | |
336 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_MOBILE_HIDE_READ', 1, 'false', 1); | |
337 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_MOBILE_SORT_FEEDS_UNREAD', 1, 'false', 1); | |
338 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_THEME_ID', 2, '0', 1); | |
339 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('USER_TIMEZONE', 2, 'UTC', 1); | |
340 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('USER_STYLESHEET', 2, '', 2); | |
341 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('SORT_HEADLINES_BY_FEED_DATE', 1, 'false', 2); | |
342 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_MOBILE_BROWSE_CATS', 1, 'true', 1); | |
343 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('SSL_CERT_SERIAL', 2, '', 3); | |
344 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('DIGEST_PREFERRED_TIME', 2, '00:00', 4); | |
345 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_PREFS_SHOW_EMPTY_CATS', 1, 'false', 1); | |
346 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_DEFAULT_INCLUDE_CHILDREN', 1, 'false', 1); | |
347 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('AUTO_ASSIGN_LABELS', 1, 'true', 3); | |
348 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_ENABLED_PLUGINS', 2, '', 1); | |
349 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('_MOBILE_REVERSE_HEADLINES', 1, 'false', 1); | |
350 | insert into ttrss_prefs (pref_name,type_id,def_value,section_id) values('USER_CSS_THEME', 2, '', 2); | |
5d40efc9 | 351 | |
f9ebb32c AD |
352 | update ttrss_prefs set access_level = 1 where pref_name in ('ON_CATCHUP_SHOW_NEXT_FEED', |
353 | 'SORT_HEADLINES_BY_FEED_DATE', | |
354 | 'VFEED_GROUP_BY_FEED', | |
355 | 'FRESH_ARTICLE_MAX_AGE', | |
356 | 'CDM_EXPANDED', | |
357 | 'SHOW_CONTENT_PREVIEW', | |
b24504b1 | 358 | 'AUTO_ASSIGN_LABELS', |
f9ebb32c AD |
359 | 'HIDE_READ_SHOWS_SPECIAL'); |
360 | ||
4e9dd2cd | 361 | create table ttrss_user_prefs ( |
00a0bcc8 AD |
362 | owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE, |
363 | pref_name varchar(250) not null references ttrss_prefs(pref_name) ON DELETE CASCADE, | |
d9084cf2 | 364 | profile integer references ttrss_settings_profiles(id) ON DELETE CASCADE, |
4e9dd2cd AD |
365 | value text not null); |
366 | ||
daa25e8a | 367 | create index ttrss_user_prefs_owner_uid_index on ttrss_user_prefs(owner_uid); |
2ced2bb8 | 368 | create index ttrss_user_prefs_pref_name_idx on ttrss_user_prefs(pref_name); |
894ebcf5 | 369 | -- create index ttrss_user_prefs_value_index on ttrss_user_prefs(value); |
daa25e8a | 370 | |
04febb04 | 371 | create table ttrss_sessions (id varchar(250) unique not null primary key, |
58fa1bbc | 372 | data text, |
a2e9b457 | 373 | expire integer not null); |
36bfab86 | 374 | |
36bfab86 AD |
375 | create index ttrss_sessions_expire_index on ttrss_sessions(expire); |
376 | ||
fc2b26a6 AD |
377 | create function SUBSTRING_FOR_DATE(timestamp, int, int) RETURNS text AS 'SELECT SUBSTRING(CAST($1 AS text), $2, $3)' LANGUAGE 'sql'; |
378 | ||
0c630ef3 AD |
379 | create table ttrss_feedbrowser_cache ( |
380 | feed_url text not null primary key, | |
931dcbc1 | 381 | title text not null, |
109662e1 | 382 | site_url text not null, |
58fa1bbc | 383 | subscribers integer not null); |
0c630ef3 | 384 | |
58fa1bbc | 385 | create table ttrss_labels2 (id serial not null primary key, |
ceb30ba4 | 386 | owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE, |
aec57d7a AD |
387 | fg_color varchar(15) not null default '', |
388 | bg_color varchar(15) not null default '', | |
ceb30ba4 AD |
389 | caption varchar(250) not null |
390 | ); | |
391 | ||
392 | create table ttrss_user_labels2 ( | |
393 | label_id integer not null references ttrss_labels2(id) ON DELETE CASCADE, | |
394 | article_id integer not null references ttrss_entries(id) ON DELETE CASCADE | |
395 | ); | |
396 | ||
8801fb01 AD |
397 | create table ttrss_access_keys (id serial not null primary key, |
398 | access_key varchar(250) not null, | |
399 | feed_id varchar(250) not null, | |
400 | is_cat boolean not null default false, | |
401 | owner_uid integer not null references ttrss_users(id) on delete cascade); | |
402 | ||
58fa1bbc | 403 | create table ttrss_linked_instances (id serial not null primary key, |
afb875cc | 404 | last_connected timestamp not null, |
cfc06471 AD |
405 | last_status_in integer not null, |
406 | last_status_out integer not null, | |
1eb3012f | 407 | access_key varchar(250) not null unique, |
58fa1bbc AD |
408 | access_url text not null); |
409 | ||
410 | create table ttrss_linked_feeds ( | |
411 | feed_url text not null, | |
109662e1 | 412 | site_url text not null, |
58fa1bbc AD |
413 | title text not null, |
414 | created timestamp not null, | |
415 | updated timestamp not null, | |
416 | instance_id integer not null references ttrss_linked_instances(id) ON DELETE CASCADE, | |
417 | subscribers integer not null); | |
418 | ||
5d9abb1e AD |
419 | create table ttrss_plugin_storage ( |
420 | id serial not null primary key, | |
421 | name varchar(100) not null, | |
422 | owner_uid integer not null references ttrss_users(id) ON DELETE CASCADE, | |
423 | content text not null); | |
424 | ||
889a5f9f AD |
425 | create table ttrss_error_log( |
426 | id serial not null primary key, | |
427 | owner_uid integer references ttrss_users(id) ON DELETE SET NULL, | |
428 | errno integer not null, | |
429 | errstr text not null, | |
430 | filename text not null, | |
431 | lineno integer not null, | |
432 | context text not null, | |
433 | created_at timestamp not null); | |
434 | ||
855d0ecf | 435 | commit; |