diff --git a/src/app/+search-page/search-page.component.html b/src/app/+search-page/search-page.component.html index d5e3a831eb..a27a60baf4 100644 --- a/src/app/+search-page/search-page.component.html +++ b/src/app/+search-page/search-page.component.html @@ -1,9 +1,14 @@
- - - + +
+ + + + +
diff --git a/src/app/+search-page/search-page.component.scss b/src/app/+search-page/search-page.component.scss index da97dd7a62..4e53906667 100644 --- a/src/app/+search-page/search-page.component.scss +++ b/src/app/+search-page/search-page.component.scss @@ -1 +1,9 @@ @import '../../styles/variables.scss'; +@import '../../styles/mixins.scss'; + +#search-content { + margin-left: $search-sidebar-width; + @include media-breakpoint-down(sm) { + margin-left: 0; + } +} \ No newline at end of file diff --git a/src/app/+search-page/search-page.module.ts b/src/app/+search-page/search-page.module.ts index bfb7db89be..1bd07da7a8 100644 --- a/src/app/+search-page/search-page.module.ts +++ b/src/app/+search-page/search-page.module.ts @@ -12,6 +12,8 @@ import { ItemSearchResultListElementComponent } from '../object-list/search-resu import { CollectionSearchResultListElementComponent } from '../object-list/search-result-list-element/collection-search-result/collection-search-result-list-element.component'; import { CommunitySearchResultListElementComponent } from '../object-list/search-result-list-element/community-search-result/community-search-result-list-element.component'; import { SearchService } from './search-service/search.service'; +import { SearchSidebarComponent } from './search-sidebar/search-sidebar.component'; +import { SearchViewSwitchComponent } from './search-view-switch/search-view-switch.component'; @NgModule({ imports: [ @@ -24,6 +26,8 @@ import { SearchService } from './search-service/search.service'; declarations: [ SearchPageComponent, SearchResultsComponent, + SearchSidebarComponent, + SearchViewSwitchComponent, ItemSearchResultListElementComponent, CollectionSearchResultListElementComponent, CommunitySearchResultListElementComponent diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.html b/src/app/+search-page/search-sidebar/search-sidebar.component.html new file mode 100644 index 0000000000..03e930ad7e --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.component.html @@ -0,0 +1,4 @@ +
+
+
+
\ No newline at end of file diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.scss b/src/app/+search-page/search-sidebar/search-sidebar.component.scss new file mode 100644 index 0000000000..34f9a5d542 --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.component.scss @@ -0,0 +1,26 @@ +@import '../../../styles/variables.scss'; +@import '../../../styles/mixins.scss'; + +:host { + display: block; + position: fixed; + background-color: red; + width: $search-sidebar-width; + padding: $spacer; + #filter1, #filter2 { + width: 100%; + } + #filter1 { + height: 300px; + background-color: yellow; + } + #filter2 { + height: 200px; + background-color: green; + } + + @include media-breakpoint-down(sm) { + width: 100%; + display: none; + } +} diff --git a/src/app/+search-page/search-sidebar/search-sidebar.component.ts b/src/app/+search-page/search-sidebar/search-sidebar.component.ts new file mode 100644 index 0000000000..e8e95cf6fa --- /dev/null +++ b/src/app/+search-page/search-sidebar/search-sidebar.component.ts @@ -0,0 +1,19 @@ +import { Component } from '@angular/core'; + +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ + +@Component({ + selector: 'ds-search-sidebar', + styleUrls: ['./search-sidebar.component.scss'], + templateUrl: './search-sidebar.component.html', +}) + +export class SearchSidebarComponent { + constructor() { + console.log('test'); + } +} diff --git a/src/app/+search-page/search-view-switch/search-view-switch.component.html b/src/app/+search-page/search-view-switch/search-view-switch.component.html new file mode 100644 index 0000000000..0823d28b8f --- /dev/null +++ b/src/app/+search-page/search-view-switch/search-view-switch.component.html @@ -0,0 +1,10 @@ +
+
+ TODO + +
+
+ {{resultCount}} + +
+
\ No newline at end of file diff --git a/src/app/+search-page/search-view-switch/search-view-switch.component.scss b/src/app/+search-page/search-view-switch/search-view-switch.component.scss new file mode 100644 index 0000000000..bf483af453 --- /dev/null +++ b/src/app/+search-page/search-view-switch/search-view-switch.component.scss @@ -0,0 +1,3 @@ +@import '../../../styles/variables.scss'; +@import '../../../styles/mixins.scss'; + diff --git a/src/app/+search-page/search-view-switch/search-view-switch.component.ts b/src/app/+search-page/search-view-switch/search-view-switch.component.ts new file mode 100644 index 0000000000..0cbd0d70f1 --- /dev/null +++ b/src/app/+search-page/search-view-switch/search-view-switch.component.ts @@ -0,0 +1,25 @@ +import { Component, Input } from '@angular/core'; + +/** + * This component renders a simple item page. + * The route parameter 'id' is used to request the item it represents. + * All fields of the item that should be displayed, are defined in its template. + */ + +@Component({ + selector: 'ds-search-view-switch', + styleUrls: ['./search-view-switch.component.scss'], + templateUrl: './search-view-switch.component.html', +}) + +export class SearchViewSwitchComponent { + @Input() resultCount; + @Input() active; + constructor() { + console.log('test'); + } + + switchView(b: boolean) { + this.active = b; + } +} diff --git a/src/styles/_custom_variables.scss b/src/styles/_custom_variables.scss index d73193dc7c..92d5933b9c 100644 --- a/src/styles/_custom_variables.scss +++ b/src/styles/_custom_variables.scss @@ -1 +1,2 @@ -$content-spacing: $spacer * 1.5; \ No newline at end of file +$content-spacing: $spacer * 1.5; +$search-sidebar-width: 300px; \ No newline at end of file