public void SetPostData(UrlForm form) { var postText = String.Join("&" , form.Select(x => x.Key + "=" + x.Value)); SetPostData(Encoding.ASCII.GetBytes(postText)); }
public async Task <IActionResult> Edit(UrlForm url) { url.ShortUrl = GenerateShortURL(); context.Form.Update(url); await context.SaveChangesAsync(); return(RedirectToAction("Index")); }
public async Task <IActionResult> CheckURL(string url) { UrlForm form = await context.Form.FirstOrDefaultAsync(p => p.LongUrl == url); if (form != null) { return(Json(data: $"This URL: {url} already exists.")); } return(Json(true)); }
//generate new URL public UrlForm GenerateUrl(string longUrl) { UrlForm url = new UrlForm() { LongUrl = longUrl, ShortUrl = GenerateShortURL(), CreationDate = date, CountOfClics = 0 }; return(url); }
public async Task <IActionResult> ConfirmDelete(int?id) { if (id != null) { UrlForm form = await context.Form.FirstOrDefaultAsync(p => p.ID == id); if (form != null) { return(View(form)); } } return(NotFound()); }
public async Task <IActionResult> CounterClickLink(int?id) { UrlForm form = await context.Form.FirstOrDefaultAsync(p => p.ID == id); if (form != null) { form.CountOfClics++; context.Form.Update(form); await context.SaveChangesAsync(); } return(RedirectToAction("Index")); }
public async Task <IActionResult> Path() { string link = $"{this.Request.Scheme}://{this.Request.Host}{Request.Path}"; UrlForm form = await context.Form.FirstOrDefaultAsync(p => p.ShortUrl == link); if (form != null) { return(Redirect(form.LongUrl)); } else { return(NotFound()); } }
public async Task <IActionResult> Delete(int?id) { if (id != null) { UrlForm form = await context.Form.FirstOrDefaultAsync(p => p.ID == id); if (form != null) { context.Form.Remove(form); await context.SaveChangesAsync(); return(RedirectToAction("Index")); } } return(NotFound()); }
public async Task <IActionResult> Create([Bind("LongUrl")] CreateForm url) { UrlForm form = await context.Form.FirstOrDefaultAsync(p => p.LongUrl == url.LongUrl); if (form != null) { } else if (ModelState.IsValid) { UrlForm newForm = GenerateUrl(url.LongUrl); context.Form.Add(newForm); await context.SaveChangesAsync(); } return(RedirectToAction("Index")); }
public IActionResult GetDocumentByUrl([FromBody] UrlForm data) { try { var request = WebRequest.Create(data.Url); request.Method = "GET"; using (var responce = request.GetResponse()) using (var stream = responce.GetResponseStream()) using (var reader = new StreamReader(stream)) { var content = reader.ReadToEnd(); var d = _generator.ConvertJsonToPdf(content); var id = _storage.SaveDocument(d); return(Ok(new { id, error = (string)null })); } } catch (WebException e) { return(Ok(new { id = (string)null, error = "WebException" })); } catch (DocumentGenerationException e) { return(Ok(new { id = (string)null, error = "GenerationError" })); } catch (Exception e) { _log.Error("Unknown exception", e); return(Ok(new { id = (string)null, error = "UnknownException" })); } }