summaryrefslogtreecommitdiff
path: root/internal/processing/timeline/public.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/processing/timeline/public.go')
-rw-r--r--internal/processing/timeline/public.go32
1 files changed, 28 insertions, 4 deletions
diff --git a/internal/processing/timeline/public.go b/internal/processing/timeline/public.go
index 527000166..cfb58201d 100644
--- a/internal/processing/timeline/public.go
+++ b/internal/processing/timeline/public.go
@@ -93,9 +93,22 @@ func (p *Processor) publicTimelineGet(
// Check the visibility of passed status to requesting user.
ok, err := p.visFilter.StatusPublicTimelineable(ctx, requester, s)
if err != nil {
- log.Errorf(ctx, "error filtering status %s: %v", s.URI, err)
+ log.Errorf(ctx, "error checking status %s visibility: %v", s.URI, err)
+ return true // default assume not visible
+ } else if !ok {
+ return true
}
- return !ok
+
+ // Check if status been muted by requester from timelines.
+ muted, err := p.muteFilter.StatusMuted(ctx, requester, s)
+ if err != nil {
+ log.Errorf(ctx, "error checking status %s mutes: %v", s.URI, err)
+ return true // default assume muted
+ } else if muted {
+ return true
+ }
+
+ return false
},
// Post filtering funtion,
@@ -149,9 +162,20 @@ func (p *Processor) localTimelineGet(
// Check the visibility of passed status to requesting user.
ok, err := p.visFilter.StatusPublicTimelineable(ctx, requester, s)
if err != nil {
- log.Errorf(ctx, "error filtering status %s: %v", s.URI, err)
+ log.Errorf(ctx, "error checking status %s visibility: %v", s.URI, err)
+ } else if !ok {
+ return true
}
- return !ok
+
+ // Check if status been muted by requester from timelines.
+ muted, err := p.muteFilter.StatusMuted(ctx, requester, s)
+ if err != nil {
+ log.Errorf(ctx, "error checking status %s mutes: %v", s.URI, err)
+ } else if muted {
+ return true
+ }
+
+ return false
},
// Post filtering funtion,