Refac split download input by line break and send ids in bulk

This commit is contained in:
MerlinScheurer
2024-12-27 17:00:24 +01:00
parent 69875c42b9
commit d6235fd272

View File

@@ -3,10 +3,23 @@ import getApiUrl from '../../configuration/getApiUrl';
import getFetchCredentials from '../../configuration/getFetchCredentials';
import getCookie from '../../functions/getCookie';
const updateDownloadQueue = async (download: string, autostart: boolean) => {
const updateDownloadQueue = async (youtubeIdStrings: string, autostart: boolean) => {
const apiUrl = getApiUrl();
const csrfCookie = getCookie('csrftoken');
const urls = [];
const containsMultiple = youtubeIdStrings.includes('\n');
if (containsMultiple) {
const youtubeIds = youtubeIdStrings.split('\n');
youtubeIds.forEach(youtubeId => {
urls.push({ youtube_id: youtubeId, status: 'pending' });
});
} else {
urls.push({ youtube_id: youtubeIdStrings, status: 'pending' });
}
let params = '';
if (autostart) {
params = '?autostart=true';
@@ -21,7 +34,7 @@ const updateDownloadQueue = async (download: string, autostart: boolean) => {
credentials: getFetchCredentials(),
body: JSON.stringify({
data: [{ youtube_id: download, status: 'pending' }],
data: [...urls],
}),
});