1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-01 16:12:49 -05:00

[AC-1360] Added Name field to view for creating a Reseller Provider

This commit is contained in:
Rui Tome
2023-08-03 12:00:56 +01:00
parent d94a54516e
commit 678d85f57d
2 changed files with 17 additions and 4 deletions

View File

@ -15,6 +15,9 @@ public class CreateProviderModel : IValidatableObject
[Display(Name = "Owner Email")] [Display(Name = "Owner Email")]
public string OwnerEmail { get; set; } public string OwnerEmail { get; set; }
[Display(Name = "Name")]
public string Name { get; set; }
[Display(Name = "Business Name")] [Display(Name = "Business Name")]
public string BusinessName { get; set; } public string BusinessName { get; set; }
@ -26,6 +29,7 @@ public class CreateProviderModel : IValidatableObject
return new Provider() return new Provider()
{ {
Type = Type, Type = Type,
Name = Name,
BusinessName = BusinessName, BusinessName = BusinessName,
BillingEmail = BillingEmail?.ToLowerInvariant().Trim() BillingEmail = BillingEmail?.ToLowerInvariant().Trim()
}; };
@ -43,6 +47,11 @@ public class CreateProviderModel : IValidatableObject
} }
break; break;
case ProviderType.Reseller: case ProviderType.Reseller:
if (string.IsNullOrWhiteSpace(Name))
{
var nameDisplayName = nameof(Name).GetDisplayAttribute<CreateProviderModel>()?.GetName();
yield return new ValidationResult($"The {nameDisplayName} field is required.");
}
if (string.IsNullOrWhiteSpace(BusinessName)) if (string.IsNullOrWhiteSpace(BusinessName))
{ {
var businessNameDisplayName = nameof(BusinessName).GetDisplayAttribute<CreateProviderModel>()?.GetName(); var businessNameDisplayName = nameof(BusinessName).GetDisplayAttribute<CreateProviderModel>()?.GetName();

View File

@ -17,7 +17,7 @@
<form method="post"> <form method="post">
<div asp-validation-summary="All" class="alert alert-danger"></div> <div asp-validation-summary="All" class="alert alert-danger"></div>
<div class="form-group"> <div class="form-group">
<label asp-for="Type" class="h2"></label> <label asp-for="Type" class="h2"></label>
@foreach(ProviderType providerType in Enum.GetValues(typeof(ProviderType))) @foreach(ProviderType providerType in Enum.GetValues(typeof(ProviderType)))
@ -31,7 +31,7 @@
</div> </div>
} }
</div> </div>
<div id="@($"info-{(int)ProviderType.Msp}")" class="form-group @(Model.Type != ProviderType.Msp ? "d-none" : string.Empty)"> <div id="@($"info-{(int)ProviderType.Msp}")" class="form-group @(Model.Type != ProviderType.Msp ? "d-none" : string.Empty)">
<h2>MSP Info</h2> <h2>MSP Info</h2>
<div class="form-group"> <div class="form-group">
@ -39,9 +39,13 @@
<input type="text" class="form-control" asp-for="OwnerEmail"> <input type="text" class="form-control" asp-for="OwnerEmail">
</div> </div>
</div> </div>
<div id="@($"info-{(int)ProviderType.Reseller}")" class="form-group @(Model.Type != ProviderType.Reseller ? "d-none" : string.Empty)"> <div id="@($"info-{(int)ProviderType.Reseller}")" class="form-group @(Model.Type != ProviderType.Reseller ? "d-none" : string.Empty)">
<h2>Reseller Info</h2> <h2>Reseller Info</h2>
<div class="form-group">
<label asp-for="Name"></label>
<input type="text" class="form-control" asp-for="Name">
</div>
<div class="form-group"> <div class="form-group">
<label asp-for="BusinessName"></label> <label asp-for="BusinessName"></label>
<input type="text" class="form-control" asp-for="BusinessName"> <input type="text" class="form-control" asp-for="BusinessName">
@ -51,6 +55,6 @@
<input type="text" class="form-control" asp-for="BillingEmail"> <input type="text" class="form-control" asp-for="BillingEmail">
</div> </div>
</div> </div>
<button type="submit" class="btn btn-primary mb-2">Create Provider</button> <button type="submit" class="btn btn-primary mb-2">Create Provider</button>
</form> </form>