/// <summary> /// upload carousel images and videos /// </summary> /// <returns></returns> public ActionResult CarouselUpload() { if (Request.Files.Count > 0) //check that there are files to get { try { var carouselObj = new DbTables.Carousel(); var carousel = _context.Carousel.ToList(); if (carousel.Any()) //if it already exists, clear the current files and delete them { carouselObj = carousel.First(); carouselObj.CarouselItems.Clear(); var deleteCarousel = _context.Files.Where( s => (s.FileType == DbTables.FileType.CarouselImage) || (s.FileType == DbTables.FileType.CarouselVideo)); if (deleteCarousel.Any()) { _context.Files.RemoveRange(deleteCarousel); //remove many at once. } } else { carouselObj = new DbTables.Carousel { Enabeled = true, CarouselItems = new List <DbTables.File>() }; _context.Carousel.Add(carouselObj); } // Get all files from Request object var files = Request.Files; for (var i = 0; i < files.Count; i++) { var file = files[i]; var fileUpload = new DbTables.File { FileName = Path.GetFileName(file.FileName), ContentType = file.ContentType, Temporary = false }; using (var reader = new BinaryReader(file.InputStream)) { fileUpload.Content = reader.ReadBytes(file.ContentLength); } if (file.ContentType.Contains("video")) //it's a video, add as video type { fileUpload.FileType = DbTables.FileType.CarouselVideo; } else { fileUpload.FileType = DbTables.FileType.CarouselImage; //it's and image } _context.Files.Add(fileUpload); carouselObj.CarouselItems.Add(fileUpload); } _context.SaveChanges(); ViewBag.Success = "Filen(e) ble sukksessfult lastet opp"; return(PartialView("_ImageCarouselPartial", carouselObj)); } catch (Exception ex) { ViewBag.Error = "Error: " + ex.Message; var carouselErr = new DbTables.Carousel(); var carousell = _context.Carousel.ToList(); if (carousell.Any()) { carouselErr = carousell.First(); } return(PartialView("_ImageCarouselPartial", carouselErr)); } } ViewBag.Error = "Ingen fil valgt"; var carouselError = new DbTables.Carousel(); var carouselL = _context.Carousel.ToList(); if (carouselL.Any()) { carouselError = carouselL.First(); } return(PartialView("_ImageCarouselPartial", carouselError)); }
// GET: Admin/Various /// <summary> /// Index view of various, check if various database elements are actually added and then add these to the model if /// they exist /// </summary> /// <returns>Various index view</returns> public ActionResult Index() { var carouselObj = new DbTables.Carousel(); var GoogleCap = new DbTables.GoogleCaptchaAPI(); var GoogleCapList = _context.GoogleCaptchaAPI.ToList(); if (GoogleCapList.Any()) { GoogleCap = GoogleCapList.First(); } var SendG = new DbTables.SendGridAPI(); var SendgridList = _context.SendGridAPI.ToList(); if (SendgridList.Any()) { SendG = SendgridList.First(); } var Stripe = new DbTables.StripeAPI(); var StripeList = _context.StripeAPI.ToList(); if (StripeList.Any()) { Stripe = StripeList.First(); } var Facebook = new DbTables.Facebook(); var FacebookList = _context.Facebook.ToList(); if (FacebookList.Any()) { Facebook = FacebookList.First(); } var Twitter = new DbTables.Twitter(); var TwitterList = _context.Twitter.ToList(); if (TwitterList.Any()) { Twitter = TwitterList.First(); } var Disqus = new DbTables.Disqus(); var DisqusList = _context.Disqus.ToList(); if (DisqusList.Any()) { Disqus = DisqusList.First(); } var About = new DbTables.Info(); var AboutList = _context.About.ToList(); if (AboutList.Any()) { About = AboutList.First(); } var carousel = _context.Carousel.ToList(); if (carousel.Any()) { carouselObj = carousel.First(); } var Terms = new DbTables.TermsOfUse(); var TermsList = _context.TermsOfUse.ToList(); if (TermsList.Any()) { Terms = TermsList.First(); } var Background = new DbTables.BackgroundImage(); var BackgroundList = _context.BackgroundImage.ToList(); if (BackgroundList.Any()) { Background = BackgroundList.First(); } var model = new VariousModel { GoogleCaptchaAPI = GoogleCap, SendGridAPI = SendG, Terms = Terms, Carousel = carouselObj, About = About, StripeAPI = Stripe, Twitter = Twitter, Facebook = Facebook, Background = Background, Disqus = Disqus }; return(View(model)); }