mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	pull frontend lang setting from db if set
This commit is contained in:
		| @@ -65,6 +65,9 @@ export class SettingsService { | ||||
|       tap((uisettings) => { | ||||
|         Object.assign(this.settings, uisettings.settings) | ||||
|         this.maybeMigrateSettings() | ||||
|         // to update lang cookie | ||||
|         if (this.settings['language']?.length) | ||||
|           this.setLanguage(this.settings['language']) | ||||
|         this.displayName = uisettings.display_name.trim() | ||||
|       }) | ||||
|     ) | ||||
|   | ||||
| @@ -83,12 +83,18 @@ logger = logging.getLogger("paperless.api") | ||||
| class IndexView(TemplateView): | ||||
|     template_name = "index.html" | ||||
|  | ||||
|     def get_language(self): | ||||
|     def get_frontend_language(self): | ||||
|         if hasattr( | ||||
|             self.request.user, | ||||
|             "ui_settings", | ||||
|         ) and self.request.user.ui_settings.settings.get("language"): | ||||
|             lang = self.request.user.ui_settings.settings.get("language") | ||||
|         else: | ||||
|             lang = get_language() | ||||
|         # This is here for the following reason: | ||||
|         # Django identifies languages in the form "en-us" | ||||
|         # However, angular generates locales as "en-US". | ||||
|         # this translates between these two forms. | ||||
|         lang = get_language() | ||||
|         if "-" in lang: | ||||
|             first = lang[: lang.index("-")] | ||||
|             second = lang[lang.index("-") + 1 :] | ||||
| @@ -101,16 +107,18 @@ class IndexView(TemplateView): | ||||
|         context["cookie_prefix"] = settings.COOKIE_PREFIX | ||||
|         context["username"] = self.request.user.username | ||||
|         context["full_name"] = self.request.user.get_full_name() | ||||
|         context["styles_css"] = f"frontend/{self.get_language()}/styles.css" | ||||
|         context["runtime_js"] = f"frontend/{self.get_language()}/runtime.js" | ||||
|         context["polyfills_js"] = f"frontend/{self.get_language()}/polyfills.js" | ||||
|         context["main_js"] = f"frontend/{self.get_language()}/main.js" | ||||
|         context["styles_css"] = f"frontend/{self.get_frontend_language()}/styles.css" | ||||
|         context["runtime_js"] = f"frontend/{self.get_frontend_language()}/runtime.js" | ||||
|         context[ | ||||
|             "polyfills_js" | ||||
|         ] = f"frontend/{self.get_frontend_language()}/polyfills.js" | ||||
|         context["main_js"] = f"frontend/{self.get_frontend_language()}/main.js" | ||||
|         context[ | ||||
|             "webmanifest" | ||||
|         ] = f"frontend/{self.get_language()}/manifest.webmanifest"  # noqa: E501 | ||||
|         ] = f"frontend/{self.get_frontend_language()}/manifest.webmanifest"  # noqa: E501 | ||||
|         context[ | ||||
|             "apple_touch_icon" | ||||
|         ] = f"frontend/{self.get_language()}/apple-touch-icon.png"  # noqa: E501 | ||||
|         ] = f"frontend/{self.get_frontend_language()}/apple-touch-icon.png"  # noqa: E501 | ||||
|         return context | ||||
|  | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Michael Shamoon
					Michael Shamoon