Exemple #1
0
        public IActionResult CadastrarComentario(IFormCollection form)
        {
            Comentario comentario = new Comentario();

            comentario.Assunto  = form["assunto"];
            comentario.Mensagem = form["mensagem"];

            comentario.Autor = usuarioRepositorio.ObterUsuario((HttpContext.Session.GetString(SESSION_EMAIL)));
            comentarioRepositorio.Inserir(comentario);

            var sucessoViewModel = new SucessoViewModel();

            TempData["sucesso"] = "Comentário cadastrado com sucesso! Seu comentário agora passará pelo processo de verificação";
            TempData["voltar"]  = "/Comentario/CadastrarComentario";
            return(View("_Sucesso", sucessoViewModel));
        }
        public IActionResult CadastrarUsuario(IFormCollection form, [FromForm] Usuario usuarioForm)
        {
            DateTime data = DateTime.Parse(form["dataNascimento"]);

            if (!form["senha"].Equals(form["confirmarsenha"]))
            {
                ErroViewModel erroViewModel = new ErroViewModel();
                TempData["erro"]   = "Por favor, confirme sua senha corretamente.";
                TempData["voltar"] = "/Usuario/Index";
                return(View("_Erro", erroViewModel));
            }
            else if (data >= DateTime.Today)
            {
                ErroViewModel erroViewModel = new ErroViewModel();
                TempData["erro"]   = "A data de nascimento inserida é inválida.";
                TempData["voltar"] = "/Usuario/Index";
                return(View("_Erro", erroViewModel));
            }
            else
            {
                Usuario usuario = new Usuario();
                usuario.Nome           = form["nome"];
                usuario.Telefone       = form["telefone"];
                usuario.Email          = form["email"];
                usuario.Endereco       = form["endereco"];
                usuario.Genero         = form["genero"];
                usuario.DataNascimento = DateTime.Parse(form["dataNascimento"]);
                usuario.Senha          = form["senha"];


                Empresa empresa = new Empresa();
                empresa.Nome = form["empresa"];
                empresa.Cnpj = form["cnpj"];

                usuario.Empresa = empresa;
                #region CADASTRO_DE_FOTOS
                if (usuarioForm.Foto != null && usuarioForm.Foto.Length > 0)
                {
                    // Extrai apenas o nome do arquivo
                    var fileName = Path.GetFileName(usuarioForm.Foto.FileName);

                    // Define o nome do arquivo
                    var NomeArquivo = Guid.NewGuid().ToString().Replace("-", "") + Path.GetExtension(fileName);


                    //Define um caminho para o arquivo
                    var CaminhoArquivo = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot\\uploads\\imgs", NomeArquivo);


                    using (var StreamImagem = new FileStream(CaminhoArquivo, FileMode.Create))
                    {
                        usuarioForm.Foto.CopyTo(StreamImagem);
                    }

                    usuario.UrlFoto = "/uploads/imgs/" + NomeArquivo;
                }
                else
                {
                    usuario.UrlFoto = "/img/usuario_defaultpicture.png";
                }
                #endregion



                bool emailJaExiste = usuarioRepositorio.VerificarEmailExistente(usuario.Email);

                if (!emailJaExiste)
                {
                    usuarioRepositorio.Inserir(usuario);
                    var sucessoViewModel = new SucessoViewModel();
                    TempData["sucesso"] = "Usuário cadastrado com sucesso!";
                    TempData["voltar"]  = "/Home/Index";
                    return(View("_Sucesso", sucessoViewModel));
                }
                else
                {
                    ErroViewModel erroViewModel = new ErroViewModel();
                    TempData["erro"]   = "Esse email já está sendo utilizado.";
                    TempData["voltar"] = "/Usuario/Index";
                    return(View("_Erro", erroViewModel));
                }
            }
        }