You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Prowlarr/src/Prowlarr.Api.V1/Localization/LocalizationController.cs

39 lines
1.2 KiB

using System.Collections.Generic;
using System.Text.Json;
using Microsoft.AspNetCore.Mvc;
using NzbDrone.Common.Serializer;
using NzbDrone.Core.Localization;
using Prowlarr.Http;
namespace Prowlarr.Api.V1.Localization
{
[V1ApiController]
public class LocalizationController : Controller
{
private readonly ILocalizationService _localizationService;
private readonly JsonSerializerOptions _serializerSettings;
public LocalizationController(ILocalizationService localizationService)
{
_localizationService = localizationService;
_serializerSettings = STJson.GetSerializerSettings();
_serializerSettings.DictionaryKeyPolicy = null;
_serializerSettings.PropertyNamingPolicy = null;
}
[HttpGet]
[Produces("application/json")]
public IActionResult GetLocalizationDictionary()
{
return Json(_localizationService.GetLocalizationDictionary().ToResource(), _serializerSettings);
}
[HttpGet("Options")]
[Produces("application/json")]
public ActionResult<IEnumerable<LocalizationOption>> GetLocalizationOptions()
{
return Ok(_localizationService.GetLocalizationOptions());
}
}
}