public ActionResult Retirer(int id)
        {
            bool sauvPanierClient = Client.Id != 0 ? true : false;

            if (id < PanierViewModel.ArticlesDetailsViewModel.Count)
            {
                Article           article = new ArticleDAL().Details(PanierViewModel.ArticlesDetailsViewModel[id].Article.Id);
                PanierDAL         panierDAL;
                PanierProspectDAL panierProspectDAL;
                PanierViewModel.PrixTotalTTC = Math.Round(PanierViewModel.PrixTotalTTC - article.PrixTTC, 2);

                if (PanierViewModel.ArticlesDetailsViewModel[id].Quantite > 1)
                {
                    PanierViewModel.ArticlesDetailsViewModel[id].Quantite--;
                    PanierViewModel.ArticlesDetailsViewModel[id].PrixTotalTTC = Math.Round(PanierViewModel.ArticlesDetailsViewModel[id].PrixTotalTTC - PanierViewModel.ArticlesDetailsViewModel[id].Article.PrixTTC, 2);
                    if (sauvPanierClient)
                    {
                        panierDAL = new PanierDAL(Client.Id);
                        panierDAL.ModifierQuantite(article, -1);
                    }
                    else
                    {
                        panierProspectDAL = new PanierProspectDAL(ProspectGuid);
                        panierProspectDAL.ModifierQuantite(article, -1);
                    }
                }
                else
                {
                    PanierViewModel.ArticlesDetailsViewModel.RemoveAt(id);
                    if (sauvPanierClient)
                    {
                        panierDAL = new PanierDAL(Client.Id);
                        panierDAL.Supprimer(article);
                    }
                    else
                    {
                        panierProspectDAL = new PanierProspectDAL(ProspectGuid);
                        panierProspectDAL.Supprimer(article);
                    }
                }
                ViewBag.Panier = PanierViewModel;
            }
            return(Redirect(Request.UrlReferrer.AbsolutePath));
        }
        private void RecupererPanierProspectPuisSupprimer()
        {
            PanierProspectDAL panierProspectDAL   = new PanierProspectDAL(ProspectGuid);
            PanierViewModel   panierViewModelSauv = new PanierViewModel(panierProspectDAL.ListerPanierProspect());

            if (panierViewModelSauv != null && Client.Id != 0)
            {
                PanierDAL panierDal = new PanierDAL(Client.Id);
                foreach (ArticleViewModel article in (panierViewModelSauv).ArticlesDetailsViewModel)
                {
                    Panier panier = panierDal.ListerPanierClient().Find(pan => pan.ArticleId == article.Article.Id);
                    if (panier == null)
                    {
                        panierDal.Ajouter(article.Article, article.Quantite);
                    }
                    else
                    {
                        panierDal.ModifierQuantite(article.Article, article.Quantite);
                    }
                }
            }
            panierProspectDAL.Supprimer();
        }
        protected override void Initialize(RequestContext requestContext)
        {
            base.Initialize(requestContext);

            ActionNom     = RouteData.Values["action"].ToString();
            ControllerNom = RouteData.Values["controller"].ToString();
            MettrelUrlEnSession();

            if (Session["ClientId"] == null || (int)Session["ClientId"] == 0)
            {
                HttpCookie cookie = Request.Cookies.Get("GuidClient");
                if (cookie != null && (Client = new ClientDAL().ConnexionCookies(cookie.Value)) != null)
                {
                    ViewBag.Client      = Client;
                    Session["ClientId"] = Client.Id;
                    PanierViewModel     = new PanierViewModel(); //Todo effacer
                    AgregerPanierEnBase();
                    RecupererPanierEnBase();
                }
                else
                {
                    Session["ClientId"] = 0;
                    ViewBag.Client      = Client = new Client();
                }
            }
            else
            {
                ViewBag.Client = Client = new ClientDAL().Details((int)Session["ClientId"]);
            }

            new PanierDAL(Client.Id).SupprimerArticlesPasDansCarte();
            VisiteDAL.Enregistrer(Client.Id);
            if (Client.Id != 0)
            {
                DonnerLesDroitsdAcces();
                PanierViewModel = new PanierViewModel(new PanierDAL(Client.Id).ListerPanierClient());
            }
            else
            {
                RetirerLesDroitsdAcces();
                if (Session["ProspectGuid"] != null)
                {
                    ProspectGuid = Session["ProspectGuid"].ToString();
                }
                else
                {
                    HttpCookie cookie = Request.Cookies.Get("Prospect");
                    if (cookie != null)
                    {
                        Session["ProspectGuid"] = ProspectGuid = cookie.Value;
                        List <PanierProspect> paniers = new PanierProspectDAL(ProspectGuid).ListerPanierProspect();
                        if (paniers.Count > 0)
                        {
                            RecupererPanierEnBase();
                        }
                    }
                    else
                    {
                        string guid = Guid.NewGuid().ToString();
                        Session["ProspectGuid"] = ProspectGuid = guid;
                        cookie = new HttpCookie("Prospect")
                        {
                            Value   = guid,
                            Expires = DateTime.Now.AddDays(30)
                        };
                        Response.Cookies.Add(cookie);
                    }
                }
                new PanierProspectDAL(ProspectGuid).SupprimerArticlesPasDansCarte();
                PanierViewModel = new PanierViewModel(new PanierProspectDAL(ProspectGuid).ListerPanierProspect());
            }
            PanierViewModel.Trier();
            ViewBag.Panier = PanierViewModel;

            if (Client.AdminArticle || Client.AdminCommande || Client.AdminClient || Client.AdminPlanning)
            {
                ViewBag.MenuAdmin = true;
            }
            if (Client.AdminArticle)
            {
                ViewBag.AdminArticle = true;
            }
        }