a
This commit is contained in:
parent
e2a9b7f4bd
commit
245c1ae7ec
|
|
@ -13,109 +13,45 @@
|
||||||
</div>
|
</div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<div>
|
|
||||||
<h1>Welcome to NFC Tools KBC - Test Page</h1>
|
|
||||||
<p>Launch NFC Tools KBC, focus this web page then scan a tag. Current status:</p>
|
|
||||||
<p id="kbc-target">Waiting for a tag</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
/*
|
document.addEventListener('DOMContentLoaded', function () {
|
||||||
var NFCToolsKBC = (function () {
|
const input = document.getElementById('donneesCarte');
|
||||||
|
const form = document.getElementById('frmrechercheparcarte');
|
||||||
|
|
||||||
var instance = null; // Singleton instance
|
let buffer = '';
|
||||||
var callback = null; // Callback function
|
let timer = null;
|
||||||
var isAlreadyRegister = false; // Is event already register ?
|
|
||||||
|
|
||||||
function create () {
|
// Capture globale (lecteur NFC = clavier)
|
||||||
function registerCallback(callback) {
|
document.addEventListener('keydown', function (e) {
|
||||||
|
|
||||||
// Check if callback param is a function
|
// ENTER → soumission immédiate
|
||||||
if (typeof callback == 'function') {
|
if (e.key === 'Enter') {
|
||||||
this.callback = callback; // Then, save the callback reference
|
if (buffer.length > 0) {
|
||||||
|
input.value = buffer;
|
||||||
// Register the event if is not already registered
|
buffer = '';
|
||||||
if(this.callback != null && !isAlreadyRegister) {
|
form.submit();
|
||||||
document.addEventListener('paste', (event) => {
|
}
|
||||||
this.callback((event.clipboardData || window.clipboardData).getData('text')); // Call the callback function
|
e.preventDefault();
|
||||||
event.preventDefault(); // To block the default event handling
|
return;
|
||||||
});
|
|
||||||
isAlreadyRegister = true; // Event is now registered
|
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
// You must pass a function as a callback
|
|
||||||
console.log("Error: Unable to register callback");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return {
|
|
||||||
registerCallback: registerCallback
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get instance
|
// Ignorer touches spéciales
|
||||||
return {
|
if (e.key.length > 1) return;
|
||||||
getInstance: function() {
|
|
||||||
if(instance == null) {
|
|
||||||
instance = create();
|
|
||||||
}
|
|
||||||
return instance; // Return singleton
|
|
||||||
}
|
|
||||||
};
|
|
||||||
})();
|
|
||||||
|
|
||||||
// Wait for the HTML document has been completely loaded and parsed
|
// Accumuler caractères scannés
|
||||||
document.addEventListener("DOMContentLoaded", function(event) {
|
buffer += e.key;
|
||||||
|
|
||||||
// Here we register a callback function to get the NFC tag's content
|
// Reset après 300 ms d'inactivité (sécurité)
|
||||||
alert("NFCToolsKBC");
|
clearTimeout(timer);
|
||||||
NFCToolsKBC.getInstance().registerCallback(function(content){
|
timer = setTimeout(() => {
|
||||||
// Do what you want here with the content
|
if (buffer.length > 0) {
|
||||||
|
input.value = buffer;
|
||||||
// For the demo, we show the content in a HTML element
|
buffer = '';
|
||||||
var target = document.getElementById("kbc-target");
|
form.submit();
|
||||||
target.innerHTML = "Content detected: " + content;
|
}
|
||||||
});
|
}, 300);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
*/
|
|
||||||
|
|
||||||
document.addEventListener('DOMContentLoaded', function () {
|
|
||||||
const input = document.getElementById('donneesCarte');
|
|
||||||
const form = document.getElementById('frmrechercheparcarte');
|
|
||||||
|
|
||||||
let buffer = '';
|
|
||||||
let timer = null;
|
|
||||||
|
|
||||||
// Capture globale (lecteur NFC = clavier)
|
|
||||||
document.addEventListener('keydown', function (e) {
|
|
||||||
|
|
||||||
// ENTER → soumission immédiate
|
|
||||||
if (e.key === 'Enter') {
|
|
||||||
if (buffer.length > 0) {
|
|
||||||
input.value = buffer;
|
|
||||||
buffer = '';
|
|
||||||
form.submit();
|
|
||||||
}
|
|
||||||
e.preventDefault();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Ignorer touches spéciales
|
|
||||||
if (e.key.length > 1) return;
|
|
||||||
|
|
||||||
// Accumuler caractères scannés
|
|
||||||
buffer += e.key;
|
|
||||||
|
|
||||||
// Reset après 300 ms d'inactivité (sécurité)
|
|
||||||
clearTimeout(timer);
|
|
||||||
timer = setTimeout(() => {
|
|
||||||
if (buffer.length > 0) {
|
|
||||||
input.value = buffer;
|
|
||||||
buffer = '';
|
|
||||||
form.submit();
|
|
||||||
}
|
|
||||||
}, 300);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user