Implement server configuration (#15507)

Co-authored-by: Elitsa <elm@umbraco.dk>
This commit is contained in:
Nikolaj Geisle
2023-12-29 13:47:44 +01:00
committed by GitHub
parent 1bf13b4ad4
commit f026010102
3 changed files with 36 additions and 1 deletions

View File

@@ -0,0 +1,29 @@
using Asp.Versioning;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Options;
using Umbraco.Cms.Api.Management.ViewModels.Server;
using Umbraco.Cms.Core.Configuration.Models;
namespace Umbraco.Cms.Api.Management.Controllers.Server;
[ApiVersion("1.0")]
public class ConfigurationServerController : ServerControllerBase
{
private readonly SecuritySettings _securitySettings;
public ConfigurationServerController(IOptions<SecuritySettings> securitySettings) => _securitySettings = securitySettings.Value;
[HttpGet("configuration")]
[MapToApiVersion("1.0")]
[ProducesResponseType(typeof(ServerConfigurationResponseModel), StatusCodes.Status200OK)]
public Task<IActionResult> Configuration()
{
var responseModel = new ServerConfigurationResponseModel
{
AllowPasswordReset = _securitySettings.AllowPasswordReset,
};
return Task.FromResult<IActionResult>(Ok(responseModel));
}
}

View File

@@ -10,7 +10,7 @@ public class ServerConfigurationMapDefinition : IMapDefinition
public void DefineMaps(IUmbracoMapper mapper)
{
mapper.Define<IDictionary<string, string>, ServerTroubleshootingResponseModel>((_, _) => new ServerTroubleshootingResponseModel { Items = Array.Empty<ServerConfigurationItemResponseModel>() }, Map);
mapper.Define<ServerInformation, ServerInformationResponseModel>((_, _) => new ServerInformationResponseModel() , Map);
mapper.Define<ServerInformation, ServerInformationResponseModel>((_, _) => new ServerInformationResponseModel(), Map);
}
// Umbraco.Code.MapAll

View File

@@ -0,0 +1,6 @@
namespace Umbraco.Cms.Api.Management.ViewModels.Server;
public class ServerConfigurationResponseModel
{
public bool AllowPasswordReset { get; set; }
}