diff options
author | 2022-07-04 15:41:20 +0200 | |
---|---|---|
committer | 2022-07-04 15:41:20 +0200 | |
commit | 4a69651a7c7945b11760d9ca82d9945834f01f73 (patch) | |
tree | bdcb623ef2c09c4feb2ff3b5e8d36dce521eb7af /internal/typeutils/internaltoas.go | |
parent | [chore] configure instance.Version for testrig (#659) (diff) | |
download | gotosocial-4a69651a7c7945b11760d9ca82d9945834f01f73.tar.xz |
[bugfix] Visibility fixes (#687)
* test self boost
* only CC to public when necessary
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 |