/// Metoder for ajax-kall
        public string HentEnFilm(int id)
        {
            var db = new DB();

            Models.Film enFilm = db.HentFilm(id);
            var         utFilm = new Models.Film()
            {
                id            = enFilm.id,
                Navn          = enFilm.Navn,
                Beskrivelse   = enFilm.Beskrivelse,
                Bilde         = enFilm.Bilde,
                Produksjonsår = enFilm.Produksjonsår,
                Kontinent     = enFilm.Kontinent,
                ReleaseDate   = enFilm.ReleaseDate,
                Studio        = enFilm.Studio,
                Visninger     = enFilm.Visninger,
                Sjanger       = new List <Models.Sjanger>(),
                Stemmer       = new List <Models.Stemme>(),
                Skuespillere  = new List <Models.Skuespiller>()
            };

            var    jsonSerializer = new JavaScriptSerializer();
            string jsonData       = jsonSerializer.Serialize(utFilm);

            return(jsonData);
        }
        public ActionResult Create(Models.Film model)
        {
            if (ModelState.IsValid)
            {
                if (!filmService.ExistsFilm(model.Name))
                {
                    var dbModel = new Domain.Film();
                    dbModel.InjectFrom(model);
                    //filmRepository.Add(dbModel);
                    filmService.AddFilm(dbModel);
                    TempData["message"] = string.Format("{0} has been saved", model.Name);
                }
                else
                {
                    ModelState.AddModelError("Name", "This movie is already in the database!");

                    var genres = genreRepository.GetAll().Select(f => new SelectListItem()
                    {
                        Value = f.Id.ToString(),
                        Text  = f.Name
                    }).ToList();
                    ViewBag.Genres = genres;

                    return(View(model));
                }
                //transform the object
                //unitOfWork.Commit();
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
        public ActionResult Detail(int ID)
        {
            Models.Film Film = filmRepository.GetFilm(ID);
            ViewData["Title"]       = Film.Title;
            ViewData["Description"] = Film.Description;
            ViewData["Length"]      = Film.Length.ToString();

            return(View());
        }
        public ActionResult Create()
        {
            var model        = new Models.Film();
            var genres       = genreRepository.GetAll();
            var selectGenres = genres.Select(f => new SelectListItem()
            {
                Value = f.Id.ToString(),
                Text  = f.Name
            }).ToList();

            ViewBag.Genres = selectGenres;
            return(View(model));
        }
Exemple #5
0
        // GET: Movie/Create
        public ActionResult Create()
        {
            var film = new Models.Film();

            film.Producteurs = serviceProducteur.GetAll().ToSelectListItems();

            List <string> genres = new List <string> {
                "Comedy", "Action", "Horror"
            };

            film.Genres = genres.ToSelectListItems();
            return(View(film));
        }
        // GET: Film/Delete/5
        public ActionResult Delete(int id)
        {
            var film = filmRepository.FindById(id);

            if (film == null)
            {
                return(HttpNotFound());
            }

            var filmId = new Models.Film();

            filmId.InjectFrom(film);
            return(View(filmId));
        }
Exemple #7
0
        public static Films.Domain.Models.Film ToModelsFilm(Models.Film otherFilm)
        {
            ICollection <Films.Domain.Models.Actor> actors = new List <Films.Domain.Models.Actor>();

            foreach (Models.Actor actor in otherFilm.Actors)
            {
                actors.Add(ConvertActor.ToModelsActor(actor));
            }

            return(new Domain.Models.Film(
                       otherFilm.Id
                       , otherFilm.BluRaySupport
                       , otherFilm.Name
                       , otherFilm.Language
                       , ConvertProducer.ToModelsProducer(otherFilm.Producer)
                       , otherFilm.ReleaseDate
                       , actors
                       ));
        }
Exemple #8
0
        public static EntityFramework.Models.Film ToEntityFrameworkModelsFilm(Films.Domain.Models.Film filmDomain)
        {
            EntityFramework.Models.Film film   = new Models.Film();
            ICollection <Models.Actor>  actors = new List <Models.Actor>();

            film.Id            = filmDomain.Id;
            film.Name          = filmDomain.Name;
            film.ReleaseDate   = filmDomain.ReleaseDate;
            film.Language      = filmDomain.Language;
            film.Producer      = ConvertProducer.ToEntityFrameworkModelsProducer(filmDomain.Producer);
            film.BluRaySupport = filmDomain.BluRaySupport;

            foreach (Films.Domain.Models.Actor item in filmDomain.Actors)
            {
                actors.Add(ConvertActor.ToEntityFrameworkModelsActor(item));
            }

            film.Actors = actors;
            return(film);
        }
        public ActionResult Create(Models.Film filmVM, HttpPostedFileBase Image)
        {
            Domaine.Film film = new Domaine.Film();
            film.Titre        = filmVM.Titre;
            film.Price        = filmVM.Prix;
            film.DateProd     = filmVM.ReleaseDate;
            film.Description  = filmVM.Description;
            film.Genre        = filmVM.Genre;
            film.ImageUrl     = filmVM.ImageUrl;
            film.ProducteurId = filmVM.ProducteurId;
            film.Evaluation   = filmVM.Avis;
            film.ImageUrl     = Image.FileName;

            serviceFilm.Add(film);
            serviceFilm.Commit();

            var path = Path.Combine(Server.MapPath("~/Content/Upload/"), Image.FileName);

            Image.SaveAs(path);
            return(RedirectToAction("Index"));
        }
        public ActionResult Delete(int id, Models.Film film)
        {
            if (!filmService.IsUsedFilm(film.Id))
            {
                var filmDelete = filmRepository.FindById(id);
                //var userCheck = userRepository.GetAll().Count(u => u.Id == id);

                filmDelete.InjectFrom(film);
                filmService.DeleteFilm(filmDelete);
                TempData["message"] = string.Format("{0} has been saved", film.Name);
            }
            else
            {
                ModelState.AddModelError("Name", "Cannot delete this movie!");
            }

            //filmRepository.Delete(filmDelete);
            //unitOfWork.Commit();
            return(RedirectToAction("Index"));

            //return View(film);
        }
        // GET: Film/Edit/5
        public ActionResult Edit(int id)
        {
            var film = filmRepository.GetById(id);

            if (film == null)
            {
                return(HttpNotFound());
            }

            var filmModel = new Models.Film();

            filmModel.InjectFrom(film);
            var genres = genreRepository.GetAll().Select(f => new SelectListItem()
            {
                Value    = f.Id.ToString(),
                Text     = f.Name,
                Selected = filmModel.GenreId == f.Id
            }).ToList();

            ViewBag.Genres = genres;
            return(View(filmModel));
        }
Exemple #12
0
        public ActionResult FilmEdit(FormCollection fc, HttpPostedFileBase UploadFile)
        {
            Film film = new Models.Film();

            TryUpdateModel <Film>(film, fc);

            if (UploadFile != null)
            {
                var    fileName      = Path.GetFileName(UploadFile.FileName);
                var    filePath      = Server.MapPath("/Content/Images/Films");
                string savedFileName = Path.Combine(filePath, fileName);
                UploadFile.SaveAs(savedFileName);
                film.Imagefile = fileName;
            }
            if (ModelState.IsValid)
            {
                dbcon.Open();
                int intresult = Film.CUFilm(dbcon, "update", film);
                FilmCategory.UpdateCategories(dbcon, fc);
                dbcon.Close();
            }
            return(RedirectToAction("FilmList", "Admin"));
        }
        public void TestUpdateFilm()
        {
            var updateToThis = new Models.Film {
                Description = "this movie change your life", Length = 109, ReleaseYear = 1999, Title = "Jumanji"
            };

            var data = new List <DatabaseClient.TableEntity.Film>
            {
                new Film {
                    description = "Wystraczy Cię na śmierć", film_id = 2, length = 97, release_year = 2001, title = "Jumanji"
                },
            }.AsQueryable();

            var mockSet = new Mock <DbSet <Film> >();

            mockSet.As <IQueryable <Film> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <Film> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <Film> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <Film> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock <DVDRentalContext>();

            mockContext.Setup(context => context.Films).Returns(mockSet.Object);
            repository = new FilmContext(mockContext.Object);

            var updated = data.FirstOrDefault();

            repository.UpdateFilm(updateToThis);



            Assert.AreEqual(updateToThis.Description, updated.description);
            Assert.AreEqual(updateToThis.ReleaseYear, updated.release_year);
            Assert.AreEqual(updateToThis.Length, updated.length);

            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }
        public ActionResult Edit(Models.Film film)
        {
            if (ModelState.IsValid)
            {
                //filmRepository.Update(filmEdit);
                //unitOfWork.Commit();

                if (!filmService.ExistsFilm(film.Name))
                {
                    var filmDb = filmRepository.GetById(film.Id);
                    TryUpdateModel(filmDb);
                    filmService.UpdateFilm(filmDb);
                    TempData["message"] = string.Format("{0} has been saved", film.Name);
                }
                else
                {
                    ModelState.AddModelError("Name", "This movie is already in the database!");

                    var genres = genreRepository.GetAll().Select(f => new SelectListItem()
                    {
                        Value = f.Id.ToString(),
                        Text  = f.Name
                    }).ToList();
                    ViewBag.Genres = genres;

                    return(View(film));
                }
            }

            else
            {
                return(View(film));
            }

            return(RedirectToAction("Index"));
        }
Exemple #15
0
        // public ActionResult Edit([Bind(Include = "MovieID,Name,Plot,Year_Of_Release,ProducerID,Actors")] Film film)
        public ActionResult Edit(Models.Film film, HttpPostedFileBase post)
        {
            if (Session["Admin"] != null)
            {
                if ((int)Session["Admin"] == 1)
                {
                    if (ModelState.IsValid)
                    {
                        //  db.Entry(film).State = EntityState.Modified;
                        //   db.SaveChanges();
                        // return RedirectToAction("Index");
                        //   }
                        // db.SaveChanges();
                        if (post != null)
                        {
                            HttpPostedFileBase blah = post;
                            byte[]             pic  = null;
                            using (var binaryReader = new BinaryReader(blah.InputStream))
                            {
                                pic = binaryReader.ReadBytes(Request.Files[0].ContentLength);
                            }
                            film.Poster = pic;
                            //blah.SaveAs("/Uploads/" + blah.FileName);
                            //string po = "/Uploads" + blah.FileName;
                            //film.Poster = po;
                        }

                        db.Entry(film).State = EntityState.Modified;
                        db.SaveChanges();
                        Film ff = db.Films.Include(f => f.Actors).Single(f => f.MovieID == film.MovieID);
                        //  db.Films.Remove(f);

                        foreach (var actor in ff.Actors.ToList())
                        {
                            ff.Actors.Remove(actor);
                        }

                        if (Request["ActorID"] != null)
                        {
                            string       blah  = Request["ActorID"].ToString();
                            string[]     Aids  = blah.Split(',');
                            Models.Actor atemp = new Models.Actor();
                            for (int i = 0; i < Aids.Length; i++)
                            {
                                atemp = db.Actors.Find(Int32.Parse(Aids[i]));
                                ff.Actors.Add(atemp);
                                db.SaveChanges();
                            }
                        }


                        // db.Films.Add(film);
                        //db.SaveChanges();
                        return(RedirectToAction("Index"));
                    }



                    ViewBag.ProducerID = new SelectList(db.Producers, "ProducerID", "Name", film.ProducerID);
                    return(View(film));
                }

                else
                {
                    return(RedirectToAction("Login", "Accounts"));
                }
            }
            else
            {
                return(RedirectToAction("Login", "Accounts"));
            }
        }
        public void TestUpdateFilm()
        {
            var updateToThis = new Models.Film { Description = "this movie change your life", Length = 109, ReleaseYear = 1999, Title = "Jumanji" };

            var data = new List<DatabaseClient.TableEntity.Film>
            {
                 new Film { description = "Wystraczy Cię na śmierć", film_id = 2, length = 97, release_year = 2001, title = "Jumanji" },
            }.AsQueryable();

            var mockSet = new Mock<DbSet<Film>>();
            mockSet.As<IQueryable<Film>>().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As<IQueryable<Film>>().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As<IQueryable<Film>>().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As<IQueryable<Film>>().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock<DVDRentalContext>();
            mockContext.Setup(context => context.Films).Returns(mockSet.Object);
            repository = new FilmContext(mockContext.Object);

            var updated = data.FirstOrDefault();
            repository.UpdateFilm(updateToThis);

            Assert.AreEqual(updateToThis.Description, updated.description);
            Assert.AreEqual(updateToThis.ReleaseYear, updated.release_year);
            Assert.AreEqual(updateToThis.Length, updated.length);

            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }
        public ActionResult Details(int id)
        {
            Models.Film film = db.Films.Find(id);

            return(View(film));
        }
Exemple #18
0
        //  [ValidateAntiForgeryToken]
        public ActionResult Create(Models.Film film, HttpPostedFileBase post)
        {
            if (((Session["Admin"] != null) && ((int)Session["Admin"] == 1)) || (((Request["Realtime"]) != null) && (Int32.Parse(Request["Realtime"]) == 1)))
            {
                if (ModelState.IsValid)
                {
                    foreach (var item in db.Films.ToList())
                    {
                        if (film.Name.Equals(item.Name))
                        {
                            return(RedirectToAction("Index"));
                        }
                    }



                    if (Request["Actors"] != null)
                    {
                        string       act   = Request["Actors"].ToString();
                        string[]     Aids  = act.Split(',');
                        Models.Actor atemp = new Models.Actor();

                        for (int i = 0; i < Aids.Length; i++)
                        {
                            var aa = (string)(Aids[i]);
                            foreach (var name in db.Actors)
                            {
                                if (aa.Equals(name.Name))
                                {
                                    atemp = name;
                                    break;
                                }
                            }
                            if (atemp.Name != null)
                            {
                                film.Actors.Add(atemp);
                            }
                            else
                            {
                                Models.Actor aatemp = new Models.Actor();
                                aatemp.Name = Aids[i];
                                db.Actors.Add(aatemp);
                                db.SaveChanges();
                                film.Actors.Add(aatemp);
                            }
                        }
                    }



                    if (Request["Producer"] != null)
                    {
                        string prod = Request["Producer"].ToString();

                        Models.Producer ptemp = new Models.Producer();


                        foreach (var name in db.Producers)
                        {
                            if (prod.Equals(name.Name))
                            {
                                ptemp = name;
                                break;
                            }
                        }
                        if (ptemp.Name != null)
                        {
                            film.ProducerID = ptemp.ProducerID;
                        }
                        else
                        {
                            Models.Producer pptemp = new Models.Producer();
                            pptemp.Name = prod;
                            db.Producers.Add(pptemp);
                            db.SaveChanges();
                            film.ProducerID = pptemp.ProducerID;
                        }
                    }



                    if (post != null)
                    {
                        HttpPostedFileBase blah = post;
                        byte[]             pic  = null;
                        using (var binaryReader = new BinaryReader(blah.InputStream))
                        {
                            pic = binaryReader.ReadBytes(Request.Files[0].ContentLength);
                        }
                        film.Poster = pic;
                        //blah.SaveAs("/Uploads/" + blah.FileName);
                        //string po = "/Uploads" + blah.FileName;
                        //film.Poster = po;
                    }


                    if (Request["ActorID"] != null)
                    {
                        string       blah  = Request["ActorID"].ToString();
                        string[]     Aids  = blah.Split(',');
                        Models.Actor atemp = new Models.Actor();
                        for (int i = 0; i < Aids.Length; i++)
                        {
                            atemp = db.Actors.Find(Int32.Parse(Aids[i]));
                            film.Actors.Add(atemp);
                        }
                    }


                    db.Films.Add(film);

                    if ((((Request["Realtime"]) != null) && (Int32.Parse(Request["Realtime"]) == 1)))
                    {
                        try
                        {
                            db.SaveChanges();
                            var s = film.MovieID;
                            return(Json(new { success = true, id = film.MovieID }, JsonRequestBehavior.AllowGet));
                        }
                        //  catch (DbEntityValidationException ex)
                        catch (Exception ex)
                        {
                            return(Json(new { success = false }, JsonRequestBehavior.AllowGet));
                            //foreach (var entityValidationErrors in ex.EntityValidationErrors)

                            //{
                            //    foreach (var validationError in entityValidationErrors.ValidationErrors)
                            //    {
                            //        errorList.Add("Property: " + validationError.PropertyName + " Error: " + validationError.ErrorMessage);
                            //    }
                            //}
                        }
                    }

                    //db.SaveChanges();
                    //[Bind(Include = "MovieID,Name,Plot,Year_Of_Release,ProducerID,ActorList")]
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }

                ViewBag.ProducerID = new SelectList(db.Producers, "ProducerID", "Name", film.ProducerID);
                return(View(film));
            }

            else
            {
                return(RedirectToAction("Login", "Accounts"));
            }
        }