예제 #1
0
        public ActionResult Edit(FilmViewModel pFilmViewModel)
        {
            if (Request.IsAuthenticated)
            {
                try
                {
                    foreach (string inputTagName in Request.Files)
                    {
                        HttpPostedFileBase file = Request.Files[inputTagName];
                        //if (file.ContentLength > 0)
                        //{
                        //    string filePath = Path.Combine(HttpContext.Server.MapPath("../Uploads")
                        //            , Path.GetFileName(file.FileName));
                        //    file.SaveAs(filePath);
                        //}

                        byte[] buffer = new byte[file.ContentLength];
                        file.InputStream.Read(buffer, 0, file.ContentLength);

                        //ImageElement image = ImageElement.FromBinary(byteArray);

                        //pFilm.Icone = buffer;
                    }

                    if (Session["ContentStreamFilm"] != null)
                    {
                        int length = (int)Session["ContentLengthFilm"];
                        string type = (string)Session["ContentTypeFilm"];
                        byte[] img = (byte[])Session["ContentStreamFilm"];

                        string fichierJaquette = @"D:\Jaymz\Images\Pochettes\DVD\" + pFilmViewModel.LeFilm.Titre + ".jpg";

                        pFilmViewModel.LeFilm.Jaquette = pFilmViewModel.LeFilm.Titre + ".jpg";

                        FileInfo fichierImage = new FileInfo(fichierJaquette);

                        if (fichierImage.Exists)
                        {
                            fichierImage.Delete();
                        }

                        using (Image image = Image.FromStream(new MemoryStream(img)))
                        {
                            image.Save(fichierJaquette, ImageFormat.Jpeg);  // Or Png
                        }

                        Session.Remove("ContentStreamFilm");
                        Session.Remove("ContentLengthFilm");
                        Session.Remove("ContentTypeFilm");
                    }


                    //if (Session["FileName"] != null)
                    //{
                    //    //TODO : sauvegarde de l'image chargée dans un fichier ContentStreamFilm
                    //    pFilmViewModel.LeFilm.Jaquette = (String)Session["FileName"];
                    //}

                    GestionnaireFilms gestionnaireFilms = new GestionnaireFilms();
                    gestionnaireFilms.MettreAJourFilm(pFilmViewModel.LeFilm);

                    Session.Clear();

                    return RedirectToAction("Details", "Film", new { codeFilm = pFilmViewModel.LeFilm.Code });

                }
                catch (Exception ex)
                {
                    HandleErrorInfo error = new HandleErrorInfo(ex, "Film", "Edit");
                    return View("Error", error);
                }
            }
            else
            {
                return RedirectToAction("LogOn", "Account");
            }
        }
예제 #2
0
        public ActionResult CreerSouhait(FilmViewModel pFilmViewModel)
        {
            if (Request.IsAuthenticated)
            {
                try
                {
                    GestionnaireFilms gestionnaireFilms = new GestionnaireFilms();

                    gestionnaireFilms.AjouterSouhait(pFilmViewModel.LeFilm.Code, pFilmViewModel.LeSupport.Code, pFilmViewModel.LeProprietaire.Code);

                    //On affiche la page du film
                    return RedirectToAction("Details", "Film", new { codeFilm = pFilmViewModel.LeFilm.Code });

                }
                catch (Exception ex)
                {
                    HandleErrorInfo error = new HandleErrorInfo(ex, "Film", "CreerSouhait");
                    return View("Error", error);
                }

            }
            else
            {
                return RedirectToAction("LogOn", "Account");
            }
        }
예제 #3
0
        //
        // GET: /Film/Edit/5

        public ActionResult Edit(Guid pCodeFilm)
        {
            if (Request.IsAuthenticated)
            {
                FilmViewModel filmViewModel = new FilmViewModel();
                //GestionnaireProprietaires gestionnaireProprietaires = new GestionnaireProprietaires();

                filmViewModel.ListeProprietaire = DataManager.ListeProprietaires;
                filmViewModel.ListeSupports = DataManager.ListeSupports;
                filmViewModel.ListeGenres = DataManager.ListeGenre;


                GestionnaireFilms gestionnaireFilms = new GestionnaireFilms();

                filmViewModel.LeFilm = gestionnaireFilms.ObtenirLeFilmComplet(pCodeFilm);

                return View(filmViewModel);

            }
            else
            {
                return RedirectToAction("LogOn", "Account");
            }
        }
예제 #4
0
        //Create souhait
        //
        // GET: /Home/CreerExemplaire
        public ActionResult CreerSouhait(Guid pCodeFilm)
        {
            if (Request.IsAuthenticated)
            {
                FilmViewModel filmViewModel = new FilmViewModel();

                filmViewModel.ListeProprietaire = DataManager.ListeProprietaires;
                filmViewModel.ListeSupports = DataManager.ListeSupports;
                filmViewModel.ListeGenres = DataManager.ListeGenre;

                GestionnaireFilms gestionnaireFilms = new GestionnaireFilms();
                filmViewModel.LeFilm = gestionnaireFilms.ObtenirLeFilmComplet(pCodeFilm);

                //Sélection du propriétaire par défaut pour la création du souhait
                filmViewModel.LeProprietaire.Code = filmViewModel.ListeProprietaire.Find(
                    item => item.Login.Equals(System.Web.HttpContext.Current.User.Identity.Name)).Code;

                return View(filmViewModel);

            }
            else
            {
                return RedirectToAction("LogOn", "Account");
            }

        }
예제 #5
0
        //Create depuis la liste des fiches trouvées dans Allocine
        //
        // GET: /Home/CreerEmprunt
        public ActionResult CreerEmprunt(Guid pCodeFilm, Guid pCodeProprietaire, String pCodeSupport)
        {
            if (Request.IsAuthenticated)
            {
                FilmViewModel filmViewModel = new FilmViewModel();

                filmViewModel.ListeProprietaire = DataManager.ListeProprietaires;
                //filmViewModel.ListeSupports = DataManager.ListeSupports;
                //filmViewModel.ListeGenres = DataManager.ListeGenre;

                GestionnaireFilms gestionnaireFilms = new GestionnaireFilms();
                filmViewModel.LeFilm = gestionnaireFilms.ObtenirLeFilmComplet(pCodeFilm);

                filmViewModel.LeProprietaire = DataManager.ListeProprietaires.Find(item => item.Code.Equals(pCodeProprietaire));
                filmViewModel.LeSupport = DataManager.ListeSupports.Find(item => item.Code.ToLower().Equals(pCodeSupport.ToLower()));

                return View(filmViewModel);

            }
            else
            {
                return RedirectToAction("LogOn", "Account");
            }
        }
예제 #6
0
        public ActionResult Create(FilmViewModel pFilmViewModel)
        {
            if (Request.IsAuthenticated)
            {
                try
                {
                    GestionnaireFilms gestionnaireFilms = new GestionnaireFilms();
                    Film f = null;

                    if (Request.Form["creerExemplaire"] != null)
                    {
                        f = gestionnaireFilms.CreerFilmEtExemplaire(pFilmViewModel.LeFilm, pFilmViewModel.LeSupport.Code, pFilmViewModel.LeProprietaire.Code);

                        //On affiche la page du film
                        return RedirectToAction("Details", "Film", new { codeFilm = f.Code });
                    }
                    else if (Request.Form["creerSouhait"] != null)
                    {

                        f = gestionnaireFilms.CreerFilmEtSouhait(pFilmViewModel.LeFilm, pFilmViewModel.LeSupport.Code, pFilmViewModel.LeProprietaire.Code);

                    }

                    //On affiche la page du film
                    return RedirectToAction("Details", "Film", new { codeFilm = f.Code });
                }
                catch (Exception ex)
                {
                    HandleErrorInfo error = new HandleErrorInfo(ex, "Film", "CreerFilm");
                    return View("Error", error);
                }
            }
            else
            {
                return RedirectToAction("LogOn", "Account");
            }
        }
예제 #7
0
        /// <summary>
        /// Create depuis la liste des fiches trouvées dans Allocine
        /// GET: /Home/Create
        /// </summary>
        /// <param name="codeFilmAllocine">codeFilmAllocine</param>
        /// <returns></returns>
        public ActionResult Create(string codeFilmAllocine)
        {
            if (Request.IsAuthenticated)
            {

                try
                {

                    FilmViewModel filmViewModel = new FilmViewModel();

                    filmViewModel.ListeProprietaire = DataManager.ListeProprietaires;
                    filmViewModel.ListeSupports = DataManager.ListeSupports;
                    filmViewModel.ListeGenres = DataManager.ListeGenre;

                    if (codeFilmAllocine == null || String.Empty.Equals(codeFilmAllocine))
                    {

                    }
                    else
                    {

                        //Ajout via Allocine

                        GestionnaireAllocine gestionnaireAllocine = new GestionnaireAllocine();


                        FicheFilmAllocine ficheAllocine = gestionnaireAllocine.ObtenirFicheFilm(codeFilmAllocine);

                        Genre genre = DataManager.ListeGenre.Find(
                        item => item.Libelle.ToLower().Replace(" ", "").Replace("-", "").Equals(
                            ficheAllocine.LeGenre.Libelle.ToLower().Replace(" ", "").Replace("-", "")));

                        FileInfo sourceFile = new FileInfo("C:\\Temp\\" + ficheAllocine.NomJaquette);
                        if (sourceFile.Exists)
                        {
                            FileInfo destFile = new FileInfo("D:\\Jaymz\\Images\\Pochettes\\DVD\\" + ficheAllocine.NomJaquette);

                            if (destFile.Exists)
                            {
                                destFile.Delete();
                            }

                            sourceFile.MoveTo(destFile.FullName);
                        }

                        filmViewModel.LeFilm = new Film(ficheAllocine, genre);
                    }

                    //Sélection du propriétaire par défaut pour la création de l'exemplaire
                    filmViewModel.LeProprietaire.Code = filmViewModel.ListeProprietaire.Find(
                        item => item.Login.Equals(System.Web.HttpContext.Current.User.Identity.Name)).Code;


                    return View(filmViewModel);

                }
                catch (Exception ex)
                {
                    HandleErrorInfo error = new HandleErrorInfo(ex, "Film", "Create");
                    return View("Error", error);
                }

            }
            else
            {
                return RedirectToAction("LogOn", "Account");
            }
        }
예제 #8
0
        public ActionResult Upload(HttpPostedFileBase file, FilmViewModel pFilm)
        {

            if (file != null && file.ContentLength > 0)
            {
                Session["ContentLengthFilm"] = file.ContentLength;
                Session["FileName"] = file.FileName;
                Session["ContentTypeFilm"] = file.ContentType;
                byte[] b = new byte[file.ContentLength];
                file.InputStream.Read(b, 0, file.ContentLength);
                Session["ContentStreamFilm"] = b;

            }

            return RedirectToAction("Edit", new { pCodeFilm = pFilm.LeFilm.Code });
        }