mirror of https://github.com/LemmyNet/lemmy.git
62 lines
2.8 KiB
MySQL
62 lines
2.8 KiB
MySQL
|
-- A few DB fixes
|
||
|
alter table community alter column hidden set not null;
|
||
|
alter table community alter column posting_restricted_to_mods set not null;
|
||
|
alter table activity alter column sensitive set not null;
|
||
|
alter table mod_add alter column removed set not null;
|
||
|
alter table mod_add_community alter column removed set not null;
|
||
|
alter table mod_ban alter column banned set not null;
|
||
|
alter table mod_ban_from_community alter column banned set not null;
|
||
|
alter table mod_hide_community alter column hidden set not null;
|
||
|
alter table mod_lock_post alter column locked set not null;
|
||
|
alter table mod_remove_comment alter column removed set not null;
|
||
|
alter table mod_remove_community alter column removed set not null;
|
||
|
alter table mod_remove_post alter column removed set not null;
|
||
|
alter table mod_transfer_community drop column removed;
|
||
|
alter table language alter column code set not null;
|
||
|
alter table language alter column name set not null;
|
||
|
|
||
|
-- Fix the registration mode enums
|
||
|
ALTER TYPE registration_mode_enum RENAME VALUE 'closed' TO 'Closed';
|
||
|
ALTER TYPE registration_mode_enum RENAME VALUE 'require_application' TO 'RequireApplication';
|
||
|
ALTER TYPE registration_mode_enum RENAME VALUE 'open' TO 'Open';
|
||
|
|
||
|
-- Create the enums
|
||
|
|
||
|
CREATE TYPE sort_type_enum AS ENUM ('Active', 'Hot', 'New', 'Old', 'TopDay', 'TopWeek', 'TopMonth', 'TopYear', 'TopAll', 'MostComments', 'NewComments');
|
||
|
|
||
|
CREATE TYPE listing_type_enum AS ENUM ('All', 'Local', 'Subscribed');
|
||
|
|
||
|
-- Alter the local_user table
|
||
|
alter table local_user alter column default_sort_type drop default;
|
||
|
alter table local_user alter column default_sort_type type sort_type_enum using
|
||
|
case default_sort_type
|
||
|
when 0 then 'Active'
|
||
|
when 1 then 'Hot'
|
||
|
when 2 then 'New'
|
||
|
when 3 then 'Old'
|
||
|
when 4 then 'TopDay'
|
||
|
when 5 then 'TopWeek'
|
||
|
when 6 then 'TopMonth'
|
||
|
when 7 then 'TopYear'
|
||
|
when 8 then 'TopAll'
|
||
|
when 9 then 'MostComments'
|
||
|
when 10 then 'NewComments'
|
||
|
else 'Active'
|
||
|
end :: sort_type_enum;
|
||
|
alter table local_user alter column default_sort_type set default 'Active';
|
||
|
|
||
|
alter table local_user alter column default_listing_type drop default;
|
||
|
alter table local_user alter column default_listing_type type listing_type_enum using
|
||
|
case default_listing_type
|
||
|
when 0 then 'All'
|
||
|
when 1 then 'Local'
|
||
|
when 2 then 'Subscribed'
|
||
|
else 'Local'
|
||
|
end :: listing_type_enum;
|
||
|
alter table local_user alter column default_listing_type set default 'Local';
|
||
|
|
||
|
-- Alter the local site column
|
||
|
alter table local_site alter column default_post_listing_type drop default;
|
||
|
alter table local_site alter column default_post_listing_type type listing_type_enum using default_post_listing_type::listing_type_enum;
|
||
|
alter table local_site alter column default_post_listing_type set default 'Local';
|