public ActionResult Index(WorkWithUsViewModel model)
        {
            if (!CaptchaImage.isValid(model.captcha))
            {
                ViewBag.Error = "عبارت امنیتی به درستی وارد نشده است.";
                return(BaseView(model));
            }
            if (string.IsNullOrEmpty(model.fullName))
            {
                ViewBag.Error = "عبارت امنیتی به درستی وارد نشده است.";
                return(BaseView(model));
            }
            if (string.IsNullOrEmpty(model.mobileNumber) && model.mobileNumber.Length < 6)
            {
                ViewBag.Error = "تلفن تماس به درستی وارد نشده است.";
                return(BaseView(model));
            }
            if (string.IsNullOrEmpty(model.message))
            {
                ViewBag.Error = "وارد کردن متن پیام اجباری است.";
                return(BaseView(model));
            }

            UserPrincipal currentUser = null;

            if (Request.IsAuthenticated)
            {
                currentUser = GetAuthenticatedUser();
            }

            var message = new MessageBox()
            {
                FullName      = model.fullName.ToStandardPersian(),
                MobileNumber  = model.mobileNumber,
                Email         = model.email,
                Text          = model.message.ToStandardPersian(),
                StatusId      = MessageBoxStatus.New.Id,
                MessageTypeId = 2,
                CreateUserId  = currentUser?.id,
                ModifyUserId  = currentUser?.id,
                CreateDate    = GetDatetime(),
                ModifyDate    = GetDatetime(),
                CreateIp      = GetCurrentIp(),
                ModifyIp      = GetCurrentIp(),
            };

            _context.MessageBox.Add(message);
            _context.SaveChanges();

            ViewBag.Success = "پیام شما با موفقیت ثبت شد.";
            return(BaseView());
        }
Beispiel #2
0
        public JsonResult SendConfirmation(ForgetPasswordViewModel model)
        {
            Response response;

            try
            {
                if (!CaptchaImage.isValid(model.captcha))
                {
                    response = new Response()
                    {
                        status  = 500,
                        message = "عبارت امنیتی به درستی وارد نشده است.",
                    };
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
                if (string.IsNullOrEmpty(model.user))
                {
                    response = new Response()
                    {
                        status  = 500,
                        message = "شماره همراه/ نام کاربری به درستی وارد نشده است.",
                    };
                    return(Json(response, JsonRequestBehavior.AllowGet));
                }
                using (var db = new KiaGalleryContext())
                {
                    var entity = db.User.Where(x => x.Active == true && (x.PhoneNumber == model.user || x.Username == model.user)).ToList();
                    if (entity.Count > 0)
                    {
                        Random random           = new Random();
                        string confirmationCode = random.Next(1111, 9999).ToString();
                        foreach (var item in entity)
                        {
                            item.ConfirmationCode = confirmationCode;
                        }
                        Task.Factory.StartNew(() =>
                        {
                            SmsHandler.NikSmsWebServiceClient.SendSmsNik(confirmationCode, entity.FirstOrDefault().PhoneNumber);
                        });
                        response = new Response()
                        {
                            status  = 200,
                            message = "کد تایید از طریق پیامک ارسال گردید."
                        };
                        db.SaveChanges();
                    }
                    else
                    {
                        response = new Response()
                        {
                            status  = 500,
                            message = "کاربری با این مشخصات یافت نشد."
                        };
                    }
                }
            }
            catch (Exception ex)
            {
                response = Core.GetExceptionResponse(ex);
            }
            return(Json(response, JsonRequestBehavior.AllowGet));
        }