Redesign and fix search, add custom timeline tab

This commit is contained in:
Zed
2019-09-19 01:01:47 +02:00
parent c1a136c6db
commit 7d7eb085ca
14 changed files with 242 additions and 273 deletions

View File

@@ -1,4 +1,4 @@
import strutils, uri
import strutils, sequtils, uri
import jester
@@ -14,24 +14,7 @@ proc createSearchRouter*(cfg: Config) =
if @"text".len > 200:
resp Http400, showError("Search input too long.", cfg.title)
let kind = parseEnum[QueryKind](@"kind", custom)
var query = Query(kind: kind, text: @"text")
if @"retweets".len == 0:
query.excludes.add "nativeretweets"
else:
query.includes.add "nativeretweets"
if @"replies".len == 0:
query.excludes.add "replies"
else:
query.includes.add "replies"
for f in validFilters:
if "f-" & f in params(request):
query.filters.add f
if "e-" & f in params(request):
query.excludes.add f
let query = initQuery(params(request))
case query.kind
of users:

View File

@@ -64,7 +64,7 @@ proc showTimeline*(name, after: string; query: Option[Query];
else:
let
timeline = await fetchMultiTimeline(names, after, agent, query)
html = renderTimelineSearch(timeline, prefs, path)
html = renderTweetSearch(timeline, prefs, path)
return renderMain(html, prefs, title, "Multi")
template respTimeline*(timeline: typed) =
@@ -84,9 +84,9 @@ proc createTimelineRouter*(cfg: Config) =
get "/@name/search":
cond '.' notin @"name"
let query = some initQuery(@"filter", @"include", @"not", @"sep", @"text", @"name")
respTimeline(await showTimeline(@"name", @"after", query,
cookiePrefs(), getPath(), cfg.title, ""))
let query = some initQuery(params(request), name=(@"name"))
respTimeline(await showTimeline(@"name", @"after", query, cookiePrefs(),
getPath(), cfg.title, ""))
get "/@name/replies":
cond '.' notin @"name"