]> Untitled Git - lemmy.git/blobdiff - crates/db_schema/src/schema.rs
Use enum for registration mode setting (#2604)
[lemmy.git] / crates / db_schema / src / schema.rs
index 4c2caaf06c738071bae18d3e1b9fb2251052edb8..4dea567c6ee4b9776a7b8cd831d9572b258c526c 100644 (file)
@@ -27,6 +27,7 @@ table! {
         local -> Bool,
         path -> Ltree,
         distinguished -> Bool,
+        language_id -> Int4,
     }
 }
 
@@ -99,6 +100,7 @@ table! {
         shared_inbox_url -> Nullable<Varchar>,
         hidden -> Bool,
         posting_restricted_to_mods -> Bool,
+        instance_id -> Int4,
     }
 }
 
@@ -123,7 +125,7 @@ table! {
         community_id -> Int4,
         person_id -> Int4,
         published -> Timestamp,
-        pending -> Nullable<Bool>,
+        pending -> Bool,
     }
 }
 
@@ -156,7 +158,7 @@ table! {
         theme -> Varchar,
         default_sort_type -> Int2,
         default_listing_type -> Int2,
-        lang -> Varchar,
+        interface_language -> Varchar,
         show_avatars -> Bool,
         send_notifications_to_email -> Bool,
         validator_time -> Timestamp,
@@ -271,12 +273,13 @@ table! {
 }
 
 table! {
-    mod_sticky_post (id) {
+    mod_feature_post (id) {
         id -> Int4,
         mod_person_id -> Int4,
         post_id -> Int4,
-        stickied -> Nullable<Bool>,
+        featured -> Bool,
         when_ -> Timestamp,
+        is_featured_community -> Bool,
     }
 }
 
@@ -312,6 +315,7 @@ table! {
         admin -> Bool,
         bot_account -> Bool,
         ban_expires -> Nullable<Timestamp>,
+        instance_id -> Int4,
     }
 }
 
@@ -368,13 +372,25 @@ table! {
         updated -> Nullable<Timestamp>,
         deleted -> Bool,
         nsfw -> Bool,
-        stickied -> Bool,
         embed_title -> Nullable<Text>,
         embed_description -> Nullable<Text>,
         embed_video_url -> Nullable<Text>,
         thumbnail_url -> Nullable<Text>,
         ap_id -> Varchar,
         local -> Bool,
+        language_id -> Int4,
+        featured_community -> Bool,
+        featured_local -> Bool,
+    }
+}
+
+table! {
+    person_post_aggregates (id) {
+        id -> Int4,
+        person_id -> Int4,
+        post_id -> Int4,
+        read_comments -> Int8,
+        published -> Timestamp,
     }
 }
 
@@ -386,10 +402,11 @@ table! {
         score -> Int8,
         upvotes -> Int8,
         downvotes -> Int8,
-        stickied -> Bool,
         published -> Timestamp,
         newest_comment_time_necro -> Timestamp,
         newest_comment_time -> Timestamp,
+        featured_community -> Bool,
+        featured_local -> Bool,
     }
 }
 
@@ -452,6 +469,20 @@ table! {
     }
 }
 
+table! {
+    private_message_report (id) {
+        id -> Int4,
+        creator_id -> Int4,
+        private_message_id -> Int4,
+        original_pm_text -> Text,
+        reason -> Text,
+        resolved -> Bool,
+        resolver_id -> Nullable<Int4>,
+        published -> Timestamp,
+        updated -> Nullable<Timestamp>,
+    }
+}
+
 table! {
     site (id) {
         id -> Int4,
@@ -459,26 +490,15 @@ table! {
         sidebar -> Nullable<Text>,
         published -> Timestamp,
         updated -> Nullable<Timestamp>,
-        enable_downvotes -> Bool,
-        open_registration -> Bool,
-        enable_nsfw -> Bool,
         icon -> Nullable<Varchar>,
         banner -> Nullable<Varchar>,
         description -> Nullable<Text>,
-        community_creation_admin_only -> Bool,
-        require_email_verification -> Bool,
-        require_application -> Bool,
-        application_question -> Nullable<Text>,
-        private_instance -> Bool,
         actor_id -> Text,
         last_refreshed_at -> Timestamp,
         inbox_url -> Text,
         private_key -> Nullable<Text>,
         public_key -> Text,
-        default_theme -> Text,
-        default_post_listing_type -> Text,
-        legal_information -> Nullable<Text>,
-        hide_modlog_mod_names -> Bool,
+        instance_id -> Int4,
     }
 }
 
@@ -515,59 +535,6 @@ table! {
     }
 }
 
-// These are necessary since diesel doesn't have self joins / aliases
-table! {
-    person_alias_1 (id) {
-        id -> Int4,
-        name -> Varchar,
-        display_name -> Nullable<Varchar>,
-        avatar -> Nullable<Varchar>,
-        banned -> Bool,
-        published -> Timestamp,
-        updated -> Nullable<Timestamp>,
-        actor_id -> Varchar,
-        bio -> Nullable<Text>,
-        local -> Bool,
-        private_key -> Nullable<Text>,
-        public_key -> Text,
-        last_refreshed_at -> Timestamp,
-        banner -> Nullable<Varchar>,
-        deleted -> Bool,
-        inbox_url -> Varchar,
-        shared_inbox_url -> Nullable<Varchar>,
-        matrix_user_id -> Nullable<Text>,
-        admin -> Bool,
-        bot_account -> Bool,
-        ban_expires -> Nullable<Timestamp>,
-    }
-}
-
-table! {
-    person_alias_2 (id) {
-        id -> Int4,
-        name -> Varchar,
-        display_name -> Nullable<Varchar>,
-        avatar -> Nullable<Varchar>,
-        banned -> Bool,
-        published -> Timestamp,
-        updated -> Nullable<Timestamp>,
-        actor_id -> Varchar,
-        bio -> Nullable<Text>,
-        local -> Bool,
-        private_key -> Nullable<Text>,
-        public_key -> Text,
-        last_refreshed_at -> Timestamp,
-        banner -> Nullable<Varchar>,
-        deleted -> Bool,
-        inbox_url -> Varchar,
-        shared_inbox_url -> Nullable<Varchar>,
-        matrix_user_id -> Nullable<Text>,
-        admin -> Bool,
-        bot_account -> Bool,
-        ban_expires -> Nullable<Timestamp>,
-    }
-}
-
 table! {
   secret(id) {
     id -> Int4,
@@ -645,16 +612,139 @@ table! {
     }
 }
 
-joinable!(person_mention -> person_alias_1 (recipient_id));
-joinable!(comment_reply -> person_alias_1 (recipient_id));
-joinable!(post -> person_alias_1 (creator_id));
-joinable!(comment -> person_alias_1 (creator_id));
+table! {
+    language (id) {
+        id -> Int4,
+        code -> Text,
+        name -> Text,
+    }
+}
+
+table! {
+    local_user_language(id) {
+        id -> Int4,
+        local_user_id -> Int4,
+        language_id -> Int4,
+    }
+}
+
+table! {
+    site_language(id) {
+        id -> Int4,
+        site_id -> Int4,
+        language_id -> Int4,
+    }
+}
+
+table! {
+    community_language(id) {
+        id -> Int4,
+        community_id -> Int4,
+        language_id -> Int4,
+    }
+}
+
+table! {
+  instance(id) {
+    id -> Int4,
+    domain -> Text,
+    published -> Timestamp,
+    updated -> Nullable<Timestamp>,
+  }
+}
+
+table! {
+  federation_allowlist(id) {
+    id -> Int4,
+    instance_id -> Int4,
+    published -> Timestamp,
+    updated -> Nullable<Timestamp>,
+  }
+}
+
+table! {
+  federation_blocklist(id) {
+    id -> Int4,
+    instance_id -> Int4,
+    published -> Timestamp,
+    updated -> Nullable<Timestamp>,
+  }
+}
+
+table! {
+  use crate::source::local_site::RegistrationModeType;
+  use diesel::sql_types::*;
+
+  local_site(id) {
+    id -> Int4,
+    site_id -> Int4,
+    site_setup -> Bool,
+    enable_downvotes -> Bool,
+    enable_nsfw -> Bool,
+    community_creation_admin_only -> Bool,
+    require_email_verification -> Bool,
+    application_question -> Nullable<Text>,
+    private_instance -> Bool,
+    default_theme -> Text,
+    default_post_listing_type -> Text,
+    legal_information -> Nullable<Text>,
+    hide_modlog_mod_names -> Bool,
+    application_email_admins -> Bool,
+    slur_filter_regex -> Nullable<Text>,
+    actor_name_max_length -> Int4,
+    federation_enabled -> Bool,
+    federation_debug -> Bool,
+    federation_worker_count -> Int4,
+    captcha_enabled -> Bool,
+    captcha_difficulty -> Text,
+    registration_mode -> RegistrationModeType,
+    published -> Timestamp,
+    updated -> Nullable<Timestamp>,
+  }
+}
+
+table! {
+  local_site_rate_limit(id) {
+    id -> Int4,
+    local_site_id -> Int4,
+    message -> Int4,
+    message_per_second-> Int4,
+    post -> Int4,
+    post_per_second -> Int4,
+    register -> Int4,
+    register_per_second -> Int4,
+    image -> Int4,
+    image_per_second -> Int4,
+    comment -> Int4,
+    comment_per_second -> Int4,
+    search -> Int4,
+    search_per_second -> Int4,
+    published -> Timestamp,
+    updated -> Nullable<Timestamp>,
+  }
+}
+
+table! {
+  tagline(id) {
+    id -> Int4,
+    local_site_id -> Int4,
+    content -> Text,
+    published -> Timestamp,
+    updated -> Nullable<Timestamp>,
+  }
+}
 
-joinable!(post_report -> person_alias_2 (resolver_id));
-joinable!(comment_report -> person_alias_2 (resolver_id));
+table! {
+    person_follower (id) {
+        id -> Int4,
+        person_id -> Int4,
+        follower_id -> Int4,
+        published -> Timestamp,
+        pending -> Bool,
+    }
+}
 
 joinable!(person_block -> person (person_id));
-joinable!(person_block -> person_alias_1 (target_id));
 
 joinable!(comment -> person (creator_id));
 joinable!(comment -> post (post_id));
@@ -686,8 +776,8 @@ joinable!(mod_remove_community -> community (community_id));
 joinable!(mod_remove_community -> person (mod_person_id));
 joinable!(mod_remove_post -> person (mod_person_id));
 joinable!(mod_remove_post -> post (post_id));
-joinable!(mod_sticky_post -> person (mod_person_id));
-joinable!(mod_sticky_post -> post (post_id));
+joinable!(mod_feature_post -> person (mod_person_id));
+joinable!(mod_feature_post -> post (post_id));
 joinable!(password_reset_request -> local_user (local_user_id));
 joinable!(person_aggregates -> person (person_id));
 joinable!(person_ban -> person (person_id));
@@ -697,6 +787,8 @@ joinable!(comment_reply -> comment (comment_id));
 joinable!(comment_reply -> person (recipient_id));
 joinable!(post -> community (community_id));
 joinable!(post -> person (creator_id));
+joinable!(person_post_aggregates -> post (post_id));
+joinable!(person_post_aggregates -> person (person_id));
 joinable!(post_aggregates -> post (post_id));
 joinable!(post_like -> person (person_id));
 joinable!(post_like -> post (post_id));
@@ -711,6 +803,16 @@ joinable!(registration_application -> local_user (local_user_id));
 joinable!(registration_application -> person (admin_id));
 joinable!(mod_hide_community -> person (mod_person_id));
 joinable!(mod_hide_community -> community (community_id));
+joinable!(post -> language (language_id));
+joinable!(comment -> language (language_id));
+joinable!(local_user_language -> language (language_id));
+joinable!(local_user_language -> local_user (local_user_id));
+joinable!(private_message_report -> private_message (private_message_id));
+joinable!(site_language -> language (language_id));
+joinable!(site_language -> site (site_id));
+joinable!(community_language -> language (language_id));
+joinable!(community_language -> community (community_id));
+joinable!(person_follower -> person (follower_id));
 
 joinable!(admin_purge_comment -> person (admin_person_id));
 joinable!(admin_purge_comment -> post (post_id));
@@ -719,6 +821,15 @@ joinable!(admin_purge_person -> person (admin_person_id));
 joinable!(admin_purge_post -> community (community_id));
 joinable!(admin_purge_post -> person (admin_person_id));
 
+joinable!(site -> instance (instance_id));
+joinable!(person -> instance (instance_id));
+joinable!(community -> instance (instance_id));
+joinable!(federation_allowlist -> instance (instance_id));
+joinable!(federation_blocklist -> instance (instance_id));
+joinable!(local_site -> site (site_id));
+joinable!(local_site_rate_limit -> local_site (local_site_id));
+joinable!(tagline -> local_site (local_site_id));
+
 allow_tables_to_appear_in_same_query!(
   activity,
   comment,
@@ -742,7 +853,7 @@ allow_tables_to_appear_in_same_query!(
   mod_remove_comment,
   mod_remove_community,
   mod_remove_post,
-  mod_sticky_post,
+  mod_feature_post,
   mod_hide_community,
   password_reset_request,
   person,
@@ -750,6 +861,7 @@ allow_tables_to_appear_in_same_query!(
   person_ban,
   person_block,
   person_mention,
+  person_post_aggregates,
   comment_reply,
   post,
   post_aggregates,
@@ -758,14 +870,24 @@ allow_tables_to_appear_in_same_query!(
   post_report,
   post_saved,
   private_message,
+  private_message_report,
   site,
   site_aggregates,
-  person_alias_1,
-  person_alias_2,
   admin_purge_comment,
   admin_purge_community,
   admin_purge_person,
   admin_purge_post,
   email_verification,
-  registration_application
+  registration_application,
+  language,
+  tagline,
+  local_user_language,
+  site_language,
+  community_language,
+  instance,
+  federation_allowlist,
+  federation_blocklist,
+  local_site,
+  local_site_rate_limit,
+  person_follower
 );