Пример #1
0
        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));
        }
Пример #2
0
        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());
        }