Exemplo n.º 1
0
        public ActionResult RegisterAdmin(int id)
        {
            var instituicao = contexto.Instituicoes.Find(id);
            if (!AcessoPermitido(instituicao))
                return RedirectToAction("Index", "Home");

            RegisterModel model = new RegisterModel()
            {
                IdInstituicao = id,
                AccountType = AccountsType.Admin
            };

            return View("Register", model);
        }
Exemplo n.º 2
0
 public ActionResult RegisterSuper()
 {
     RegisterModel model = new RegisterModel();
     model.AccountType = AccountsType.Super;
     return View("Register", model);
 }
Exemplo n.º 3
0
        public ActionResult Register(RegisterModel model)
        {
            if (ModelState.IsValid)
            {
                MembershipCreateStatus createStatus;
                Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus);

                if (createStatus != MembershipCreateStatus.Success)
                    ModelState.AddModelError("", ErrorCodeToString(createStatus));
                else
                {
                    if (model.AccountType == AccountsType.Super)
                        Roles.AddUserToRole(model.UserName, RegisterModel.SUPER);
                    else if (model.AccountType == AccountsType.Admin)
                        Roles.AddUserToRole(model.UserName, RegisterModel.ADMIN);
                    else
                        Roles.AddUserToRole(model.UserName, RegisterModel.USUARIO);

                    Conta conta = new Conta();
                    conta.IdUsuario = (Guid)Membership.GetUser(model.UserName).ProviderUserKey;
                    conta.Instituicao = contexto.Instituicoes.Find(model.IdInstituicao);

                    contexto.Contas.Add(conta);
                    contexto.SaveChanges();

                    var mail = new MailController();
                    mail.NovoUsuario(conta).DeliverAsync();

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

            // If we got this far, something failed, redisplay form
            return View(model);
        }