From b1aee1997884e4bbd8d0667546ff96977550cb57 Mon Sep 17 00:00:00 2001 From: lucashemi Date: Mon, 9 Jan 2023 00:15:01 -0300 Subject: first commit --- app/check.js | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 app/check.js (limited to 'app/check.js') diff --git a/app/check.js b/app/check.js new file mode 100644 index 0000000..294e02a --- /dev/null +++ b/app/check.js @@ -0,0 +1,34 @@ +function checkboxButton(id) { + const checkboxElement = document.createElement('i'); + + checkboxElement.classList.add('fa-regular'); + checkboxElement.classList.add('fa-square'); + + checkboxElement.setAttribute('title', 'Mark as done'); + + checkboxElement.addEventListener('click', (click) => { + checkElement(click.target, id); + }); + + return checkboxElement; +} + +function checkElement(element, id) { + if (element.classList.contains('fa-square')) { + element.classList.remove('fa-square'); + element.classList.add('fa-square-check'); + element.parentNode.style.textDecoration = 'line-through'; + element.parentNode.style.opacity = '0.7'; + id = jsList.findIndex(el => el.id == id) + jsList[id].done = true; + localStorage.setItem('jsList', JSON.stringify(jsList)); + } else { + element.classList.add('fa-square'); + element.classList.remove('fa-square-check'); + element.parentNode.style.textDecoration = ''; + element.parentNode.style.opacity = ''; + id = jsList.findIndex(el => el.id == id) + jsList[id].done = false; + localStorage.setItem('jsList', JSON.stringify(jsList)); + } +} \ No newline at end of file -- cgit v1.2.3-18-g5258