Fix cors
Browse files
script.js
CHANGED
@@ -273,10 +273,11 @@ function loadTrackInfoModal (trackUuid) {
|
|
273 |
temp_dlButtonExtEl.classList.add('btn', 'btn-secondary', 'text-center');
|
274 |
}
|
275 |
temp_dlButtonEl.setAttribute('type', 'button');
|
276 |
-
temp_dlButtonEl.addEventListener('click', async () => {
|
277 |
-
|
278 |
-
})
|
279 |
temp_dlButtonExtEl.setAttribute('href', `${apiDataConfig.response.config.decrypted.rawMediaUrlBase64}/media/${albumParsedObject.uuid}/${obj.path}/${trackParsedObject.uuid}.${obj.extension}`);
|
|
|
280 |
temp_dlButtonExtEl.setAttribute('role', 'button');
|
281 |
temp_dlButtonExtEl.setAttribute('target', '_blank');
|
282 |
temp_dlButtonExtEl.setAttribute('rel', 'noopener noreferrer');
|
@@ -287,7 +288,7 @@ function loadTrackInfoModal (trackUuid) {
|
|
287 |
temp_dlTdBtnEl.classList.add('text-end');
|
288 |
temp_dlButtonEl.appendChild(temp_dlButtonIconEl);
|
289 |
temp_dlButtonExtEl.appendChild(temp_dlButtonExtIconEl);
|
290 |
-
temp_dlButtonGroupEl.appendChild(temp_dlButtonEl);
|
291 |
temp_dlButtonGroupEl.appendChild(temp_dlButtonExtEl);
|
292 |
temp_dlTdBtnEl.appendChild(temp_dlButtonGroupEl);
|
293 |
temp_dlTrEl.appendChild(temp_dlTdCodecEl);
|
@@ -534,6 +535,24 @@ async function downloadAudioDataToBlob (trackUuid, codecUuid) {
|
|
534 |
document.body.removeChild(link);
|
535 |
}
|
536 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
537 |
// ========== MasterDB/Configの暗号化を解く ==========
|
538 |
|
539 |
async function decryptConfig () {
|
|
|
273 |
temp_dlButtonExtEl.classList.add('btn', 'btn-secondary', 'text-center');
|
274 |
}
|
275 |
temp_dlButtonEl.setAttribute('type', 'button');
|
276 |
+
// temp_dlButtonEl.addEventListener('click', async () => {
|
277 |
+
// await downloadAudioDataToBlob (trackParsedObject.uuid, obj.uuid)
|
278 |
+
// })
|
279 |
temp_dlButtonExtEl.setAttribute('href', `${apiDataConfig.response.config.decrypted.rawMediaUrlBase64}/media/${albumParsedObject.uuid}/${obj.path}/${trackParsedObject.uuid}.${obj.extension}`);
|
280 |
+
temp_dlButtonExtEl.setAttribute('download', determineDownloadFileName(trackParsedObject.uuid, obj.uuid));
|
281 |
temp_dlButtonExtEl.setAttribute('role', 'button');
|
282 |
temp_dlButtonExtEl.setAttribute('target', '_blank');
|
283 |
temp_dlButtonExtEl.setAttribute('rel', 'noopener noreferrer');
|
|
|
288 |
temp_dlTdBtnEl.classList.add('text-end');
|
289 |
temp_dlButtonEl.appendChild(temp_dlButtonIconEl);
|
290 |
temp_dlButtonExtEl.appendChild(temp_dlButtonExtIconEl);
|
291 |
+
// temp_dlButtonGroupEl.appendChild(temp_dlButtonEl);
|
292 |
temp_dlButtonGroupEl.appendChild(temp_dlButtonExtEl);
|
293 |
temp_dlTdBtnEl.appendChild(temp_dlButtonGroupEl);
|
294 |
temp_dlTrEl.appendChild(temp_dlTdCodecEl);
|
|
|
535 |
document.body.removeChild(link);
|
536 |
}
|
537 |
|
538 |
+
function determineDownloadFileName (trackUuid, codecUuid) {
|
539 |
+
const albumParsedObject = getParsedAlbumObjectFromAlbumUuid(getAlbumUuidFromTrackUuid(trackUuid));
|
540 |
+
const trackParsedObject = albumParsedObject.tracks.find((obj) => obj.uuid === trackUuid);
|
541 |
+
let codecParsedObject = null;
|
542 |
+
if (albumParsedObject.isAllTrackSameCodecs === false) {
|
543 |
+
codecParsedObject = trackParsedObject.codecs.find((obj) => obj.uuid === codecUuid);
|
544 |
+
} else {
|
545 |
+
codecParsedObject = albumParsedObject.codecs.find((obj) => obj.uuid === codecUuid);
|
546 |
+
}
|
547 |
+
let saveFileName = null;
|
548 |
+
if (trackParsedObject.titleFileName !== null) {
|
549 |
+
saveFileName = `${trackParsedObject.disc}_${('00' + trackParsedObject.index).slice(-2)}_${trackParsedObject.titleFileName}.${codecParsedObject.extension}`;
|
550 |
+
} else {
|
551 |
+
saveFileName = `${trackParsedObject.disc}_${('00' + trackParsedObject.index).slice(-2)}_${trackParsedObject.title}.${codecParsedObject.extension}`;
|
552 |
+
}
|
553 |
+
return saveFileName;
|
554 |
+
}
|
555 |
+
|
556 |
// ========== MasterDB/Configの暗号化を解く ==========
|
557 |
|
558 |
async function decryptConfig () {
|