Ejemplo n.º 1
0
        private async void LoginExecute(Object obj)
        {
            ErrorMessage = String.Empty;
            CAuthToken authToken = null;

            try
            {
                var authorizationProvider = new CAuthorizationProvider();
                var result = await Task.Run(() => authorizationProvider.TryAuthorize(Login, Password, out authToken));

                if (!result)
                {
                    ErrorMessage = "Login or Password incorrect";
                    return;
                }
            }
            catch (Exception e)
            {
                ErrorMessage = "Authorization on Main service failed";
                return;
            }

            try
            {
                Boolean loginResult =
                    GameChoiceProvider.Instance.Service.LogIn(authToken.Login, authToken.Id, out CPlayer player);
                CAuthController.Instance.SetUser(player);
            }
            catch (Exception exception)
            {
                ErrorMessage = "Authorization on Game server failed";
                return;
            }
            CNavigator.Instance.NavigateTo(EPageType.Main);
        }
Ejemplo n.º 2
0
        public Boolean TryAuthorize(String login, String password, out CAuthToken token)
        {
            var authData = new CAuthorizationData(login, password);
            HttpResponseMessage response = SHelper.PostRaw("api/Authorization/Login", authData);

            if (response.IsSuccessStatusCode && response.StatusCode == HttpStatusCode.OK)
            {
                String result = response.Content.ReadAsStringAsync().Result;
                token = JsonConvert.DeserializeObject <CAuthToken>(result);
                return(true);
            }

            token = null;
            return(false);
        }
Ejemplo n.º 3
0
        public Boolean TryAuthorize(String login, String password, out CAuthToken token)
        {
            token = null;
            String normalizedLogin = login.ToUpper();
            String passwordHash    = GetHash(password);

            using (var context = new CLoginServiceContext())
            {
                CUser user =
                    context.Users.SingleOrDefault(u => u.Login == normalizedLogin && u.Password == passwordHash);
                if (user != null)
                {
                    token = new CAuthToken()
                    {
                        Id    = user.Id,
                        Login = user.Login
                    };
                    return(true);
                }
            }

            return(false);
        }