Changes for page Context Search
Last modified by bougault on 2023/02/20 16:29
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,7 +1,11 @@ 1 1 {{html clean="false"}} 2 +<!-- 3 + !!! POC. Code would must be reviewed / optimized and packaged for use in production !!! 4 +--> 2 2 <script type="module"> 3 3 import {LitElement, html} from 'https://cdn.jsdelivr.net/gh/lit/dist@2/core/lit-core.min.js'; 4 4 class UnifiedSearch extends LitElement { 8 + /* 5 5 static properties = { 6 6 searchText: { type: String }, 7 7 favoritesFilter: { type: Boolean }, ... ... @@ -11,19 +11,20 @@ 11 11 publicFilter: { type: Boolean }, 12 12 privateFilter: { type: Boolean }, 13 13 } 18 + */ 14 14 constructor() { 15 15 super(); 16 16 this.searchText = ""; 17 17 this.favoritesFilter = false; 18 - this.administratorFilter = true;23 + this.administratorFilter = false; 19 19 this.editorFilter = false; 20 20 this.viewerFilter = false; 21 21 this.publicFilter = false; 22 22 this.privateFilter = false; 28 + this.filterUrl = new URL(`//${document.location.host}`); 23 23 } 24 - toggleFilter(filter) { 25 - filter = !filter; 26 - console.log(this.administratorFilter); 30 + toggleBooleanFilter(filterName) { 31 + this[filterName] = !this[filterName]; 27 27 } 28 28 setSearchText(e) { 29 29 this.searchText = e.target.value; ... ... @@ -31,6 +31,9 @@ 31 31 handleSearch() { 32 32 console.log(this.searchText); 33 33 } 39 + buildFilter() { 40 + //https://wiki-dev.ebrains.eu/rest/v1/collabs?search=&offset=0&orderField=title&order=asc&favorite=true&roles= 41 + } 34 34 render() { 35 35 return html` 36 36 <div> ... ... @@ -38,7 +38,14 @@ 38 38 <input @change="${this.setSearchText}" type="text" placeholder="Search..." /> 39 39 <button @click="${this.handleSearch}">Search</button> 40 40 </div> 41 - <label><input type="checkbox" @change="${() => this.toggleFilter(this.administratorFilter)}" .checked="${this.administratorFilter}"/> Administrator</label> 49 + <div> 50 + <label><input type="checkbox" @change="${() => this.toggleBooleanFilter('favoritesFilter')}" .checked="${this.favoritesFilter}"/> Favorites</label> 51 + <label><input type="checkbox" @change="${() => this.toggleBooleanFilter('administratorFilter')}" .checked="${this.administratorFilter}"/> Administrator</label> 52 + <label><input type="checkbox" @change="${() => this.toggleBooleanFilter('editorFilter')}" .checked="${this.editorFilter}"/> Editor</label> 53 + <label><input type="checkbox" @change="${() => this.toggleBooleanFilter('viewerFilter')}" .checked="${this.viewerFilter}"/> Viewer</label> 54 + <label><input type="checkbox" @change="${() => this.toggleBooleanFilter('publicFilter')}" .checked="${this.publicFilter}"/> Public</label> 55 + <label><input type="checkbox" @change="${() => this.toggleBooleanFilter('privateFilter')}" .checked="${this.privateFilter}"/> Public</label> 56 + </div> 42 42 </div> 43 43 ` 44 44 } ... ... @@ -47,7 +47,7 @@ 47 47 </script> 48 48 49 49 <clb-unified-search></clb-unified-search> 50 - 65 +<!-- 51 51 <select id="context-search-type"> 52 52 <option value="all">All</option> 53 53 <option value="collabs">Collabs</option> ... ... @@ -171,7 +171,6 @@ 171 171 }) 172 172 } 173 173 }); 174 - 175 - 176 176 </script> 190 +--> 177 177 {{/html}}