public ActionResult Registration(UnknownUser unUser)
        {
            if (db.Users.FirstOrDefault(u => (u.Nickname == unUser.Nickname)) != null)
            {
                return(ErrorView("Пользователь с таким логином уже существует"));
            }

            if (db.Users.FirstOrDefault(u => (u.Email == unUser.Email)) != null)
            {
                return(ErrorView("Пользователь с такой почтой уже существует"));
            }

            if (String.Compare(unUser.Password, unUser.RepeatPassword, false) != 0)
            {
                return(ErrorView("Неправильно введён пароль"));
            }

            unUser.Role = UserRole.CLIENT;
            User currentUser = unUser.ToUser();

            db.Users.Add(currentUser);
            db.SaveChanges();

            Session["User"]      = currentUser;
            ViewBag.SelectedUser = currentUser;
            ViewBag.User         = currentUser;
            return(View("PersonalArea"));
        }
예제 #2
0
        public User GetUserID(string userID)
        {
            User   user = new UnknownUser();
            MMData d    = new MMData();

            try {
                DataSet x = d.GetStProcDataSet(MMWebSiteConstants.DatabaseName(), SelectUser + "WHERE (U_ID = cast( @aID as int ))",
                                               new StProcParam[] { new StProcParam("@aID", DbType.String, userID) });
                if ((x.Tables.Count == 1) & (x.Tables[0].Rows.Count == 1))
                {
                    user = BuildUserFromRow(x.Tables[0].Rows[0]);
                }
            }  catch { }
            return(user);
        }
예제 #3
0
        public User GetUser(string userName)
        {
            User   user = new UnknownUser();
            MMData d    = new MMData();

            try {
                DataSet x = d.GetStProcDataSet(MMWebSiteConstants.DatabaseName(), SelectUser + " WHERE (U_Login = @aLogin) and (U_IsActive=1)",
                                               new StProcParam[] { new StProcParam("@aLogin", DbType.AnsiString, userName) });
                if ((x.Tables.Count == 1) & (x.Tables[0].Rows.Count == 1))
                {
                    user = BuildUserFromRow(x.Tables[0].Rows[0]);
                }
            } catch { }
            return(user);
        }
        public ActionResult Authorization(UnknownUser unUser)
        {
            User user = db.Users.FirstOrDefault(u => (u.Email == unUser.Email));

            if (user == null)
            {
                return(ErrorView("Пользователь с такой почтой не найден"));
            }

            byte[] inputPas = Encoding.Unicode.GetBytes(unUser.Password);
            SHA1   sha      = new SHA1CryptoServiceProvider();

            inputPas = sha.ComputeHash(inputPas);
            if (!inputPas.SequenceEqual(user.Password))
            {
                return(ErrorView("Вы ввели неверный пароль"));
            }

            Session["User"]      = user;
            ViewBag.User         = user;
            ViewBag.SelectedUser = user;

            return(View("PersonalArea"));
        }