-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfileScript.js
More file actions
53 lines (49 loc) · 1.47 KB
/
Copy pathfileScript.js
File metadata and controls
53 lines (49 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
document.querySelector('input').addEventListener('change', function() {
const reader = new FileReader();
const fileName = this.files[0].name;
reader.onload = function() {
const arrayBuffer = this.result;
console.log(fileName);
console.log(arrayBuffer);
loadData(arrayBuffer.slice(), fileName);
}
reader.readAsArrayBuffer(this.files[0]);
}, false);
function loadData(arrayBuffer, fileName){
rallyData = new RallyData(arrayBuffer, fileName);
const arcadeTimes = rallyData.getArcadeTimes();
const baseDiv = document.getElementById("arcadeBaseTimes")
console.log(arcadeTimes)
dictDiv = Dom.renderDictOfEditableArrays(arcadeTimes)
baseDiv.appendChild(dictDiv);
}
function writeAndDownloadArcadeState(){
const dict = dictDiv.getDict()
return downloadArcadeState(dict)
}
function downloadArcadeState(dict){
rallyData.setArcadeTimes(dict)
button = document.getElementById("downloadButton");
const array = rallyData.array;
console.log("array");
console.log(array);
const blob = new Blob([array], {type: "octet/stream"});
console.log("blob loaded");
const url = window.URL.createObjectURL(blob);
console.log(rallyData)
download(url, rallyData.fileName)
return dict
}
function download(url, fileName = undefined) {
const a = document.createElement('a')
a.href = url
if(fileName == null){
a.download = url.split('/').pop()
}
else{
a.download = fileName
}
document.body.appendChild(a)
a.click()
document.body.removeChild(a)
}