Moar Fixes
This commit is contained in:
parent
c9b982890a
commit
bc63e0f16d
2 changed files with 23 additions and 2 deletions
|
|
@ -119,10 +119,22 @@ public class ActivityPubController {
|
||||||
return ResponseEntity.notFound().build();
|
return ResponseEntity.notFound().build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
User user = userOpt.get();
|
||||||
String outboxUrl = baseUrl + "/users/" + username + "/outbox";
|
String outboxUrl = baseUrl + "/users/" + username + "/outbox";
|
||||||
|
|
||||||
// TODO: Fetch actual activities from database
|
// Count public activities for this user
|
||||||
OrderedCollection collection = OrderedCollection.empty(outboxUrl);
|
// Mastodon and other ActivityPub servers primarily use the totalItems count
|
||||||
|
long activityCount = activityRepository.countByUserIdAndVisibility(
|
||||||
|
user.getId(),
|
||||||
|
Activity.Visibility.PUBLIC
|
||||||
|
);
|
||||||
|
|
||||||
|
OrderedCollection collection = OrderedCollection.builder()
|
||||||
|
.context("https://www.w3.org/ns/activitystreams")
|
||||||
|
.type("OrderedCollection")
|
||||||
|
.id(outboxUrl)
|
||||||
|
.totalItems((int) activityCount)
|
||||||
|
.build();
|
||||||
|
|
||||||
return ResponseEntity.ok(collection);
|
return ResponseEntity.ok(collection);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -88,6 +88,15 @@ public interface ActivityRepository extends JpaRepository<Activity, UUID> {
|
||||||
*/
|
*/
|
||||||
long countByUserId(UUID userId);
|
long countByUserId(UUID userId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Count activities for a user by visibility.
|
||||||
|
*
|
||||||
|
* @param userId the user ID
|
||||||
|
* @param visibility the visibility level
|
||||||
|
* @return count of activities
|
||||||
|
*/
|
||||||
|
long countByUserIdAndVisibility(UUID userId, Activity.Visibility visibility);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Find an activity by ID and user ID.
|
* Find an activity by ID and user ID.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue