document.getElementById('app-window').innerHTML = '

Загрузка произведений...

'; function toggleShow (authorId) { document.getElementById(`playlist-author-${authorId}`).hidden = !document.getElementById(`playlist-author-${authorId}`).hidden; } function showAudio (settingsAuthors, settingsAudio) { const step2 = (muzic) => { //console.log(muzic.items); const showedAuthors = [...(new Set(muzic.items.map(i => `author-${i.author_id}`)))]; [...document.getElementsByClassName('author-element')].forEach(el => { el.hidden = !showedAuthors.includes(el.id); }); muzic.items.forEach(muzic => { document.getElementById(`loader-muzic-${muzic.author_id}`).hidden = true; if (muzic.is_data_exists) document.getElementById(`playlist-author-${muzic.author_id}`).innerHTML += `

${muzic.name}

`; else document.getElementById(`playlist-author-${muzic.author_id}`).innerHTML += `

${muzic.name}

`; }); } api.getAuthors(settingsAuthors, (authors) => { document.getElementById('app-window').innerHTML = ''; authors.items.forEach((author) => { document.getElementById('app-window').innerHTML += `

${author.name}

Произведения


Показать/Скрыть

Загрузка..

`; const addMuzicButtonFunct = () => setTimeout( () => document.getElementById(`add-muzic-button-${author.id}`).onclick = async () => { // console.log('>>', author.id); document.getElementById(`add-muzic-${author.id}`).innerHTML = `

`; setTimeout( () => { document.getElementById(`cancel-add-muzic-${author.id}`).onclick = function () { document.getElementById(`add-muzic-${author.id}`).innerHTML = `
`; addMuzicButtonFunct(); }; document.getElementById(`add-muzic-${author.id}`).onclick = function () { if (document.getElementById(`muzic-name-input-${author.id}`).value.length >= 2) { api.createMuzic( author.id, document.getElementById(`muzic-name-input-${author.id}`).value, document.getElementById(`attach-file-${author.id}`).filedata, () => { showAudio(settingsAuthors, settingsAudio); } ); document.getElementById(`add-muzic-${author.id}`).innerHTML = 'Добавление файла...'; } }; document.getElementById(`attach-file-${author.id}`).onclick = function () { const input = document.createElement('input'); input.type = 'file'; input.accept = 'audio/mpeg'; input.click(); input.onchange = function (e) { function arrayBufferToBase64( buffer ) { let binary = ''; let bytes = new Uint8Array( buffer ); let len = bytes.byteLength; for (let i = 0; i < len; i++) { binary += String.fromCharCode( bytes[ i ] ); } return window.btoa( binary ); } const file = e.target.files[0]; // console.log(file); const reader = new FileReader(); reader.readAsArrayBuffer(file); reader.onload = function() { // console.log('reader.result', reader.result); if (file.type === 'audio/mpeg') { document.getElementById(`attach-file-${author.id}`).filedata = arrayBufferToBase64(reader.result); document.getElementById(`attach-file-${author.id}`).innerText = "Загружен файл: " + file.name; } // console.log(arrayBufferToBase64(reader.result)); }; }; }; }, 0 ); }, 0); addMuzicButtonFunct(); }); api.getMuzic(settingsAudio, step2); document.getElementById('app-window').innerHTML += '
' }); } setTimeout(() => showAudio({}, {}), 0); document.getElementById('search-input').onchange = function () { console.log(this.value); setTimeout(() => showAudio({}, { q : this.value }), 0); };