public async Task <SharedModels.Users> SendConfirmationEmail(Email_Password_Request obj) { var user = await usermanager.FindByEmailAsync(obj.Email); if (user != null && !user.EmailConfirmed) { try { var token = await usermanager.GenerateEmailConfirmationTokenAsync(user); mailservis.PosaljiKonfirmacijskiMejl(token, user.Email, "api"); var i = db.Igraci.Find(user.Id); return(mapper.Map <SharedModels.Users>(i)); } catch (Exception) { throw new UserException("Došlo je do greške prilikom slanja mejla, pokušajte opet"); } } else { throw new UserException("Korisnik ne postoji u bazi ili je mail vec potvrdjen."); } }
public async Task <SharedModels.Users> PosaljiMailZaPassword(Email_Password_Request obj) { var url = $"{APIUrl}/{Resurs}/password"; try { var rezult = await url.PostJsonAsync(obj).ReceiveJson <SharedModels.Users>(); return(rezult); } catch (FlurlHttpException ex) { var errori = GetErrore(ex).Result; await Application.Current.MainPage.DisplayAlert("Greška", errori, "OK"); return(default(SharedModels.Users)); } }
public async Task <SharedModels.Users> SendPasswordChange(Email_Password_Request obj) { var user = await usermanager.FindByEmailAsync(obj.Email); if (user != null && user.EmailConfirmed) { var token = await usermanager.GeneratePasswordResetTokenAsync(user); try { mailservis.PosaljiResetPassword(token, obj.Email, "api"); var i = db.Igraci.Find(user.Id); return(mapper.Map <SharedModels.Users>(i)); } catch (Exception) { throw new UserException("Došlo je do greške prilikom slanja mejla. Pokušajte ponovo"); } } throw new UserException("Korisnik ne postoji ili nije povrdio mail."); }
public async Task <SharedModels.Users> ResetujPassword([FromBody] Email_Password_Request obj) { return(await usersService.SendPasswordChange(obj)); }
public async Task <SharedModels.Users> PonovoPosaljiMail([FromBody] Email_Password_Request obj) { return(await usersService.SendConfirmationEmail(obj)); }