mirror of
https://github.com/LemmyNet/lemmy.git
synced 2025-03-13 15:02:44 +00:00
Ignore accept-language header if not site languages are specified (#5485)
This commit is contained in:
parent
b14c6ae0ee
commit
7b86307760
1 changed files with 11 additions and 7 deletions
|
@ -450,15 +450,19 @@ async fn create_local_user(
|
|||
// use hashset to avoid duplicates
|
||||
let mut language_ids = HashSet::new();
|
||||
|
||||
// Enable languages from `Accept-Language` header
|
||||
for l in &language_tags {
|
||||
if let Some(found) = all_languages.iter().find(|all| &all.code == l) {
|
||||
language_ids.insert(found.id);
|
||||
}
|
||||
}
|
||||
|
||||
// Enable site languages. Ignored if all languages are enabled.
|
||||
let discussion_languages = SiteLanguage::read(&mut context.pool(), local_site.site_id).await?;
|
||||
|
||||
// Enable languages from `Accept-Language` header only if no site languages are set. Otherwise it
|
||||
// is possible that browser languages are only set to e.g. French, and the user won't see any
|
||||
// English posts.
|
||||
if !discussion_languages.is_empty() {
|
||||
for l in &language_tags {
|
||||
if let Some(found) = all_languages.iter().find(|all| &all.code == l) {
|
||||
language_ids.insert(found.id);
|
||||
}
|
||||
}
|
||||
}
|
||||
language_ids.extend(discussion_languages);
|
||||
|
||||
let language_ids = language_ids.into_iter().collect();
|
||||
|
|
Loading…
Reference in a new issue