aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcrobibero <cody@robibe.ro>2020-08-20 07:53:53 -0600
committercrobibero <cody@robibe.ro>2020-08-20 07:53:53 -0600
commitd63f4bce5d380afc4cf8c97285d0ac86989554d5 (patch)
treee0231d3fa6e78ccabd848bca11b3306e67b9ca80
parent634ee2d1e913277ea8f419aca9d91a8e58426642 (diff)
Conver all remaining form request to body
-rw-r--r--Jellyfin.Api/Controllers/ConfigurationController.cs2
-rw-r--r--Jellyfin.Api/Controllers/StartupController.cs27
-rw-r--r--Jellyfin.Api/Models/StartupDtos/StartupRemoteAccessDto.cs22
3 files changed, 34 insertions, 17 deletions
diff --git a/Jellyfin.Api/Controllers/ConfigurationController.cs b/Jellyfin.Api/Controllers/ConfigurationController.cs
index 019703dae..20fb0ec87 100644
--- a/Jellyfin.Api/Controllers/ConfigurationController.cs
+++ b/Jellyfin.Api/Controllers/ConfigurationController.cs
@@ -117,7 +117,7 @@ namespace Jellyfin.Api.Controllers
[HttpPost("MediaEncoder/Path")]
[Authorize(Policy = Policies.FirstTimeSetupOrElevated)]
[ProducesResponseType(StatusCodes.Status204NoContent)]
- public ActionResult UpdateMediaEncoderPath([FromForm, Required] MediaEncoderPathDto mediaEncoderPath)
+ public ActionResult UpdateMediaEncoderPath([FromBody, Required] MediaEncoderPathDto mediaEncoderPath)
{
_mediaEncoder.UpdateEncoderPath(mediaEncoderPath.Path, mediaEncoderPath.PathType);
return NoContent();
diff --git a/Jellyfin.Api/Controllers/StartupController.cs b/Jellyfin.Api/Controllers/StartupController.cs
index c8e3cc4f5..9c259cc19 100644
--- a/Jellyfin.Api/Controllers/StartupController.cs
+++ b/Jellyfin.Api/Controllers/StartupController.cs
@@ -1,3 +1,4 @@
+using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Threading.Tasks;
using Jellyfin.Api.Constants;
@@ -64,21 +65,16 @@ namespace Jellyfin.Api.Controllers
/// <summary>
/// Sets the initial startup wizard configuration.
/// </summary>
- /// <param name="uiCulture">The UI language culture.</param>
- /// <param name="metadataCountryCode">The metadata country code.</param>
- /// <param name="preferredMetadataLanguage">The preferred language for metadata.</param>
+ /// <param name="startupConfiguration">The updated startup configuration.</param>
/// <response code="204">Configuration saved.</response>
/// <returns>A <see cref="NoContentResult"/> indicating success.</returns>
[HttpPost("Configuration")]
[ProducesResponseType(StatusCodes.Status204NoContent)]
- public ActionResult UpdateInitialConfiguration(
- [FromForm] string? uiCulture,
- [FromForm] string? metadataCountryCode,
- [FromForm] string? preferredMetadataLanguage)
+ public ActionResult UpdateInitialConfiguration([FromBody, Required] StartupConfigurationDto startupConfiguration)
{
- _config.Configuration.UICulture = uiCulture;
- _config.Configuration.MetadataCountryCode = metadataCountryCode;
- _config.Configuration.PreferredMetadataLanguage = preferredMetadataLanguage;
+ _config.Configuration.UICulture = startupConfiguration.UICulture;
+ _config.Configuration.MetadataCountryCode = startupConfiguration.MetadataCountryCode;
+ _config.Configuration.PreferredMetadataLanguage = startupConfiguration.PreferredMetadataLanguage;
_config.SaveConfiguration();
return NoContent();
}
@@ -86,16 +82,15 @@ namespace Jellyfin.Api.Controllers
/// <summary>
/// Sets remote access and UPnP.
/// </summary>
- /// <param name="enableRemoteAccess">Enable remote access.</param>
- /// <param name="enableAutomaticPortMapping">Enable UPnP.</param>
+ /// <param name="startupRemoteAccessDto">The startup remote access dto.</param>
/// <response code="204">Configuration saved.</response>
/// <returns>A <see cref="NoContentResult"/> indicating success.</returns>
[HttpPost("RemoteAccess")]
[ProducesResponseType(StatusCodes.Status204NoContent)]
- public ActionResult SetRemoteAccess([FromForm] bool enableRemoteAccess, [FromForm] bool enableAutomaticPortMapping)
+ public ActionResult SetRemoteAccess([FromBody, Required] StartupRemoteAccessDto startupRemoteAccessDto)
{
- _config.Configuration.EnableRemoteAccess = enableRemoteAccess;
- _config.Configuration.EnableUPnP = enableAutomaticPortMapping;
+ _config.Configuration.EnableRemoteAccess = startupRemoteAccessDto.EnableRemoteAccess;
+ _config.Configuration.EnableUPnP = startupRemoteAccessDto.EnableAutomaticPortMapping;
_config.SaveConfiguration();
return NoContent();
}
@@ -131,7 +126,7 @@ namespace Jellyfin.Api.Controllers
/// </returns>
[HttpPost("User")]
[ProducesResponseType(StatusCodes.Status204NoContent)]
- public async Task<ActionResult> UpdateStartupUser([FromForm] StartupUserDto startupUserDto)
+ public async Task<ActionResult> UpdateStartupUser([FromBody] StartupUserDto startupUserDto)
{
var user = _userManager.Users.First();
diff --git a/Jellyfin.Api/Models/StartupDtos/StartupRemoteAccessDto.cs b/Jellyfin.Api/Models/StartupDtos/StartupRemoteAccessDto.cs
new file mode 100644
index 000000000..4027ba41a
--- /dev/null
+++ b/Jellyfin.Api/Models/StartupDtos/StartupRemoteAccessDto.cs
@@ -0,0 +1,22 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace Jellyfin.Api.Models.StartupDtos
+{
+ /// <summary>
+ /// Startup remote access dto.
+ /// </summary>
+ public class StartupRemoteAccessDto
+ {
+ /// <summary>
+ /// Gets or sets a value indicating whether enable remote access.
+ /// </summary>
+ [Required]
+ public bool EnableRemoteAccess { get; set; }
+
+ /// <summary>
+ /// Gets or sets a value indicating whether enable automatic port mapping.
+ /// </summary>
+ [Required]
+ public bool EnableAutomaticPortMapping { get; set; }
+ }
+}