Ejemplo n.º 1
0
        public async Task <IActionResult> RegisterShop(RegisterShopViewModel form)
        {
            if (!ModelState.IsValid)
            {
                return(View(form));
            }
            try
            {
                if (String.IsNullOrEmpty(form.UserName))
                {
                    ModelState.AddModelError("Username", "Bitte eine E-Mail Adresse angeben.");
                    return(View(form));
                }

                var email = form.UserName.Trim().Replace(" ", "").ToLower();
                var store = await _context.TblStores.FirstOrDefaultAsync(a => a.EMail.ToLower() == email && a.Activated);

                if (store != null)
                {
                    ModelState.AddModelError("Username", "Diese E-Mail existiert bereits im System.");
                    return(View(form));
                }

                RestAccess ra = new RestAccess(Constants.ServiceClientEndPointWithApiPrefix);
                await ra.RegisterShop(new ExShopRegistration { EMail = email });

                ViewBag.Message = "Danke! Um die Registrierung abzuschließen überprüfe bitte deinen Posteingang!";
                return(View("Message"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("Password", ex.Message);
                return(View(form));
            }
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> ForgotPasswordShop(RegisterShopViewModel form)
        {
            if (!ModelState.IsValid)
            {
                return(View(form));
            }

            try
            {
                if (String.IsNullOrEmpty(form.UserName))
                {
                    ModelState.AddModelError("Username", "Bitte eine E-Mail Adresse angeben.");
                    return(View(form));
                }

                var email = form.UserName?.Trim().Replace(" ", "").ToLower();

                RestAccess ra = new RestAccess(Constants.ServiceClientEndPointWithApiPrefix);
                await ra.ForgotPasswordShop(new ExShopForgotPassword { EMail = email, Step = EnumShopForgotPassword.Step1 });

                var store = await _context.TblStores.FirstOrDefaultAsync(a => a.EMail.ToLower() == email && a.Activated);

                if (store == null)
                {
                    ModelState.AddModelError("Username", "Diese E-Mail existiert nicht im System.");
                    return(View(form));
                }

                if (!store.Activated)
                {
                    await ra.RegisterShop(new ExShopRegistration { EMail = email });
                }

                TempData["message"] = "Bitte überprüfe deinen Posteingang. Dir wurde ein Bestätigungs-Link zugesandt.";

                return(RedirectToAction("LogInShop"));
            }
            catch (Exception e)
            {
                ModelState.AddModelError("Username", "Unbekannter Fehler. Bitte versuche es in wenigen Minuten erneut.");
                return(View(form));
            }
        }