X-Git-Url: http://these/git/?a=blobdiff_plain;f=crates%2Fapi_crud%2Fsrc%2Fsite%2Fupdate.rs;h=788546eac2d22893287386b431146f851c34959d;hb=2ef0f8f5f8c60d8c7632779ca16bac69daab1266;hp=e2be3bc101d481e3c116e9d0ff8f84f13c95c896;hpb=7bb941e5461f68b810a18ea40cb7a405ded69cc9;p=lemmy.git diff --git a/crates/api_crud/src/site/update.rs b/crates/api_crud/src/site/update.rs index e2be3bc1..788546ea 100644 --- a/crates/api_crud/src/site/update.rs +++ b/crates/api_crud/src/site/update.rs @@ -6,6 +6,7 @@ use lemmy_api_common::{ }; use lemmy_db_schema::{ source::{ + actor_language::SiteLanguage, local_user::LocalUser, site::{Site, SiteForm}, }, @@ -35,7 +36,7 @@ impl PerformCrud for EditSite { // Make sure user is an admin is_admin(&local_user_view)?; - let local_site = blocking(context.pool(), Site::read_local_site).await??; + let local_site = blocking(context.pool(), Site::read_local).await??; let sidebar = diesel_option_overwrite(&data.sidebar); let description = diesel_option_overwrite(&data.description); @@ -68,6 +69,14 @@ impl PerformCrud for EditSite { } } + let site_id = local_site.id; + if let Some(discussion_languages) = data.discussion_languages.clone() { + blocking(context.pool(), move |conn| { + SiteLanguage::update(conn, discussion_languages.clone(), site_id) + }) + .await??; + } + let site_form = SiteForm { name: data.name.to_owned().unwrap_or(local_site.name), sidebar,