diff --git a/src/AliasVault.Client/Auth/Pages/Login.razor b/src/AliasVault.Client/Auth/Pages/Login.razor index 9c3fc623d..ef507f00e 100644 --- a/src/AliasVault.Client/Auth/Pages/Login.razor +++ b/src/AliasVault.Client/Auth/Pages/Login.razor @@ -1,6 +1,7 @@ @page "/user/login" @inherits AliasVault.Client.Auth.Pages.Base.LoginBase @layout Auth.Layout.MainLayout +@inject Config Config @attribute [AllowAnonymous] @using System.Text.Json @using AliasVault.Shared.Models.WebApi.Auth @@ -103,9 +104,12 @@ else -
- No account yet? Create new vault -
+ @if (Config.PublicRegistrationEnabled) + { +
+ No account yet? Create new vault +
+ } } diff --git a/src/AliasVault.Client/Auth/Pages/Start.razor b/src/AliasVault.Client/Auth/Pages/Start.razor index 94df2ab91..2e44412e9 100644 --- a/src/AliasVault.Client/Auth/Pages/Start.razor +++ b/src/AliasVault.Client/Auth/Pages/Start.razor @@ -2,6 +2,7 @@ @using AliasVault.Client.Auth.Components @inherits AliasVault.Client.Auth.Pages.Base.LoginBase @layout Auth.Layout.EmptyLayout +@inject Config Config @attribute [AllowAnonymous]
@@ -22,9 +23,12 @@ Your Privacy. Protected.

- - Create new vault - + @if (Config.PublicRegistrationEnabled) + { + + Create new vault + + } Log in with existing account diff --git a/src/AliasVault.Client/Config.cs b/src/AliasVault.Client/Config.cs index 1295bd48e..bbd6b1460 100644 --- a/src/AliasVault.Client/Config.cs +++ b/src/AliasVault.Client/Config.cs @@ -62,4 +62,9 @@ public class Config /// Gets or sets the support email address that users can contact for password recovery. /// public string? SupportEmail { get; set; } + + /// + /// Gets or sets a value indicating whether public registration is enabled. + /// + public bool PublicRegistrationEnabled { get; set; } } diff --git a/src/AliasVault.Client/entrypoint.sh b/src/AliasVault.Client/entrypoint.sh index 6da3fa605..a07a5dab4 100755 --- a/src/AliasVault.Client/entrypoint.sh +++ b/src/AliasVault.Client/entrypoint.sh @@ -41,5 +41,8 @@ else sed -i "s|\"SupportEmail\": \".*\"|\"SupportEmail\": \"\"|g" /usr/share/nginx/html/appsettings.json fi +# Update public registration enabled in appsettings.json +sed -i "s|\"PublicRegistrationEnabled\": \".*\"|\"PublicRegistrationEnabled\": \"$PUBLIC_REGISTRATION_ENABLED\"|g" /usr/share/nginx/html/appsettings.json + # Start the application nginx -g "daemon off;" diff --git a/src/AliasVault.Client/wwwroot/appsettings.json b/src/AliasVault.Client/wwwroot/appsettings.json index 83bc6ece5..22cb2d055 100644 --- a/src/AliasVault.Client/wwwroot/appsettings.json +++ b/src/AliasVault.Client/wwwroot/appsettings.json @@ -1,5 +1,6 @@ { "ApiUrl": "http://localhost:5092", "PrivateEmailDomains": ["example.tld"], - "SupportEmail": "support@example.tld" + "SupportEmail": "support@example.tld", + "PublicRegistrationEnabled": "true" }