예제 #1
0
        public ActionResult ModifSecteur(ContentSecteurModel model)
        {
            if (ModelState.IsValid)
            {
                if (!string.IsNullOrEmpty(Request.Form["modifierSecteur"]))
                {
                    string  desc      = Message.NewlineToBr(model.contenu);
                    string  descTrad  = Message.NewlineToBr(model.contenuTrad);
                    SECTEUR leSecteur = db.SECTEUR.SingleOrDefault(s => s.ID == model.idSect);
                    leSecteur.NOM              = model.nom;
                    leSecteur.NOMTRAD          = model.nomTrad;
                    leSecteur.TITREACCUEIL     = model.titre;
                    leSecteur.TITREACCUEILTRAD = model.titreTrad;
                    leSecteur.TEXTEACCUEIL     = desc;
                    leSecteur.TEXTEACCUEILTRAD = descTrad;
                    leSecteur.URLIMAGEACCUEIL  = model.fileName;

                    db.SaveChanges();

                    TempData[Constantes.CLE_MSG_RETOUR] =
                        new Message(Message.TYPE_MESSAGE.SUCCES, Resources.Messages.SectModifOk);

                    return(RedirectToAction("GestionSecteurs"));
                }
                else if (!string.IsNullOrEmpty(Request.Form["modifierImage"]))
                {
                    if (model.File != null)
                    {
                        HttpPostedFileBase fichier = model.File;

                        int      MaxContentLength      = 1024 * 1024 * 2; //2 MB
                        string[] AllowedFileExtensions = new string[] { ".jpg", ".jpeg" };

                        if (!AllowedFileExtensions.Contains(fichier.FileName.Substring(fichier.FileName.LastIndexOf('.'))))
                        {
                            ModelState.AddModelError("", Resources.Messages.FileType + string.Join(", ", AllowedFileExtensions));
                        }
                        else if (fichier.ContentLength > MaxContentLength)
                        {
                            ModelState.AddModelError("", Resources.Messages.FileTooLarge + (MaxContentLength / 1024).ToString() + "MB");
                        }
                        else
                        {
                            var fileName = Path.GetFileName(fichier.FileName);
                            var path     = Path.Combine(Server.MapPath("~/Content/images/photos/"), fileName);

                            fichier.SaveAs(path);
                            model.fileName = fileName;
                        }
                    }
                    else
                    {
                        model.fileName = null;
                    }
                    return(View(model));
                }
            }

            return(View(model));
        }
예제 #2
0
        public ActionResult ModifSecteur(int?idSect)
        {
            if (idSect != null)
            {
                SECTEUR secteur = db.SECTEUR.SingleOrDefault(s => s.ID == idSect);

                if (secteur != null)
                {
                    ContentSecteurModel model = new ContentSecteurModel();

                    model.idSect      = secteur.ID;
                    model.nom         = secteur.NOM;
                    model.nomTrad     = secteur.NOMTRAD;
                    model.titre       = secteur.TITREACCUEIL;
                    model.titreTrad   = secteur.TITREACCUEILTRAD;
                    model.contenu     = Message.BrToNewline(secteur.TEXTEACCUEIL ?? "");
                    model.contenuTrad = Message.BrToNewline(secteur.TEXTEACCUEILTRAD ?? "");
                    model.fileName    = secteur.URLIMAGEACCUEIL;

                    return(View(model));
                }
            }

            return(RedirectToAction("Index"));
        }
예제 #3
0
        public ActionResult AjoutSecteur(ContentSecteurModel model)
        {
            if (ModelState.IsValid)
            {
                string  desc      = Message.NewlineToBr(model.contenu);
                string  descTrad  = Message.NewlineToBr(model.contenuTrad);
                SECTEUR leSecteur = new SECTEUR();
                leSecteur.NOM              = model.nom;
                leSecteur.NOMTRAD          = model.nomTrad;
                leSecteur.TITREACCUEIL     = model.titre;
                leSecteur.TITREACCUEILTRAD = model.titreTrad;
                leSecteur.TEXTEACCUEIL     = desc;
                leSecteur.TEXTEACCUEILTRAD = descTrad;

                if (model.File != null)
                {
                    HttpPostedFileBase fichier = model.File;

                    int      MaxContentLength      = 1024 * 1024 * 2; //2 MB
                    string[] AllowedFileExtensions = new string[] { ".jpg", ".jpeg" };

                    if (!AllowedFileExtensions.Contains(fichier.FileName.Substring(fichier.FileName.LastIndexOf('.'))))
                    {
                        ModelState.AddModelError("", Resources.Messages.FileType + string.Join(", ", AllowedFileExtensions));
                    }
                    else if (fichier.ContentLength > MaxContentLength)
                    {
                        ModelState.AddModelError("", Resources.Messages.FileTooLarge + (MaxContentLength / 1024).ToString() + "MB");
                    }
                    else
                    {
                        //HttpPostedFileBase file = Request.Files.Get(0);

                        //string url = Fichiers.CheminEnvoisImages(fichier.FileName);
                        var fileName = Path.GetFileName(fichier.FileName);
                        var path     = Path.Combine(Server.MapPath("~/Content/images/photos"), fileName);

                        fichier.SaveAs(path);

                        leSecteur.URLIMAGEACCUEIL = fileName;
                    }
                }

                db.SECTEUR.Add(leSecteur);
                db.SaveChanges();

                var lesAdmins = from a in db.UTILISATEUR
                                where a.webpages_Roles.All(r => r.RoleName.Equals("admin"))
                                select a;

                if (lesAdmins.FirstOrDefault() != null)
                {
                    int idNewSect = leSecteur.ID;

                    UTILISATEURSECTEUR newU;
                    DateTime           debut = DateTime.Now;
                    DateTime           fin   = DateTime.Now.AddYears(4);
                    foreach (var a in lesAdmins)
                    {
                        newU               = new UTILISATEURSECTEUR();
                        newU.IDSECTEUR     = idNewSect;
                        newU.IDUTILISATEUR = a.ID;
                        newU.DEBUTACCES    = debut;
                        newU.FINACCES      = fin;
                        db.UTILISATEURSECTEUR.Add(newU);
                    }

                    db.SaveChanges();
                }
                TempData[Constantes.CLE_MSG_RETOUR] =
                    new Message(Message.TYPE_MESSAGE.SUCCES, Resources.Messages.SectAjoutOk);

                return(RedirectToAction("GestionSecteurs"));
            }

            return(View(model));
        }