public ActionResult AjoutPublication(PUBLICATION envoiPubli) { if (ModelState.IsValid) { try { HttpPostedFileBase fichier = envoiPubli.fichier; string mimetype = fichier.ContentType; string nomOriginal = Fichiers.GetNomOriginal(fichier.FileName); string nomServeur = Fichiers.GetNomServeur(fichier.FileName); fichier.SaveAs(Fichiers.CheminEnvois(nomServeur)); ObjectParameter idNouvPub = new ObjectParameter("idpub", typeof(int)); db.AjouterPublication(envoiPubli.TITRE, envoiPubli.DESCRIPTION, envoiPubli.IDSECTEUR, envoiPubli.IDSUJET, nomOriginal, nomServeur, mimetype, WebSecurity.CurrentUserId, idNouvPub); List <String> motsCles = envoiPubli.TITRE.Split(new Char[] { ' ' }).ToList(); if (!String.IsNullOrEmpty(envoiPubli.motcles)) { motsCles.AddRange(envoiPubli.motcles.Split(new Char[] { ' ' })); } db.UpdateMotsClesPub((int)idNouvPub.Value, MotsCles.TraiterMotsCles(motsCles)); TempData[Constantes.CLE_MSG_RETOUR] = new Message(Message.TYPE_MESSAGE.SUCCES, Resources.Publication.publicationAjoutee); return(RedirectToAction("Publications", "Sectoriel")); } catch (Exception ex) { TempData[Constantes.CLE_MSG_RETOUR] = new Message(Message.TYPE_MESSAGE.ERREUR, Resources.Publication.publicationErreur + " (" + ex.GetType() + ")"); } } List <GetSecteurs_Result> listeSecteurs = db.GetSecteursLocalises(Session); List <GetSujetsPublication_Result> listeSujetsPub = db.GetSujetsPublicationLocalises(Session).ToList(); ViewData[Constantes.CLE_SECTEURS] = listeSecteurs; ViewData[Constantes.CLE_SUJETSPUBLICATION] = listeSujetsPub; return(View(envoiPubli)); }
public ActionResult Publications(int?secteur, int?categorie, string motscles) { List <PUBLICATION> listePubs; List <GetSecteurs_Result> listeSecteurs = db.GetSecteursLocalises(Session); List <GetSujetsPublication_Result> listeSujetsPub = db.GetSujetsPublicationLocalises(Session).ToList(); secteur = (int)Session["currentSecteur"]; listeSecteurs = listeSecteurs.Where(s => s.ID == secteur).ToList(); if (String.IsNullOrEmpty(motscles)) { if (listeSujetsPub.Any(c => c.ID == categorie)) { listePubs = db.GetPubParSujet(secteur, categorie).ToList(); } else { listePubs = db.GetPubParSecteur(secteur).ToList(); } } else { List <String> listeMotsCles = motscles.Split(new Char[] { ' ' }).ToList(); string motsClesTraites = MotsCles.TraiterMotsCles(listeMotsCles); if (listeSujetsPub.Any(c => c.ID == categorie)) { listePubs = db.GetPubParMotCle(secteur, categorie, motsClesTraites).ToList(); } else { listePubs = db.GetPubParMotCle(secteur, null, motsClesTraites).ToList(); } } ViewData[Constantes.CLE_IDSECTEUR] = secteur; ViewData[Constantes.CLE_IDCATEGORIE] = categorie ?? -1; ViewData[Constantes.CLE_SECTEURS] = listeSecteurs; ViewData[Constantes.CLE_SUJETSPUBLICATION] = listeSujetsPub; ViewData[Constantes.CLE_PUBLICATIONS] = listePubs; return(View()); }