示例#1
0
        /// Supprimer un produit de tous les favoris
        public static bool DeleteByProduitId(int pProdId)
        {
            bool retour = false;

            if (pProdId > 0 && pIdQuiSupprime > 0)
            {
                using (MontRealEstateEntities db = new MontRealEstateEntities())
                {
                    List <FavorisUtilisateur> favorisUtilisateur = GetByProduitId(pProdId, db);
                    if (favorisUtilisateur != null && favorisUtilisateur.Count > 0)
                    {
                        foreach (FavorisUtilisateur fu in favorisUtilisateur)
                        {
                            fu.EstSupprime      = true;
                            fu.DateModification = DateTime.Now;
                            Outils.ConnectWebSecurity();
                            fu.ModifiePar = WebSecurity.CurrentUserId;
                        }
                        db.SaveChanges();
                        retour = true;
                    }
                }
            }
            return(retour);
        }
示例#2
0
        //==========INSERTS ET UPDATES=================//

        public static void Save(FavorisUtilisateur pModel)
        {
            using (MontRealEstateEntities db = new MontRealEstateEntities())
            {
                FavorisUtilisateur FavorisModifier = GetById(pModel.UtilisateurId, pModel.ProduitId, db);
                //modification
                if (FavorisModifier != null)
                {
                    Outils.ConnectWebSecurity();
                    FavorisModifier.DateModification = DateTime.Now;
                    FavorisModifier.ModifiePar       = WebSecurity.CurrentUserId;
                }
                else
                { //add
                    pModel.DateCreation     = DateTime.Now;
                    pModel.DateModification = DateTime.Now;
                    Outils.ConnectWebSecurity();
                    pModel.ModifiePar  = WebSecurity.CurrentUserId;
                    pModel.EstSupprime = false;
                    db.FavorisUtilisateurs.AddObject(pModel);
                }
                //enregistrer les modifications
                db.SaveChanges();
            }
        }
示例#3
0
        public static Boolean SaveCategorieProduit(CategoriesProduit pModel)
        {
            using (MontRealEstateEntities db = new MontRealEstateEntities())
            {
                //Option lorsque certain champs ne doit pas etre updatés
                if (pModel.Id > 0)
                {
                    CategoriesProduit modelToSave = CategoriesProduit.GetByCategorieId(pModel.Id, db);
                    modelToSave.Description      = pModel.Description;
                    modelToSave.DateCreation     = pModel.DateCreation;
                    modelToSave.CreePar          = pModel.CreePar;
                    modelToSave.DateModification = pModel.DateModification;
                    modelToSave.ModifiePar       = pModel.ModifiePar;
                    modelToSave.EstSupprime      = pModel.EstSupprime;
                }
                else
                {
                    Outils.ConnectWebSecurity();
                    pModel.ModifiePar = WebSecurity.CurrentUserId;
                    pModel.CreePar    = WebSecurity.CurrentUserId;
                    db.CategoriesProduits.AddObject(pModel);
                }
                db.SaveChanges();
            }

            return(true);
        }
示例#4
0
        public static void SaveUserProfileAndRole(Utilisateur pModel, UserRole role)
        {
            try
            {
                Outils.ConnectWebSecurity();//initialiser la connection
                WebSecurity.CreateUserAndAccount(pModel.Courriel, pModel.MotDePasse);
                int userId = WebSecurity.GetUserId(pModel.Courriel);
                pModel.UserProfileId = userId;
                //ajouter le role pour le user
                string roleFinal = null;
                if (role == UserRole.ADMIN)
                {
                    roleFinal = "Admin";
                }
                else if (role == UserRole.USER)
                {
                    roleFinal = "User";
                }

                Roles.AddUserToRole(pModel.Courriel, roleFinal);
            }
            catch (MembershipCreateUserException e)
            {
                throw e;
            }
        }
示例#5
0
        /// Supprimer tous les commentaires d'un produit
        public static bool DeleteByProduitId(int pProdId)
        {
            bool retour = false;

            if (pProdId > 0)
            {
                using (MontRealEstateEntities db = new MontRealEstateEntities())
                {
                    List <CommentairesProduit> ListCommentairesProd = GetByProduitId(pProdId, db);
                    if (ListCommentairesProd != null && ListCommentairesProd.Count > 0)
                    {
                        foreach (CommentairesProduit cp in ListCommentairesProd)
                        {
                            cp.EstSupprime      = true;
                            cp.DateModification = DateTime.Now;
                            Outils.ConnectWebSecurity();
                            cp.ModifiePar = WebSecurity.CurrentUserId;
                        }
                        db.SaveChanges();
                        retour = true;
                    }
                }
            }
            return(retour);
        }
示例#6
0
        public static Boolean SaveProduit(Produit pModel)
        {
            bool estModifie;

            using (MontRealEstateEntities db = new MontRealEstateEntities())
            {
                //Option lorsque certain champs ne doit pas etre updatés
                if (pModel.Id > 0)
                {
                    Produit modelToSave = Produit.GetById(pModel.Id, db);
                    modelToSave.CategorieProduitId = pModel.CategorieProduitId;
                    modelToSave.UtilisateurId      = pModel.UtilisateurId;
                    modelToSave.Nom         = pModel.Nom;
                    modelToSave.Description = pModel.Description;
                    modelToSave.PrixParJour = pModel.PrixParJour;
                    modelToSave.Adresse     = pModel.Adresse;
                    modelToSave.Ville       = pModel.Ville;
                    modelToSave.Province    = pModel.Province;
                    modelToSave.Pays        = pModel.Pays;
                    modelToSave.CodePostal  = pModel.CodePostal;
                    // modelToSave.DerniereDateLocation = pModel.DerniereDateLocation;
                    modelToSave.NbMaxPersonnes   = pModel.NbMaxPersonnes;
                    modelToSave.NbChambres       = pModel.NbChambres;
                    modelToSave.SejourMinimum    = pModel.SejourMinimum;
                    modelToSave.NbChambres       = pModel.NbPhotosMax;
                    modelToSave.DateModification = DateTime.Now;
                    Outils.ConnectWebSecurity();
                    modelToSave.ModifiePar = WebSecurity.CurrentUserId;
                    estModifie             = true;
                }
                else
                {
                    //logique suplementaire dans le cas d'un New
                    Outils.ConnectWebSecurity();
                    pModel.UtilisateurId    = WebSecurity.CurrentUserId;
                    pModel.DateCreation     = DateTime.Now;
                    pModel.DateModification = DateTime.Now;
                    pModel.CreePar          = WebSecurity.CurrentUserId;
                    pModel.ModifiePar       = WebSecurity.CurrentUserId;
                    pModel.Actif            = true;
                    pModel.NbPhotosMax      = 6;
                    db.Produits.AddObject(pModel);
                    estModifie = false;
                }
                db.SaveChanges();
                FonctionnalitesProduit.SaveFonctionnaliteProduit(pModel.FonctionnalitesProduit);
                foreach (NotesProduit note in pModel.NotesProduits)
                {
                    NotesProduit.Save(note);
                }

                foreach (PhotosProduit photo in pModel.PhotosProduits)
                {
                    PhotosProduit.SavePhotoProduit(photo);
                }
            }

            return(true);
        }
示例#7
0
 public static void Delete(int id)
 {
     using (MontRealEstateEntities db = new MontRealEstateEntities())
     {
         CategoriesProduit modelToDelete = CategoriesProduit.GetByCategorieId(id, db);
         Outils.ConnectWebSecurity();
         modelToDelete.ModifiePar  = WebSecurity.CurrentUserId;
         modelToDelete.EstSupprime = true;
         db.SaveChanges();
     }
 }
示例#8
0
        public ActionResult Login(LoginModel pModel)
        {
            Outils.ConnectWebSecurity();
            //tester si le user est actif d'abbord
            int idUser = WebSecurity.GetUserId(pModel.UserName);

            //user existe
            if (idUser > 0)
            {
                Utilisateur user = Utilisateur.GetProfileById(idUser);
                if (user != null)//user active
                {
                    bool connecte = WebSecurity.Login(pModel.UserName, pModel.Password);
                    if (connecte)
                    {
                        if (Roles.IsUserInRole("Admin"))
                        {
                            return(RedirectToAction("", ""));//admin connecte
                        }
                        else
                        {
                            return(RedirectToAction("Index", "Produit"));//user connecte
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("", "Mot de Passe ou Courriel incorrect");
                        return(View(pModel));
                    }
                }
                else
                {
                    ModelState.AddModelError("", "User Inactive");
                    return(View(pModel));
                }
            }
            else
            {
                ModelState.AddModelError("", "User Inexistent");
                return(View(pModel));
            }
        }
示例#9
0
        //==========DELETES=================//

        /// Supprimer un faboris specifique
        public static bool DeleteById(int pUserId, int pProdId)
        {
            bool retour = false;

            if (pUserId > 0 && pProdId > 0 && pIdQuiSupprime > 0)
            {
                using (MontRealEstateEntities db = new MontRealEstateEntities())
                {
                    FavorisUtilisateur favsUtilisaeur = GetById(pUserId, pProdId, db);
                    if (favsUtilisaeur != null)
                    {
                        favsUtilisaeur.EstSupprime      = true;
                        favsUtilisaeur.DateModification = DateTime.Now;
                        Outils.ConnectWebSecurity();
                        favsUtilisaeur.ModifiePar = WebSecurity.CurrentUserId;
                        db.SaveChanges();
                        retour = true;
                    }
                }
            }
            return(retour);
        }
示例#10
0
        //==========DELETES=================//


        /// Supprimer tous les commentaires d'un produit
        public static bool DeleteById(int pComId)
        {
            bool retour = false;

            if (pComId > 0)
            {
                using (MontRealEstateEntities db = new MontRealEstateEntities())
                {
                    CommentairesProduit commentairesProd = GetById(pComId, db);
                    if (commentairesProd != null)
                    {
                        commentairesProd.EstSupprime      = true;
                        commentairesProd.DateModification = DateTime.Now;
                        Outils.ConnectWebSecurity();
                        commentairesProd.ModifiePar = WebSecurity.CurrentUserId;
                        db.SaveChanges();
                        retour = true;
                    }
                }
            }
            return(retour);
        }