Skip to content

Commit 3d7d87e

Browse files
Andrea BarbassoFrancescoMolinaro
authored andcommitted
Merged in task/dspace-cris-2025_02_x/DSC-2703 (pull request DSpace#4078)
[DSC-2703] add whitelist to DsEscapeHtml, adopt it where needed Approved-by: Francesco Molinaro
2 parents b57a5f5 + b7f8d0c commit 3d7d87e

48 files changed

Lines changed: 146 additions & 39 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/app/entity-groups/journal-entities/item-grid-elements/search-result-grid-elements/journal-issue/journal-issue-search-result-grid-element.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<ds-badges [object]="dso" [context]="context"></ds-badges>
2828
}
2929
<ds-truncatable-part [id]="dso.id" [minLines]="3" type="h4">
30-
<h4 class="card-title" [innerHTML]="dsoTitle"></h4>
30+
<h4 class="card-title" [innerHTML]="dsoTitle | dsEscapeHtml"></h4>
3131
</ds-truncatable-part>
3232
@if (dso.hasMetadata('creativework.datePublished')) {
3333
<p

src/app/entity-groups/journal-entities/item-grid-elements/search-result-grid-elements/journal-issue/journal-issue-search-result-grid-element.component.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { listableObjectComponent } from '../../../../../shared/object-collection
1010
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
1111
import { TruncatableComponent } from '../../../../../shared/truncatable/truncatable.component';
1212
import { TruncatablePartComponent } from '../../../../../shared/truncatable/truncatable-part/truncatable-part.component';
13+
import { EscapeHtmlPipe } from '../../../../../shared/utils/escape-html.pipe';
1314
import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbnail.component';
1415

1516
@listableObjectComponent('JournalIssueSearchResult', ViewMode.GridElement)
@@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
2021
animations: [focusShadow],
2122
imports: [
2223
AsyncPipe,
24+
EscapeHtmlPipe,
2325
RouterLink,
2426
ThemedBadgesComponent,
2527
ThemedThumbnailComponent,

src/app/entity-groups/journal-entities/item-grid-elements/search-result-grid-elements/journal-volume/journal-volume-search-result-grid-element.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<ds-badges [object]="dso" [context]="context"></ds-badges>
2828
}
2929
<ds-truncatable-part [id]="dso.id" [minLines]="3" type="h4">
30-
<h4 class="card-title" [innerHTML]="dsoTitle"></h4>
30+
<h4 class="card-title" [innerHTML]="dsoTitle | dsEscapeHtml"></h4>
3131
</ds-truncatable-part>
3232
@if (dso.hasMetadata('creativework.datePublished')) {
3333
<p

src/app/entity-groups/journal-entities/item-grid-elements/search-result-grid-elements/journal-volume/journal-volume-search-result-grid-element.component.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { listableObjectComponent } from '../../../../../shared/object-collection
1010
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
1111
import { TruncatableComponent } from '../../../../../shared/truncatable/truncatable.component';
1212
import { TruncatablePartComponent } from '../../../../../shared/truncatable/truncatable-part/truncatable-part.component';
13+
import { EscapeHtmlPipe } from '../../../../../shared/utils/escape-html.pipe';
1314
import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbnail.component';
1415

1516
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.GridElement)
@@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
2021
animations: [focusShadow],
2122
imports: [
2223
AsyncPipe,
24+
EscapeHtmlPipe,
2325
RouterLink,
2426
ThemedBadgesComponent,
2527
ThemedThumbnailComponent,

src/app/entity-groups/journal-entities/item-grid-elements/search-result-grid-elements/journal/journal-search-result-grid-element.component.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
<ds-badges [object]="dso" [context]="context"></ds-badges>
2828
}
2929
<ds-truncatable-part [id]="dso.id" [minLines]="3" type="h4">
30-
<h4 class="card-title" [innerHTML]="dsoTitle"></h4>
30+
<h4 class="card-title" [innerHTML]="dsoTitle | dsEscapeHtml"></h4>
3131
</ds-truncatable-part>
3232
@if (dso.hasMetadata('creativework.editor')) {
3333
<p

src/app/entity-groups/journal-entities/item-grid-elements/search-result-grid-elements/journal/journal-search-result-grid-element.component.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { listableObjectComponent } from '../../../../../shared/object-collection
1010
import { ItemSearchResultGridElementComponent } from '../../../../../shared/object-grid/search-result-grid-element/item-search-result/item/item-search-result-grid-element.component';
1111
import { TruncatableComponent } from '../../../../../shared/truncatable/truncatable.component';
1212
import { TruncatablePartComponent } from '../../../../../shared/truncatable/truncatable-part/truncatable-part.component';
13+
import { EscapeHtmlPipe } from '../../../../../shared/utils/escape-html.pipe';
1314
import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbnail.component';
1415

1516
@listableObjectComponent('JournalSearchResult', ViewMode.GridElement)
@@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
2021
animations: [focusShadow],
2122
imports: [
2223
AsyncPipe,
24+
EscapeHtmlPipe,
2325
RouterLink,
2426
ThemedBadgesComponent,
2527
ThemedThumbnailComponent,

src/app/entity-groups/journal-entities/item-list-elements/search-result-list-elements/journal-issue/journal-issue-search-result-list-element.component.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<div class="row">
22
@if (showThumbnails) {
3-
<div class="col-3 col-xl-2 pe-sm-0">
3+
<div class="col-3 col-md-2 pe-sm-0">
44
@if (linkType !== linkTypes.None) {
55
<a [target]="(linkType === linkTypes.ExternalLink) ? '_blank' : '_self'"
66
[attr.rel]="(linkType === linkTypes.ExternalLink) ? 'noopener noreferrer' : null"
@@ -26,12 +26,12 @@
2626
<a [target]="(linkType === linkTypes.ExternalLink) ? '_blank' : '_self'"
2727
[attr.rel]="(linkType === linkTypes.ExternalLink) ? 'noopener noreferrer' : null"
2828
[routerLink]="[itemPageRoute]" class="lead item-list-title dont-break-out"
29-
[innerHTML]="dsoTitle" role="link" tabindex="0"></a>
29+
[innerHTML]="dsoTitle | dsEscapeHtml" role="link" tabindex="0"></a>
3030
}
3131
@if (linkType === linkTypes.None) {
3232
<span
3333
class="lead item-list-title dont-break-out"
34-
[innerHTML]="dsoTitle"></span>
34+
[innerHTML]="dsoTitle | dsEscapeHtml"></span>
3535
}
3636
<span class="text-muted">
3737
<ds-truncatable-part [id]="dso.id" [minLines]="1">

src/app/entity-groups/journal-entities/item-list-elements/search-result-list-elements/journal-issue/journal-issue-search-result-list-element.component.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { listableObjectComponent } from '../../../../../shared/object-collection
1111
import { ItemSearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
1212
import { TruncatableComponent } from '../../../../../shared/truncatable/truncatable.component';
1313
import { TruncatablePartComponent } from '../../../../../shared/truncatable/truncatable-part/truncatable-part.component';
14+
import { EscapeHtmlPipe } from '../../../../../shared/utils/escape-html.pipe';
1415
import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbnail.component';
1516

1617
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement)
@@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
2021
templateUrl: './journal-issue-search-result-list-element.component.html',
2122
imports: [
2223
AsyncPipe,
24+
EscapeHtmlPipe,
2325
NgClass,
2426
RouterLink,
2527
ThemedBadgesComponent,

src/app/entity-groups/journal-entities/item-list-elements/search-result-list-elements/journal-volume/journal-volume-search-result-list-element.component.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<div class="row">
22
@if (showThumbnails) {
3-
<div class="col-3 col-xl-2 pe-sm-0">
3+
<div class="col-3 col-md-2 pe-sm-0">
44
@if (linkType !== linkTypes.None) {
55
<a [target]="(linkType === linkTypes.ExternalLink) ? '_blank' : '_self'"
66
[attr.rel]="(linkType === linkTypes.ExternalLink) ? 'noopener noreferrer' : null"
@@ -26,12 +26,12 @@
2626
<a [target]="(linkType === linkTypes.ExternalLink) ? '_blank' : '_self'"
2727
[attr.rel]="(linkType === linkTypes.ExternalLink) ? 'noopener noreferrer' : null"
2828
[routerLink]="[itemPageRoute]" class="lead item-list-title dont-break-out"
29-
[innerHTML]="dsoTitle" role="link" tabindex="0"></a>
29+
[innerHTML]="dsoTitle | dsEscapeHtml" role="link" tabindex="0"></a>
3030
}
3131
@if (linkType === linkTypes.None) {
3232
<span
3333
class="lead item-list-title dont-break-out"
34-
[innerHTML]="dsoTitle"></span>
34+
[innerHTML]="dsoTitle | dsEscapeHtml"></span>
3535
}
3636
<span class="text-muted">
3737
<ds-truncatable-part [id]="dso.id" [minLines]="1">

src/app/entity-groups/journal-entities/item-list-elements/search-result-list-elements/journal-volume/journal-volume-search-result-list-element.component.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import { listableObjectComponent } from '../../../../../shared/object-collection
1111
import { ItemSearchResultListElementComponent } from '../../../../../shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
1212
import { TruncatableComponent } from '../../../../../shared/truncatable/truncatable.component';
1313
import { TruncatablePartComponent } from '../../../../../shared/truncatable/truncatable-part/truncatable-part.component';
14+
import { EscapeHtmlPipe } from '../../../../../shared/utils/escape-html.pipe';
1415
import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbnail.component';
1516

1617
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement)
@@ -20,6 +21,7 @@ import { ThemedThumbnailComponent } from '../../../../../thumbnail/themed-thumbn
2021
templateUrl: './journal-volume-search-result-list-element.component.html',
2122
imports: [
2223
AsyncPipe,
24+
EscapeHtmlPipe,
2325
NgClass,
2426
RouterLink,
2527
ThemedBadgesComponent,

0 commit comments

Comments
 (0)