|  | @@ -7,44 +7,56 @@
 | 
	
		
			
				|  |  |  </body>
 | 
	
		
			
				|  |  |  <script src="./html5-qrcode.min.js"></script>
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  | -function onScanSuccess(decodedText, decodedResult) {
 | 
	
		
			
				|  |  | -  // handle the scanned code as you like, for example:
 | 
	
		
			
				|  |  | -  console.log(`Code matched = ${decodedText}`, decodedResult);
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +// function onScanSuccess(decodedText, decodedResult) {
 | 
	
		
			
				|  |  | +//   // handle the scanned code as you like, for example:
 | 
	
		
			
				|  |  | +//   console.log(`Code matched = ${decodedText}`, decodedResult);
 | 
	
		
			
				|  |  | +// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -function onScanFailure(error) {
 | 
	
		
			
				|  |  | -  // handle scan failure, usually better to ignore and keep scanning.
 | 
	
		
			
				|  |  | -  // for example:
 | 
	
		
			
				|  |  | -  console.warn(`Code scan error = ${error}`);
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +// function onScanFailure(error) {
 | 
	
		
			
				|  |  | +//   // handle scan failure, usually better to ignore and keep scanning.
 | 
	
		
			
				|  |  | +//   // for example:
 | 
	
		
			
				|  |  | +//   console.warn(`Code scan error = ${error}`);
 | 
	
		
			
				|  |  | +// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -function docReady(fn) {
 | 
	
		
			
				|  |  | -    // see if DOM is already available
 | 
	
		
			
				|  |  | -    if (document.readyState === "complete"
 | 
	
		
			
				|  |  | -        || document.readyState === "interactive") {
 | 
	
		
			
				|  |  | -        // call on next available tick
 | 
	
		
			
				|  |  | -        setTimeout(fn, 1);
 | 
	
		
			
				|  |  | -    } else {
 | 
	
		
			
				|  |  | -        document.addEventListener("DOMContentLoaded", fn);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -}
 | 
	
		
			
				|  |  | +// function docReady(fn) {
 | 
	
		
			
				|  |  | +//     // see if DOM is already available
 | 
	
		
			
				|  |  | +//     if (document.readyState === "complete"
 | 
	
		
			
				|  |  | +//         || document.readyState === "interactive") {
 | 
	
		
			
				|  |  | +//         // call on next available tick
 | 
	
		
			
				|  |  | +//         setTimeout(fn, 1);
 | 
	
		
			
				|  |  | +//     } else {
 | 
	
		
			
				|  |  | +//         document.addEventListener("DOMContentLoaded", fn);
 | 
	
		
			
				|  |  | +//     }
 | 
	
		
			
				|  |  | +// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -docReady(function () {
 | 
	
		
			
				|  |  | -    var resultContainer = document.getElementById('qr-reader-results');
 | 
	
		
			
				|  |  | -    var lastResult, countResults = 0;
 | 
	
		
			
				|  |  | -    function onScanSuccess(decodedText, decodedResult) {
 | 
	
		
			
				|  |  | -        if (decodedText !== lastResult) {
 | 
	
		
			
				|  |  | -            ++countResults;
 | 
	
		
			
				|  |  | -            lastResult = decodedText;
 | 
	
		
			
				|  |  | -            // Handle on success condition with the decoded message.
 | 
	
		
			
				|  |  | -            console.log(`Scan result ${decodedText}`, decodedResult);
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +// docReady(function () {
 | 
	
		
			
				|  |  | +//     var resultContainer = document.getElementById('qr-reader-results');
 | 
	
		
			
				|  |  | +//     var lastResult, countResults = 0;
 | 
	
		
			
				|  |  | +//     function onScanSuccess(decodedText, decodedResult) {
 | 
	
		
			
				|  |  | +//         if (decodedText !== lastResult) {
 | 
	
		
			
				|  |  | +//             ++countResults;
 | 
	
		
			
				|  |  | +//             lastResult = decodedText;
 | 
	
		
			
				|  |  | +//             // Handle on success condition with the decoded message.
 | 
	
		
			
				|  |  | +//             console.log(`Scan result ${decodedText}`, decodedResult);
 | 
	
		
			
				|  |  | +//         }
 | 
	
		
			
				|  |  | +//     }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    var html5QrcodeScanner = new Html5QrcodeScanner(
 | 
	
		
			
				|  |  | -        "qr-reader", { fps: 10, qrbox: 250 });
 | 
	
		
			
				|  |  | -    html5QrcodeScanner.render(onScanSuccess);
 | 
	
		
			
				|  |  | -});
 | 
	
		
			
				|  |  | +//     var html5QrcodeScanner = new Html5QrcodeScanner(
 | 
	
		
			
				|  |  | +//         "qr-reader", { fps: 10, qrbox: 250 });
 | 
	
		
			
				|  |  | +//     html5QrcodeScanner.render(onScanSuccess);
 | 
	
		
			
				|  |  | +// });
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +const html5QrCode = new Html5Qrcode("qr-reader");
 | 
	
		
			
				|  |  | +const qrCodeSuccessCallback = (decodedText, decodedResult) => {
 | 
	
		
			
				|  |  | +    /* handle success */
 | 
	
		
			
				|  |  | +    alert('Mike'); // test
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +const config = { fps: 10, qrbox: 250 };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +// If you want to prefer back camera
 | 
	
		
			
				|  |  | +html5QrCode.start({ facingMode: "environment" }, config, qrCodeSuccessCallback);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +html5QrcodeScanner.render(onScanSuccess);
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  </head>
 | 
	
		
			
				|  |  |  </html>
 |