using API.Schema; using Asp.Versioning; using Microsoft.AspNetCore.Mvc; using static Microsoft.AspNetCore.Http.StatusCodes; namespace API.Controllers; [ApiVersion(2)] [ApiController] [Produces("application/json")] [Route("v{v:apiVersion}/[controller]")] public class SettingsController(PgsqlContext context) : Controller { /// /// Get all Settings /// /// [HttpGet] [ProducesResponseType(Status500InternalServerError)] public IActionResult GetSettings() { return StatusCode(500, "Not implemented"); //TODO } /// /// Get the current UserAgent used by Tranga /// /// UserAgent as string [HttpGet("UserAgent")] [ProducesResponseType(Status500InternalServerError)] public IActionResult GetUserAgent() { return StatusCode(500, "Not implemented"); //TODO } /// /// Set a new UserAgent /// /// Nothing [HttpPatch("UserAgent")] [ProducesResponseType(Status500InternalServerError)] public IActionResult SetUserAgent() { return StatusCode(500, "Not implemented"); //TODO } /// /// Reset the UserAgent to default /// /// Nothing [HttpDelete("UserAgent")] [ProducesResponseType(Status500InternalServerError)] public IActionResult ResetUserAgent() { return StatusCode(500, "Not implemented"); //TODO } /// /// Get all Request-Limits /// /// [HttpGet("RequestLimits")] [ProducesResponseType(Status500InternalServerError)] public IActionResult GetRequestLimits() { return StatusCode(500, "Not implemented"); //TODO } /// /// Update all Request-Limits to new values /// /// Nothing [HttpPatch("RequestLimits")] [ProducesResponseType(Status500InternalServerError)] public IActionResult SetRequestLimits() { return StatusCode(500, "Not implemented"); //TODO } /// /// Reset all Request-Limits /// /// Nothing [HttpDelete("RequestLimits")] [ProducesResponseType(Status500InternalServerError)] public IActionResult ResetRequestLimits() { return StatusCode(500, "Not implemented"); //TODO } /// /// Returns Level of Image-Compression for Images /// /// [HttpGet("ImageCompression")] [ProducesResponseType(Status500InternalServerError)] public IActionResult GetImageCompression() { return StatusCode(500, "Not implemented"); //TODO } /// /// Set the Image-Compression-Level for Images /// /// 100 to disable, 0-99 for JPEG compression-Level /// Nothing [HttpPatch("ImageCompression")] [ProducesResponseType(Status500InternalServerError)] public IActionResult SetImageCompression(int percentage) { return StatusCode(500, "Not implemented"); //TODO } /// /// Get state of Black/White-Image setting /// /// True if enabled [HttpGet("BWImages")] [ProducesResponseType(Status500InternalServerError)] public IActionResult GetBwImagesToggle() { return StatusCode(500, "Not implemented"); //TODO } /// /// Enable/Disable conversion of Images to Black and White /// /// true to enable /// Nothing [HttpPatch("BWImages")] [ProducesResponseType(Status500InternalServerError)] public IActionResult SetBwImagesToggle(bool enabled) { return StatusCode(500, "Not implemented"); //TODO } /// /// Get state of April Fools Mode /// /// April Fools Mode disables all downloads on April 1st /// True if enabled [HttpGet("AprilFoolsMode")] [ProducesResponseType(Status500InternalServerError)] public IActionResult GetAprilFoolsMode() { return StatusCode(500, "Not implemented"); //TODO } /// /// Enable/Disable April Fools Mode /// /// April Fools Mode disables all downloads on April 1st /// true to enable /// Nothing [HttpPatch("AprilFoolsMode")] [ProducesResponseType(Status500InternalServerError)] public IActionResult SetAprilFoolsMode(bool enabled) { return StatusCode(500, "Not implemented"); //TODO } }