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 () {
|