// GET: Soins /// <summary> /// Action menant à la carte des soins, l'utilisateur peut les consulter, et quand il y en a un qui lui plaît, /// il peut le sélectionner et aller le réserver dans la view de la réservation, avec ce soin déjà pré-selectionné. /// Les soins sont stockés en base avec leur image correspondante (ajoutable en backoffice par un admin) /// </summary> /// <returns></returns> public ActionResult Index() { //Appel service pour obtenir la liste des soins à afficher : SoinsViewModel soinsVM = new SoinsViewModel(); var soins = SoinServiceProxy.Instance().ObtenirSoins(!User.IsInRole("admin")); soinsVM.Soins = new List <SoinViewModel>(); foreach (var soin in soins) { soinsVM.Soins.Add(new SoinViewModel() { EstSelectionne = false, Soin = soin }); } return(View(soinsVM)); }
public ActionResult Index(SoinsViewModel soinsVM) { // Remise à 0 de ChoixSoin : List <Soin> choixSoins = new List <Soin>(); // Déterminer les soins sélectionnés : if (soinsVM.Soins != null && soinsVM.Soins.Count > 0) { System.Web.HttpContext.Current.Session["ChoixSoins"] = choixSoins; // Remise à 0 de Mon créneau : System.Web.HttpContext.Current.Session["MonCreneau"] = null; // Si la date n'a pas encore été définie : if (System.Web.HttpContext.Current.Session["DateCalendrier"] == null) { System.Web.HttpContext.Current.Session["DateCalendrier"] = DateTime.Now.Date; } // Rmq : Si on clique sur suivant, on se base sur la date mise à now ici. // on se fait en suite rediriger ici, et on s'assure de ne pas réécraser la date. foreach (var soinVM in soinsVM.Soins) { if (soinVM.EstSelectionne) { choixSoins.Add(soinVM.Soin); } } } if (choixSoins.Count == 0) { return(Redirect("~/Soins/Index/")); } // Si ChoixSoins a été valorisé : on le valorise dans l'HttpContext de la session : System.Web.HttpContext.Current.Session["ChoixSoins"] = choixSoins; return(View(choixSoins)); }