summaryrefslogtreecommitdiffstats
path: root/server/migrations
diff options
context:
space:
mode:
Diffstat (limited to 'server/migrations')
-rw-r--r--server/migrations/2019-12-11-181820_add_site_fields/down.sql16
-rw-r--r--server/migrations/2019-12-11-181820_add_site_fields/up.sql16
2 files changed, 32 insertions, 0 deletions
diff --git a/server/migrations/2019-12-11-181820_add_site_fields/down.sql b/server/migrations/2019-12-11-181820_add_site_fields/down.sql
new file mode 100644
index 00000000..72eedba4
--- /dev/null
+++ b/server/migrations/2019-12-11-181820_add_site_fields/down.sql
@@ -0,0 +1,16 @@
+-- Drop the columns
+drop view site_view;
+alter table site drop column enable_downvotes;
+alter table site drop column open_registration;
+alter table site drop column enable_nsfw;
+
+-- Rebuild the views
+
+create view site_view as
+select *,
+(select name from user_ u where s.creator_id = u.id) as creator_name,
+(select count(*) from user_) as number_of_users,
+(select count(*) from post) as number_of_posts,
+(select count(*) from comment) as number_of_comments,
+(select count(*) from community) as number_of_communities
+from site s;
diff --git a/server/migrations/2019-12-11-181820_add_site_fields/up.sql b/server/migrations/2019-12-11-181820_add_site_fields/up.sql
new file mode 100644
index 00000000..e107b1ac
--- /dev/null
+++ b/server/migrations/2019-12-11-181820_add_site_fields/up.sql
@@ -0,0 +1,16 @@
+-- Add the column
+alter table site add column enable_downvotes boolean default true not null;
+alter table site add column open_registration boolean default true not null;
+alter table site add column enable_nsfw boolean default true not null;
+
+-- Reload the view
+drop view site_view;
+
+create view site_view as
+select *,
+(select name from user_ u where s.creator_id = u.id) as creator_name,
+(select count(*) from user_) as number_of_users,
+(select count(*) from post) as number_of_posts,
+(select count(*) from comment) as number_of_comments,
+(select count(*) from community) as number_of_communities
+from site s;