public ActionResult Edit(VideoViewModel video) { ViewBag.SelectedPage = Navigator.Items.VIDEOS; if (ModelState.IsValid) { video.URL = URLValidator.CleanURL(video.URL); if (!URLValidator.IsValidURLPart(video.URL)) { TempData["ErrorMessage"] = "Video Failed To Add, URL Not Valid"; } else if (servicesManager.VideoService.IsVideoURLExist(video.URL, video.VideoId)) { TempData["ErrorMessage"] = "Video Failed To Add, URL already exist"; } else { int new_id = servicesManager.VideoService.UpdateVideo(video); if (new_id > 0) { TempData["SuccessMessage"] = "Video Updated Successfully"; return(RedirectToAction("Edit", video.VideoId)); } else { TempData["ErrorMessage"] = "Video Failed To Update"; } } } //FillArticleCategories(article.CategoryId); FillVideoAuthor(video.AuthorId); FillVideoCategories(video.CategoryId); FillAvailableTags(); return(View(video)); }
public async Task <IActionResult> CreateHashIDPostedJson([FromBody] Models.UrlString longUrl) { if (ModelState.IsValid && URLValidator.IsUrlValid(longUrl.url)) { Models.ShortLink hashIDItem = await HashIDDBRepository.CreateHashIDItemIfNotExistsAsync(longUrl.url); Models.PublicShortLink response = new Models.PublicShortLink { Url = hashIDItem.Url, HashID = hashIDItem.HashID, CreatedTime = hashIDItem.CreatedTime }; // Determine if hashID exists in cache. // Move hashID to front if hashID exists in cache. if (ReadUrlCache.Get(response.HashID) == null) { // Add new hashID to cache. ReadUrlCache.Add(response.HashID, response.Url); } return(Ok(response)); } else { Models.ErrorResponse invalidURLResponse = new Models.ErrorResponse { Details = "Enter a valid URL." }; return(BadRequest(invalidURLResponse)); } }
public ActionResult Edit(CategoryViewModel category) { ViewBag.SelectedPage = Navigator.Items.VIDEOCATEGORIES; if (ModelState.IsValid) { category.URL = category.URL.Trim().Replace(" ", "-"); if (!URLValidator.IsValidURLPart(category.URL)) { TempData["ErrorMessage"] = "Category Failed To Add, URL Not Valid"; } else if (servicesManager.VideoService.IsCategoryURLExist(category.URL, category.CategoryId)) { TempData["ErrorMessage"] = "Category Failed To Add, URL already exist"; } else { int new_id = servicesManager.VideoService.UpdateCategory(category); if (new_id > 0) { TempData["SuccessMessage"] = "Category Updated Successfully"; } else { TempData["ErrorMessage"] = "Category Failed To Update"; } } } return(RedirectToAction("Edit", new { id = category.CategoryId })); }
public ActionResult Edit(ArticleViewModel article) { ViewBag.SelectedPage = Navigator.Items.ARTICLES; if (ModelState.IsValid) { article.URL = URLValidator.CleanURL(article.URL); if (!URLValidator.IsValidURLPart(article.URL)) { TempData["ErrorMessage"] = "Article Failed To Add, URL Not Valid"; } else if (servicesManager.ArticleService.IsArticleURLExist(article.URL, article.ArticleId)) { TempData["ErrorMessage"] = "Article Failed To Add, URL already exist"; } else { int new_id = servicesManager.ArticleService.UpdateArticle(article); if (new_id > 0) { TempData["SuccessMessage"] = "Article Updated Successfully"; return(RedirectToAction("Edit", article.ArticleId)); } else { TempData["ErrorMessage"] = "Article Failed To Update"; } } } FillArticleCategories(article.CategoryId); FillArticleAuthor(article.AuthorId); FillAvailableTags(); return(View(article)); }
public ActionResult New(VideoViewModel video, IEnumerable <HttpPostedFileBase> Images) { ViewBag.SelectedPage = Navigator.Items.NEWVIDEO; FillVideoCategories(video.CategoryId); FillVideoAuthor(video.AuthorId); FillAvailableTags(); if (ModelState.IsValid) { video.URL = URLValidator.CleanURL(video.URL); if (Images != null && Images.Count() > 0 && !ImageService.IsValid(Images)) { TempData["ErrorMessage"] = "Video Failed To Add, Invalid Image File"; } else if (!URLValidator.IsValidURLPart(video.URL)) { TempData["ErrorMessage"] = "Video Failed To Add, URL Not Valid"; } else if (servicesManager.VideoService.IsVideoURLExist(video.URL)) { TempData["ErrorMessage"] = "Video Failed To Add, URL already exist"; } else { int new_id = servicesManager.VideoService.AddNewVideo(video, Images); if (new_id > 0) { TempData["SuccessMessage"] = "Video Added Successfully"; return(RedirectToAction("Edit", new { id = new_id })); } else { TempData["ErrorMessage"] = "Video Failed To Add"; } } } return(View(video)); }
public ActionResult New(ArticleViewModel article, IEnumerable <HttpPostedFileBase> Images) { ViewBag.SelectedPage = Navigator.Items.NEWARTICLE; FillArticleCategories(article.CategoryId); FillArticleAuthor(article.AuthorId); FillAvailableTags(); if (ModelState.IsValid) { article.URL = URLValidator.CleanURL(article.URL); if (Images != null && Images.Count() > 0 && !ImageService.IsValid(Images)) { TempData["ErrorMessage"] = "Article Failed To Add, Invalid Image File"; } else if (!URLValidator.IsValidURLPart(article.URL)) { TempData["ErrorMessage"] = "Article Failed To Add, URL Not Valid"; } else if (servicesManager.ArticleService.IsArticleURLExist(article.URL)) { TempData["ErrorMessage"] = "Article Failed To Add, URL already exist"; } else { int new_id = servicesManager.ArticleService.AddNewArticle(article, Images); if (new_id > 0) { TempData["SuccessMessage"] = "Article Added Successfully"; return(RedirectToAction("Edit", new { id = new_id })); } else { TempData["ErrorMessage"] = "Article Failed To Add"; } } } return(View(article)); }
public ActionResult New(CategoryViewModel category, HttpPostedFileBase Images) { ViewBag.SelectedPage = Navigator.Items.NEWVIDEOCATEGORY; if (ModelState.IsValid) { category.URL = category.URL.Trim().Replace(" ", "-"); if (Images != null && !ImageService.IsValid(Images)) { TempData["ErrorMessage"] = "Category Failed To Add, Invalid Image File"; } else if (!URLValidator.IsValidURLPart(category.URL)) { TempData["ErrorMessage"] = "Category Failed To Add, URL Not Valid"; } else if (servicesManager.VideoService.IsCategoryURLExist(category.URL)) { TempData["ErrorMessage"] = "Category Failed To Add, URL already exist"; } else { int new_id = servicesManager.VideoService.AddNewCategroy(category, Images); if (new_id > 0) { TempData["SuccessMessage"] = "Category Added Successfully"; return(RedirectToAction("Edit", new { id = new_id })); } else { TempData["ErrorMessage"] = "Category Failed To Add"; } } } return(View(category)); }
public async Task <IActionResult> Add([FromBody] InputData inputData) { ApiResponse <string> apiResponse = null; if (string.IsNullOrEmpty(inputData.URL)) { apiResponse = new ApiResponse <string> { Data = string.Empty, Errors = new List <ErrorInfo> { new ErrorInfo { Key = "UrlEmpty" , Description = "URL is empty" } }, Message = "request failed", StatusCode = "404" }; } else if (!URLValidator.UrlIsValid(inputData.URL)) { apiResponse = new ApiResponse <string> { Data = string.Empty, Errors = new List <ErrorInfo> { new ErrorInfo { Key = "URL is not valid" , Description = "you only can send http or https url" } }, Message = "request failed", StatusCode = "404" }; } else { try { string generatedURL = await urlShortenerService.AddURL(inputData.URL); apiResponse = new ApiResponse <string> { Data = generatedURL, Errors = null, Message = "URL shortener work successfully", StatusCode = "200" }; } catch (Exception ex) { apiResponse = new ApiResponse <string> { Data = string.Empty, Errors = new List <ErrorInfo> { new ErrorInfo { Key = "Unknown Exception" , Description = ex.Message } }, Message = "request failed", StatusCode = "500" }; } } return(Ok(apiResponse)); }
public void Validate(string input, string field, bool url) { URLValidator urlValidator = new URLValidator(); urlValidator.Validate(input, field); }