Example #1
0
 protected void SaveBannerModel(MiniSiteBannerModel model)
 {
     if (model.Id != 0)
     {
         var banner       = _miniSiteBannerService.GetById(model.Id);
         int oldPictureId = banner.GetLocalized(x => x.BannerPictureId, model.WorkingLanguage, false);
         var equalpics    = (banner.GetLocalized(x => x.BannerPictureId, _languageService.GetAllLanguages().Where(x => x.UniqueSeoCode == "ru").First().Id, false) ==
                             banner.GetLocalized(x => x.BannerPictureId, _languageService.GetAllLanguages().Where(x => x.UniqueSeoCode == "en").First().Id, false));
         if (oldPictureId != 0 && oldPictureId != model.PictureId && !equalpics)
         {
             var oldPic = _pictureService.GetPictureById(oldPictureId);
             if (oldPic != null)
             {
                 _pictureService.DeletePicture(oldPic);
             }
         }
         UpdateBannerLocale(banner, model, model.WorkingLanguage);
     }
     else
     {
         var banner = new BannerMiniSite();
         banner.UserMiniSiteId = _workContext.CurrentCustomer.UserMiniSite.Id;
         _miniSiteBannerService.Insert(banner);
         foreach (var lang in model.Languages.Where(x => x.Selected))
         {
             UpdateBannerLocale(banner, model, lang.LanguageId);
         }
     }
 }
Example #2
0
        protected void UpdateBannerLocale(BannerMiniSite banner, MiniSiteBannerModel model, int languageId)
        {
            _localizedEntityService.SaveLocalizedValue(banner, x => x.BannerTitle, model.TitleTag, languageId);
            _localizedEntityService.SaveLocalizedValue(banner, x => x.BannerAlt, model.AltTag, languageId);
            _localizedEntityService.SaveLocalizedValue(banner, x => x.BannerUrl, model.Url, languageId);

            _localizedEntityService.SaveLocalizedValue(banner, x => x.BannerPictureId, model.PictureId, languageId);
        }
Example #3
0
        public void Update(BannerMiniSite banner)
        {
            if (banner == null)
            {
                throw new ArgumentNullException("BannerMiniSite");
            }
            _repository.Update(banner);

            _eventPublisher.EntityUpdated(banner);
        }
Example #4
0
        public void Delete(BannerMiniSite banner)
        {
            if (banner == null)
            {
                throw new ArgumentNullException("BannerMiniSite");
            }
            if (banner.BannerPictureId != 0)
            {
                _pictureService.DeletePicture(_pictureService.GetPictureById(banner.BannerPictureId));
            }
            _repository.Delete(banner);

            _eventPublisher.EntityDeleted(banner);
        }
Example #5
0
        protected MiniSiteBannerModel PrepareBannerOverviewModel(BannerMiniSite banner, int languageId)
        {
            var bannerModel = new MiniSiteBannerModel();

            bannerModel.Id        = banner.Id;
            bannerModel.Languages = new List <BuyingRequestLanguageModel>();
            foreach (var lang in _languageService.GetAllLanguages()
                     .Where(x => x.UniqueSeoCode == "ru" || x.UniqueSeoCode == "en"))
            {
                if (banner.GetLocalized(x => x.BannerPictureId, lang.Id, false) != 0)
                {
                    var languageModel = new BuyingRequestLanguageModel()
                    {
                        LanguageId   = lang.Id,
                        Selected     = true,
                        LanguageName = lang.Name,
                        FlagImageUrl = lang.FlagImageFileName
                    };
                    bannerModel.Languages.Add(languageModel);
                }
                else
                {
                    var languageModel = new BuyingRequestLanguageModel()
                    {
                        LanguageId   = lang.Id,
                        Selected     = false,
                        LanguageName = lang.Name,
                        FlagImageUrl = lang.FlagImageFileName
                    };
                    bannerModel.Languages.Add(languageModel);
                }
            }
            bannerModel.AltTag    = banner.GetLocalized(x => x.BannerAlt, languageId, false);
            bannerModel.TitleTag  = banner.GetLocalized(x => x.BannerTitle, languageId, false);
            bannerModel.Url       = banner.GetLocalized(x => x.BannerUrl, languageId, false);
            bannerModel.PictureId = banner.GetLocalized(x => x.BannerPictureId, languageId, false);
            if (bannerModel.PictureId != null)
            {
                bannerModel.Picture = new PictureModel()
                {
                    ImageUrl = _pictureService.GetPictureUrl(bannerModel.PictureId, showDefaultPicture: false)
                };
            }
            return(bannerModel);
        }