cobalt/src/modules/sub/utils.js

47 lines
1.2 KiB
JavaScript
Raw Normal View History

const forbiddenCharsString = ['}', '{', '%', '>', '<', '^', ';', '`', '$', '"', "@", '='];
2022-12-06 20:21:07 +01:00
export function metadataManager(obj) {
2024-05-15 17:56:43 +02:00
const keys = Object.keys(obj);
const tags = [
"album",
"copyright",
"title",
"artist",
"track",
"date"
]
let commands = []
2024-05-15 17:56:43 +02:00
for (const i in keys) {
if (tags.includes(keys[i]))
commands.push('-metadata', `${keys[i]}=${obj[keys[i]]}`)
}
return commands;
}
export function cleanString(string) {
2024-05-15 17:56:43 +02:00
for (const i in forbiddenCharsString) {
string = string.replaceAll("/", "_")
.replaceAll(forbiddenCharsString[i], '')
}
return string;
}
2023-02-26 17:49:25 +01:00
export function verifyLanguageCode(code) {
const langCode = String(code.slice(0, 2).toLowerCase());
2024-05-15 18:50:58 +02:00
if (RegExp(/[a-z]{2}/).test(code)) {
return langCode
2024-05-15 17:56:43 +02:00
}
return "en"
2023-02-26 17:49:25 +01:00
}
export function languageCode(req) {
2024-05-15 17:56:43 +02:00
if (req.header('Accept-Language')) {
return verifyLanguageCode(req.header('Accept-Language'))
}
return "en"
}
2023-08-04 20:43:12 +02:00
export function cleanHTML(html) {
let clean = html.replace(/ {4}/g, '');
clean = clean.replace(/\n/g, '');
return clean
}