Fix counting of the segments to be easier
Add test for exact test file
This commit is contained in:
@@ -4,22 +4,21 @@
|
||||
<title>QRTransfer</title>
|
||||
<script src="qrenc-4.0.0.js" type="text/javascript"></script>
|
||||
<script type="text/javascript">
|
||||
let $ = (ele) => document.getElementById(ele);
|
||||
|
||||
let fileData,
|
||||
chunkSize,
|
||||
segmentPosition,
|
||||
activeCanvas = 0; // double buffering.
|
||||
|
||||
let serveCodes = () => {
|
||||
let numChunks = fileData.length / chunkSize;
|
||||
let currChunk = segmentPosition / chunkSize;
|
||||
const $ = (ele) => document.getElementById(ele);
|
||||
const serveCodes = () => {
|
||||
let numChunks = Math.ceil(fileData.length / chunkSize);
|
||||
let currChunk = Math.ceil(segmentPosition / chunkSize) + 1;
|
||||
let delay = Number($("delay").value);
|
||||
let minLeft = ((numChunks - currChunk) * delay) / 1000 / 60;
|
||||
|
||||
$("status").innerText = `${currChunk}/${Math.ceil(numChunks)}/${(currChunk / numChunks).toFixed(2)}% (${minLeft.toFixed(2)} minutes left.)`;
|
||||
$("status").innerText = `${currChunk}/${numChunks}/${((currChunk / numChunks) * 100).toFixed(2)}% (${minLeft.toFixed(2)} min left.)`;
|
||||
displayQR(
|
||||
currChunk + 1 + "|" + fileData.substring(segmentPosition, segmentPosition + chunkSize),
|
||||
currChunk + "|" + fileData.substring(segmentPosition, segmentPosition + chunkSize),
|
||||
Number($("qrSize").value),
|
||||
Number($("ecc").value)
|
||||
);
|
||||
@@ -29,13 +28,13 @@
|
||||
window.setTimeout(serveCodes, delay);
|
||||
}
|
||||
};
|
||||
let displayQR = (data, size, ecc) => {
|
||||
const displayQR = (data, size, ecc) => {
|
||||
var qr = new QR($("qrcanv" + activeCanvas), data, size, size, ecc);
|
||||
$("qrcanv" + (activeCanvas === 0 ? 1 : 0)).style.display = "none";
|
||||
$("qrcanv" + activeCanvas).style.display = "block";
|
||||
activeCanvas = activeCanvas === 0 ? 1 : 0;
|
||||
};
|
||||
let getFile = (fileName) => {
|
||||
const getFile = (fileName) => {
|
||||
chunkSize = Number($("chunkSize").value);
|
||||
segmentPosition = Number($("startChunk").value * chunkSize);
|
||||
|
||||
@@ -66,7 +65,7 @@
|
||||
<hr />
|
||||
Status:<span id="status">...</span>
|
||||
<hr />
|
||||
Filename:<input type="text" id="inputFileName" value="testInput/5K.dat" />
|
||||
Filename:<input type="text" id="inputFileName" value="testInput/matchSeg.dat" />
|
||||
<br />
|
||||
ECC (1-4):<input type="number" value="4" id="ecc" />
|
||||
<br />
|
||||
|
||||
1
Client/testInput/matchSeg.dat
Normal file
1
Client/testInput/matchSeg.dat
Normal file
@@ -0,0 +1 @@
|
||||
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||
Reference in New Issue
Block a user