mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[feature] Federate pinned posts (aka featuredCollection
) in and out (#1560)
* start fiddling * the ol' fiddle + update * start working on fetching statuses * poopy doopy doo where r u uwu * further adventures in featuring statuses * finishing up * fmt * simply status unpin loop * move empty featured check back to caller function * remove unnecessary log.WithContext calls * remove unnecessary IsIRI() checks * add explanatory comment about status URIs * change log level to error * better test names
This commit is contained in:
@@ -181,9 +181,14 @@ func (c *converter) ASRepresentationToAccount(ctx context.Context, accountable a
|
||||
acct.FollowersURI = accountable.GetActivityStreamsFollowers().GetIRI().String()
|
||||
}
|
||||
|
||||
// FeaturedURI
|
||||
if accountable.GetTootFeatured() != nil && accountable.GetTootFeatured().GetIRI() != nil {
|
||||
acct.FeaturedCollectionURI = accountable.GetTootFeatured().GetIRI().String()
|
||||
// FeaturedURI aka pinned collection:
|
||||
// Only trust featured URI if it has at least two domains,
|
||||
// from the right, in common with the domain of the account
|
||||
if featured := accountable.GetTootFeatured(); featured != nil && featured.IsIRI() {
|
||||
if featuredURI := featured.GetIRI(); // nocollapse
|
||||
featuredURI != nil && dns.CompareDomainName(acct.Domain, featuredURI.Host) >= 2 {
|
||||
acct.FeaturedCollectionURI = featuredURI.String()
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: FeaturedTagsURI
|
||||
|
Reference in New Issue
Block a user