Example #1
0
        public async Task <ActionResult> GetToken([FromBody] GoogleVM model)
        {
            if (model.UserName != model.Email)
            {
                return(BadRequest());
            }
            var user = await _userManager.FindByNameAsync(model.UserName);

            if (user != null)
            {
                return(new OkObjectResult(GenerateToken(user).Result));
            }
            user = await _userManager.FindByEmailAsync(model.Email);

            if (user != null)
            {
                return(BadRequest("Email has been taken"));
            }
            user = model.Adapt <MyUser>();
            user.SecurityStamp = _userManager.GenerateNewAuthenticatorKey();
            var result = await _userManager.CreateAsync(user, model.Uid);

            if (result.Succeeded)
            {
                if (model.DeviceId != null)
                {
                    user.DeviceId = model.DeviceId;
                    await _userManager.UpdateAsync(user);
                }
                return(new OkObjectResult(GenerateToken(user).Result));
            }
            else
            {
                return(BadRequest(result.Errors));
            }
        }
Example #2
0
 private async void Button_Clicked(object sender, EventArgs e)
 {
     GoogleVM.ClearPersisitance();
     await Navigation.PushModalAsync(new FacebookLoginPage());
 }
Example #3
0
 public FacebookLoginPage()
 {
     InitializeComponent();
     vm  = new GoogleVM();
     vm2 = new FacebookVM();
 }