public ActionResult AddToCart(int?productId) { if (productId != null) { if (Request.Cookies["SignInCookie"] != null) { string[] cookie = Request.Cookies["SignInCookie"].Value.Split(','); int userId = int.Parse(cookie[0]); UsersRepository.AddToCart(userId, productId.Value); ProductsRepository.ChangeStateToCarted(productId.Value); } else { if (Session["cart"] != null) { List <Product> cart = (List <Product>)Session["cart"]; ProductsRepository.ChangeStateToCarted(productId.Value); var productToAdd = ProductsRepository.GetProduct(productId.Value); cart.Add(productToAdd); Session["cart"] = cart; Session.Timeout = 1; } else { List <Product> cart = new List <Product>(); ProductsRepository.ChangeStateToCarted(productId.Value); var productToAdd = ProductsRepository.GetProduct(productId.Value); cart.Add(productToAdd); Session["cart"] = cart; Session.Timeout = 1; } } } return(RedirectToAction("Index")); }