mirror of
https://github.com/bitwarden/server.git
synced 2025-07-01 08:02:49 -05:00

* [AC-1637] Added HtmlEncodingStringConverter to encode/decode special chars on JSON serialization/deserialization
* [AC-1637] Added unit tests for HtmlEncodingStringConverter
* [AC-1637] Moved expected values on unit tests to the arrange phase
* [AC-1637] Added HtmlEncodingStringConverter to properties that are for input/output of Org Name and Business name
* [AC-1637] Modified views in Admin project to decode values to display
* [AC-1637] Replaced Html.Raw with HttpUtility.HtmlDecode
* [AC-1637] Added JsonConverter to Provider DTOs
* [AC-1637] Modified HandlebarsMailService to decode organization name before sending emails
* Revert "[AC-1637] Added JsonConverter to Provider DTOs"
This reverts commit 94d507cf93
.
* [AC-1637] Fixed Admin panel organization search
* [AC-1637] Sanitizing Organization name and business name on creation in Admin panel
* [AC-1637] Sanitizing organization name and business name on creation by a provider
* [AC-1637] Sanitizing provider name on creation and on viewing in admin panel
* [AC-1637] Added sanitization to more places where Org name is used
* [AC-1637] Swapped using HttpUtility for WebUtility since the later is part of the dotnet framework
* [AC-1637] Updated error messages
* [AC-1637] Decoding on Admin panel add existing organization
* [AC-1637] Fix HTML decoding issues
* [AC-1637] Refactor HTML decoding in View and Model classes on Admin panel
* [AC-1637] Refactor provider name and business name usages to use methods that output decoded values
* [AC-1637] Fixed typo
* [AC-1637] Renamed Provider methods to retrieve Decoded Name and BusinessName
* [AC-1637] Renamed Organization methods to retrieve Decoded Name and BusinessName
* [AC-1637] Update the display name method in the `ProviderOrganizationOrganizationDetails` class to `DisplayName()`
35 lines
1.2 KiB
C#
35 lines
1.2 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.Text.Json.Serialization;
|
|
using Bit.Core.AdminConsole.Entities.Provider;
|
|
using Bit.Core.Settings;
|
|
using Bit.Core.Utilities;
|
|
|
|
namespace Bit.Api.AdminConsole.Models.Request.Providers;
|
|
|
|
public class ProviderUpdateRequestModel
|
|
{
|
|
[Required]
|
|
[StringLength(50, ErrorMessage = "The field Name exceeds the maximum length.")]
|
|
[JsonConverter(typeof(HtmlEncodingStringConverter))]
|
|
public string Name { get; set; }
|
|
[StringLength(50, ErrorMessage = "The field Business Name exceeds the maximum length.")]
|
|
[JsonConverter(typeof(HtmlEncodingStringConverter))]
|
|
public string BusinessName { get; set; }
|
|
[EmailAddress]
|
|
[Required]
|
|
[StringLength(256)]
|
|
public string BillingEmail { get; set; }
|
|
|
|
public virtual Provider ToProvider(Provider existingProvider, GlobalSettings globalSettings)
|
|
{
|
|
if (!globalSettings.SelfHosted)
|
|
{
|
|
// These items come from the license file
|
|
existingProvider.Name = Name;
|
|
existingProvider.BusinessName = BusinessName;
|
|
existingProvider.BillingEmail = BillingEmail?.ToLowerInvariant()?.Trim();
|
|
}
|
|
return existingProvider;
|
|
}
|
|
}
|