public IActionResult CadastrarAdministrador([FromForm] AdministradorStandaloneViewModel usuarioModel)
        {
            try
            {
                CadastrarUsuarioViewModel usuario = UsuarioRepository.RetornarUsuarioViewModel(usuarioModel);

                if (usuario.FotoPerfil != null && usuario.FotoPerfil.Length > 0)
                {
                    string fileExt = Path.GetExtension(usuarioModel.FotoPerfil.FileName);

                    if (fileExt != ".png" && fileExt != ".jpeg" && fileExt != ".jpg")
                    {
                        return(BadRequest(new
                        {
                            mensagem = "Os únicos formatos de arquivo suportados são .jpeg e .png."
                        }));
                    }
                }

                UsuarioRepository.CadastrarUsuario(usuario);

                Email.Enviar(UsuarioRepository.RetornarEmUsuarios(usuario));

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(new
                {
                    mensagem = "Erro: " + ex
                }));
            }
        }
예제 #2
0
        public string Salvar(CadastrarUsuarioViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(ModelState.Values.SelectMany(v => v.Errors).First().ErrorMessage);
            }
            if (viewModel != null)
            {
                using (DbCrud contextObj = new DbCrud())
                {
                    Usuario usuario = new Usuario();
                    usuario.Nome     = viewModel.Nome;
                    usuario.Telefone = viewModel.Telefone;
                    usuario.Email    = viewModel.Email;
                    usuario.Cpf      = viewModel.Cpf;

                    contextObj.Usuarios.Add(usuario);
                    contextObj.SaveChanges();
                    return("Usuário cadastado com sucesso.");
                }
            }
            else
            {
                return("Usuário não Cadastrado");
            }
        }
예제 #3
0
        public void CadastrarUsuario(CadastrarUsuarioViewModel usuario)
        {
            Usuarios usuarioTemp;

            // Defini os valores do objeto Usuario
            usuarioTemp = new Usuarios
            {
                Nome              = usuario.Nome,
                Email             = usuario.Email,
                Senha             = usuario.Senha,
                DataCriacao       = DateTime.Now,
                Telefone          = usuario.Telefone,
                IdTipoUsuario     = usuario.IdTipoUsuario,
                IdEstabelecimento = usuario.IdEstabelecimento
            };


            usuarioTemp = new Usuarios
            {
                Nome              = usuario.Nome,
                Email             = usuario.Email,
                Senha             = usuario.Senha,
                Telefone          = usuario.Telefone,
                DataCriacao       = DateTime.Now,
                IdTipoUsuario     = usuario.IdTipoUsuario,
                IdEstabelecimento = usuario.IdEstabelecimento
            };


            using (DesafioPluftContext ctx = new DesafioPluftContext())
            {
                ctx.Usuarios.Add(usuarioTemp);
                ctx.SaveChanges();
            }
        }
        public ActionResult CadastrarUsuario()
        {
            CadastrarUsuarioViewModel objCadastrarUsuario = new CadastrarUsuarioViewModel();

            //objCadastrarUsuario.Nome = "Fernando Henrique";
            //objCadastrarUsuario.Email = "*****@*****.**";

            objCadastrarUsuario.Sexo = ListaSexo();


            return(View(objCadastrarUsuario));
        }
        public ActionResult CadastrarUsuario(CadastrarUsuarioViewModel usuario)
        {
            usuario.Sexo = ListaSexo();

            if (!ModelState.IsValid)
            {
                ViewBag.Erro = "Dados inválidos";
                return(View(usuario));
            }

            SenaiChamadosDbContext objDbContext = new SenaiChamadosDbContext();
            UsuarioDomain          objUsuario   = new UsuarioDomain();

            try
            {
                //objUsuario.Id = Guid.NewGuid();
                objUsuario.Nome        = usuario.Nome;
                objUsuario.Email       = usuario.Email;
                objUsuario.Senha       = usuario.Senha;
                objUsuario.Telefone    = usuario.Telefone;
                objUsuario.Cpf         = usuario.Cpf.Replace(".", "").Replace("-", "");
                objUsuario.Cep         = usuario.Cep.Replace("-", "");
                objUsuario.Logradouro  = usuario.Logradouro;
                objUsuario.Numero      = usuario.Numero;
                objUsuario.Complemento = usuario.Complemento;
                objUsuario.Bairro      = usuario.Bairro;
                objUsuario.Cidade      = usuario.Cidade;
                objUsuario.Estado      = usuario.Estado;
                //objUsuario.DataCriacao = DateTime.Now;
                //objUsuario.DataAlteracao = DateTime.Now;

                using (UsuarioRepositorio _repUsuario = new UsuarioRepositorio())
                {
                    _repUsuario.Inserir(objUsuario);
                }

                TempData["Mensagem"] = "Usuário cadastrado";
                return(RedirectToAction("Login"));
            }
            catch (System.Exception ex)
            {
                ViewBag.Erro = ex.Message;
                return(View(usuario));
            }
            finally
            {
                objDbContext = null;
                objUsuario   = null;
            }
        }
        public void CadastrarUsuario(CadastrarUsuarioViewModel usuario) // O mesmo que cadastrar um administrador, tb serve para cadastrar um administrador.
        {
            Usuarios usuarioTemp;

            // Verifica se a imagem foi passada
            if (usuario.FotoPerfil != null && usuario.FotoPerfil.Length > 0)
            {
                // Defini o nome do arquivo
                var NomeArquivo = Guid.NewGuid().ToString().Replace("-", "") + Path.GetExtension(usuario.FotoPerfil.FileName);

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

                // Salva a imagem no caminho informado acima
                using (var StreamImagem = new FileStream(CaminhoArquivo, FileMode.Create))
                {
                    usuario.FotoPerfil.CopyTo(StreamImagem);
                }

                // Defini os valores do objeto Usuario
                usuarioTemp = new Usuarios
                {
                    Nome          = usuario.Nome,
                    Email         = usuario.Email,
                    Senha         = usuario.Senha,
                    Telefone      = usuario.Telefone,
                    Fotoperfil    = "/uploads/imgs/" + NomeArquivo,
                    IdTipoUsuario = usuario.IdTipoUsuario,
                    IdClinica     = usuario.IdClinica
                };
            }
            else
            {
                usuarioTemp = new Usuarios
                {
                    Nome          = usuario.Nome,
                    Email         = usuario.Email,
                    Senha         = usuario.Senha,
                    Telefone      = usuario.Telefone,
                    IdTipoUsuario = usuario.IdTipoUsuario,
                    IdClinica     = usuario.IdClinica
                };
            }

            using (SPMedGroupContext ctx = new SPMedGroupContext())
            {
                ctx.Usuarios.Add(usuarioTemp);
                ctx.SaveChanges();
            }
        }
예제 #7
0
        public CadastrarUsuarioViewModel RetornarUsuarioViewModel(AdministradorStandaloneViewModel usuarioModel)
        {
            CadastrarUsuarioViewModel usuario = new CadastrarUsuarioViewModel()
            {
                Nome              = usuarioModel.Nome,
                Email             = usuarioModel.Email,
                Senha             = usuarioModel.Senha,
                Telefone          = usuarioModel.Telefone,
                DataCriacao       = DateTime.Now,
                IdTipoUsuario     = usuarioModel.IdTipoUsuario,
                IdEstabelecimento = usuarioModel.IdEstabelecimento
            };

            return(usuario);
        }
예제 #8
0
        public CadastrarUsuarioViewModel RetornarUsuarioViewModel(AdministradorStandaloneViewModel usuarioModel)
        {
            CadastrarUsuarioViewModel usuario = new CadastrarUsuarioViewModel()
            {
                Nome          = usuarioModel.Nome,
                Email         = usuarioModel.Email,
                Senha         = usuarioModel.Senha,
                Telefone      = usuarioModel.Telefone,
                FotoPerfil    = usuarioModel.FotoPerfil,
                IdTipoUsuario = usuarioModel.IdTipoUsuario,
                IdClinica     = usuarioModel.IdClinica
            };

            return(usuario);
        }
예제 #9
0
        public Usuarios RetornarEmUsuarios(CadastrarUsuarioViewModel usuarioViewModel)
        {
            // Defini os valores do objeto Usuario
            Usuarios usuarioTemp = new Usuarios
            {
                Nome              = usuarioViewModel.Nome,
                Email             = usuarioViewModel.Email,
                Senha             = usuarioViewModel.Senha,
                Telefone          = usuarioViewModel.Telefone,
                DataCriacao       = DateTime.Now,
                IdEstabelecimento = usuarioViewModel.IdEstabelecimento
            };

            return(usuarioTemp);
        }
예제 #10
0
        public async Task <IActionResult> Registrar([FromBody] CadastrarUsuarioViewModel usuario)
        {
            if (ModelState.IsValid)
            {
                var result = await usuarioService.RegistrarUsuarioAsync(usuario);

                if (result.Success)
                {
                    return(Ok(result));
                }

                return(BadRequest(result));
            }

            return(BadRequest());
        }
예제 #11
0
        public Usuarios RetornarEmUsuarios(CadastrarUsuarioViewModel usuarioViewModel)
        {
            // Defini os valores do objeto Usuario
            Usuarios usuarioTemp = new Usuarios
            {
                Nome     = usuarioViewModel.Nome,
                Email    = usuarioViewModel.Email,
                Senha    = usuarioViewModel.Senha,
                Telefone = usuarioViewModel.Telefone,
                //FotoPerfil = "/uploads/imgs/" + NomeArquivo,
                IdTipoUsuario = usuarioViewModel.IdTipoUsuario,
                IdClinica     = usuarioViewModel.IdClinica
            };

            return(usuarioTemp);
        }
예제 #12
0
        public IActionResult CadastrarAdministrador(AdministradorStandaloneViewModel usuarioModel)
        {
            try
            {
                CadastrarUsuarioViewModel usuario = UsuarioRepository.RetornarUsuarioViewModel(usuarioModel);

                UsuarioRepository.CadastrarUsuario(usuario);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(new
                {
                    mensagem = "Erro: " + ex
                }));
            }
        }
예제 #13
0
        [Authorize(Roles = "Administrador")]//Determina qual tipo de usuário pode utilizar esse Método
        public IActionResult CadastrarAdministrador(AdministradorStandaloneViewModel usuarioModel)
        {
            try                                                                                               //Tenta realizar a ação abaixo
            {
                CadastrarUsuarioViewModel usuario = UsuarioRepository.RetornarUsuarioViewModel(usuarioModel); //Cadastra um usuário utilizando ViewModel

                UsuarioRepository.CadastrarUsuario(usuario);                                                  // Utiliza o método 'CadastrarUsuario' para cadastrar o usuário informado

                return(Ok());
            }
            catch (Exception ex)             //Caso não consiga realizar a ação retorna status 400 com a mensagem do erro
            {
                return(BadRequest(new        //Criando e retornando a mensagem de erro que será enviada
                {
                    mensagem = "Erro: " + ex // Inserindo erro na mensagem
                }));
            }
        }
예제 #14
0
        public CadastrarUsuarioPage()
        {
            InitializeComponent();

            BindingContext = viewModel = new CadastrarUsuarioViewModel(this);

            txtEmail.Completed += (object sender, EventArgs e) =>
            {
                txtSenha.Focus();
            };
            txtSenha.Completed += (object sender, EventArgs e) =>
            {
                txtConfirmarSenha.Focus();
            };
            txtConfirmarSenha.Completed += (object sender, EventArgs e) =>
            {
                viewModel.ContinuarCommand.Execute(null);
            };
        }
예제 #15
0
        private async void GravarTelEnd(int Id, CadastrarUsuarioViewModel novousuario)
        {
            TelefoneRepository _telefone    = new TelefoneRepository();
            Telefone           NovoTelefone = new Telefone();

            NovoTelefone.Telefone1 = novousuario.Telefone;
            NovoTelefone.UsuarioId = Id;
            await _telefone.Gravar(NovoTelefone);

            EnderecoRepository _endereco    = new EnderecoRepository();
            Endereco           NovoEndereco = new Endereco();

            NovoEndereco.Cidade    = novousuario.Cidade;
            NovoEndereco.Cep       = novousuario.Cep;
            NovoEndereco.Endereco1 = novousuario.Endereco;
            NovoEndereco.Numero    = novousuario.Numero;
            NovoEndereco.UsuarioId = Id;
            await _endereco.Gravar(NovoEndereco);
        }
예제 #16
0
        public ActionResult Cadastrar(CadastrarUsuarioViewModel u)
        {
            var usuario = new Usuario()
            {
                Nome  = u.Nome,
                Email = u.Email,
                Senha = u.Senha
            };
            var resultado = AcessoFacade.CadastrarUsuario(usuario);

            if (resultado.Sucesso)
            {
                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                ModelState.AddModelError("Email", resultado.ConsolidaMensagens("<br>"));
                return(View("Cadastrar"));
            }
        }
예제 #17
0
        public void CadastrarUsuario(CadastrarUsuarioViewModel usuario) // O mesmo que cadastrar um administrador, tb serve para cadastrar um administrador.
        {
            Usuarios usuarioTemp;



            // Defini os valores do objeto Usuario
            usuarioTemp = new Usuarios
            {
                Nome          = usuario.Nome,
                Email         = usuario.Email,
                Senha         = usuario.Senha,
                Telefone      = usuario.Telefone,
                IdTipoUsuario = usuario.IdTipoUsuario,
                IdClinica     = usuario.IdClinica
            };


            usuarioTemp = new Usuarios
            {
                Nome          = usuario.Nome,
                Email         = usuario.Email,
                Senha         = usuario.Senha,
                Telefone      = usuario.Telefone,
                IdTipoUsuario = usuario.IdTipoUsuario,
                IdClinica     = usuario.IdClinica
            };



            using (SPMedGroupContext ctx = new SPMedGroupContext())
            {
                ctx.Usuarios.Add(usuarioTemp);
                ctx.SaveChanges();
            }
        }
예제 #18
0
        public async Task <ActionResult <Usuario> > Post([FromForm] CadastrarUsuarioViewModel usuario)
        {
            try {
                Usuario NovoUsuario = new Usuario();
                var     hash        = new Hash(SHA512.Create());

                if (Request.Form.Files.Count > 0)
                {
                    var caminho = @"C:\Users\fic\Desktop\coo_react\coo_react\coorganicas\src\Assets";
                    //var caminho = @"C:\Users\AlefW\Desktop\Coorganicas_Backend\assets";
                    var pasta = "Perfil";

                    var file       = Request.Form.Files[0];
                    var folderName = Path.Combine(caminho, "images", pasta);
                    // var pathToSave = Directory.Exists(folderName);
                    var fileName = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"');
                    var fullPath = Path.Combine(folderName, fileName);
                    // var dbPath = Path.Combine (folderName, fileName);

                    using (var stream = new FileStream(fullPath, FileMode.Create)) {
                        file.CopyTo(stream);
                    }


                    NovoUsuario.ImagemUsuario = fullPath;
                    NovoUsuario.Nome          = usuario.Nome;
                    NovoUsuario.Email         = usuario.Email;
                    NovoUsuario.Cnpj          = FuncoesReutilizar.RetornaCnpjFormatado(usuario.Cnpj);
                    NovoUsuario.Senha         = hash.CriptografarSenha(usuario.Senha);
                    NovoUsuario.TipoUsuarioId = Convert.ToInt32(usuario.TipoUsuarioId);
                }
                else
                {
                    var fileName = string.Empty;

                    if (Request.Form.Files.Count == 0)
                    {
                        if (Convert.ToInt32(Request.Form["TipoUsuario"]) == 2)
                        {
                            fileName = "woman.png";
                        }
                        else
                        {
                            fileName = "pessoa.png";
                        }
                    }

                    NovoUsuario.ImagemUsuario = fileName;
                    NovoUsuario.Nome          = usuario.Nome;
                    NovoUsuario.Email         = usuario.Email;
                    NovoUsuario.Cnpj          = FuncoesReutilizar.RetornaCnpjFormatado(usuario.Cnpj);
                    NovoUsuario.Senha         = hash.CriptografarSenha(usuario.Senha);
                    NovoUsuario.TipoUsuarioId = Convert.ToInt32(usuario.TipoUsuarioId);
                }

                if (FuncoesReutilizar.ValidaCNPJ(usuario.Cnpj) == true)
                {
                    await _repositorio.Gravar(NovoUsuario);

                    // Após gravar o usuário no banco iremos gravar os dados de enderco e telefone
                    // Aqui iremos chamar um metodo que retorna o ultimo usuario cadastrado que no caso foi o que acabamos de gravar
                    var UsuarioGravado = await _repositorio.RetornarUltimoUsuarioCadastrado();

                    GravarTelEnd(UsuarioGravado.UsuarioId, usuario);


                    return(await _repositorio.BuscarPorID(UsuarioGravado.UsuarioId));
                }
                else
                {
                    return(NotFound(new{
                        Mensagem = "CNPJ inválido!",
                        erro = true
                    }));
                }
            } catch (DbUpdateConcurrencyException) {
                throw;
            }
        }
예제 #19
0
        public async Task <RespostaViewModel> RegistrarUsuarioAsync(CadastrarUsuarioViewModel user)
        {
            if (user == null)
            {
                user.Password        = null;
                user.ConfirmPassword = null;

                return(new RespostaViewModel
                {
                    Mensagem = "Faltaram informações para registrar o usuário.",
                    Objeto = user,
                    Success = false
                });
            }

            if (user.Password != user.ConfirmPassword)
            {
                user.Password        = null;
                user.ConfirmPassword = null;

                return(new RespostaViewModel
                {
                    Mensagem = "Sua confirmação de senha está incorreta.",
                    Objeto = user,
                    Success = false
                });
            }

            var usuario = new IdentityUser
            {
                Email    = user.Email,
                UserName = user.Email
            };

            var result = await userManager.CreateAsync(usuario, user.Password);

            if (result.Succeeded)
            {
                // Enviar e-mail de confirmação

                var confirmarEmailToken = await userManager.GenerateEmailConfirmationTokenAsync(usuario);

                var encodedEmailToken = Encoding.UTF8.GetBytes(confirmarEmailToken);
                var validEmailToken   = WebEncoders.Base64UrlEncode(encodedEmailToken);

                string url = $"{configuration["AppUrl"]}/confirmaremail?userid={usuario.Id}&token={validEmailToken}";

                string nome = usuario.Email.Substring(0, usuario.Email.IndexOf('@'));

                await mailService.SendEmailAsync(usuario.Email,
                                                 "Confirme seu e-mail do url-shortener.",
                                                 $"<!DOCTYPE html><html lang='en' xmlns='http://www.w3.org/1999/xhtml' xmlns:v='urn:schemas-microsoft-com:vml' xmlns:o='urn:schemas-microsoft-com:office:office'><head> <meta charset='utf-8'> <!-- utf-8 works for most cases --> <meta name='viewport' content='width=device-width'> <!-- Forcing initial-scale shouldn't be necessary --> <meta http-equiv='X-UA-Compatible' content='IE=edge'> <!-- Use the latest (edge) version of IE rendering engine --> <meta name='x-apple-disable-message-reformatting'> <!-- Disable auto-scale in iOS 10 Mail entirely --> <title></title> <!-- The title tag shows in email notifications, like Android 4.4. --> <link href='https://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet'> <!-- CSS Reset : BEGIN --> <style> /* What it does: Remove spaces around the email design added by some email clients. */ /* Beware: It can remove the padding / margin and add a background color to the compose a reply window. */ html,body {{ margin: 0 auto !important; padding: 0 !important; height: 100% !important; width: 100% !important; background: #f1f1f1;}}/* What it does: Stops email clients resizing small text. */* {{ -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;}}/* What it does: Centers email on Android 4.4 */div[style*='margin: 16px 0'] {{ margin: 0 !important;}}/* What it does: Stops Outlook from adding extra spacing to tables. */table,td {{ mso-table-lspace: 0pt !important; mso-table-rspace: 0pt !important;}}/* What it does: Fixes webkit padding issue. */table {{ border-spacing: 0 !important; border-collapse: collapse !important; table-layout: fixed !important; margin: 0 auto !important;}}/* What it does: Uses a better rendering method when resizing images in IE. */img {{ -ms-interpolation-mode:bicubic;}}/* What it does: Prevents Windows 10 Mail from underlining links despite inline CSS. Styles for underlined links should be inline. */a {{ text-decoration: none;}}/* What it does: A work-around for email clients meddling in triggered links. */*[x-apple-data-detectors], /* iOS */.unstyle-auto-detected-links *,.aBn {{ border-bottom: 0 !important; cursor: default !important; color: inherit !important; text-decoration: none !important; font-size: inherit !important; font-family: inherit !important; font-weight: inherit !important; line-height: inherit !important;}}/* What it does: Prevents Gmail from displaying a download button on large, non-linked images. */.a6S {{ display: none !important; opacity: 0.01 !important;}}/* What it does: Prevents Gmail from changing the text color in conversation threads. */.im {{ color: inherit !important;}}/* If the above doesn't work, add a .g-img class to any image in question. */img.g-img + div {{ display: none !important;}}/* What it does: Removes right gutter in Gmail iOS app: https://github.com/TedGoas/Cerberus/issues/89 *//* Create one of these media queries for each additional viewport size you'd like to fix *//* iPhone 4, 4S, 5, 5S, 5C, and 5SE */@media only screen and (min-device-width: 320px) and (max-device-width: 374px) {{ u ~ div .email-container {{ min-width: 320px !important; }}}}/* iPhone 6, 6S, 7, 8, and X */@media only screen and (min-device-width: 375px) and (max-device-width: 413px) {{ u ~ div .email-container {{ min-width: 375px !important; }}}}/* iPhone 6+, 7+, and 8+ */@media only screen and (min-device-width: 414px) {{ u ~ div .email-container {{ min-width: 414px !important; }}}} </style> <!-- CSS Reset : END --> <!-- Progressive Enhancements : BEGIN --> <style> .primary{{background: #30e3ca;}}.bg_white{{background: #ffffff;}}.bg_light{{background: #fafafa;}}.bg_black{{background: #000000;}}.bg_dark{{background: rgba(0,0,0,.8);}}.email-section{{padding:2.5em;}}/*BUTTON*/.btn{{padding: 10px 15px;display: inline-block;}}.btn.btn-primary{{border-radius: 5px;background: #30e3ca;color: #ffffff;}}.btn.btn-white{{border-radius: 5px;background: #ffffff;color: #000000;}}.btn.btn-white-outline{{border-radius: 5px;background: transparent;border: 1px solid #fff;color: #fff;}}.btn.btn-black-outline{{border-radius: 0px;background: transparent;border: 2px solid #000;color: #000;font-weight: 700;}}h1,h2,h3,h4,h5,h6{{font-family: 'Lato', sans-serif;color: #000000;margin-top: 0;font-weight: 400;}}body{{font-family: 'Lato', sans-serif;font-weight: 400;font-size: 15px;line-height: 1.8;color: rgba(0,0,0,.4);}}a{{color: #30e3ca;}}table{{}}/*LOGO*/.logo h1{{margin: 0;}}.logo h1 a{{color: #30e3ca;font-size: 24px;font-weight: 700;font-family: 'Lato', sans-serif;}}/*HERO*/.hero{{position: relative;z-index: 0;}}.hero .text{{color: rgba(0,0,0,.3);}}.hero .text h2{{color: #000;font-size: 40px;margin-bottom: 0;font-weight: 400;line-height: 1.4;}}.hero .text h3{{font-size: 24px;font-weight: 300;}}.hero .text h2 span{{font-weight: 600;color: #30e3ca;}}/*HEADING SECTION*/.heading-section{{}}.heading-section h2{{color: #000000;font-size: 28px;margin-top: 0;line-height: 1.4;font-weight: 400;}}.heading-section .subheading{{margin-bottom: 20px !important;display: inline-block;font-size: 13px;text-transform: uppercase;letter-spacing: 2px;color: rgba(0,0,0,.4);position: relative;}}.heading-section .subheading::after{{position: absolute;left: 0;right: 0;bottom: -10px;content: '';width: 100%;height: 2px;background: #30e3ca;margin: 0 auto;}}.heading-section-white{{color: rgba(255,255,255,.8);}}.heading-section-white h2{{font-family: line-height: 1;padding-bottom: 0;}}.heading-section-white h2{{color: #ffffff;}}.heading-section-white .subheading{{margin-bottom: 0;display: inline-block;font-size: 13px;text-transform: uppercase;letter-spacing: 2px;color: rgba(255,255,255,.4);}}ul.social{{padding: 0;}}ul.social li{{display: inline-block;margin-right: 10px;}}/*FOOTER*/.footer{{border-top: 1px solid rgba(0,0,0,.05);color: rgba(0,0,0,.5);}}.footer .heading{{color: #000;font-size: 20px;}}.footer ul{{margin: 0;padding: 0;}}.footer ul li{{list-style: none;margin-bottom: 10px;}}.footer ul li a{{color: rgba(0,0,0,1);}}@media screen and (max-width: 500px) {{}} </style></head><body width='100%' style='margin: 0; padding: 0 !important; mso-line-height-rule: exactly; background-color: #f1f1f1;'><center style='width: 100%; background-color: #f1f1f1;'> <div style='display: none; font-size: 1px;max-height: 0px; max-width: 0px; opacity: 0; overflow: hidden; mso-hide: all; font-family: sans-serif;'> &zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp;&zwnj;&nbsp; </div> <div style='max-width: 600px; margin: 0 auto;' class='email-container'> <!-- BEGIN BODY --> <table align='center' role='presentation' cellspacing='0' cellpadding='0' border='0' width='100%' style='margin: auto;'> <tr> <td valign='top' class='bg_white' style='padding: 1em 2.5em 0 2.5em;'> <table role='presentation' border='0' cellpadding='0' cellspacing='0' width='100%'> <tr> <td class='logo' style='text-align: center;'> <h1><a href={url}>Confirme seu e-mail.</a></h1> </td> </tr> </table> </td> </tr><!-- end tr --> <tr> <td valign='middle' class='hero bg_white' style='padding: 3em 0 2em 0;'> <img src='https://i.imgur.com/juvlRYg.png' alt='' style='width: 300px; max-width: 600px; height: auto; margin: auto; display: block;'> </td> </tr><!-- end tr --><tr> <td valign='middle' class='hero bg_white' style='padding: 2em 0 4em 0;'> <table> <tr> <td> <div class='text' style='padding: 0 2.5em; text-align: center;'> <h2>Por favor, {nome} verifique seu e-mail do shortener clicando <a href={url}>aqui</a>.</h2> </div> </td> </tr> </table> </td> </tr><!-- end tr --> <!-- 1 Column Text + Button : END --> </table> </td> <td valign='top' width='33.333%' style='padding-top: 20px;'> </td> </tr><!-- end: tr --> </table> </div> </center></body></html>",
                                                 nome);

                return(new RespostaViewModel
                {
                    Mensagem = "Usuário registrado com sucesso!",
                    Objeto = null,
                    Success = true
                });
            }

            user.Password        = null;
            user.ConfirmPassword = null;

            return(new RespostaViewModel
            {
                Mensagem = "Não foi possível registrar o usuário.",
                Success = false,
                Objeto = user
            });
        }