Exemplo n.º 1
0
        private static IGiveawayBasicInfo SetDates(IGiveawayBasicInfo model)
        {
            if (model != null)
            {
                if (model.StartDate == DateTime.MinValue)
                {
                    model.StartDate = DateTime.Now;
                }

                //int timeZoneOffset = int.Parse(model.TimeZone ?? "0");

                model.StartDate = model.StartDate.ToLocalTime(); //.AddHours(timeZoneOffset);

                if (model.EndDate.HasValue)
                {
                    model.EndDate = model.EndDate.Value.ToLocalTime(); //.AddHours(timeZoneOffset);
                }

                GiveawayStatus effectiveStatus = model.Status;

                if ((model.Status == GiveawayStatus.Draft || model.Status == GiveawayStatus.PendingStart) && model.StartDate <= DateTime.Now)
                {
                    effectiveStatus = GiveawayStatus.OpenForEntries;
                }
                else if ((model.Status == GiveawayStatus.Draft || model.Status == GiveawayStatus.OpenForEntries) && model.StartDate >= DateTime.Now)
                {
                    effectiveStatus = GiveawayStatus.PendingStart;
                }
                else if (model.Status != GiveawayStatus.Ended && model.EndDate.HasValue && DateTime.Now >= model.EndDate.Value)
                {
                    effectiveStatus = GiveawayStatus.PickingWinners;
                }

                if (effectiveStatus != GiveawayStatus.Draft)
                {
                    model.Status = effectiveStatus;
                }
            }

            return(model);
        }
Exemplo n.º 2
0
        private static void FormatImagesToSave(IGiveawayBasicInfo model)
        {
            List <string> newImageList = new List <string>();

            for (int i = 0; i < model.ImageList.Count; i++)
            {
                if (!model.ImageList.ElementAt(i).Contains(Constants.DefaultGiveawayThumbnail))
                {
                    string newValue = model.ImageList.ElementAt(i).Split('/').LastOrDefault();
                    newImageList.Add(newValue);
                }
            }
            model.ImageList = newImageList;

            if (!string.IsNullOrWhiteSpace(model.FeaturedImage) && !(model.FeaturedImage.Contains(Constants.DefaultGiveawayThumbnail) || Constants.DefaultGiveawayThumbnail.Contains(model.FeaturedImage)))
            {
                model.FeaturedImage = model.FeaturedImage.Split('/').LastOrDefault();
            }
            else
            {
                model.FeaturedImage = null;
            }
        }