@@ -13,14 +13,14 @@ function handleCompleted(event) {
1313 this . classList . add ( "checked" ) ;
1414 let number = this . id . replace ( `check-` , '' ) ;
1515 let completedTask = document . querySelector ( `#task-${ number } -content` ) ;
16- completedTasks . push ( completedTask . innerHTML ) ;
16+ completedTasks . push ( ` ${ number } ` ) ;
1717 completedTask . classList . add ( "completed" ) ;
1818 countTasks ( ) ;
1919}
2020function createNewTask ( content , number ) {
2121 let li = document . createElement ( "li" ) ;
2222 document . querySelector ( "#task-list" ) . appendChild ( li ) ;
23- li . innerHTML = `<button class="check" id="check-${ number } "><i class="fas fa-check"></i></button># ${ number } ) <string id="task-${ number } -content">${ content } </string><hr />` ;
23+ li . innerHTML = `<button class="check" id="check-${ number } "><i class="fas fa-check"></i></button><string id="task-${ number } -content">${ content } </string><hr />` ;
2424 let identity = `task-${ number } ` ;
2525 li . setAttribute ( `id` , identity ) ;
2626 document . querySelector ( `#check-${ number } ` ) . addEventListener ( "click" , handleCompleted ) ;
@@ -29,7 +29,7 @@ function handleCreate(event){
2929 event . preventDefault ( ) ;
3030 let newTask = document . querySelector ( "#new-task-input" ) . value ;
3131 if ( newTask . length >= 1 ) {
32- tasks . push ( newTask ) ;
32+ tasks . push ( ` ${ newTask } ` ) ;
3333 let taskNumber = countTasks ( ) ;
3434 createNewTask ( newTask , taskNumber ) ;
3535 }
@@ -55,6 +55,7 @@ function uncollapseNewTaskSection(event){
5555 `<button class="plusBtn" id="plus-btn"><i class="fas fa-plus"></i></button>
5656 Create a new task
5757 <input type="text" id="new-task-input" class="form-control" autocomplete="off" placeholder="New Task">
58+ To create multiple tasks at once seperate them with commas, click "Create new" button and refresh your page.<br />(This actually wasn't done on purpose.)
5859 <div class="buttons">
5960 <button class="btn btn-primary" id="new-task-btn">Create New</button>
6061 <button class="btn btn-danger" id="delete-btn" data-bs-toggle="tooltip" container="newTaskSection" title="This will delete ALL created tasks!">Delete All</button>
@@ -85,29 +86,34 @@ function changeTitleForm(event){
8586 document . querySelector ( "#confirm-title" ) . addEventListener ( "click" , changeTitle ) ;
8687}
8788function createStoredTasks ( ) {
88- if ( storedTasks . length > 0 ) {
89+ if ( storedTasks ) {
8990 tasks = storedTasks ;
90- for ( let number = 1 ; number <= tasks . length ; number ++ ) {
91+ for ( let number = 0 ; number <= tasks . length - 1 ; number ++ ) {
9192 let task = tasks [ number ] ;
92- createNewTask ( task , number ) ;
93+ createNewTask ( task , number + 1 ) ;
94+ }
95+ if ( storedCompletedTasks ) {
96+ completedTasks = storedCompletedTasks ;
97+ completedTasks . forEach ( function ( completedTask ) {
98+ let idNumber = completedTask ;
99+ let check = document . querySelector ( `#check-${ idNumber } ` ) ;
100+ let task = document . querySelector ( `#task-${ idNumber } -content` ) ;
101+ check . classList . add ( "checked" ) ;
102+ task . classList . add ( "completed" ) ;
103+ } ) ;
93104 }
94- //if (storedCompletedTasks.length > 0){
95- //let tasksToDo = tasks - storedCompletedTasks;
96- //completedTasks = tasks - tasksToDo;
97- //completedTasks.forEach(function(completedTask){
98- //completedTask.classList.add("completed");
99- //});
100- //}
101105 }
102106}
103107let tasks = [ ] ;
104108let completedTasks = [ ] ;
105- let storedTasks = localStorage . getItem ( "tasks" ) . replace ( `"` , `` ) . split ( "," ) ;
106- let storedCompletedTasks = localStorage . getItem ( "completedTasks" ) . replace ( `"` , `` ) . split ( "," ) ;
107- createStoredTasks ( ) ;
109+ let storedTasks = localStorage . getItem ( "tasks" ) ;
110+ if ( storedTasks ) { storedTasks = storedTasks . split ( "," ) ; }
111+ let storedCompletedTasks = localStorage . getItem ( "completedTasks" ) ;
112+ if ( storedCompletedTasks ) { storedCompletedTasks = storedCompletedTasks . split ( "," ) ; }
108113if ( localStorage . getItem ( "title" ) . value = 0 ) { localStorage . setItem ( "title" , "My To-Do List" ) ; }
109114let title = localStorage . getItem ( "title" ) ;
110115document . querySelector ( "#title" ) . innerHTML = title ;
111116document . querySelector ( "#plus-btn" ) . addEventListener ( "click" , uncollapseNewTaskSection ) ;
112117document . querySelector ( "#change-title-btn" ) . addEventListener ( "click" , changeTitleForm ) ;
118+ createStoredTasks ( ) ;
113119countTasks ( ) ;
0 commit comments