public async Task <IActionResult> Edit(Guid id, [Bind("Id,Firstname,Lastname,Password,Type,email,Active")] UniversityUser universityUser)
        {
            if (id != universityUser.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    universityUser.Active = true;
                    _context.Update(universityUser);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UniversityUserExists(universityUser.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(universityUser));
        }
        public async Task <IActionResult> Edit(int id, [Bind("UniversityId,FirstName,Surname,Profile")] UniversityUser universityUser)
        {
            if (id != universityUser.UniversityId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(universityUser);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UniversityUserExists(universityUser.UniversityId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(universityUser));
        }
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            var account = _context.UniversityUsers.FirstOrDefault(x => x.email == model.Email);

            if (ModelState.IsValid && account == null)
            {
                UniversityUser universityUser = new UniversityUser();
                universityUser.Id        = Guid.NewGuid();
                universityUser.Firstname = model.FirstName;
                universityUser.Lastname  = model.LastName;
                universityUser.email     = model.Email;
                universityUser.Password  = model.Password;
                universityUser.Type      = "student";
                universityUser.Active    = false;
                _context.Add(universityUser);
                await _context.SaveChangesAsync();

                _emailService.SendMail(model.Email, "http://" + HttpContext.Request.GetUri().Authority + "/UniversityUsers/ActivateUser/" + universityUser.Id);
                return(RedirectToAction("Login", "Account"));
            }
            else
            {
                if (account != null)
                {
                    ModelState.AddModelError("Email", "Email already exist ");
                }
            }

            // If we got this far, something failed, redisplay form
            return(View(model));
        }
Beispiel #4
0
        public async Task<ActionResult> Register(RegisterViewModel rvm)
        {
            if(ModelState.IsValid)
            {
                var user = new UniversityUser() { UserName = rvm.Username, Email = rvm.Email };
                var createUserResult = await _userManager.CreateAsync(user, rvm.Password);
            }

            return View();
        }
        public async Task <IActionResult> Create([Bind("UniversityId,FirstName,Surname,Profile")] UniversityUser universityUser)
        {
            if (ModelState.IsValid)
            {
                _context.Add(universityUser);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(universityUser));
        }
        public async Task <IActionResult> Create([Bind("Id,Firstname,Lastname,Password,Type,email")] UniversityUser universityUser)
        {
            if (ModelState.IsValid)
            {
                universityUser.Id = Guid.NewGuid();
                _context.Add(universityUser);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(universityUser));
        }
        // GET: Account/UserPage
        public async Task <IActionResult> UserPage()
        {
            UniversityUser universityUser = await _context.UniversityUsers.FirstOrDefaultAsync(
                x => x.email == HttpContext.Session.GetString("Email"));

            if (ModelState.IsValid && universityUser != null)
            {
                UserPageViewModel model = new UserPageViewModel
                {
                    FirstName = universityUser.Firstname,
                    LastName  = universityUser.Lastname
                };

                return(View(model));
            }

            return(RedirectToAction("UserPage", "Account"));
        }
        public async Task <ActionResult> UserPage(UserPageViewModel model)
        {
            UniversityUser universityUser = await _context.UniversityUsers.FirstOrDefaultAsync(
                x => x.email == HttpContext.Session.GetString("Email"));

            if (!string.IsNullOrEmpty(model.Password))
            {
                if (universityUser.Password == model.OldPassword && ModelState.IsValid)
                {
                    universityUser.Password = model.Password;
                }
                else
                {
                    return(RedirectToAction("UserPage", "Account"));
                }
            }
            else
            {
                ModelState.Remove("Password");
                ModelState.Remove("ConfirmPassword");
                ModelState.Remove("OldPassword");
            }

            if (ModelState.IsValid && universityUser != null)
            {
                universityUser.Firstname = model.FirstName;
                universityUser.Lastname  = model.LastName;

                _context.Update(universityUser);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index", "Home"));
            }

            return(RedirectToAction("UserPage", "Account"));
        }