Exemplo n.º 1
0
        public RegisterUserResult RegisterChatUser(string chatUserName, string password)
        {
            IChatData chatData = new StaticChatData();

            var result = new RegisterUserResult();

            if (chatData.IsUserWithGivenNameExist(chatUserName))
            {
                result.ServiceMessage = "Пользователь с таким именем уже существует.\\nПопробуйте другое имя.";
                result.RedirectUrl    = "#/register";
                return(result);
            }

            try {
                chatData.AddChatUser(
                    new ChatUser(
                        chatData.GetIdForNewUser(),
                        chatUserName,
                        password
                        )
                    );
            } catch (Exception) {
                if (!chatData.IsUserWithGivenNameExist(chatUserName))
                {
                    result.ServiceMessage = "При регистрации пользователя произошла ошибка.\\nПопробуйте ещё раз.";
                    result.RedirectUrl    = "#/register";
                    return(result);
                }
            }

            result.ServiceMessage = "Пользователь успешно зарегистрирован.\\n"
                                    + "Введите указанные данные для входа в чат.";
            result.RedirectUrl = "#/login";
            return(result);
        }
Exemplo n.º 2
0
 public ActionResult Index()
 {
     if (User.Identity.IsAuthenticated)
     {
         IChatData chatData  = new StaticChatData();
         var       viewModel = new ChatIndexViewModel(this.User.Identity.Name, chatData.ChatMessages);
         return(View(viewModel));
     }
     return(View((ChatIndexViewModel)null));
 }
Exemplo n.º 3
0
        public ActionResult LogIn(string chatUserName, string password)
        {
            IChatData chatData = new StaticChatData();

            bool isAuth = chatData.AuthenticateUser(chatUserName, password);

            if (isAuth)
            {
                FormsAuthentication.SetAuthCookie(chatUserName, false);
                return(Redirect("/"));
            }
            else
            {
                TempData["message"] = "Неверное имя пользователя или пароль.";
                return(Redirect("#/login"));
            }
        }