From f6cc5eae2eb24cf2bd4c8bcef1c83dfe6f815692 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 14:33:08 +0200 Subject: [PATCH 01/10] locked searchbar when searchOption is not picked --- src/app/handle-page/handle-table/handle-table.component.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/app/handle-page/handle-table/handle-table.component.html b/src/app/handle-page/handle-table/handle-table.component.html index fe9c49bf7f4..d0621ab9632 100644 --- a/src/app/handle-page/handle-table/handle-table.component.html +++ b/src/app/handle-page/handle-table/handle-table.component.html @@ -21,7 +21,8 @@
{{ 'handle-table.title' | translate }}
+ [(ngModel)]="searchQuery" + [disabled]="searchOption == null || searchOption == ''"> From a1543f80ef70e6a59e8e7cdcb6deefa18daed0f6 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 14:55:42 +0200 Subject: [PATCH 02/10] edited Resource Type search option to not be case-sensitive --- .../handle-page/handle-table/handle-table.component.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/app/handle-page/handle-table/handle-table.component.ts b/src/app/handle-page/handle-table/handle-table.component.ts index 4aed5177cd5..e8ece51cdba 100644 --- a/src/app/handle-page/handle-table/handle-table.component.ts +++ b/src/app/handle-page/handle-table/handle-table.component.ts @@ -390,17 +390,17 @@ export class HandleTableComponent implements OnInit { case this.resourceTypeOption: parsedSearchOption = RESOURCE_TYPE_SEARCH_OPTION; // parse resourceType from string to the number because the resourceType is integer on the server - switch (this.searchQuery) { - case ITEM: + switch (this.searchQuery.toLowerCase()) { + case ITEM.toLowerCase(): parsedSearchQuery = '' + 2; break; - case COLLECTION: + case COLLECTION.toLowerCase(): parsedSearchQuery = '' + 3; break; - case COMMUNITY: + case COMMUNITY.toLowerCase(): parsedSearchQuery = '' + 4; break; - case SITE: + case SITE.toLowerCase(): parsedSearchQuery = '' + 5; } break; From 9a93209c52f4dbf5571a3f99cae6c79946a9fa01 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 15:06:04 +0200 Subject: [PATCH 03/10] edited Resource Type search option to show nothing when there is no match --- src/app/handle-page/handle-table/handle-table.component.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/app/handle-page/handle-table/handle-table.component.ts b/src/app/handle-page/handle-table/handle-table.component.ts index e8ece51cdba..3883ef79554 100644 --- a/src/app/handle-page/handle-table/handle-table.component.ts +++ b/src/app/handle-page/handle-table/handle-table.component.ts @@ -402,6 +402,10 @@ export class HandleTableComponent implements OnInit { break; case SITE.toLowerCase(): parsedSearchQuery = '' + 5; + break; + default: + parsedSearchQuery = '' + -1; + break; } break; default: From eda80a986f9dcffc4ccc170297944bae89ad50c8 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 15:14:19 +0200 Subject: [PATCH 04/10] try to set lowercase constants without toLowerCase method --- src/app/core/handle/handle.resource-type.ts | 8 ++++---- .../handle-page/handle-table/handle-table.component.ts | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/app/core/handle/handle.resource-type.ts b/src/app/core/handle/handle.resource-type.ts index f4728c150be..83859597011 100644 --- a/src/app/core/handle/handle.resource-type.ts +++ b/src/app/core/handle/handle.resource-type.ts @@ -9,7 +9,7 @@ import { ResourceType } from '../shared/resource-type'; export const HANDLE = new ResourceType('handle'); export const SUCCESSFUL_RESPONSE_START_CHAR = '2'; -export const COMMUNITY = 'Community'; -export const COLLECTION = 'Collection'; -export const ITEM = 'Item'; -export const SITE = 'Site'; +export const COMMUNITY = 'community'; +export const COLLECTION = 'collection'; +export const ITEM = 'item'; +export const SITE = 'site'; diff --git a/src/app/handle-page/handle-table/handle-table.component.ts b/src/app/handle-page/handle-table/handle-table.component.ts index 3883ef79554..dfd709cd4dd 100644 --- a/src/app/handle-page/handle-table/handle-table.component.ts +++ b/src/app/handle-page/handle-table/handle-table.component.ts @@ -391,16 +391,16 @@ export class HandleTableComponent implements OnInit { parsedSearchOption = RESOURCE_TYPE_SEARCH_OPTION; // parse resourceType from string to the number because the resourceType is integer on the server switch (this.searchQuery.toLowerCase()) { - case ITEM.toLowerCase(): + case ITEM: parsedSearchQuery = '' + 2; break; - case COLLECTION.toLowerCase(): + case COLLECTION: parsedSearchQuery = '' + 3; break; - case COMMUNITY.toLowerCase(): + case COMMUNITY: parsedSearchQuery = '' + 4; break; - case SITE.toLowerCase(): + case SITE: parsedSearchQuery = '' + 5; break; default: From b119487cc71a41f225c713d4f5b23201007be98a Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 15:33:13 +0200 Subject: [PATCH 05/10] Revert "try to set lowercase constants without toLowerCase method" This reverts commit eda80a986f9dcffc4ccc170297944bae89ad50c8. --- src/app/core/handle/handle.resource-type.ts | 8 ++++---- .../handle-page/handle-table/handle-table.component.ts | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/app/core/handle/handle.resource-type.ts b/src/app/core/handle/handle.resource-type.ts index 83859597011..f4728c150be 100644 --- a/src/app/core/handle/handle.resource-type.ts +++ b/src/app/core/handle/handle.resource-type.ts @@ -9,7 +9,7 @@ import { ResourceType } from '../shared/resource-type'; export const HANDLE = new ResourceType('handle'); export const SUCCESSFUL_RESPONSE_START_CHAR = '2'; -export const COMMUNITY = 'community'; -export const COLLECTION = 'collection'; -export const ITEM = 'item'; -export const SITE = 'site'; +export const COMMUNITY = 'Community'; +export const COLLECTION = 'Collection'; +export const ITEM = 'Item'; +export const SITE = 'Site'; diff --git a/src/app/handle-page/handle-table/handle-table.component.ts b/src/app/handle-page/handle-table/handle-table.component.ts index dfd709cd4dd..3883ef79554 100644 --- a/src/app/handle-page/handle-table/handle-table.component.ts +++ b/src/app/handle-page/handle-table/handle-table.component.ts @@ -391,16 +391,16 @@ export class HandleTableComponent implements OnInit { parsedSearchOption = RESOURCE_TYPE_SEARCH_OPTION; // parse resourceType from string to the number because the resourceType is integer on the server switch (this.searchQuery.toLowerCase()) { - case ITEM: + case ITEM.toLowerCase(): parsedSearchQuery = '' + 2; break; - case COLLECTION: + case COLLECTION.toLowerCase(): parsedSearchQuery = '' + 3; break; - case COMMUNITY: + case COMMUNITY.toLowerCase(): parsedSearchQuery = '' + 4; break; - case SITE: + case SITE.toLowerCase(): parsedSearchQuery = '' + 5; break; default: From d2eb8a43fa3196e6e3f82a3d31b1a73a513fae5e Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 15:39:22 +0200 Subject: [PATCH 06/10] changed the heading of Internal search option --- src/assets/i18n/cs.json5 | 2 +- src/assets/i18n/en.json5 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/assets/i18n/cs.json5 b/src/assets/i18n/cs.json5 index 4eec3150fcc..77766d61c2a 100644 --- a/src/assets/i18n/cs.json5 +++ b/src/assets/i18n/cs.json5 @@ -2469,7 +2469,7 @@ // "handle-table.table.handle": "Handle", "handle-table.table.handle": "Handle", // "handle-table.table.internal": "Internal", - "handle-table.table.internal": "InternĂ­", + "handle-table.table.internal": "Je internĂ­", // "handle-table.table.is-internal": "Yes", "handle-table.table.is-internal": "Ano", // "handle-table.table.not-internal": "No", diff --git a/src/assets/i18n/en.json5 b/src/assets/i18n/en.json5 index 59b75e666cb..05d19d89105 100644 --- a/src/assets/i18n/en.json5 +++ b/src/assets/i18n/en.json5 @@ -2029,7 +2029,7 @@ "handle-table.table.handle": "Handle", - "handle-table.table.internal": "Internal", + "handle-table.table.internal": "Is Internal", "handle-table.table.is-internal": "Yes", From b0f91ae50b2c9ef36f323c426239d55225d4bf31 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 15:51:22 +0200 Subject: [PATCH 07/10] refactored - copilots hint to rephrase condition --- src/app/handle-page/handle-table/handle-table.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/handle-page/handle-table/handle-table.component.html b/src/app/handle-page/handle-table/handle-table.component.html index d0621ab9632..7eb92d78e65 100644 --- a/src/app/handle-page/handle-table/handle-table.component.html +++ b/src/app/handle-page/handle-table/handle-table.component.html @@ -22,7 +22,7 @@
{{ 'handle-table.title' | translate }}
+ [disabled]="!searchOption"> From 4dc0f2bfc39b3e2ea30df626c31d1a500ecfe2d6 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 16:23:24 +0200 Subject: [PATCH 08/10] Added full list of handles for empty Resource Type search option --- src/app/handle-page/handle-table/handle-table.component.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/app/handle-page/handle-table/handle-table.component.ts b/src/app/handle-page/handle-table/handle-table.component.ts index 3883ef79554..8abfd5499a8 100644 --- a/src/app/handle-page/handle-table/handle-table.component.ts +++ b/src/app/handle-page/handle-table/handle-table.component.ts @@ -403,6 +403,9 @@ export class HandleTableComponent implements OnInit { case SITE.toLowerCase(): parsedSearchQuery = '' + 5; break; + case '': + parsedSearchQuery = ''; + break; default: parsedSearchQuery = '' + -1; break; From 5989aa02ea0781a7345732874c87233c4585db67 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 16:36:44 +0200 Subject: [PATCH 09/10] refactored empty searchQueries handling and added comment for invalid resourcetype search inputs --- .../handle-table/handle-table.component.ts | 82 +++++++++---------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/src/app/handle-page/handle-table/handle-table.component.ts b/src/app/handle-page/handle-table/handle-table.component.ts index 8abfd5499a8..34f108bb471 100644 --- a/src/app/handle-page/handle-table/handle-table.component.ts +++ b/src/app/handle-page/handle-table/handle-table.component.ts @@ -373,47 +373,47 @@ export class HandleTableComponent implements OnInit { // parse searchQuery for the server request // the new sorting query is in the format e.g. `handle:123456`, `resourceTypeId:2`, `url:internal` let parsedSearchOption = ''; - let parsedSearchQuery = this.searchQuery; - switch (this.searchOption) { - case this.handleOption: - parsedSearchOption = HANDLE_SEARCH_OPTION; - break; - case this.internalOption: - // if the handle doesn't have the URL - is internal, if it does - is external - parsedSearchOption = URL_SEARCH_OPTION; - if (this.searchQuery.toLowerCase() === 'yes') { - parsedSearchQuery = 'internal'; - } else if (this.searchQuery.toLowerCase() === 'no') { - parsedSearchQuery = 'external'; - } - break; - case this.resourceTypeOption: - parsedSearchOption = RESOURCE_TYPE_SEARCH_OPTION; - // parse resourceType from string to the number because the resourceType is integer on the server - switch (this.searchQuery.toLowerCase()) { - case ITEM.toLowerCase(): - parsedSearchQuery = '' + 2; - break; - case COLLECTION.toLowerCase(): - parsedSearchQuery = '' + 3; - break; - case COMMUNITY.toLowerCase(): - parsedSearchQuery = '' + 4; - break; - case SITE.toLowerCase(): - parsedSearchQuery = '' + 5; - break; - case '': - parsedSearchQuery = ''; - break; - default: - parsedSearchQuery = '' + -1; - break; - } - break; - default: - parsedSearchOption = ''; - break; + let parsedSearchQuery = ''; + if (this.searchQuery) { + parsedSearchQuery = this.searchQuery; + switch (this.searchOption) { + case this.handleOption: + parsedSearchOption = HANDLE_SEARCH_OPTION; + break; + case this.internalOption: + // if the handle doesn't have the URL - is internal, if it does - is external + parsedSearchOption = URL_SEARCH_OPTION; + if (this.searchQuery.toLowerCase() === 'yes') { + parsedSearchQuery = 'internal'; + } else if (this.searchQuery.toLowerCase() === 'no') { + parsedSearchQuery = 'external'; + } + break; + case this.resourceTypeOption: + parsedSearchOption = RESOURCE_TYPE_SEARCH_OPTION; + // parse resourceType from string to the number because the resourceType is integer on the server + switch (this.searchQuery.toLowerCase()) { + case ITEM.toLowerCase(): + parsedSearchQuery = '' + 2; + break; + case COLLECTION.toLowerCase(): + parsedSearchQuery = '' + 3; + break; + case COMMUNITY.toLowerCase(): + parsedSearchQuery = '' + 4; + break; + case SITE.toLowerCase(): + parsedSearchQuery = '' + 5; + break; + // no results for invalid search inputs + default: + parsedSearchQuery = '' + -1; + break; + } + break; + default: + break; + } } this.sortConfiguration.field = parsedSearchOption + ':' + parsedSearchQuery; From 75c431749203567af16c6fc3aaa7a5a144635e69 Mon Sep 17 00:00:00 2001 From: Juraj Roka <95219754+jr-rk@users.noreply.github.com> Date: Fri, 20 Jun 2025 16:45:15 +0200 Subject: [PATCH 10/10] removed unimportant default switch --- src/app/handle-page/handle-table/handle-table.component.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/app/handle-page/handle-table/handle-table.component.ts b/src/app/handle-page/handle-table/handle-table.component.ts index 34f108bb471..2c86e160e0c 100644 --- a/src/app/handle-page/handle-table/handle-table.component.ts +++ b/src/app/handle-page/handle-table/handle-table.component.ts @@ -411,8 +411,6 @@ export class HandleTableComponent implements OnInit { break; } break; - default: - break; } }