···
CollaboratingRepos: pinnedCollaboratingRepos,
DidHandleMap: didHandleMap,
150
-
UserDid: ident.DID.String(),
151
-
UserHandle: ident.Handle.String(),
153
-
FollowStatus: followStatus,
154
-
Followers: followers,
155
-
Following: following,
150
+
UserDid: ident.DID.String(),
151
+
UserHandle: ident.Handle.String(),
153
+
FollowStatus: followStatus,
154
+
FollowersCount: followers,
155
+
FollowingCount: following,
ProfileTimeline: timeline,
···
DidHandleMap: map[string]string{ident.DID.String(): ident.Handle.String()},
199
-
UserDid: ident.DID.String(),
199
+
UserDid: ident.DID.String(),
200
+
UserHandle: ident.Handle.String(),
202
+
FollowStatus: followStatus,
203
+
FollowersCount: followers,
204
+
FollowingCount: following,
209
+
func (s *State) followersPage(w http.ResponseWriter, r *http.Request) {
210
+
ident, ok := r.Context().Value("resolvedId").(identity.Identity)
212
+
s.pages.Error404(w)
216
+
profile, err := db.GetProfile(s.db, ident.DID.String())
218
+
log.Printf("getting profile data for %s: %s", ident.DID.String(), err)
221
+
loggedInUser := s.oauth.GetUser(r)
223
+
followers, err := db.GetFollowers(s.db, ident.DID.String())
225
+
log.Printf("getting followers for %s: %s", ident.DID.String(), err)
227
+
followerCards := make([]pages.FollowCard, len(followers))
228
+
for i, follower := range followers {
229
+
ident, err := s.idResolver.ResolveIdent(r.Context(), follower.UserDid)
231
+
log.Printf("can't resolve handle for %s: %s", follower.UserDid, err)
234
+
profile, err := db.GetProfile(s.db, follower.UserDid)
236
+
log.Printf("can't get profile for %s: %s", follower.UserDid, err)
239
+
followStatus := db.IsNotFollowing
240
+
if loggedInUser != nil {
241
+
followStatus = db.GetFollowStatus(s.db, loggedInUser.Did, follower.UserDid)
243
+
followerCards[i] = pages.FollowCard{
244
+
UserDid: follower.UserDid,
UserHandle: ident.Handle.String(),
246
+
FollowStatus: followStatus,
251
+
followStatus := db.IsNotFollowing
252
+
if loggedInUser != nil {
253
+
followStatus = db.GetFollowStatus(s.db, loggedInUser.Did, ident.DID.String())
256
+
followersCount, followingCount, err := db.GetFollowerFollowingCount(s.db, ident.DID.String())
258
+
log.Printf("getting follow stats repos for %s: %s", ident.DID.String(), err)
261
+
s.pages.FollowersPage(w, pages.FollowersPageParams{
262
+
LoggedInUser: loggedInUser,
263
+
Followers: followerCards,
264
+
Card: pages.ProfileCard{
265
+
UserDid: ident.DID.String(),
266
+
UserHandle: ident.Handle.String(),
268
+
FollowStatus: followStatus,
269
+
FollowersCount: followersCount,
270
+
FollowingCount: followingCount,
275
+
func (s *State) followingPage(w http.ResponseWriter, r *http.Request) {
276
+
ident, ok := r.Context().Value("resolvedId").(identity.Identity)
278
+
s.pages.Error404(w)
282
+
profile, err := db.GetProfile(s.db, ident.DID.String())
284
+
log.Printf("getting profile data for %s: %s", ident.DID.String(), err)
287
+
loggedInUser := s.oauth.GetUser(r)
289
+
following, err := db.GetFollowing(s.db, ident.DID.String())
291
+
log.Printf("getting following for %s: %s", ident.DID.String(), err)
293
+
followingCards := make([]pages.FollowCard, len(following))
294
+
for i, following := range following {
295
+
ident, err := s.idResolver.ResolveIdent(r.Context(), following.SubjectDid)
297
+
log.Printf("can't resolve handle for %s: %s", following.SubjectDid, err)
300
+
profile, err := db.GetProfile(s.db, following.SubjectDid)
302
+
log.Printf("can't get profile for %s: %s", following.SubjectDid, err)
305
+
followStatus := db.IsNotFollowing
306
+
if loggedInUser != nil {
307
+
followStatus = db.GetFollowStatus(s.db, loggedInUser.Did, following.SubjectDid)
309
+
followingCards[i] = pages.FollowCard{
310
+
UserDid: following.SubjectDid,
311
+
UserHandle: ident.Handle.String(),
FollowStatus: followStatus,
203
-
Followers: followers,
204
-
Following: following,
317
+
followStatus := db.IsNotFollowing
318
+
if loggedInUser != nil {
319
+
followStatus = db.GetFollowStatus(s.db, loggedInUser.Did, ident.DID.String())
322
+
followersCount, followingCount, err := db.GetFollowerFollowingCount(s.db, ident.DID.String())
324
+
log.Printf("getting follow stats repos for %s: %s", ident.DID.String(), err)
327
+
s.pages.FollowingPage(w, pages.FollowingPageParams{
328
+
LoggedInUser: loggedInUser,
329
+
Following: followingCards,
330
+
Card: pages.ProfileCard{
331
+
UserDid: ident.DID.String(),
332
+
UserHandle: ident.Handle.String(),
334
+
FollowStatus: followStatus,
335
+
FollowersCount: followersCount,
336
+
FollowingCount: followingCount,