protected virtual BulletinViewModel GetViewModel(BulletinBase bulletin, ActivityFeedOptions options)
        {
            var model = bulletin.Map <BulletinViewModel>();

            model.CanEdit    = _bulletinsService.CanEdit(bulletin);
            model.Links      = options.Links;
            model.IsReadOnly = options.IsReadOnly;

            model.HeaderInfo       = bulletin.Map <IntranetActivityDetailsHeaderViewModel>();
            model.HeaderInfo.Dates = bulletin.PublishDate.ToDateTimeFormat().ToEnumerable();
            model.HeaderInfo.Owner = _memberService.Get(bulletin).Map <MemberViewModel>();
            model.HeaderInfo.Links = options.Links;

            return(model);
        }
        protected virtual BulletinEditModel GetEditViewModel(BulletinBase bulletin, ActivityLinks links)
        {
            var model         = bulletin.Map <BulletinEditModel>();
            var mediaSettings = _bulletinsService.GetMediaSettings();

            FillMediaSettingsData(mediaSettings);

            model.MediaRootId = mediaSettings.MediaRootId;
            model.Links       = links;

            return(model);
        }
        protected virtual BulletinItemViewModel GetItemViewModel(BulletinBase bulletin, IActivityLinks links)
        {
            var model = bulletin.Map <BulletinItemViewModel>();
            var owner = _memberService.Get(bulletin);

            model.Links    = links;
            model.MediaIds = bulletin.MediaIds;

            model.HeaderInfo       = bulletin.Map <IntranetActivityItemHeaderViewModel>();
            model.HeaderInfo.Owner = owner.Map <MemberViewModel>();
            model.HeaderInfo.Title = owner.DisplayedName;
            model.HeaderInfo.Links = links;

            model.LightboxGalleryPreviewInfo = new LightboxGalleryPreviewModel
            {
                MediaIds             = bulletin.MediaIds,
                DisplayedImagesCount = DisplayedImagesCount,
                ActivityId           = bulletin.Id,
                ActivityType         = bulletin.Type,
            };
            return(model);
        }