mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
Merge pull request #2657 from alexandrevryghem/w2p-108608_created-search-scope-selector_contribute-main
Created new custom search scope context
This commit is contained in:
@@ -29,6 +29,9 @@ export enum Context {
|
|||||||
SideBarSearchModal = 'sideBarSearchModal',
|
SideBarSearchModal = 'sideBarSearchModal',
|
||||||
SideBarSearchModalCurrent = 'sideBarSearchModalCurrent',
|
SideBarSearchModalCurrent = 'sideBarSearchModalCurrent',
|
||||||
|
|
||||||
|
ScopeSelectorModal = 'scopeSelectorModal',
|
||||||
|
ScopeSelectorModalCurrent = 'scopeSelectorModalCurrent',
|
||||||
|
|
||||||
/** The MyDSpace* Context values below are used for badge display in MyDSpace. */
|
/** The MyDSpace* Context values below are used for badge display in MyDSpace. */
|
||||||
MyDSpaceArchived = 'mydspaceArchived',
|
MyDSpaceArchived = 'mydspaceArchived',
|
||||||
MyDSpaceWorkspace = 'mydspaceWorkspace',
|
MyDSpaceWorkspace = 'mydspaceWorkspace',
|
||||||
|
@@ -17,6 +17,8 @@ import { TruncatablePartComponent } from '../../../../../shared/truncatable/trun
|
|||||||
|
|
||||||
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-journal-issue-sidebar-search-list-element',
|
selector: 'ds-journal-issue-sidebar-search-list-element',
|
||||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||||
|
@@ -17,6 +17,8 @@ import { TruncatablePartComponent } from '../../../../../shared/truncatable/trun
|
|||||||
|
|
||||||
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-journal-volume-sidebar-search-list-element',
|
selector: 'ds-journal-volume-sidebar-search-list-element',
|
||||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||||
|
@@ -17,6 +17,8 @@ import { TruncatablePartComponent } from '../../../../../shared/truncatable/trun
|
|||||||
|
|
||||||
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-journal-sidebar-search-list-element',
|
selector: 'ds-journal-sidebar-search-list-element',
|
||||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||||
|
@@ -16,6 +16,8 @@ import { TruncatablePartComponent } from '../../../../../shared/truncatable/trun
|
|||||||
|
|
||||||
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-org-unit-sidebar-search-list-element',
|
selector: 'ds-org-unit-sidebar-search-list-element',
|
||||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||||
|
@@ -23,6 +23,8 @@ import { TruncatablePartComponent } from '../../../../../shared/truncatable/trun
|
|||||||
|
|
||||||
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-person-sidebar-search-list-element',
|
selector: 'ds-person-sidebar-search-list-element',
|
||||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||||
|
@@ -16,6 +16,8 @@ import { TruncatablePartComponent } from '../../../../../shared/truncatable/trun
|
|||||||
|
|
||||||
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-project-sidebar-search-list-element',
|
selector: 'ds-project-sidebar-search-list-element',
|
||||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html',
|
||||||
|
@@ -91,6 +91,12 @@ export class DSOSelectorComponent implements OnInit, OnDestroy {
|
|||||||
* The view mode of the listed objects
|
* The view mode of the listed objects
|
||||||
*/
|
*/
|
||||||
viewMode = ViewMode.ListElement;
|
viewMode = ViewMode.ListElement;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The current context
|
||||||
|
*/
|
||||||
|
@Input() context: Context;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The initially selected DSO's uuid
|
* The initially selected DSO's uuid
|
||||||
*/
|
*/
|
||||||
@@ -307,7 +313,14 @@ export class DSOSelectorComponent implements OnInit, OnDestroy {
|
|||||||
/**
|
/**
|
||||||
* Get the context for element with the given id
|
* Get the context for element with the given id
|
||||||
*/
|
*/
|
||||||
getContext(id: string) {
|
getContext(id: string): Context {
|
||||||
|
if (this.context === Context.ScopeSelectorModal) {
|
||||||
|
if (id === this.currentDSOId) {
|
||||||
|
return Context.ScopeSelectorModalCurrent;
|
||||||
|
} else {
|
||||||
|
return Context.ScopeSelectorModal;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (id === this.currentDSOId) {
|
if (id === this.currentDSOId) {
|
||||||
return Context.SideBarSearchModalCurrent;
|
return Context.SideBarSearchModalCurrent;
|
||||||
} else {
|
} else {
|
||||||
|
@@ -16,6 +16,8 @@ import { SidebarSearchListElementComponent } from '../sidebar-search-list-elemen
|
|||||||
|
|
||||||
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-collection-sidebar-search-list-element',
|
selector: 'ds-collection-sidebar-search-list-element',
|
||||||
templateUrl: '../sidebar-search-list-element.component.html',
|
templateUrl: '../sidebar-search-list-element.component.html',
|
||||||
|
@@ -16,6 +16,8 @@ import { SidebarSearchListElementComponent } from '../sidebar-search-list-elemen
|
|||||||
|
|
||||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
|
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
|
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-community-sidebar-search-list-element',
|
selector: 'ds-community-sidebar-search-list-element',
|
||||||
templateUrl: '../sidebar-search-list-element.component.html',
|
templateUrl: '../sidebar-search-list-element.component.html',
|
||||||
|
@@ -16,8 +16,8 @@ import { SidebarSearchListElementComponent } from '../../sidebar-search-list-ele
|
|||||||
|
|
||||||
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||||
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||||
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||||
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'ds-publication-sidebar-search-list-element',
|
selector: 'ds-publication-sidebar-search-list-element',
|
||||||
templateUrl: '../../sidebar-search-list-element.component.html',
|
templateUrl: '../../sidebar-search-list-element.component.html',
|
||||||
|
@@ -14,6 +14,8 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h2 class="px-2 h5">{{'dso-selector.' + action + '.' + objectType.toString().toLowerCase() + '.input-header' | translate}}</h2>
|
<h2 class="px-2 h5">{{'dso-selector.' + action + '.' + objectType.toString().toLowerCase() + '.input-header' | translate}}</h2>
|
||||||
<ds-dso-selector [currentDSOId]="dsoRD?.payload.uuid" [types]="selectorTypes" [sort]="defaultSort" (onSelect)="selectObject($event)"></ds-dso-selector>
|
<ds-dso-selector [context]="Context.ScopeSelectorModal" [currentDSOId]="dsoRD?.payload.uuid"
|
||||||
|
[types]="selectorTypes" [sort]="defaultSort" (onSelect)="selectObject($event)">
|
||||||
|
</ds-dso-selector>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -12,6 +12,7 @@ import {
|
|||||||
SortDirection,
|
SortDirection,
|
||||||
SortOptions,
|
SortOptions,
|
||||||
} from '../../../core/cache/models/sort-options.model';
|
} from '../../../core/cache/models/sort-options.model';
|
||||||
|
import { Context } from '../../../core/shared/context.model';
|
||||||
import { DSpaceObject } from '../../../core/shared/dspace-object.model';
|
import { DSpaceObject } from '../../../core/shared/dspace-object.model';
|
||||||
import { DSpaceObjectType } from '../../../core/shared/dspace-object-type.model';
|
import { DSpaceObjectType } from '../../../core/shared/dspace-object-type.model';
|
||||||
import { DSOSelectorComponent } from '../../dso-selector/dso-selector/dso-selector.component';
|
import { DSOSelectorComponent } from '../../dso-selector/dso-selector/dso-selector.component';
|
||||||
@@ -34,6 +35,9 @@ import {
|
|||||||
imports: [DSOSelectorComponent, TranslateModule],
|
imports: [DSOSelectorComponent, TranslateModule],
|
||||||
})
|
})
|
||||||
export class ScopeSelectorModalComponent extends DSOSelectorModalWrapperComponent implements OnInit {
|
export class ScopeSelectorModalComponent extends DSOSelectorModalWrapperComponent implements OnInit {
|
||||||
|
|
||||||
|
readonly Context = Context;
|
||||||
|
|
||||||
objectType = DSpaceObjectType.COMMUNITY;
|
objectType = DSpaceObjectType.COMMUNITY;
|
||||||
/**
|
/**
|
||||||
* The types of DSO that can be selected from this list
|
* The types of DSO that can be selected from this list
|
||||||
|
Reference in New Issue
Block a user