mirror of https://github.com/zedeus/nitter
Enable user search, disable tweet search
This commit is contained in:
parent
d1f80446ef
commit
9d9849054c
|
@ -13,34 +13,38 @@ export search
|
|||
|
||||
proc createSearchRouter*(cfg: Config) =
|
||||
router search:
|
||||
# get "/search/?":
|
||||
# let q = @"q"
|
||||
# if q.len > 500:
|
||||
# resp Http400, showError("Search input too long.", cfg)
|
||||
get "/search/?":
|
||||
let q = @"q"
|
||||
if q.len > 500:
|
||||
resp Http400, showError("Search input too long.", cfg)
|
||||
|
||||
# let
|
||||
# prefs = cookiePrefs()
|
||||
# query = initQuery(params(request))
|
||||
# title = "Search" & (if q.len > 0: " (" & q & ")" else: "")
|
||||
let
|
||||
prefs = cookiePrefs()
|
||||
query = initQuery(params(request))
|
||||
title = "Search" & (if q.len > 0: " (" & q & ")" else: "")
|
||||
|
||||
# case query.kind
|
||||
# of users:
|
||||
# if "," in q:
|
||||
# redirect("/" & q)
|
||||
# var users: Result[User]
|
||||
# try:
|
||||
# users = await getUserSearch(query, getCursor())
|
||||
# except InternalError:
|
||||
# users = Result[User](beginning: true, query: query)
|
||||
# resp renderMain(renderUserSearch(users, prefs), request, cfg, prefs, title)
|
||||
# of tweets:
|
||||
# let
|
||||
# tweets = await getGraphSearch(query, getCursor())
|
||||
# rss = "/search/rss?" & genQueryUrl(query)
|
||||
# resp renderMain(renderTweetSearch(tweets, prefs, getPath()),
|
||||
# request, cfg, prefs, title, rss=rss)
|
||||
# else:
|
||||
# resp Http404, showError("Invalid search", cfg)
|
||||
case query.kind
|
||||
of users:
|
||||
if "," in q:
|
||||
redirect("/" & q)
|
||||
var users: Result[User]
|
||||
try:
|
||||
users = await getUserSearch(query, getCursor())
|
||||
except InternalError:
|
||||
users = Result[User](beginning: true, query: query)
|
||||
resp renderMain(renderUserSearch(users, prefs), request, cfg, prefs, title)
|
||||
of tweets:
|
||||
# let
|
||||
# tweets = await getGraphSearch(query, getCursor())
|
||||
# rss = "/search/rss?" & genQueryUrl(query)
|
||||
# resp renderMain(renderTweetSearch(tweets, prefs, getPath()),
|
||||
# request, cfg, prefs, title, rss=rss)
|
||||
var fakeTimeline = Timeline(beginning: true)
|
||||
fakeTimeline.content.add Tweet(tombstone: "Tweet search is unavailable for now")
|
||||
|
||||
resp renderMain(renderTweetSearch(fakeTimeline, prefs, getPath()), request, cfg, prefs, title)
|
||||
else:
|
||||
resp Http404, showError("Invalid search", cfg)
|
||||
|
||||
get "/hashtag/@hash":
|
||||
redirect("/search?q=" & encodeUrl("#" & @"hash"))
|
||||
|
|
|
@ -56,7 +56,10 @@ proc fetchProfile*(after: string; query: Query; skipRail=false;
|
|||
of posts: await getGraphUserTweets(userId, TimelineKind.tweets, after)
|
||||
of replies: await getGraphUserTweets(userId, TimelineKind.replies, after)
|
||||
of media: await getGraphUserTweets(userId, TimelineKind.media, after)
|
||||
else: await getGraphSearch(query, after)
|
||||
else: Profile(tweets: Timeline(beginning: true, content: @[Chain(content:
|
||||
@[Tweet(tombstone: "Tweet search is unavailable for now")]
|
||||
)]))
|
||||
# else: await getGraphSearch(query, after)
|
||||
|
||||
result.user = await user
|
||||
result.photoRail = await rail
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# SPDX-License-Identifier: AGPL-3.0-only
|
||||
import strutils, strformat, sequtils, algorithm, uri, options
|
||||
import strutils, strformat, algorithm, uri, options
|
||||
import karax/[karaxdsl, vdom]
|
||||
|
||||
import ".."/[types, query, formatters]
|
||||
|
@ -123,5 +123,6 @@ proc renderTimelineTweets*(results: Timeline; prefs: Prefs; path: string;
|
|||
else:
|
||||
renderThread(thread.content, prefs, path)
|
||||
|
||||
renderMore(results.query, results.bottom)
|
||||
if results.bottom.len > 0:
|
||||
renderMore(results.query, results.bottom)
|
||||
renderToTop()
|
||||
|
|
Loading…
Reference in New Issue