diff --git a/API/Controllers/SearchController.cs b/API/Controllers/SearchController.cs index 2894762..fbef959 100644 --- a/API/Controllers/SearchController.cs +++ b/API/Controllers/SearchController.cs @@ -67,30 +67,25 @@ public class SearchController(PgsqlContext context, ILog Log) : Controller /// Error during Database Operation [HttpPost("Url")] [ProducesResponseType(Status200OK, "application/json")] - [ProducesResponseType(Status300MultipleChoices)] [ProducesResponseType(Status400BadRequest)] - [ProducesResponseType(Status404NotFound)] [ProducesResponseType(Status500InternalServerError, "text/plain")] public IActionResult GetMangaFromUrl([FromBody]string url) { - List connectors = context.MangaConnectors.AsEnumerable().Where(c => c.UrlMatchesConnector(url)).ToList(); - if (connectors.Count == 0) - return NotFound(); - else if (connectors.Count > 1) - return StatusCode(Status300MultipleChoices); + if (context.MangaConnectors.Find("Global") is not { } connector) + return StatusCode(Status500InternalServerError, "Could not find Global Connector."); - if(connectors.First().GetMangaFromUrl(url) is not { } manga) + if(connector.GetMangaFromUrl(url) is not { } manga) return BadRequest(); try { if(AddMangaToContext(manga) is { } add) return Ok(add); - return StatusCode(500); + return StatusCode(Status500InternalServerError); } catch (DbUpdateException e) { Log.Error(e); - return StatusCode(500, e.Message); + return StatusCode(Status500InternalServerError, e.Message); } }