Example #1
0
        public ActionResult Edit(int alertId)
        {
            IAlerte        alert   = Data.AlerteDataAccess.GetAlert(alertId);
            AlerteViewData alertVD = new AlerteViewData();

            alertVD.Load(alert);
            return(View(alertVD));
        }
Example #2
0
        public ActionResult Index(int?index)
        {
            //Affichage de toutes les alertes
            //possibilité de supprimer et éditer
            int            idx      = index ?? 0;
            AlerteViewData viewData = new AlerteViewData();

            viewData.Alertes = CurrentUser.Alertes.ToPagedList(idx);
            return(View(viewData));
        }
Example #3
0
        public ActionResult Create(AlerteViewData alerteViewData)
        {
            //Editer et Créer une alerte

            int?     paysId    = alerteViewData.paysArrive;
            DateTime?dateDebut = alerteViewData.dateDebut;
            //DateTime? dateFin = newAlerte.dateFin;
            int      moisFin = alerteViewData.moisFin ?? 0;
            int      moisDebut = alerteViewData.moisDebut ?? 0;
            int?     nbJours = alerteViewData.nbJours;// ?? 0;
            DateTime?periodeFin = null, periodeDeb = null;
            IPays    pays        = null;
            string   villeArrive = (alerteViewData.villeArrive.Trim().IsNullOrEmpty())? null : alerteViewData.villeArrive.Trim();

            if (moisDebut > 0 && moisFin < 1)
            {
                this.ModelState.AddModelError("moisFin", "Vous devez spécifier le mois de fin de période");
            }
            if (moisDebut > 0 && moisFin > 0)
            {
                int year = DateTime.Today.Year;

                periodeDeb = new DateTime(year, moisDebut, 1);
                if (moisFin < moisDebut)
                {
                    year++;                                    // si le mois de fin avant mois de début sa avance a l'année d'apres
                }
                periodeFin = new DateTime(year, moisFin++, 1); //au 1er du mois d'apres
            }


            if (paysId != null)
            {
                pays = Data.PaysDataAccess.GetPays(paysId.Value);
                if (pays == null)
                {
                    this.ModelState.AddModelError("paysArrive", "Le pays spécifié n'a pas été trouvé.");
                }
            }

            if (dateDebut == null && nbJours < 1)
            {
                this.ModelState.AddModelError("dateDebut", "Vous devez spécifier une date de départ ou un nombre de jour");
            }


            if (this.ModelState.IsValid)
            {
                //Insertion de l'alerte
                //TODO: Mettre l'insertion de l'alerte en fonction??

                IAlerte newAlert = Data.AlerteDataAccess.Create();
                newAlert.IdPays          = paysId;
                newAlert.NbJours         = nbJours;
                newAlert.UserId          = this.CurrentUserId;
                newAlert.PeriodeDebut    = periodeDeb;
                newAlert.PeriodeFin      = periodeFin;
                newAlert.DateDebutProjet = dateDebut;
                newAlert.VilleArrive     = villeArrive;

                newAlert.DateDernierEnvoi = this.CurrentUser.AccountCreationDate;//initialisation à la date de création du compte
                newAlert.DateCreation     = DateTime.Now;

                Data.AlerteDataAccess.InsertAlerte(newAlert);
                return(RedirectToAction("CreateSuccess")); //View("CreateSuccess");
            }

            return(View(alerteViewData));
        }