Beispiel #1
0
        public async Task <JObject> register(RegisterJSON registerJson)
        {
            var client   = _clientFactory.CreateClient("auth");
            var response = await client.PostAsync(
                "connect/register",
                new FormUrlEncodedContent(new List <KeyValuePair <string, string> >
            {
                new KeyValuePair <string, string>("Login", registerJson.Login),
                new KeyValuePair <string, string>("Email", registerJson.Email),
                new KeyValuePair <string, string>("Password", registerJson.Password)
            }));

            var str = await response.Content.ReadAsStringAsync();

            _logger.LogInformation("Response from authServer: " + str);

            if (str.Length <= 1)
            {
                return(JObject.Parse("{\"RegisterStatus\": " + str + "}"));
            }

            var user = new User
            {
                ID_User   = str,
                Login     = registerJson.Login,
                Email     = registerJson.Email,
                Rate      = null,
                isBlocked = false,
                IDRole    = 1 //TODO: assign proper role ID
            };

            var personalData = new PersonalData
            {
                IDUser    = str,
                FirstName = registerJson.Name,
                LastName  = registerJson.Surname
            };

            await TrueHomeContext.addUser(user);

            await TrueHomeContext.addPersonalData(personalData);

            return(JObject.Parse("{\"RegisterStatus\": 1}"));
        }