diff --git a/internal/webserver/handler_lists.go b/internal/webserver/handler_lists.go index 99947ef..90be274 100644 --- a/internal/webserver/handler_lists.go +++ b/internal/webserver/handler_lists.go @@ -8,6 +8,8 @@ import ( type ListData struct { Title string + HeaderUserID scraper.UserID + HeaderTweetID scraper.TweetID UserIDs []scraper.UserID } diff --git a/internal/webserver/handler_user_feed.go b/internal/webserver/handler_user_feed.go index 1b1e3f0..1d86940 100644 --- a/internal/webserver/handler_user_feed.go +++ b/internal/webserver/handler_user_feed.go @@ -116,11 +116,13 @@ func (app *Application) UserFollowees(w http.ResponseWriter, r *http.Request, us data, trove := NewListData(app.Profile.GetFollowees(user.ID)) trove.Users[user.ID] = user // Not loaded otherwise; needed to profile image in the login button on the sidebar data.Title = fmt.Sprintf("Followed by @%s", user.Handle) + data.HeaderUserID = user.ID app.buffered_render_page(w, "tpl/list.tpl", PageGlobalData{TweetTrove: trove}, data) } func (app *Application) UserFollowers(w http.ResponseWriter, r *http.Request, user scraper.User) { data, trove := NewListData(app.Profile.GetFollowers(user.ID)) trove.Users[user.ID] = user data.Title = fmt.Sprintf("@%s's followers", user.Handle) + data.HeaderUserID = user.ID app.buffered_render_page(w, "tpl/list.tpl", PageGlobalData{TweetTrove: trove}, data) } diff --git a/internal/webserver/static/styles.css b/internal/webserver/static/styles.css index 551748c..de8579a 100644 --- a/internal/webserver/static/styles.css +++ b/internal/webserver/static/styles.css @@ -216,14 +216,14 @@ h3 { border: 1px solid var(--color-outline-gray); } -.user-feed-header { +.user-header { border-bottom: 1px solid var(--color-outline-gray); } -.user-feed-header .author-info { +.user-header .author-info { font-size: 1.3em; padding: 1em; } -.user-feed-header .profile-image { +.user-header .profile-image { width: 8em; height: 8em; } @@ -354,7 +354,7 @@ ul.quick-links { align-items: center; gap: 0.3em; } -.user-feed-header-info-container { +.user-header-info-container { padding: 2em; border-bottom: 1px solid var(--color-outline-gray); } diff --git a/internal/webserver/tpl/includes/user_header.tpl b/internal/webserver/tpl/includes/user_header.tpl new file mode 100644 index 0000000..512a0eb --- /dev/null +++ b/internal/webserver/tpl/includes/user_header.tpl @@ -0,0 +1,59 @@ +{{define "user-header"}} +