public IHttpActionResult PostUsuario(UsuarioSenha usuarioSenha)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var usuario = new Usuario
            {
                Endereco  = usuarioSenha.Endereco,
                Professor = false,
                Estudante = true,
                Sobrenome = usuarioSenha.Sobrenome,
                Telefone  = usuarioSenha.Telefone,
                UserName  = usuarioSenha.UserName
            };

            try
            {
                db.Usuarios.Add(usuarioSenha);
                db.SaveChanges();
                //  Utilidades.CreateUserASP(usuarioSenha.UserName, usuarioSenha.Senha);
                Utilidades.CreateUserASP(usuario.UserName);
                Utilidades.AddRoleToUser(usuario.UserName, "estudante");
            }
            catch (Exception ex)
            {
                ModelState.AddModelError(string.Empty, ex.Message);
            }

            usuarioSenha.UserId    = usuario.UserId;
            usuarioSenha.Professor = false;
            usuarioSenha.Estudante = true;
            return(this.Ok(usuarioSenha));
        }
        public ActionResult Create(UsuarioView view)
        ///([Bind(Include = "UserId,UserName,Nome,Sobrenome,Telefone,Endereco,Photo,Estudante,Professor")] Usuario usuario)
        {
            if (ModelState.IsValid)
            {
                db.Usuarios.Add(view.Usuario);
                try
                {
                    if (view.Foto != null)
                    {
                        var pic = Utilidades.UploadPhoto(view.Foto);
                        if (!string.IsNullOrEmpty(pic))
                        {
                            view.Usuario.Photo = string.Format("~/Content/Fotos/{0}", pic);
                        }
                    }
                    db.SaveChanges();

                    Utilidades.CreateUserASP(view.Usuario.UserName);//captura o email do novo usuário
                    if (view.Usuario.Estudante)
                    {
                        Utilidades.AddRoleToUser(view.Usuario.UserName, "estudante");
                    }
                    if (view.Usuario.Professor)
                    {
                        Utilidades.AddRoleToUser(view.Usuario.UserName, "professor");
                    }
                    //verifica-se se o email cadastrado for estudante, ou professor, e atribui as permissões

                    return(RedirectToAction("Index"));

                    Utilidades.CreateUserASP(view.Usuario.UserName);//UserName é o nome do campo e-mail nas tabelas do banco
                    if (view.Usuario.Estudante)
                    {
                        Utilidades.AddRoleToUser(view.Usuario.UserName, "Estudante");
                    }

                    if (view.Usuario.Professor)
                    {
                        Utilidades.AddRoleToUser(view.Usuario.UserName, "Professor");
                    }
                }
                catch (System.Exception ex)
                {
                    ModelState.AddModelError(string.Empty, ex.Message);
                }
            }

            return(View(view));
        }
Exemplo n.º 3
0
        public ActionResult Create(UsuarioView usuarioView)
        {
            if (ModelState.IsValid)
            {
                db.Usuarios.Add(usuarioView.Usuario);
                try
                {
                    if (usuarioView.Foto != null)
                    {
                        var pic = Utilidades.UploadPhoto(usuarioView.Foto);
                        if (!string.IsNullOrEmpty(pic))
                        {
                            usuarioView.Usuario.Photo = string.Format("~/Content/Fotos/{0}", pic);
                        }
                    }
                    db.SaveChanges();

                    Utilidades.CreateUserASP(usuarioView.Usuario.UserName);

                    if (usuarioView.Usuario.Estudante)
                    {
                        Utilidades.AddRoleToUser(usuarioView.Usuario.UserName, "Estudante");
                    }

                    if (usuarioView.Usuario.Professor)
                    {
                        Utilidades.AddRoleToUser(usuarioView.Usuario.UserName, "Professor");
                    }

                    return(RedirectToAction("Index"));
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError(string.Empty, ex.Message);
                }
            }

            return(View(usuarioView));
        }