Skip to content

Commit 08027bb

Browse files
Fixed home news facets sidebar & home content section alignment when facets are disabled
1 parent a3894a1 commit 08027bb

16 files changed

Lines changed: 138 additions & 72 deletions
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<ds-configuration-search-page configuration="administrativeView" [context]="context"></ds-configuration-search-page>
1+
<ds-themed-configuration-search-page configuration="administrativeView" [context]="context"></ds-themed-configuration-search-page>

src/app/admin/admin-search-page/admin-search-page.component.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {
66
} from '@angular/core/testing';
77
import { ActivatedRoute } from '@angular/router';
88

9-
import { ConfigurationSearchPageComponent } from '../../search-page/configuration-search-page.component';
9+
import { ThemedConfigurationSearchPageComponent } from '../../search-page/themed-configuration-search-page.component';
1010
import { ActivatedRouteStub } from '../../shared/testing/active-router.stub';
1111
import { AdminSearchPageComponent } from './admin-search-page.component';
1212

@@ -23,7 +23,7 @@ describe('AdminSearchPageComponent', () => {
2323
schemas: [NO_ERRORS_SCHEMA],
2424
}).overrideComponent(AdminSearchPageComponent, {
2525
remove: {
26-
imports: [ConfigurationSearchPageComponent],
26+
imports: [ThemedConfigurationSearchPageComponent],
2727
},
2828
})
2929
.compileComponents();

src/app/admin/admin-search-page/admin-search-page.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
import { Component } from '@angular/core';
22

33
import { Context } from '../../core/shared/context.model';
4-
import { ConfigurationSearchPageComponent } from '../../search-page/configuration-search-page.component';
4+
import { ThemedConfigurationSearchPageComponent } from '../../search-page/themed-configuration-search-page.component';
55

66
@Component({
77
selector: 'ds-admin-search-page',
88
templateUrl: './admin-search-page.component.html',
99
styleUrls: ['./admin-search-page.component.scss'],
1010
standalone: true,
11-
imports: [ConfigurationSearchPageComponent],
11+
imports: [ThemedConfigurationSearchPageComponent],
1212
})
1313

1414
/**
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<ds-configuration-search-page configuration="supervision" [context]="context"></ds-configuration-search-page>
1+
<ds-themed-configuration-search-page configuration="supervision" [context]="context"></ds-themed-configuration-search-page>

src/app/admin/admin-workflow-page/admin-workflow-page.component.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
waitForAsync,
66
} from '@angular/core/testing';
77

8-
import { ConfigurationSearchPageComponent } from '../../search-page/configuration-search-page.component';
8+
import { ThemedConfigurationSearchPageComponent } from '../../search-page/themed-configuration-search-page.component';
99
import { AdminWorkflowPageComponent } from './admin-workflow-page.component';
1010

1111
describe('AdminSearchPageComponent', () => {
@@ -20,7 +20,7 @@ describe('AdminSearchPageComponent', () => {
2020
.overrideComponent(AdminWorkflowPageComponent, {
2121
remove: {
2222
imports: [
23-
ConfigurationSearchPageComponent,
23+
ThemedConfigurationSearchPageComponent,
2424
],
2525
},
2626
})

src/app/admin/admin-workflow-page/admin-workflow-page.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
import { Component } from '@angular/core';
22

33
import { Context } from '../../core/shared/context.model';
4-
import { ConfigurationSearchPageComponent } from '../../search-page/configuration-search-page.component';
4+
import { ThemedConfigurationSearchPageComponent } from '../../search-page/themed-configuration-search-page.component';
55

66
@Component({
77
selector: 'ds-admin-workflow-page',
88
templateUrl: './admin-workflow-page.component.html',
99
styleUrls: ['./admin-workflow-page.component.scss'],
1010
standalone: true,
11-
imports: [ConfigurationSearchPageComponent],
11+
imports: [ThemedConfigurationSearchPageComponent],
1212
})
1313

1414
/**

src/app/home-page/home-page.component.default.scss

Whitespace-only changes.
Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,28 @@
11
<ds-themed-home-news></ds-themed-home-news>
2-
<div [ngClass]="appConfig.homePage.showDiscoverFilters ? 'container-fluid' : 'container'">
3-
<div class="row m-5">
4-
<div class="col-sm-3" *ngIf="appConfig.homePage.showDiscoverFilters">
5-
<ds-configuration-search-page [sideBarWidth]="12" [showViewModes]="false" [searchEnabled]="false"
6-
[inPlaceSearch]="false" [showScopeSelector]="false"></ds-configuration-search-page>
7-
</div>
8-
<div [ngClass]="appConfig.homePage.showDiscoverFilters ? 'col-sm-9' : 'col-sm-12'">
2+
<div [ngClass]="showDiscoverFilters ? 'container-fluid' : 'container'">
3+
<ds-page-with-sidebar [sidebarContent]="sidebar" [sideBarWidth]="3" [class]="showDiscoverFilters ? 'row mx-3' : ''">
4+
<div [class.col-sm-12]="showDiscoverFilters">
5+
<button *ngIf="(isXsOrSm$ | async) && sidebarService.isCollapsed" (click)="sidebarService.expand()"
6+
class="btn btn-outline-primary d-block ml-auto mb-3">
7+
<i class="fas fa-sliders"></i> {{ 'search.sidebar.open' | translate }}
8+
</button>
99
<ng-container *ngIf="(site$ | async) as site">
1010
<ds-view-tracker [object]="site"></ds-view-tracker>
1111
</ng-container>
1212
<ds-themed-search-form [inPlaceSearch]="false"
13-
[searchPlaceholder]="'home.search-form.placeholder' | translate"></ds-themed-search-form>
13+
[searchPlaceholder]="'home.search-form.placeholder' | translate">
14+
</ds-themed-search-form>
1415
<ds-themed-top-level-community-list></ds-themed-top-level-community-list>
1516
<ds-recent-item-list *ngIf="recentSubmissionspageSize>0"></ds-recent-item-list>
1617
</div>
17-
</div>
18+
</ds-page-with-sidebar>
1819
</div>
1920
<ds-suggestions-popup></ds-suggestions-popup>
21+
22+
<ng-template #sidebar>
23+
<div *ngIf="showDiscoverFilters">
24+
<ds-themed-configuration-search-page [sideBarWidth]="12" [showViewModes]="false" [searchEnabled]="false"
25+
[inPlaceSearch]="false" [showScopeSelector]="false">
26+
</ds-themed-configuration-search-page>
27+
</div>
28+
</ng-template>
Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
1-
:host {
2-
}
1+
:host ::ng-deep {
2+
.container-fluid .container {
3+
padding: 0;
4+
}
5+
}

src/app/home-page/home-page.component.ts

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ import {
1212
PLATFORM_ID,
1313
} from '@angular/core';
1414
import { ActivatedRoute } from '@angular/router';
15+
import { Observable } from 'rxjs';
16+
import { Site } from '../core/shared/site.model';
17+
import { isPlatformServer } from '@angular/common';
18+
import { ServerResponseService } from '../core/services/server-response.service';
1519
import { TranslateModule } from '@ngx-translate/core';
1620
import {
1721
EMPTY,
@@ -37,6 +41,10 @@ import { Site } from '../core/shared/site.model';
3741
import { SuggestionsPopupComponent } from '../notifications/suggestions-popup/suggestions-popup.component';
3842
import { ConfigurationSearchPageComponent } from '../search-page/configuration-search-page.component';
3943
import { isNotEmpty } from '../shared/empty.util';
44+
import { APP_CONFIG, AppConfig } from 'src/config/app-config.interface';
45+
import { HostWindowService } from '../shared/host-window.service';
46+
import { SidebarService } from '../shared/sidebar/sidebar.service';
47+
4048
import { ThemedSearchFormComponent } from '../shared/search-form/themed-search-form.component';
4149
import { ViewTrackerComponent } from '../statistics/angulartics/dspace/view-tracker.component';
4250
import { ThemedHomeNewsComponent } from './home-news/themed-home-news.component';
@@ -53,21 +61,27 @@ import { ThemedTopLevelCommunityListComponent } from './top-level-community-list
5361
export class HomePageComponent implements OnInit, OnDestroy {
5462

5563
site$: Observable<Site>;
64+
isXsOrSm$: Observable<boolean>;
5665
recentSubmissionspageSize: number;
66+
showDiscoverFilters: boolean;
5767
/**
5868
* An array of LinkDefinition objects representing inbox links for the home page.
5969
*/
6070
inboxLinks: LinkDefinition[] = [];
6171

6272
constructor(
6373
@Inject(APP_CONFIG) protected appConfig: AppConfig,
64-
private route: ActivatedRoute,
65-
private responseService: ServerResponseService,
66-
private notifyInfoService: NotifyInfoService,
74+
protected route: ActivatedRoute,
75+
protected responseService: ServerResponseService,
76+
protected notifyInfoService: NotifyInfoService,
6777
protected linkHeadService: LinkHeadService,
6878
@Inject(PLATFORM_ID) private platformId: string,
79+
protected sidebarService: SidebarService,
80+
protected windowService: HostWindowService,
81+
@Inject(PLATFORM_ID) protected platformId: string,
6982
) {
70-
this.recentSubmissionspageSize = environment.homePage.recentSubmissions.pageSize;
83+
this.recentSubmissionspageSize = this.appConfig.homePage.recentSubmissions.pageSize;
84+
this.showDiscoverFilters = this.appConfig.homePage.showDiscoverFilters;
7185
// Get COAR REST API URLs from REST configuration
7286
// only if COAR configuration is enabled
7387
this.notifyInfoService.isCoarConfigEnabled().pipe(
@@ -86,6 +100,7 @@ export class HomePageComponent implements OnInit, OnDestroy {
86100
}
87101

88102
ngOnInit(): void {
103+
this.isXsOrSm$ = this.windowService.isXsOrSm();
89104
this.site$ = this.route.data.pipe(
90105
map((data) => data.site as Site),
91106
);

0 commit comments

Comments
 (0)