Ejemplo n.º 1
0
        public JsonResult Handshake(string method, string sendTo)
        {
            try {
                string code = CreateCookie("Handshake");

                if (method == "email")
                {
                    if (code != null)
                    {
                        EmailHandler emailHadler = new EmailHandler();
                        EmailModel   request     = new EmailModel();
                        request.toEmail = sendTo;
                        request.subject = "Verification";
                        request.body    = "Verification code: " + code;
                        if (!emailHadler.SendEmail(request))
                        {
                            return(Json(ResponseMessages.SendEmailException, JsonRequestBehavior.AllowGet));
                        }
                    }
                    else
                    {
                        return(Json(ResponseMessages.CodeGenerationException, JsonRequestBehavior.AllowGet));
                    }
                }
                else
                {
                    if (code != null)
                    {
                        UserInformation userInformation = db.UserInformations.Where(x => x.email == sendTo).SingleOrDefault();
                        if (userInformation != null)
                        {
                            PhoneHandler handler = new PhoneHandler();
                            if (handler.SendSms(code, userInformation.phone) == ResponseMessages.SMSException)
                            {
                                return(Json(ResponseMessages.SMSException, JsonRequestBehavior.AllowGet));
                            }
                        }
                        else
                        {
                            return(Json(ResponseMessages.UnexpectedSystemException, JsonRequestBehavior.AllowGet));
                        }
                    }
                    else
                    {
                        return(Json(ResponseMessages.CodeGenerationException, JsonRequestBehavior.AllowGet));
                    }
                }

                return(Json(ResponseMessages.Success, JsonRequestBehavior.AllowGet));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(Json(ResponseMessages.UnexpectedSystemException, JsonRequestBehavior.AllowGet));
            }
        }