@@ -94,7 +94,7 @@ modalBtn.addEventListener('click', (e)=>{
9494 document . querySelector ( '.modal__form' ) . reset ( ) ;
9595
9696 if ( modalContainer . classList . contains ( "show-modal" ) ) {
97-
97+
9898 modalContainer . classList . remove ( 'show-modal' ) ;
9999 document . body . classList . remove ( "hideScrollBar" ) ;
100100 modalContainer . classList . add ( 'hide' ) ;
@@ -195,8 +195,57 @@ document.querySelector(".content").addEventListener("click", (e)=>{
195195 }
196196} )
197197
198- // Script to take all data in localStorage after reload page
199198
199+ // Filers items
200+
201+ function filterItem ( ) {
202+ const searchInput = document . getElementById ( "search-input" ) ;
203+
204+ searchInput . addEventListener ( "input" , ( e ) => {
205+ let value = e . target . value ;
206+
207+ let storageData = JSON . parse ( localStorage . getItem ( "content" ) ) || [ ] ;
208+
209+ let filterItems = storageData . filter ( item => {
210+ return (
211+ item . title . toLowerCase ( ) . includes ( value ) ||
212+ item . description . toLowerCase ( ) . includes ( value )
213+ )
214+ } )
215+
216+ const content = document . querySelector ( ".content" ) ;
217+ content . innerHTML = "" ;
218+
219+ filterItems . forEach ( item => {
220+ content . innerHTML +=
221+ `
222+ <div class="content__item item" data-id="${ item . id } ">
223+ <div class="item__image">
224+ <img src="${ item . imgFile } " alt="Card Image">
225+ </div>
226+ <div class="item__infos">
227+ <h1>${ item . title } </h1>
228+ <p>${ item . description } </p>
229+ <div class="item__infos__btns">
230+ <button class="btn">Details</button>
231+ <div class="item__infos__icons">
232+ <i class="bi bi-pen"></i>
233+ <i class="bi bi-trash"></i>
234+ <div class="alert-content"></div>
235+ </div>
236+ </div>
237+ </div>
238+ </div>
239+
240+ `
241+ } )
242+
243+ } )
244+ }
245+
246+ filterItem ( )
247+
248+ // Script to take all data in localStorage after reload page
200249window . onload = ( ) => {
201250 itemData = JSON . parse ( localStorage . getItem ( "content" ) ) ;
202251 if ( ! itemData ) {
@@ -229,4 +278,4 @@ window.onload = ()=>{
229278
230279 `
231280 } )
232- }
281+ }
0 commit comments