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.");
        }
Exemple #4
0
 public async Task <SharedModels.Users> ResetujPassword([FromBody] Email_Password_Request obj)
 {
     return(await usersService.SendPasswordChange(obj));
 }
Exemple #5
0
 public async Task <SharedModels.Users> PonovoPosaljiMail([FromBody] Email_Password_Request obj)
 {
     return(await usersService.SendConfirmationEmail(obj));
 }