예제 #1
0
 public void UpdateUser(User m1)
 {
     var session = NHibernateContext.SesionFactory;
     using (var transaction = session.BeginTransaction())
     {
         session.SaveOrUpdate(m1);
         transaction.Commit();
     }
 }
예제 #2
0
 public List<Contact> GetSearchedUserContacts(User user, string searchQuery)
 {
     var result = new List<Contact>();
     var session = NHibernateContext.SesionFactory;
     using (var transaction = session.BeginTransaction())
     {
         result = (List<Contact>)session.QueryOver<Contact>().Where(x => x.Name.IsLike(@"%" + searchQuery + "%") || x.Address.IsLike(@"%" + searchQuery + "%")).And(x=>x.User.UId==user.UId).List();
         transaction.Commit();
     }
     return result;
 }
예제 #3
0
 public bool CreateUser(User newUser)
 {
     User storingUser = GetUserByName(newUser.UserName);
     bool isExist = false;
     if (storingUser == null)
     {
         var session = NHibernateContext.SesionFactory;
         using (var transaction = session.BeginTransaction())
         {
             session.SaveOrUpdate(newUser);
             transaction.Commit();
             isExist = true;
         }
     }
     return isExist;
 }
예제 #4
0
        public Contact GetUserContactById(User use,int id)
        {
            IList<Contact> Contact = new List<Contact>();

            // create our NHibernate session factory
            var session = NHibernateContext.Session;

                // populate the database
                using (var transaction = session.BeginTransaction())
                {
                    Contact = session.Get<User>(use.UId).ContactsList;
                    transaction.Commit();
                }

            return Contact.First(x=>x.Id==id);
        }
예제 #5
0
        public ActionResult Create(Contact newContact)
        {
            aCookie = Request.Cookies["loginCookie"];
            if (aCookie != null)
            {

                if (ModelState.IsValid)
                {
                    UserName = Server.HtmlEncode(aCookie.Value);
                    user = userRepo.GetUserByName(UserName);

                    user.ContactsList.Add(newContact);
                    userRepo.UpdateUser(user);
                    return RedirectToAction("Index");
                }
                return View(newContact);
            }
            return RedirectToAction("Index", "Home");
        }
예제 #6
0
        public void UpdateUser(User m1)
        {
            var session = NHibernateContext.Session;

                // populate the database
                using (var transaction = session.BeginTransaction())
                {
                    session.Update(m1);

                    transaction.Commit();
                }

            //replace existing record with this in DB table
        }
예제 #7
0
        public ActionResult Delete(int id, Contact newContact)
        {
            aCookie = Request.Cookies["loginCookie"];
            if (aCookie != null)
            {
                UserName = Server.HtmlEncode(aCookie.Value);
                user = userRepo.GetUserByName(UserName);
                var contactList = user.ContactsList;
                contactList.Remove(contactList.SingleOrDefault(x => x.Id == newContact.Id));

                userRepo.UpdateUser(user);
                return RedirectToAction("Index");
            }
            return RedirectToAction("Index", "Home");
        }
예제 #8
0
 public ActionResult Search(ContactSearch newContact)
 {
     aCookie = Request.Cookies["loginCookie"];
     if (aCookie != null)
     {
         var searchList = new List<Contact>();
         if (ModelState.IsValid)
         {
             UserName = Server.HtmlEncode(aCookie.Value);
             user = userRepo.GetUserByName(UserName);
             searchList = userRepo.GetSearchedUserContacts(user,newContact.SearchQuery);
             newContact.UserList = searchList;
             return View(newContact);
         }
         else
         {
             newContact.UserList = searchList;
             return View(newContact);
         }
     }
     return RedirectToAction("Index", "Home");
 }
예제 #9
0
 //
 // GET: /Contact/
 public ActionResult Index()
 {
     aCookie = Request.Cookies["loginCookie"];
     if (aCookie != null)
     {
         UserName = Server.HtmlEncode(aCookie.Value);
         user = userRepo.GetUserByName(UserName);
         var model = user.ContactsList;
         return View(model);
     }
     return RedirectToAction("Index", "Home");
 }
예제 #10
0
 public ActionResult Edit(int id, Contact newContact)
 {
     aCookie = Request.Cookies["loginCookie"];
     if (aCookie != null)
     {
         if (ModelState.IsValid)
         {
             UserName = Server.HtmlEncode(aCookie.Value);
             user = userRepo.GetUserByName(UserName);
             newContact.User = user;
             var cr = new ContactRepo();
             cr.UpdateContact(id,newContact);
             return RedirectToAction("Index");
         }
         else
         {
             return View(userRepo.GetUserContactById(id));
         }
     }
     return RedirectToAction("Index", "Home");
 }
예제 #11
0
 //
 // GET: /Contact/DeleteAll
 public ActionResult DeleteAll()
 {
     aCookie = Request.Cookies["loginCookie"];
     if (aCookie != null)
     {
         UserName = Server.HtmlEncode(aCookie.Value);
         user = userRepo.GetUserByName(UserName);
         user.ContactsList=new List<Contact>();
         userRepo.UpdateUser(user);
         return RedirectToAction("Index");
     }
     return RedirectToAction("Index", "Home");
 }
예제 #12
0
        public ActionResult Register(User model)
        {
            if (ModelState.IsValid)
            {
                bool stat = repo.CreateUser(model);

                if (stat)
                {
                    FormsAuthentication.SetAuthCookie(model.UserName, false);

                    HttpCookie myCookie = new HttpCookie("loginCookie");
                    // Set the cookie value.
                    myCookie.Value = model.UserName;
                    Response.Cookies.Add(myCookie);

                    return RedirectToAction("Index", "Home");
                }
                ModelState.AddModelError("", "User name already exists. Please enter a different user name.");
            }

            return View(model);
        }