public async Task <ActionResult <QueryDTO> > GetQueryData(QueryDTO query) { var toReturn = await LinkmirLinkModel.QueryLinks(_context, query); if (toReturn == null) { return(NotFound()); } return(toReturn); }
public async Task <ActionResult <LinkStatsDTO> > GetStatsOnLink(string shortlink) { var toReturn = await LinkmirLinkModel.GetLinkStats(_context, shortlink); if (toReturn == null) { return(NotFound()); } toReturn.ShortLink = BuildLinkmirUrl(toReturn.ShortLink); return(toReturn); }
public async Task <ActionResult <LinkDTO> > SubmitLink(LinkDTO submission) { var link = new LinkmirLinkModel(submission); int submissionCount = await link.AddOrUpdateLink(_context); if (submissionCount == 0) { return(BadRequest()); } var toReturn = new LinkDTO { Link = link.Link, ShortLink = BuildLinkmirUrl(link.ShortLink) }; // return CreatedAtAction("GetLinkmirLink", new { id = linkmirLink.ShortLink }, linkmirLink); if (submissionCount == 1) { return(CreatedAtAction(nameof(GetLinkmirLink), new { shortlink = link.ShortLink }, toReturn)); } return(Ok(toReturn)); }
public async Task <ActionResult <LinkDTO> > GetLinkmirLink(string shortlink, bool?redirect = false) { var link = await LinkmirLinkModel.GetLinkStats(_context, shortlink); if (link == null) { return(NotFound()); } var toReturn = new LinkDTO { ShortLink = BuildLinkmirUrl(shortlink), Link = link.Link }; if (redirect.GetValueOrDefault()) { return(Redirect(toReturn.Link)); } else { return(toReturn); } }