コード例 #1
0
        public void ProcessRequest(HttpContext context)
        {
            var result = new GeneralResultDTO();

            context.Response.ContentType = "application/json";

            string name             = context.Request.Form["name"];
            string description      = context.Request.Form["description"];
            string requestType      = context.Request.Form["requestType"];
            string biddingWay       = context.Request.Form["biddingWay"];
            int    biddingWayNumber = ValidationHelper.GetInteger(context.Request.Form["biddingWayNumber"], 0);

            DateTime productionDate;

            if (!DateTime.TryParseExact(context.Request.Form["productionDateText"],
                                        "MM/dd/yyyy",
                                        System.Globalization.CultureInfo.InvariantCulture,
                                        System.Globalization.DateTimeStyles.None,
                                        out productionDate))
            {
                result = new GeneralResultDTO {
                    success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.ProductionDateInvalidMessage", LocalizationContext.CurrentCulture.CultureCode)
                };
                context.Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            DateTime?selectionDate = null;

            if (context.Request.Form["selectionDateText"] != null)
            {
                DateTime selectionDateTemp;
                if (!DateTime.TryParseExact(context.Request.Form["selectionDateText"],
                                            "MM/dd/yyyy",
                                            System.Globalization.CultureInfo.InvariantCulture,
                                            System.Globalization.DateTimeStyles.None,
                                            out selectionDateTemp))
                {
                    result = new GeneralResultDTO {
                        success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.SelectionDateInvalidMessage", LocalizationContext.CurrentCulture.CultureCode)
                    };
                    context.Response.Write(JsonConvert.SerializeObject(result));
                    return;
                }
                else
                {
                    selectionDate = new DateTime?(selectionDateTemp);
                }
            }
            var files = new List <HttpPostedFile>();

            if (context.Request.Files.Count > 0)
            {
                for (int i = 0; context.Request.Files.Count > i; i++)
                {
                    files.Add(context.Request.Files[i]);
                }
            }

            #region Validation

            if (string.IsNullOrWhiteSpace(name))
            {
                result = new GeneralResultDTO {
                    success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.NameIsMandatory", LocalizationContext.CurrentCulture.CultureCode)
                };
                context.Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            if (string.IsNullOrWhiteSpace(description))
            {
                result = new GeneralResultDTO {
                    success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.DescriptionIsMandatory", LocalizationContext.CurrentCulture.CultureCode)
                };
                context.Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            if (files.Count > 0)
            {
                if (files.Count > 4)
                {
                    result = new GeneralResultDTO {
                        success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.NumberOfAttachmentsIsTooBig", LocalizationContext.CurrentCulture.CultureCode)
                    };
                    context.Response.Write(JsonConvert.SerializeObject(result));
                    return;
                }
                int filesTotalSize = 0;

                foreach (var requestFile in files)
                {
                    if (requestFile.ContentType != "image/png" && requestFile.ContentType != "image/jpeg" && requestFile.ContentType != "application/pdf")
                    {
                        result = new GeneralResultDTO {
                            success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.FileExtensionIsNotValid", LocalizationContext.CurrentCulture.CultureCode)
                        };
                        context.Response.Write(JsonConvert.SerializeObject(result));
                        return;
                    }
                    filesTotalSize += requestFile.ContentLength;
                }
                if (filesTotalSize > 10000000)
                {
                    result = new GeneralResultDTO {
                        success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.TotalAttachmentsSizeIsTooBig", LocalizationContext.CurrentCulture.CultureCode)
                    };
                    context.Response.Write(JsonConvert.SerializeObject(result));
                    return;
                }
            }
            //if (productionDate == DateTime.MinValue)
            //{
            //    result = new GeneralResultDTO { success = false, errorMessage = ResHelper.GetString("Kadena.NewBidRequest.ProductionDateInvalidMessage", LocalizationContext.CurrentCulture.CultureCode) };
            //    context.Response.Write(JsonConvert.SerializeObject(result));
            //    return;
            //}

            #endregion

            result = SubmitBidInternal(name, description, requestType, biddingWay, biddingWayNumber, files, productionDate, selectionDate);
            context.Response.Write(JsonConvert.SerializeObject(result));
        }
コード例 #2
0
        public void ProcessRequest(HttpContext context)
        {
            var result = new GeneralResultDTO();

            context.Response.ContentType = "application/json";

            string fullName    = context.Request.Form["fullName"];
            string companyName = context.Request.Form["companyName"];
            string email       = context.Request.Form["email"];
            string phone       = context.Request.Form["phone"];
            string message     = context.Request.Form["message"];
            var    files       = new List <HttpPostedFile>();

            if (context.Request.Files.Count > 0)
            {
                for (int i = 0; context.Request.Files.Count > i; i++)
                {
                    files.Add(context.Request.Files[i]);
                }
            }

            #region Validation

            if (string.IsNullOrWhiteSpace(fullName))
            {
                result = new GeneralResultDTO {
                    success = false, errorMessage = ResHelper.GetString("Kadena.ContactForm.EnterYourFullName", LocalizationContext.CurrentCulture.CultureCode)
                };
                context.Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            if (!string.IsNullOrWhiteSpace(email) && !new FormsHelper().IsEmailValid(email))
            {
                result = new GeneralResultDTO {
                    success = false, errorMessage = ResHelper.GetString("Kadena.ContactForm.EmailAddressIsNotValid", LocalizationContext.CurrentCulture.CultureCode)
                };
                context.Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            if (string.IsNullOrWhiteSpace(message))
            {
                result = new GeneralResultDTO {
                    success = false, errorMessage = ResHelper.GetString("Kadena.ContactForm.EnterYourRequest", LocalizationContext.CurrentCulture.CultureCode)
                };
                context.Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            if (files.Count > 0)
            {
                if (files.Count > 4)
                {
                    result = new GeneralResultDTO {
                        success = false, errorMessage = ResHelper.GetString("Kadena.ContactForm.NumberOfAttachmentsIsTooBig", LocalizationContext.CurrentCulture.CultureCode)
                    };
                    context.Response.Write(JsonConvert.SerializeObject(result));
                    return;
                }
                int filesTotalSize = 0;

                foreach (var requestFile in files)
                {
                    filesTotalSize += requestFile.ContentLength;
                }
                if (filesTotalSize > 10000000)
                {
                    result = new GeneralResultDTO {
                        success = false, errorMessage = ResHelper.GetString("Kadena.ContactForm.TotalAttachmentsSizeIsTooBig", LocalizationContext.CurrentCulture.CultureCode)
                    };
                    context.Response.Write(JsonConvert.SerializeObject(result));
                    return;
                }
            }

            #endregion

            result = SubmitContactUsFormInternal(fullName, companyName, email, phone, message, files);
            context.Response.Write(JsonConvert.SerializeObject(result));
        }
コード例 #3
0
        public void ProcessRequest(HttpContext context)
        {
            var result = new GeneralResultDTO();

            context.Response.ContentType = "application/json";

            string description = context.Request.Form["description"];
            var    files       = new List <HttpPostedFile>();

            if (context.Request.Files.Count > 0)
            {
                for (int i = 0; context.Request.Files.Count > i; i++)
                {
                    files.Add(context.Request.Files[i]);
                }
            }

            #region Validation

            if (string.IsNullOrWhiteSpace(description))
            {
                result = new GeneralResultDTO {
                    success = false, errorMessage = ResHelper.GetString("Kadena.NewProductForm.DescriptionIsMandatory", LocalizationContext.CurrentCulture.CultureCode)
                };
                context.Response.Write(JsonConvert.SerializeObject(result));
                return;
            }
            if (files.Count > 0)
            {
                if (files.Count > 4)
                {
                    result = new GeneralResultDTO {
                        success = false, errorMessage = ResHelper.GetString("Kadena.NewProductForm.NumberOfAttachmentsIsTooBig", LocalizationContext.CurrentCulture.CultureCode)
                    };
                    context.Response.Write(JsonConvert.SerializeObject(result));
                    return;
                }
                int filesTotalSize = 0;

                foreach (var requestFile in files)
                {
                    if (requestFile.ContentType != "image/png" && requestFile.ContentType != "image/jpeg" && requestFile.ContentType != "application/pdf")
                    {
                        result = new GeneralResultDTO {
                            success = false, errorMessage = ResHelper.GetString("Kadena.NewProductForm.FileExtensionIsNotValid", LocalizationContext.CurrentCulture.CultureCode)
                        };
                        context.Response.Write(JsonConvert.SerializeObject(result));
                        return;
                    }
                    filesTotalSize += requestFile.ContentLength;
                }
                if (filesTotalSize > 10000000)
                {
                    result = new GeneralResultDTO {
                        success = false, errorMessage = ResHelper.GetString("Kadena.NewProductForm.TotalAttachmentsSizeIsTooBig", LocalizationContext.CurrentCulture.CultureCode)
                    };
                    context.Response.Write(JsonConvert.SerializeObject(result));
                    return;
                }
            }

            #endregion

            result = RequestNewProductInternal(description, files);
            context.Response.Write(JsonConvert.SerializeObject(result));
        }