예제 #1
0
        public ActionResult MediaItemsAdd(BackEndMediaItemsAdd backEndMediaItemsAdd, string id)
        {
            if (ModelState.IsValidOrRefresh())
            {
                List <string> multiFilePath;
                if (backEndMediaItemsAdd.Photos.IsNotEmptyOrWhiteSpace())
                {
                    multiFilePath = backEndMediaItemsAdd.Photos.Split(',').ToList().Select(s => s.Trim()).ToList();
                    ProcessMultiFilePath(multiFilePath, 1, backEndMediaItemsAdd);
                }

                if (backEndMediaItemsAdd.YouTubeVideos.IsNotEmptyOrWhiteSpace())
                {
                    multiFilePath = backEndMediaItemsAdd.YouTubeVideos.Split(',').ToList().Select(s => s.Trim()).ToList();
                    ProcessMultiFilePath(multiFilePath, 2, backEndMediaItemsAdd);
                }

                //Do not use ModelState.Clear(); to avoid losing all the previous results
                ModelState.Remove("IsAllActive");
                ModelState.Remove("Photos");
                ModelState.Remove("YouTubeVideos");
                backEndMediaItemsAdd = new BackEndMediaItemsAdd()
                {
                    MediaGalleryCode = id
                };
            }

            return(View(backEndMediaItemsAdd));
        }
예제 #2
0
        public ActionResult MediaItemsAdd(string id)
        {
            BackEndMediaItemsAdd backEndMediaItemsAdd = new BackEndMediaItemsAdd()
            {
                MediaGalleryCode = id
            };

            MediaGallery mediaGallery = new MediaGalleries().GetMediaGallery(id);

            if (mediaGallery.IsNull())
            {
                ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.ItemDoesNotExist);
                ViewData.IsFormVisible(false);
            }

            return(View(backEndMediaItemsAdd));
        }
예제 #3
0
        private void ProcessMultiFilePath(List <string> multiFilePath, int mediaTtpeId, BackEndMediaItemsAdd backEndMediaItemsAdd)
        {
            MediaItems mediaItems = new MediaItems();

            string allActiveLanguages = new Languages().GetAllLanguages(isActive: true).Select(i => i.LanguageCode).ToCSV('|');

            foreach (string filePath in multiFilePath)
            {
                int?result = mediaItems.Add(backEndMediaItemsAdd.MediaGalleryCode, filePath, mediaTtpeId, backEndMediaItemsAdd.IsAllActive, allActiveLanguages);
                switch (result)
                {
                case 0:
                    ModelState.AddResult(ViewData, ModelStateResult.Success, Resources.Strings.ItemSuccessfullyAdded + ": " + filePath);
                    break;

                case 2:
                    ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings_MediaGalleries.MediaItemAlreadyExists + ": " + filePath);
                    break;

                default:
                    ModelState.AddResult(ViewData, ModelStateResult.Error, Resources.Strings.UnexpectedError + ": " + filePath);
                    break;
                }
            }
        }