+
+ function change(obj) {
+ if (obj.value) {
+ disablebtns(false);
+ if (imeis.has(obj.value)) {
+ subunsub.value = "-";
+ subunsub.title =
+ "Unsubscribe from notifications from "
+ + obj.value;
+ } else {
+ subunsub.value = "+";
+ subunsub.title =
+ "Subscribe to notifications from "
+ + obj.value;
+ }
+ } else {
+ disablebtns(true);
+ subunsub.value = "o";
+ subunsub.title = "";
+ }
+ }
+
+ function erase(obj) {
+ imei.value = "";
+ change(imei);
+ }
+
+ function disablebtns(yesorno) {
+ [subunsub, refresh, msgtxt, message,
+ poweroff].forEach(function(obj) {
+ obj.disabled = yesorno;
+ })
+ }
+ function update_imeilst(imeis) {
+ while (imeilst.firstChild) {
+ imeilst.removeChild(imeilst.lastChild)
+ }
+ imeis.forEach(function(item) {
+ var entry = document.createElement('option');
+ entry.value = item;
+ imeilst.appendChild(entry);
+ })
+ if (imeis.size == 1) {
+ imei.value = imeis.values().next().value;
+ } else {
+ imei.value = "";
+ }
+ }
+
+ function buttonpress(obj) {
+ console.log("button value " + obj.value);
+ console.log("button id " + obj.id);
+ console.log("input value " + imei.value);
+ if (obj.id === "subunsub") {
+ if (obj.value === "+") {
+ imeis.add(imei.value);
+ } else if (obj.value === "-") {
+ imeis.delete(imei.value);
+ imei.value = "";
+ }
+ update_imeilst(imeis);
+ change(imei);
+ sendIMEI();
+ } else {
+ sendCMD(obj.id, imei.value, msgtxt.value);
+ msgtxt.value = "";
+ }
+ }