@@ -9,13 +9,34 @@ class TodoApp {
99 }
1010 }
1111
12+ /**
13+ * @deprecated This method is depracated and no longer used. use updateDataToAPI() instead.
14+ */
1215 saveToLocalStorage ( ) {
1316 localStorage . setItem ( 'todoApp' , JSON . stringify ( this . projects ) ) ;
1417 }
18+ async updateDataToAPI ( ) {
19+ try {
20+ const response = await fetch ( BASE_URL + '/api/Project/1' , {
21+ method : 'PUT' ,
22+ headers : {
23+ 'Content-Type' : 'application/json'
24+ } ,
25+ body : JSON . stringify ( this . projects ) //this should be sent as json
26+ } ) ;
27+ if ( ! response . ok ) {
28+ throw new Error ( 'Failed to update data' ) ;
29+ }
30+ console . log ( 'Data updated successfully:' , response ) ;
31+ } catch ( error ) {
32+ console . error ( 'Error updating data to API:' , error ) ;
33+ }
34+ }
1535
1636 async loadFromAPI ( ) {
1737 try {
18- const response = await fetch ( 'https://dummyjson.com/c/5542-d5f6-4d55-a1da' ) ;
38+ var base = BASE_URL ;
39+ const response = await fetch ( BASE_URL + '/api/Project/1' ) ;
1940 if ( ! response . ok ) {
2041 throw new Error ( 'Failed to fetch data' ) ;
2142 }
@@ -37,7 +58,9 @@ class TodoApp {
3758 }
3859 }
3960
40-
61+ /**
62+ * @deprecated This method is depracated and no longer used. Use loadFromAPI() instead.
63+ */
4164 loadFromLocalStorage ( ) {
4265 const data = localStorage . getItem ( 'todoApp' ) ;
4366 if ( data ) {
@@ -57,12 +80,12 @@ class TodoApp {
5780 addProject ( name ) {
5881 const project = new Project ( name ) ;
5982 this . projects . push ( project ) ;
60- this . saveToLocalStorage ( ) ;
83+ this . updateDataToAPI ( ) ;
6184 }
6285
6386 removeProject ( name ) {
6487 this . projects = this . projects . filter ( project => project . name !== name ) ;
65- this . saveToLocalStorage ( ) ;
88+ this . updateDataToAPI ( ) ;
6689 }
6790
6891 getProject ( name ) {
@@ -77,7 +100,7 @@ class TodoApp {
77100 const project = this . getProject ( projectName ) ;
78101 if ( project ) {
79102 project . addTodo ( todo ) ;
80- this . saveToLocalStorage ( ) ;
103+ this . updateDataToAPI ( ) ;
81104 } else {
82105 console . log ( `Project ${ projectName } does not exist.` ) ;
83106 }
@@ -87,7 +110,7 @@ class TodoApp {
87110 const project = this . getProject ( projectName ) ;
88111 if ( project ) {
89112 project . removeTodo ( todoIndex ) ;
90- this . saveToLocalStorage ( ) ;
113+ this . updateDataToAPI ( ) ;
91114 } else {
92115 console . log ( `Project ${ projectName } does not exist.` ) ;
93116 }
@@ -115,7 +138,7 @@ class TodoApp {
115138 item . toggleComplete ( ) ;
116139 }
117140 } ) ;
118- this . saveToLocalStorage ( ) ;
141+ this . updateDataToAPI ( ) ;
119142 }
120143 }
121144}
0 commit comments