Policies: Cleanup and improvements (#5731)

* Policies: Turn checkboxes into toggles

* Move email policy to server email settings

* Move maintenance policies to server maintenance settings

* Policies: Adjust spacings

* Policies: Remove DisableInstantNotifications setting

* Wording updates

* Move maintenance settings back
This commit is contained in:
d11n
2024-02-21 14:43:44 +01:00
committed by GitHub
parent 55a8ba0905
commit 9c95b98f3a
13 changed files with 356 additions and 311 deletions

View File

@@ -1,32 +1,18 @@
using System.ComponentModel.DataAnnotations;
using BTCPayServer.Services.Mails;
using BTCPayServer.Validation;
namespace BTCPayServer.Models.ServerViewModels
namespace BTCPayServer.Models.ServerViewModels;
public class ServerEmailsViewModel : EmailsViewModel
{
public class EmailsViewModel
[Display(Name = "Allow Stores use the Server's SMTP email settings as their default")]
public bool EnableStoresToUseServerEmailSettings { get; set; }
public ServerEmailsViewModel()
{
public EmailSettings Settings { get; set; }
public EmailSettings FallbackSettings { get; set; }
public bool PasswordSet { get; set; }
[MailboxAddress]
[Display(Name = "Test Email")]
public string TestEmail { get; set; }
}
public EmailsViewModel()
{
}
public EmailsViewModel(EmailSettings settings, EmailSettings fallbackSettings = null)
{
Settings = settings;
FallbackSettings = fallbackSettings;
PasswordSet = !string.IsNullOrEmpty(settings?.Password);
}
public bool IsSetup() => Settings?.IsComplete() is true;
public bool IsFallbackSetup() => FallbackSettings?.IsComplete() is true;
public bool UsesFallback() => IsFallbackSetup() && Settings == FallbackSettings;
public ServerEmailsViewModel(EmailSettings settings) : base(settings)
{
}
}