Show threads in the UI

This commit is contained in:
Alessio 2023-10-12 09:47:02 -07:00
parent cf41786843
commit f4ccc075f6
2 changed files with 26 additions and 0 deletions

View File

@ -380,6 +380,22 @@ func TestTombstoneTweet(t *testing.T) {
assert.Equal("This Tweet was deleted by the Tweet author", strings.TrimSpace(tombstone.FirstChild.Data))
}
func TestTweetThread(t *testing.T) {
assert := assert.New(t)
require := require.New(t)
resp := do_request(httptest.NewRequest("GET", "/tweet/1698762403163304110", nil))
require.Equal(resp.StatusCode, 200)
root, err := html.Parse(resp.Body)
require.NoError(err)
reply_chains := cascadia.QueryAll(root, selector(".reply-chain"))
require.Len(reply_chains, 2)
thread_chain := reply_chains[0]
assert.Len(cascadia.QueryAll(thread_chain, selector(".reply-tweet")), 7)
}
// Follow and unfollow
// -------------------

View File

@ -11,6 +11,16 @@
{{template "tweet" (dict "TweetID" .MainTweetID "RetweetID" 0 "QuoteNestingLevel" 0)}}
</div>
{{if (len .ThreadIDs)}}
<div class="reply-chain">
{{range .ThreadIDs}}
<div class="reply-tweet">
{{template "tweet" (dict "TweetID" . "RetweetID" 0 "QuoteNestingLevel" 0)}}
</div>
{{end}}
</div>
{{end}}
{{range .ReplyChains}}
<div class="reply-chain">
{{range .}}