// // GET: /Error/Error404 public ActionResult Error404(string url) { Response.StatusCode = (int)HttpStatusCode.NotFound; var model = new Error404Model(); model.RequestedUrl = Request.Url != null && (url == null || Request.Url.OriginalString.Contains(url) && Request.Url.OriginalString != url) ? Request.Url.OriginalString : url ?? string.Empty; model.ReferrerUrl = Request.UrlReferrer != null && Request.UrlReferrer.OriginalString != model.RequestedUrl ? Request.UrlReferrer.OriginalString : null; return(View(model)); }
public IActionResult NotFound404() { Response.StatusCode = 404; Error404Model model; ErrorManagerSettings settings = _settingsProvider.GetSettings <ErrorManagerSettings>("ErrorManager"); if (settings.RandomQuotes) { // grab a random quote Random rnd = new Random(Convert.ToInt32(DateTime.Now.ToString("Hmsffff"))); int quote = rnd.Next(settings.Count()); model = new Error404Model(GetModelData(), Languages.LanguageStrings.PageNotFound, settings.GetQuote(quote), GetImageFile(quote)); } else { int index = 0; // sequential, save current state to cookie if (CookieExists("Error404")) { // get index from cookie string cookieValue = Decrypt(CookieValue("Error404"), settings.EncryptionKey); index = StrToInt(cookieValue, 0) + 1; } if (index < 0 || index > settings.Count()) { index = 0; } CookieAdd("Error404", Encrypt(Convert.ToString(index), settings.EncryptionKey), 30); model = new Error404Model(GetModelData(), Languages.LanguageStrings.PageNotFound, settings.GetQuote(index), GetImageFile(index)); } return(View(model)); }