1
0
mirror of https://git.sr.ht/~cadence/cloudtube synced 2024-12-22 13:07:00 +00:00

Normalise display data on search across APIs

This commit is contained in:
Cadence Ember 2021-01-01 17:30:47 +13:00
parent 0da13ac0e6
commit c15f83f899
No known key found for this signature in database
GPG Key ID: BC1C2C61CF521B17

View File

@ -1,6 +1,7 @@
const fetch = require("node-fetch")
const {render} = require("pinski/plugins")
const {getUser} = require("../utils/getuser")
const converters = require("../utils/converters")
module.exports = [
{
@ -10,6 +11,20 @@ module.exports = [
const fetchURL = new URL(`${instanceOrigin}/api/v1/search`)
fetchURL.searchParams.set("q", query)
const results = await fetch(fetchURL.toString()).then(res => res.json())
for (const video of results) {
if (!video.second__lengthText && video.lengthSeconds > 0) {
video.second__lengthText = converters.lengthSecondsToLengthText(video.lengthSeconds)
}
if (!video.second__lengthText && video.lengthSeconds === 0) {
video.second__lengthText = "LIVE"
video.liveNow = true
}
if (video.publishedText === "0 seconds ago") {
video.publishedText = "Live now"
}
}
return render(200, "pug/search.pug", {query, results, instanceOrigin})
}
}