refactor(HomeController): remove culture binding as viewdata; bind via string localizer

This commit is contained in:
2025-08-23 00:14:43 +02:00
parent 0b33ba0fd8
commit d390802305
14 changed files with 190 additions and 153 deletions

View File

@@ -3,9 +3,6 @@
@using Newtonsoft.Json.Serialization
@{
var nonce = _accessor.HttpContext?.Items["csp-nonce"] as string;
var userCulture = ViewData["UserCulture"] as Culture;
//TODO: instead of default assignment add a middleware for culture
userCulture ??= _cultures.Default;
var isReadOnly = false;
if (ViewData["IsReadOnly"] is bool isReadOnly_bool)
isReadOnly = isReadOnly_bool;
@@ -83,7 +80,7 @@
<span>&copy; SignFlow 2023-2024 <a href="https://digitaldata.works" target="_blank">Digital Data GmbH</a></span>
<div class="dropup flag-dropdown">
<button class="btn btn-outline-secondary dropdown-toggle" type="button" id="langDropdownMenuButton" data-bs-toggle="dropdown" aria-expanded="false">
<span class="fi @userCulture?.FIClass.TrySanitize(_sanitizer) me-2" id="selectedFlag"></span><span id="selectedLanguage"></span>
<span class="fi @_localizer.FiClass() me-2" id="selectedFlag"></span><span id="selectedLanguage"></span>
</button>
<ul class="dropdown-menu" aria-labelledby="langDropdownMenuButton">
@foreach (var culture in _cultures)
@@ -98,7 +95,7 @@
}
</ul>
</div>
<a href="/privacy-policy.@(userCulture?.Language).html" target="_blank">@_localizer[WebKey.Privacy]</a>
<a href="/privacy-policy.@(_localizer.Culture()).html" target="_blank">@_localizer[WebKey.Privacy]</a>
</footer>
</body>
</html>