mirror of
https://github.com/ragestudio/comty.git
synced 2025-07-01 05:14:15 +00:00
Add language and fetchAll query params to lyrics endpoint
This commit is contained in:
parent
6674867d28
commit
f7e5209104
@ -66,7 +66,7 @@ class LRCV1 {
|
|||||||
|
|
||||||
export default async (req) => {
|
export default async (req) => {
|
||||||
const { track_id } = req.params
|
const { track_id } = req.params
|
||||||
let { translate_lang = "original" } = req.query
|
let { language = "original", fetchAll = false } = req.query
|
||||||
|
|
||||||
let result = await TrackLyric.findOne({
|
let result = await TrackLyric.findOne({
|
||||||
track_id,
|
track_id,
|
||||||
@ -76,24 +76,24 @@ export default async (req) => {
|
|||||||
throw new OperationError(404, "Track lyric not found")
|
throw new OperationError(404, "Track lyric not found")
|
||||||
}
|
}
|
||||||
|
|
||||||
result.translated_lang = translate_lang
|
result.translated_lang = language
|
||||||
result.available_langs = []
|
result.available_langs = []
|
||||||
|
|
||||||
if (typeof result.lrc === "object") {
|
if (typeof result.lrc === "object") {
|
||||||
result.available_langs = Object.keys(result.lrc)
|
result.available_langs = Object.keys(result.lrc)
|
||||||
|
|
||||||
if (!result.lrc[translate_lang]) {
|
if (!result.lrc[language]) {
|
||||||
translate_lang = "original"
|
language = "original"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (result.lrc[translate_lang]) {
|
if (result.lrc[language]) {
|
||||||
if (typeof result.lrc[translate_lang] === "string") {
|
if (typeof result.lrc[language] === "string") {
|
||||||
let { data } = await axios.get(result.lrc[translate_lang])
|
let { data } = await axios.get(result.lrc[language])
|
||||||
|
|
||||||
result.synced_lyrics = LRCV1.parseString(data)
|
result.synced_lyrics = LRCV1.parseString(data)
|
||||||
result.synced_lyrics = LRCV1.setTimmings(result.synced_lyrics)
|
result.synced_lyrics = LRCV1.setTimmings(result.synced_lyrics)
|
||||||
} else {
|
} else {
|
||||||
result.synced_lyrics = result.lrc[translate_lang]
|
result.synced_lyrics = result.lrc[language]
|
||||||
result.synced_lyrics = LRCV1.setTimmings(result.synced_lyrics)
|
result.synced_lyrics = LRCV1.setTimmings(result.synced_lyrics)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -105,6 +105,10 @@ export default async (req) => {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!fetchAll) {
|
||||||
|
delete result.lrc
|
||||||
|
}
|
||||||
|
|
||||||
delete result.__v
|
delete result.__v
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
Loading…
x
Reference in New Issue
Block a user