diff options
author | crupest <crupest@outlook.com> | 2021-02-13 15:57:29 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2021-02-13 15:57:29 +0800 |
commit | 2d9ca08366d91c22877cee143f43a062d4efda2d (patch) | |
tree | fe1aaea4f34c227b2bcf5fdad77c7e2a85b7923b /BackEnd/Timeline/Models/Mapper/TimelineMapper.cs | |
parent | 57b95cf3c53c0248355ffa46214224cdba4bf79b (diff) | |
download | timeline-2d9ca08366d91c22877cee143f43a062d4efda2d.tar.gz timeline-2d9ca08366d91c22877cee143f43a062d4efda2d.tar.bz2 timeline-2d9ca08366d91c22877cee143f43a062d4efda2d.zip |
feat: Timeline add postable.
Diffstat (limited to 'BackEnd/Timeline/Models/Mapper/TimelineMapper.cs')
-rw-r--r-- | BackEnd/Timeline/Models/Mapper/TimelineMapper.cs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/BackEnd/Timeline/Models/Mapper/TimelineMapper.cs b/BackEnd/Timeline/Models/Mapper/TimelineMapper.cs index 8dfd7b8d..e4304311 100644 --- a/BackEnd/Timeline/Models/Mapper/TimelineMapper.cs +++ b/BackEnd/Timeline/Models/Mapper/TimelineMapper.cs @@ -51,6 +51,16 @@ namespace Timeline.Models.Mapper manageable = await _timelineService.HasManagePermission(entity.Id, userId.Value);
}
+ bool postable;
+ if (userId is null)
+ {
+ postable = false;
+ }
+ else
+ {
+ postable = await _timelineService.IsMemberOf(entity.Id, userId.Value);
+ }
+
return new HttpTimeline(
uniqueId: entity.UniqueId,
title: string.IsNullOrEmpty(entity.Title) ? timelineName : entity.Title,
@@ -66,6 +76,7 @@ namespace Timeline.Models.Mapper isHighlight: await _highlightTimelineService.IsHighlightTimeline(entity.Id),
isBookmark: userId is not null && await _bookmarkTimelineService.IsBookmark(userId.Value, entity.Id, false, false),
manageable: manageable,
+ postable: postable,
links: new HttpTimelineLinks(
self: urlHelper.ActionLink(nameof(TimelineController.TimelineGet), nameof(TimelineController)[0..^nameof(Controller).Length], new { timeline = timelineName }),
posts: urlHelper.ActionLink(nameof(TimelinePostController.List), nameof(TimelinePostController)[0..^nameof(Controller).Length], new { timeline = timelineName })
|