nitter/src/routes/embed.nim

37 lines
918 B
Nim
Raw Normal View History

2021-12-27 02:37:38 +01:00
# SPDX-License-Identifier: AGPL-3.0-only
2022-06-04 02:18:26 +02:00
import asyncdispatch, strutils, strformat, options
2022-01-14 18:01:47 +01:00
import jester, karax/vdom
import ".."/[types, api]
import ../views/[embed, tweet, general]
2022-01-14 18:01:47 +01:00
import router_utils
2019-12-06 15:15:56 +01:00
2022-01-14 19:35:01 +01:00
export api, embed, vdom, tweet, general, router_utils
2019-12-06 15:15:56 +01:00
proc createEmbedRouter*(cfg: Config) =
router embed:
get "/i/videos/tweet/@id":
let tweet = await getGraphTweetResult(@"id")
if tweet == nil or tweet.video.isNone:
2020-06-01 02:22:56 +02:00
resp Http404
resp renderVideoEmbed(tweet, cfg, request)
2022-01-14 18:01:47 +01:00
get "/@user/status/@id/embed":
2022-01-14 18:01:47 +01:00
let
tweet = await getGraphTweetResult(@"id")
2022-01-14 18:01:47 +01:00
prefs = cookiePrefs()
path = getPath()
if tweet == nil:
resp Http404
resp renderTweetEmbed(tweet, path, prefs, cfg, request)
get "/embed/Tweet.html":
let id = @"id"
if id.len > 0:
2022-06-04 02:18:26 +02:00
redirect(&"/i/status/{id}/embed")
else:
resp Http404