diff --git a/js/login.js b/js/login.js index c978f90..64485f5 100644 --- a/js/login.js +++ b/js/login.js @@ -1,32 +1,45 @@ const d = document.getElementById.bind(document); +const q = document.querySelector.bind(document); // user object moet gemaakt worden vanuit chrome.storage.sync var snooze = ms => new Promise(res => setTimeout(res, ms)); function login() { - chrome.storage.sync.get(['number', 'password'], async function (result) { - console.log(result); + chrome.storage.sync.get(['school','number', 'password'], async function (result) { + + await waitForSel("#scholenkiezer_value"); + + if (d("scholenkiezer_value") && result.number) { + d("scholenkiezer_value").value = result.school; + d("scholenkiezer_value").dispatchEvent(new Event("input")); + }; + + await waitForSel(".selected"); + + if (q(".selected")) { + q(".selected").click(); + } - await waitForSel("username"); + await waitForSel("#username"); if (d("username") && result.number) { d("username").value = result.number; d("username").dispatchEvent(new Event("input")); }; - await waitForSel("username_submit") + await waitForSel("#username_submit") if (d("username_submit")) { d("username_submit").click(); }; - await waitForSel("rswp_password") + await waitForSel("#rswp_password") if (d("rswp_password") && result.password) { d("rswp_password").value = result.password; d("rswp_password").dispatchEvent(new Event("input")); }; - await waitForSel("rswp_submit") + await waitForSel("[id*=_submit]") if (d("rswp_submit")) { d("rswp_submit").click(); }; @@ -36,7 +49,7 @@ function login() { function waitForSel(s) { return new Promise(res => { setInterval(() => { - if (d(s)) { + if (q(s)) { res() } }, 10); diff --git a/js/save.js b/js/save.js index 7c4ed32..d154666 100644 --- a/js/save.js +++ b/js/save.js @@ -6,6 +6,9 @@ d("save").addEventListener("click", save); qAll(".login").forEach(s => { s.addEventListener("keydown", e => { if (e.key == "Enter") { + if (e.target.id == "school") { + d("number").focus() + }; if (e.target.id == "number") { d("password").focus() }; @@ -18,11 +21,13 @@ qAll(".login").forEach(s => { function save() { + var school = d("school").value; var number = d("number").value; var password = d("password").value; try { chrome.storage.sync.set({ + "school": school, "number": number, "password": password }); @@ -35,7 +40,12 @@ function save() { }; function onLoad() { - chrome.storage.sync.get(['number', 'password'], function (result) { + chrome.storage.sync.get(['school', 'number', 'password'], function (result) { + if (result.school !== undefined) { + + d("school").value = result.school + }; + if (result.number !== undefined){ d("number").value = result.number diff --git a/options/index.html b/options/index.html index 4867f98..51edca9 100644 --- a/options/index.html +++ b/options/index.html @@ -25,6 +25,9 @@
+ + +
diff --git a/popup/index.css b/popup/index.css index 92a4919..014d894 100644 --- a/popup/index.css +++ b/popup/index.css @@ -1,6 +1,6 @@ body { min-width: 20rem; - min-height: 17rem; + min-height: 24rem; } .darkcheck{ diff --git a/popup/index.html b/popup/index.html index 549726c..4d5ad1d 100644 --- a/popup/index.html +++ b/popup/index.html @@ -16,6 +16,9 @@
+ + +