-
Notifications
You must be signed in to change notification settings - Fork 5
/
main_black.js
84 lines (71 loc) · 3 KB
/
main_black.js
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
document.addEventListener('WebComponentsReady', function() {
var BLEDevice = document.querySelector('platinum-bluetooth-device');
var btnConnect = document.querySelector("#Connect"); // Bruk ID i HTML og "#somename" syntax for å skille mellom knapper
var btnDispense = document.querySelector("#Dispense");
var characteristic = document.querySelector('platinum-bluetooth-characteristic');
var numDispense = 0;
var gameOverBtn = document.querySelector("#showModal");
var gameOverDialog = document.querySelector("#gameOver");
gameOverBtn.addEventListener('click', function() {
gameOverDialog.open();
//gameOverDialog.fit();
console.log('Dialog opened');
});
// Connect on button press *****************************************************
btnConnect.addEventListener('click', function() {
progressBar(1);
console.log('Requesting a bluetooth device advertising custom 128-bit UUID service...');
updateStatus('Requesting BLE Device...');
BLEDevice.request().then(function(device) {
console.log('A bluetooth device has been found!');
console.log('Device Name: ' + device.name);
updateStatus('Found ' + device.name);
// Neccessary to avoid delay on first button press
var characteristicData = BLEDevice.querySelector('platinum-bluetooth-characteristic');
return characteristicData.read().then(function(value) {
console.log('Custom characteristic value is ' + data.getUint8(0) );
updateStatus('Characteristic read. Ready to play!');
progressBar(0);
});
})
.catch(function(error) {
console.error('Argh! ', error);
});
});
// Give me candy button functionality *****************************************************
btnDispense.addEventListener('touchstart', function() {
var characteristicData = BLEDevice.querySelector('platinum-bluetooth-characteristic');
var newData = new Uint8Array([1, 0, 0, 0, 0, 0]);
return characteristicData.write(newData).then(function() {
console.log('Characteristic was written: ' + newData);
updateStatus(newData);
})
.catch(function(error) {
console.error('Argh! ', error);
});
});
btnDispense.addEventListener('touchend', function() {
console.log('Delay 150ms');
setTimeout(function(){
var characteristicData = BLEDevice.querySelector('platinum-bluetooth-characteristic');
var newData = new Uint8Array([0, 0, 0, 0, 0, 0]);
return characteristicData.write(newData).then(function() {
console.log('Characteristic was written: ' + newData);
updateStatus(newData);
});
}, 150); // delay to avoid uncaught button actions
});
});
function updateStatus(newContent){
document.querySelector("#statusMessage").innerHTML = newContent;
}
function progressBar(status){
var myDiv = document.querySelector("#progress");
if(status === 0){
myDiv.setAttribute('class', 'hidden');
}
else{
myDiv.setAttribute('class', 'visible');
}
}
window.onload = progressBar(0);