Skip to content

Commit

Permalink
Merge pull request DSpace#3795 from alexandrevryghem/w2p-122005_fixed…
Browse files Browse the repository at this point in the history
…-dropdown-values-resetting-on-enter_contribute-7_x

[Port dspace-7_x] Fixed dropdown/lookup & lookup-name fields being reset when hitting enter
  • Loading branch information
tdonohue authored Jan 6, 2025
2 parents a078932 + d3d86f4 commit ebc7799
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -94,11 +94,11 @@
(scrolled)="onScroll()"
[scrollWindow]="false">

<button class="dropdown-item disabled"
<button class="dropdown-item disabled" type="button"
*ngIf="optionsList && optionsList.length == 0"
(click)="$event.stopPropagation(); clearFields(); sdRef.close();">{{'form.no-results' | translate}}
</button>
<button class="dropdown-item lookup-item"
<button class="dropdown-item lookup-item" type="button"
*ngFor="let listEntry of optionsList"
(click)="$event.stopPropagation(); onSelect(listEntry); sdRef.close();"
title="{{ listEntry.display }}">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,18 +40,20 @@
(scrolled)="onScroll()"
[scrollWindow]="false">

<button class="dropdown-item disabled" *ngIf="optionsList && optionsList.length === 0">{{'form.no-results' | translate}}</button>
<button class="dropdown-item disabled" type="button" *ngIf="optionsList && optionsList.length === 0">
{{ 'form.no-results' | translate }}
</button>
<button class="dropdown-item collection-item text-truncate"
(click)="onSelect(undefined); sdRef.close()" (mousedown)="onSelect(undefined); sdRef.close()"
title="{{ 'dropdown.clear.tooltip' | translate }}" role="option"
>
type="button">
<i>{{ 'dropdown.clear' | translate }}</i>
</button>
<button class="dropdown-item collection-item text-truncate" *ngFor="let listEntry of optionsList; let i = index"
[class.active]="i === selectedIndex"
(keydown.enter)="onSelect(listEntry); sdRef.close()" (mousedown)="onSelect(listEntry); sdRef.close()"
title="{{ listEntry.display }}" role="option"
[attr.id]="listEntry.display == (currentValue|async) ? ('combobox_' + id + '_selected') : null">
title="{{ listEntry.display }}" role="option" type="button"
[attr.id]="listEntry.display === (currentValue|async) ? ('combobox_' + id + '_selected') : null">
{{inputFormatter(listEntry)}}
</button>
<div class="scrollable-dropdown-loading text-center" *ngIf="loading"><p>{{'form.loading' | translate}}</p></div>
Expand Down
3 changes: 3 additions & 0 deletions src/app/shared/form/form.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,9 @@ export class FormService {
}

public addControlErrors(field: AbstractControl, formId: string, fieldId: string, fieldIndex: number) {
if (field.errors === null) {
return;
}
const errors: string[] = Object.keys(field.errors)
.filter((errorKey) => field.errors[errorKey] === true)
.map((errorKey) => `error.validation.${errorKey}`);
Expand Down

0 comments on commit ebc7799

Please sign in to comment.