diff options
author | kaotisk <kaotisk@arching-kaos.org> | 2024-03-17 03:27:54 +0200 |
---|---|---|
committer | kaotisk <kaotisk@arching-kaos.org> | 2024-03-17 03:27:54 +0200 |
commit | 0d04f296f37548a926003ea775e0936348aa7909 (patch) | |
tree | 7e1a925827cfab38ca8ffa58d6ca780d074fe246 /src/js | |
parent | 6de857a5d519d45457357ade7de85b0ed854f21c (diff) | |
download | arching-kaos-web-ui-0d04f296f37548a926003ea775e0936348aa7909.tar.gz arching-kaos-web-ui-0d04f296f37548a926003ea775e0936348aa7909.tar.bz2 arching-kaos-web-ui-0d04f296f37548a926003ea775e0936348aa7909.zip |
Modulized mixtapes
Diffstat (limited to 'src/js')
-rw-r--r-- | src/js/arching-kaos-modules-mixtapes.js | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/src/js/arching-kaos-modules-mixtapes.js b/src/js/arching-kaos-modules-mixtapes.js new file mode 100644 index 0000000..f12e2ea --- /dev/null +++ b/src/js/arching-kaos-modules-mixtapes.js @@ -0,0 +1,62 @@ + +function akModuleMixtapes(zblockIPFSHash, zblockObject, blockObject, json){ + if(!document.querySelector('#mixtape-'+zblockIPFSHash)){ + var divs = document.querySelector('#mixtapes-section'); + var art = document.createElement("article"); + art.id = 'mixtape-'+zblockIPFSHash; + if(json.title){ + var h3 = document.createElement("h3"); + h3.innerText = json.title; + art.appendChild(h3); + } + if(json.artist){ + var h4 = document.createElement("h4"); + h4.innerText = json.artist; + art.appendChild(h4); + } + if(json.timestamp){ + var small = document.createElement("h5"); + small.innerText="Published: " + new Date(json.timestamp*1000); + art.appendChild(small); + } + if(json.ipfs){ + var audio = document.createElement("audio"); + audio.setAttribute('controls',''); + audio.id = 'mixtape-player-'+zblockIPFSHash; + mixtapeIds.push(audio.id); + var source = document.createElement("source"); + source.src = getIPFSURL(json.ipfs); + var rs = source.cloneNode(true); + audio.appendChild(source); + radio.appendChild(rs); + art.appendChild(audio); + audio.addEventListener( "loadedmetadata", ()=>{ + if ( mixtapes[zblockIPFSHash] === undefined ){ + mixtapes[zblockIPFSHash]={ + zblock:zblockIPFSHash, + block:zblockObject.block, + block_signature:zblockObject.block_signature, + action:blockObject.action, + previous:blockObject.previous, + data:blockObject.data, + dataExpansion:json, + detach:blockObject.detach, + gpg:blockObject.gpg, + timestamp:blockObject.timestamp, + audioDuration:audio.duration + }; + } + /* console.log( + zblockIPFSHash+"'s duration is: "+ + audio.duration + + " Ceiled: " + Math.ceil(audio.duration) + + " added on " + blockObject.timestamp + " or " + + json.timestamp + + " DIFF: " + (blockObject.timestamp - json.timestamp) + ); */ + }, false ); + } + if (document.querySelector("#mixtapes-sec-not-found")) document.querySelector("#mixtapes-sec-not-found").hidden=true; + divs.appendChild(art); + } +} |