summaryrefslogtreecommitdiff
path: root/app/check.js
blob: 658fefab804c4c261961a7b78e30fcf733c38d79 (plain)
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
import { jsList } from "./list.js";

export function checkboxButton(id) {
    const checkboxElement = document.createElement('i');
    checkboxElement.classList.add('fa-regular', 'fa-square');
    checkboxElement.setAttribute('title', 'Mark as done');

    checkboxElement.addEventListener('click', (click) => {
        toggleCheck(click.target, id);
    });

    return checkboxElement;
}

export function toggleCheck(element, id) {
    if (element.classList.contains('fa-square')) {
        element.classList.replace('fa-square', 'fa-square-check');
        element.parentNode.classList.toggle('checked');
        id = jsList.findIndex(el => el.id == id)
        jsList[id].done = true;
        localStorage.setItem('jsList', JSON.stringify(jsList));
    } else {
        element.classList.replace('fa-square-check', 'fa-square');
        element.parentNode.classList.toggle('checked');
        id = jsList.findIndex(el => el.id == id)
        jsList[id].done = false;
        localStorage.setItem('jsList', JSON.stringify(jsList));
    }
}