diff options
Diffstat (limited to 'internal/typeutils/internaltoas.go')
-rw-r--r-- | internal/typeutils/internaltoas.go | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/internal/typeutils/internaltoas.go b/internal/typeutils/internaltoas.go index 81f4d9a31..2e6bd3091 100644 --- a/internal/typeutils/internaltoas.go +++ b/internal/typeutils/internaltoas.go @@ -815,19 +815,23 @@ func (c *converter) BoostToAS(ctx context.Context, boostWrapperStatus *gtsmodel. announce.SetActivityStreamsTo(toProp) // set the cc - boostedURI, err := url.Parse(boostedAccount.URI) + ccProp := streams.NewActivityStreamsCcProperty() + boostedAccountURI, err := url.Parse(boostedAccount.URI) if err != nil { return nil, fmt.Errorf("BoostToAS: error parsing uri %s: %s", boostedAccount.URI, err) } + ccProp.AppendIRI(boostedAccountURI) - publicURI, err := url.Parse(pub.PublicActivityPubIRI) - if err != nil { - return nil, fmt.Errorf("BoostToAS: error parsing uri %s: %s", pub.PublicActivityPubIRI, err) + // maybe CC it to public depending on the boosted status visibility + switch boostWrapperStatus.BoostOf.Visibility { + case gtsmodel.VisibilityPublic, gtsmodel.VisibilityUnlocked: + publicURI, err := url.Parse(pub.PublicActivityPubIRI) + if err != nil { + return nil, fmt.Errorf("BoostToAS: error parsing uri %s: %s", pub.PublicActivityPubIRI, err) + } + ccProp.AppendIRI(publicURI) } - ccProp := streams.NewActivityStreamsCcProperty() - ccProp.AppendIRI(boostedURI) - ccProp.AppendIRI(publicURI) announce.SetActivityStreamsCc(ccProp) return announce, nil |