Пример #1
0
        // Retrieve data from user input
        public ActionResult Registration(UserModels user)
        {
            if (ModelState.IsValid) // Check for valid ModelState
            {
                try
                {
                    GDbContext db = new GDbContext();                                                 // Establish connection to the database
                    user.USER_PASSWORD_SALT = GenerateSalt();                                         // Generate password salt
                    user.USER_PASSWORD      = Hash(Encoding.ASCII.GetBytes(user.USER_PASSWORD),
                                                   Encoding.ASCII.GetBytes(user.USER_PASSWORD_SALT)); // Hash password with password salt

                    db.User.Add(user);                                                                // Add user to the datebase
                    db.SaveChanges();                                                                 // Save changes to the database
                    return(RedirectToAction("Login"));                                                // Redirect to login page
                } catch (Exception)                                                                   // Catch unique constraint violation for email
                {
                    user.USER_PASSWORD = string.Empty;                                                // Clear password
                    ModelState.AddModelError(string.Empty, "This email is already in use.");
                    return(View(user));
                }
            }
            else
            {
                return(View(user));
            }
        }
        public ActionResult UserDelete(int id)
        {
            GDbContext db = new GDbContext(); // Establish connection to database

            // Retrieve user from database
            UserModels user = db.User.SingleOrDefault(u => u.USER_ID == id) as UserModels;

            if (user == null) // Return error if user isn't found
            {
                return(HttpNotFound());
            }

            if (ModelState.IsValid)                   // Check for valid ModelState
            {
                user.DELETE_STAT = !user.DELETE_STAT; // Soft delete or undelete based on current status
                db.SaveChanges();                     // Save changes to datebase

                return(RedirectToAction("UserList")); // Return updated user list page
            }

            return(View(user)); // Returns view, should not occur
        }
        public ActionResult HotelDelete(int id)
        {
            GDbContext db = new GDbContext(); // Establish connection to database

            // Retrieve hotel from database
            Hotels hotel = db.Hotel.SingleOrDefault(h => h.HOTEL_ID == id) as Hotels;

            if (hotel == null) // Return error if hotel isn't found
            {
                return(HttpNotFound());
            }

            if (ModelState.IsValid)                     // Check for valid ModelState
            {
                hotel.DELETE_STAT = !hotel.DELETE_STAT; // Soft delete or undelete based on current status
                db.SaveChanges();                       // Save changes to datebase

                return(RedirectToAction("HotelList"));  // Return to hotel list
            }

            return(View(hotel)); // Returns view, should not occur
        }