mirror of
https://github.com/zedeus/nitter
synced 2026-09-05 14:49:32 +00:00
Merge 67136919f4 into e4aefbc210
This commit is contained in:
commit
64ed27a789
3 changed files with 41 additions and 6 deletions
|
|
@ -129,7 +129,10 @@ proc renderTweetSearch*(results: Timeline; prefs: Prefs; path: string;
|
||||||
buildHtml(tdiv(class=containerClass)):
|
buildHtml(tdiv(class=containerClass)):
|
||||||
if query.fromUser.len > 1:
|
if query.fromUser.len > 1:
|
||||||
tdiv(class="timeline-header"):
|
tdiv(class="timeline-header"):
|
||||||
text query.fromUser.join(" | ")
|
for index, username in query.fromUser:
|
||||||
|
if index > 0:
|
||||||
|
text " | "
|
||||||
|
a(href=("/" & username)): text username
|
||||||
|
|
||||||
if query.fromUser.len > 0:
|
if query.fromUser.len > 0:
|
||||||
if query.kind != QueryKind.media or query.view != "gallery":
|
if query.kind != QueryKind.media or query.view != "gallery":
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ proc renderArticleCard(preview: ArticlePreview; prefs: Prefs): VNode =
|
||||||
if preview.previewText.len > 0:
|
if preview.previewText.len > 0:
|
||||||
p(class="card-description"): text preview.previewText
|
p(class="card-description"): text preview.previewText
|
||||||
|
|
||||||
proc renderHeader(tweet: Tweet; retweet: string; pinned: bool; prefs: Prefs;
|
proc renderHeader(tweet: Tweet; retweet: User; pinned: bool; prefs: Prefs;
|
||||||
path = ""): VNode =
|
path = ""): VNode =
|
||||||
buildHtml(tdiv):
|
buildHtml(tdiv):
|
||||||
if pinned:
|
if pinned:
|
||||||
|
|
@ -35,9 +35,11 @@ proc renderHeader(tweet: Tweet; retweet: string; pinned: bool; prefs: Prefs;
|
||||||
else: "Pinned Tweet"
|
else: "Pinned Tweet"
|
||||||
tdiv(class="pinned"):
|
tdiv(class="pinned"):
|
||||||
span: icon("pin", pinnedLabel)
|
span: icon("pin", pinnedLabel)
|
||||||
elif retweet.len > 0:
|
elif retweet.username.len > 0:
|
||||||
tdiv(class="retweet-header"):
|
tdiv(class="retweet-header"):
|
||||||
span: icon("retweet", retweet & " retweeted")
|
span:
|
||||||
|
a(href=("/" & retweet.username)):
|
||||||
|
icon("retweet", retweet.fullname & " retweeted")
|
||||||
|
|
||||||
tdiv(class="tweet-header"):
|
tdiv(class="tweet-header"):
|
||||||
a(class="tweet-avatar", href=("/" & tweet.user.username)):
|
a(class="tweet-avatar", href=("/" & tweet.user.username)):
|
||||||
|
|
@ -395,11 +397,11 @@ proc renderTweet*(tweet: Tweet; prefs: Prefs; path: string; class=""; index=0;
|
||||||
fullTweet = tweet
|
fullTweet = tweet
|
||||||
pinned = tweet.pinned
|
pinned = tweet.pinned
|
||||||
|
|
||||||
var retweet: string
|
var retweet: User
|
||||||
var tweet = fullTweet
|
var tweet = fullTweet
|
||||||
if tweet.retweet.isSome:
|
if tweet.retweet.isSome:
|
||||||
tweet = tweet.retweet.get
|
tweet = tweet.retweet.get
|
||||||
retweet = fullTweet.user.fullname
|
retweet = fullTweet.user
|
||||||
|
|
||||||
buildHtml(tdiv(class=("timeline-item " & divClass), data-username=tweet.user.username)):
|
buildHtml(tdiv(class=("timeline-item " & divClass), data-username=tweet.user.username)):
|
||||||
if not mainTweet:
|
if not mainTweet:
|
||||||
|
|
|
||||||
30
tests/test_linkified_users_1428.nim
Normal file
30
tests/test_linkified_users_1428.nim
Normal file
|
|
@ -0,0 +1,30 @@
|
||||||
|
import options, strutils, unittest
|
||||||
|
import karax/vdom
|
||||||
|
|
||||||
|
import ../src/types
|
||||||
|
import ../src/views/[search, tweet]
|
||||||
|
|
||||||
|
suite "linkified feed users":
|
||||||
|
test "multi-feed header links each username":
|
||||||
|
let timeline = Timeline(query: Query(kind: tweets, fromUser: @["alice", "bob"]))
|
||||||
|
|
||||||
|
let html = $renderTweetSearch(timeline, Prefs(), "")
|
||||||
|
|
||||||
|
check "href=\"/alice\"" in html
|
||||||
|
check "href=\"/bob\"" in html
|
||||||
|
|
||||||
|
test "retweet header links the retweeter":
|
||||||
|
let original = Tweet(
|
||||||
|
available: true,
|
||||||
|
user: User(username: "author", fullname: "Author")
|
||||||
|
)
|
||||||
|
let repost = Tweet(
|
||||||
|
available: true,
|
||||||
|
user: User(username: "booster", fullname: "Booster"),
|
||||||
|
retweet: some(original)
|
||||||
|
)
|
||||||
|
|
||||||
|
let html = $renderTweet(repost, Prefs(), "")
|
||||||
|
|
||||||
|
check "href=\"/booster\"" in html
|
||||||
|
check "Booster retweeted" in html
|
||||||
Loading…
Reference in a new issue