예제 #1
0
        public ActionResult Edit_Post(PostEditModel model)
        {
            try
            {
                var coverImg = string.Empty;
                if (model.Cover != null)
                {
                    if (model.Cover[0] != null)
                    {
                        var apiReturn = CdnServices.UploadImagesAsync(model.Cover, model.PostType.ToString(), "Post/Stories").Result;
                        if (apiReturn != null)
                        {
                            if (apiReturn.Data != null)
                            {
                                var resultData = JsonConvert.DeserializeObject <List <string> >(apiReturn.Data.ToString());
                                var returnData = new List <string>();
                                if (resultData.HasData())
                                {
                                    coverImg = resultData[0];
                                }
                            }
                        }
                    }
                }

                var postInfo = new IdentityPost();
                postInfo.Id           = model.Id;
                postInfo.Title        = model.Title;
                postInfo.BodyContent  = model.BodyContent;
                postInfo.Description  = model.Description;
                postInfo.PostType     = model.PostType;
                postInfo.CreatedBy    = User.Identity.GetUserId();
                postInfo.IsHighlights = model.IsHighlights;
                postInfo.Status       = model.Status;
                postInfo.UrlFriendly  = string.Format("{0}-{1}", UrlFriendly.ConvertToUrlFriendly(model.Title), EpochTime.GetIntDate(DateTime.Now).ToString());

                if (!string.IsNullOrEmpty(coverImg))
                {
                    postInfo.Cover = coverImg;
                }
                else
                {
                    postInfo.Cover = model.CurrentCover;
                }

                model.CurrentCover = postInfo.Cover;

                _mainStore.Update(postInfo);

                this.AddNotification(ManagerResource.LB_UPDATE_SUCCESS, NotificationType.SUCCESS);
            }
            catch (Exception ex)
            {
                this.AddNotification(ManagerResource.COMMON_ERROR_EXTERNALSERVICE_TIMEOUT, NotificationType.ERROR);

                logger.Error("Failed to EditPost because: " + ex.ToString());
            }

            return(View(model));
        }
예제 #2
0
        public ActionResult FrontEndSettings(FrontEndSettingsViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var logoImg = string.Empty;
                    if (model.SiteLogoUpload != null)
                    {
                        if (model.SiteLogoUpload[0] != null)
                        {
                            var apiReturn = CdnServices.UploadImagesAsync(model.SiteLogoUpload, "0", "Home").Result;
                            if (apiReturn != null)
                            {
                                if (apiReturn.Data != null)
                                {
                                    var resultData = JsonConvert.DeserializeObject <List <string> >(apiReturn.Data.ToString());
                                    var returnData = new List <string>();
                                    if (resultData.HasData())
                                    {
                                        logoImg = resultData[0];
                                    }
                                }
                            }
                        }
                    }

                    if (string.IsNullOrEmpty(logoImg))
                    {
                        logoImg = model.CurrentLogo;
                    }

                    model.SystemSestings.General.SiteLogo = logoImg;
                    model.SystemSestings.Save(_frontSettingService);

                    this.AddNotification(ManagerResource.LB_UPDATE_SUCCESS, NotificationType.SUCCESS);
                }
                else
                {
                    this.AddNotificationModelStateErrors(ModelState);
                }
            }
            catch (Exception ex)
            {
                logger.Error("Failed to save FrontEndSettings because: " + ex.ToString());
            }
            return(View(model));
        }
예제 #3
0
        private IdentitySlideItem ExtractUpdateSlideItemFormData(SlideItemUpdateModel formData)
        {
            var coverImg = string.Empty;

            if (formData.ImageUpload != null)
            {
                if (formData.ImageUpload[0] != null)
                {
                    var apiReturn = CdnServices.UploadImagesAsync(formData.ImageUpload, formData.SlideId.ToString(), "Slide").Result;
                    if (apiReturn != null)
                    {
                        if (apiReturn.Data != null)
                        {
                            var resultData = JsonConvert.DeserializeObject <List <string> >(apiReturn.Data.ToString());
                            var returnData = new List <string>();
                            if (resultData.HasData())
                            {
                                coverImg = resultData[0];
                            }
                        }
                    }
                }
            }

            if (string.IsNullOrEmpty(coverImg))
            {
                coverImg = formData.CurrentImageUrl;
            }

            var myIdetity = new IdentitySlideItem();

            myIdetity.Id          = formData.Id;
            myIdetity.Title       = formData.Title;
            myIdetity.SlideId     = formData.SlideId;
            myIdetity.Description = formData.Description;
            myIdetity.ImageUrl    = coverImg;
            myIdetity.Link        = formData.Link;
            myIdetity.LinkAction  = formData.LinkAction;
            myIdetity.SortOrder   = formData.SortOrder;
            myIdetity.Status      = formData.Status;

            return(myIdetity);
        }
예제 #4
0
        public ActionResult UploadPostImage(List <HttpPostedFileBase> image)
        {
            var apiReturn = CdnServices.UploadImagesAsync(image, "1", "Post/Stories").Result;

            if (apiReturn != null)
            {
                if (apiReturn.Data != null)
                {
                    var resultData = JsonConvert.DeserializeObject <List <string> >(apiReturn.Data.ToString());
                    var returnData = new List <string>();
                    if (resultData.HasData())
                    {
                        foreach (var item in resultData)
                        {
                            returnData.Add(SocialCdnHelper.GetFullImgPath(item));
                        }
                    }

                    return(Json(new { success = true, data = returnData }));
                }
            }

            return(Json(new { success = false, data = "" }));
        }