Esempio n. 1
0
        public async Task <IHttpActionResult> Edit(GroupEditModel model)
        {
            var group = _groupService.Get(model.Id);

            if (group == null || group.IsHidden)
            {
                return(NotFound());
            }

            if (!_groupService.CanEdit(group))
            {
                return(StatusCode(HttpStatusCode.Forbidden));
            }

            group         = Mapper.Map(model, group);
            group.ImageId = model.Media?.Split(',').First().ToNullableInt();
            var createdMedias = _mediaHelper.CreateMedia(model, MediaFolderTypeEnum.GroupsContent).ToList();

            if (createdMedias.Any())
            {
                group.ImageId = createdMedias.First();
            }
            await _groupService.EditAsync(group);

            await _groupMediaService.GroupTitleChangedAsync(group.Id, group.Title);

            return(Ok(_groupLinkProvider.GetGroupRoomLink(group.Id)));
        }
 public IActivityLinks GetLinks(GroupActivityTransferModel activity)
 {
     return(new ActivityLinks
     {
         Feed = _groupLinkProvider.GetGroupRoomLink(activity.GroupId),
         Create = _activityPageHelper.GetCreatePageUrl(activity.Type)?.AddGroupId(activity.GroupId),
         Details = _activityPageHelper.GetDetailsPageUrl(activity.Type, activity.Id).AddGroupId(activity.GroupId),
         Edit = _activityPageHelper.GetEditPageUrl(activity.Type, activity.Id).AddGroupId(activity.GroupId),
         Owner = GetProfileLink(activity.OwnerId),
     });
 }
Esempio n. 3
0
        private GroupInfo GetInfoForGroup(Guid groupId)
        {
            var group            = _groupService.Get(groupId);
            var groupOverviewUrl = _groupLinkProvider.GetGroupRoomLink(groupId);

            return(new GroupInfo(
                       title: group.Title,
                       url: groupOverviewUrl));
        }
Esempio n. 4
0
        public GroupViewModel GetGroupViewModel(Guid groupId)
        {
            var group = _groupService.Get(groupId);

            var currentMemberId = _memberService.GetCurrentMemberId();

            var groupModel = group.Map <GroupViewModel>();

            groupModel.IsMember     = _groupMemberService.IsGroupMember(group.Id, currentMemberId);
            groupModel.IsCreator    = group.CreatorId == currentMemberId;
            groupModel.MembersCount = _groupMemberService.GetMembersCount(group.Id);
            groupModel.Creator      = _memberService.Get(group.CreatorId).ToViewModel();
            groupModel.GroupUrl     = _groupLinkProvider.GetGroupRoomLink(group.Id);

            if (groupModel.HasImage)
            {
                groupModel.GroupImageUrl = _imageHelper.GetImageWithPreset(_mediaModelService.Get(group.ImageId.Value).Url, UmbracoAliases.ImagePresets.GroupImageThumbnail);
            }

            return(groupModel);
        }
Esempio n. 5
0
        public GroupInvitationDataModel GetGroupInvitationDataModel(
            NotificationTypeEnum notificationType,
            Guid groupId,
            Guid notifierId,
            Guid receiverId)
        {
            var group                    = _groupService.Get(groupId);
            var groupRoomLink            = _groupLinkProvider.GetGroupRoomLink(groupId);
            var groupInvitationDataModel = new GroupInvitationDataModel
            {
                Url              = groupRoomLink,
                Title            = group.Title,
                NotificationType = notificationType,
                GroupId          = groupId,
                NotifierId       = notifierId,
                ReceiverId       = receiverId
            };

            return(groupInvitationDataModel);
        }