Ejemplo n.º 1
0
        //Action para recuperar senha

        public ActionResult Recupera(string email)
        {
            if (db.Usuarios.Any(x => x.Email == email))
            {
                var response = Request["g-recaptcha-response"];

                //chave secreta que foi gerada no site

                const string secret = "6LfK1j4UAAAAAHtP7zXZbgSE8XT8Zm25pFm0sSUZ";

                var client = new WebClient();
                var reply  =
                    client.DownloadString(

                        string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}",
                                      secret, response));
                var captchaResponse = JsonConvert.DeserializeObject <CaptchaResponse>(reply);

                //Response false – devemos ver qual a mensagem de erro

                if (!captchaResponse.Success)
                {
                    if (captchaResponse.ErrorCodes.Count <= 0)
                    {
                        return(View());
                    }

                    var error = captchaResponse.ErrorCodes[0].ToLower();

                    switch (error)
                    {
                    case ("missing-input-secret"):
                        ViewBag.Message = "The secret parameter is missing.";
                        break;

                    case ("invalid-input-secret"):
                        ViewBag.Message = "The secret parameter is invalid or malformed.";
                        break;

                    case ("missing-input-response"):
                        ViewBag.Message = "The response parameter is missing.";
                        break;

                    case ("invalid-input-response"):
                        ViewBag.Message = "The response parameter is invalid or malformed.";
                        break;

                    default:
                        ViewBag.Message = "Error occured. Please try again";
                        break;
                    }
                    TempData["Error"] = "Certifique-se que você não é um robô";
                }

                else
                {
                    var callbackUrl = Url.Action("Recuperar", "Landing", new { recupera = Funcoes.Base64Codifica(email) }, protocol: Request.Url.Scheme);


                    GmailEmailService gmail = new GmailEmailService();
                    EmailMessage      msg   = new EmailMessage();
                    msg.Body    = "Link para redefinir a senha \n\n clicando aqui: " + callbackUrl;
                    msg.IsHtml  = false;
                    msg.Subject = "Redefinir senha";
                    msg.ToEmail = email;
                    gmail.SendEmailMessage(msg);

                    TempData["Sucesso"] = "Um link para redefinir sua senha foi enviado para o seu email";
                }
            }
            else
            {
                TempData["Error"] = "Email não encontrado no sistema";
            }

            return(RedirectToAction("RecuperarSenha", "Landing"));
        }
        public ActionResult Sindicos(string email, string nome, string cpf, string data, string numeroape, string telefone, string celular, string codigo)
        {
            Sindico sin = new Sindico();

            sin.Email                 = email;
            sin.Sin_Nome              = nome;
            sin.Sin_Cpf               = cpf;
            sin.Tipo                  = "S";
            sin.Sin_DataNascimento    = data;
            sin.Sin_NumeroApartamento = Convert.ToInt32(numeroape);
            sin.Sin_Telefone          = telefone;
            sin.Sin_Celular           = celular;
            sin.ApeId                 = Convert.ToInt32(codigo);

            var callbackUrl = Url.Action("CadastrarSenha", "Landing", new { mandaemail = Funcoes.Base64Codifica(email) }, protocol: Request.Url.Scheme);


            GmailEmailService gmail = new GmailEmailService();
            EmailMessage      msg   = new EmailMessage();

            msg.Body    = "Bem vindo Confirme a sua senha clicando aqui: " + callbackUrl;
            msg.IsHtml  = false;
            msg.Subject = "Bem vindo a AdminLar (Confirmação de Cadastro)";
            msg.ToEmail = email;
            gmail.SendEmailMessage(msg);

            db.Sindicos.Add(sin);

            if (db.SaveChanges() > 0)
            {
                return(Json(true));
            }

            return(Json(false));
        }