Esempio n. 1
0
        protected override DriverResult Editor(FacebookPostPart part, IUpdateModel updater, dynamic shapeHelper)
        {
            FacebookPostPartSettingVM setting = part.Settings.GetModel <FacebookPostPartSettingVM>();
            var tokens = new Dictionary <string, object> {
                { "Content", part.ContentItem }
            };
            FacebookPostVM vm = new FacebookPostVM();

            updater.TryUpdateModel(vm, Prefix, null, null);

            var mapperConfiguration = new MapperConfiguration(cfg => {
                cfg.CreateMap <FacebookPostVM, FacebookPostPart>();
            });
            IMapper _mapper = mapperConfiguration.CreateMapper();

            _mapper.Map(vm, part);
            if (_orchardServices.WorkContext.HttpContext.Request.Form["FacebookType"] != null && _orchardServices.WorkContext.HttpContext.Request.Form["FacebookType"] == "1")
            {
                part.FacebookType = FacebookType.Post;
            }
            else
            {
                part.FacebookType = FacebookType.ShareLink;
            }

            if (vm.SelectedList != null && vm.SelectedList.Count() > 0)
            {
                part.AccountList = vm.SelectedList.Select(x => Int32.Parse(x)).ToArray();
            }
            return(Editor(part, shapeHelper));
        }
Esempio n. 2
0
        protected override DriverResult Editor(FacebookPostPart part, dynamic shapeHelper)
        {
            var            urlHelper = new UrlHelper(_orchardServices.WorkContext.HttpContext.Request.RequestContext);
            FacebookPostVM vm        = new FacebookPostVM();

            var mapperConfiguration = new MapperConfiguration(cfg => {
                cfg.CreateMap <FacebookPostPart, FacebookPostVM>();
            });
            IMapper _mapper = mapperConfiguration.CreateMapper();

            _mapper.Map(part, vm);
            if (string.IsNullOrEmpty(vm.FacebookType.ToString()))
            {
                vm.FacebookType = FacebookType.Post;
            }
            FacebookPostPartSettingVM setting = part.Settings.GetModel <FacebookPostPartSettingVM>();
            var tokens = new Dictionary <string, object> {
                { "Content", part.ContentItem }
            };

            if (!string.IsNullOrEmpty(setting.FacebookCaption))
            {
                vm.ShowFacebookCaption = false;
            }
            if (!string.IsNullOrEmpty(setting.FacebookDescription))
            {
                vm.ShowFacebookDescription = false;
            }
            if (!string.IsNullOrEmpty(setting.FacebookLink))
            {
                vm.ShowFacebookLink = false;
            }
            if (!string.IsNullOrEmpty(setting.FacebookMessage))
            {
                vm.ShowFacebookMessage = false;
            }
            if (!string.IsNullOrEmpty(setting.FacebookName))
            {
                vm.ShowFacebookName = false;
            }
            if (!string.IsNullOrEmpty(setting.FacebookPicture))
            {
                vm.ShowFacebookPicture = false;
            }
            else
            {
                vm.FacebookPicture = part.FacebookPicture;
            }
            List <FacebookAccountPart> listaccount = _facebookService.GetValidFacebookAccount();
            //   List<SelectListItem> lSelectList = new List<SelectListItem>();
            List <OptionList> optionList = new List <OptionList>();

            foreach (FacebookAccountPart fa in listaccount)
            {
                //  lSelectList.Insert(0, new SelectListItem() { Value = fa.Id.ToString(), Text = fa.AccountType + " - " + fa.DisplayAs });
                OptionList ol = new OptionList {
                    Value    = fa.Id.ToString(),
                    Text     = fa.AccountType + " - " + fa.DisplayAs,
                    ImageUrl = urlHelper.Content("~/Media/" + _shellSettings.Name + "/facebook_" + fa.UserIdFacebook + ".jpg"),
                    Selected = part.AccountList.Contains(fa.Id) ? "selected=\"selected\"" : ""
                };
                optionList.Add(ol);
            }
            vm.ListOption = optionList;

            return(ContentShape("Parts_FacebookPost",
                                () => shapeHelper.EditorTemplate(TemplateName: "Parts/FacebookPost",
                                                                 Model: vm,
                                                                 Prefix: Prefix)));
        }