mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
108608: Created new ScopeSelectorModal & ScopeSelectorModalCurrent context
This commit is contained in:
@@ -15,4 +15,6 @@ export enum Context {
|
||||
AdminWorkflowSearch = 'adminWorkflowSearch',
|
||||
SideBarSearchModal = 'sideBarSearchModal',
|
||||
SideBarSearchModalCurrent = 'sideBarSearchModalCurrent',
|
||||
ScopeSelectorModal = 'scopeSelectorModal',
|
||||
ScopeSelectorModalCurrent = 'scopeSelectorModalCurrent',
|
||||
}
|
||||
|
@@ -9,6 +9,8 @@ import { isNotEmpty } from '../../../../../shared/empty.util';
|
||||
|
||||
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent('JournalIssueSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-journal-issue-sidebar-search-list-element',
|
||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html'
|
||||
|
@@ -9,6 +9,8 @@ import { isNotEmpty } from '../../../../../shared/empty.util';
|
||||
|
||||
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent('JournalVolumeSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-journal-volume-sidebar-search-list-element',
|
||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html'
|
||||
|
@@ -9,6 +9,8 @@ import { isNotEmpty } from '../../../../../shared/empty.util';
|
||||
|
||||
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent('JournalSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-journal-sidebar-search-list-element',
|
||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html'
|
||||
|
@@ -8,6 +8,8 @@ import { Item } from '../../../../../core/shared/item.model';
|
||||
|
||||
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent('OrgUnitSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-org-unit-sidebar-search-list-element',
|
||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html'
|
||||
|
@@ -13,6 +13,8 @@ import { DSONameService } from '../../../../../core/breadcrumbs/dso-name.service
|
||||
|
||||
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent('PersonSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-person-sidebar-search-list-element',
|
||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html'
|
||||
|
@@ -8,6 +8,8 @@ import { Item } from '../../../../../core/shared/item.model';
|
||||
|
||||
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent('ProjectSearchResult', ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-project-sidebar-search-list-element',
|
||||
templateUrl: '../../../../../shared/object-list/sidebar-search-list-element/sidebar-search-list-element.component.html'
|
||||
|
@@ -50,6 +50,12 @@ export class DSOSelectorComponent implements OnInit, OnDestroy {
|
||||
* The view mode of the listed objects
|
||||
*/
|
||||
viewMode = ViewMode.ListElement;
|
||||
|
||||
/**
|
||||
* The current context
|
||||
*/
|
||||
@Input() context: Context;
|
||||
|
||||
/**
|
||||
* The initially selected DSO's uuid
|
||||
*/
|
||||
@@ -243,7 +249,14 @@ export class DSOSelectorComponent implements OnInit, OnDestroy {
|
||||
/**
|
||||
* 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) {
|
||||
return Context.SideBarSearchModalCurrent;
|
||||
} else {
|
||||
|
@@ -8,6 +8,8 @@ import { SidebarSearchListElementComponent } from '../sidebar-search-list-elemen
|
||||
|
||||
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent(CollectionSearchResult, ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-collection-sidebar-search-list-element',
|
||||
templateUrl: '../sidebar-search-list-element.component.html'
|
||||
|
@@ -8,6 +8,8 @@ import { Community } from '../../../../core/shared/community.model';
|
||||
|
||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent(CommunitySearchResult, ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-collection-sidebar-search-list-element',
|
||||
templateUrl: '../sidebar-search-list-element.component.html'
|
||||
|
@@ -8,8 +8,8 @@ import { SidebarSearchListElementComponent } from '../../sidebar-search-list-ele
|
||||
|
||||
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent('PublicationSearchResult', ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.SideBarSearchModal)
|
||||
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.SideBarSearchModalCurrent)
|
||||
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.ScopeSelectorModal)
|
||||
@listableObjectComponent(ItemSearchResult, ViewMode.ListElement, Context.ScopeSelectorModalCurrent)
|
||||
@Component({
|
||||
selector: 'ds-publication-sidebar-search-list-element',
|
||||
templateUrl: '../../sidebar-search-list-element.component.html'
|
||||
|
@@ -14,6 +14,8 @@
|
||||
</h3>
|
||||
|
||||
<h5 class="px-2">{{'dso-selector.' + action + '.' + objectType.toString().toLowerCase() + '.input-header' | translate}}</h5>
|
||||
<ds-dso-selector [currentDSOId]="dsoRD?.payload.uuid" [types]="selectorTypes" (onSelect)="selectObject($event)"></ds-dso-selector>
|
||||
<ds-dso-selector [context]="Context.ScopeSelectorModal" [currentDSOId]="dsoRD?.payload.uuid"
|
||||
[types]="selectorTypes" (onSelect)="selectObject($event)">
|
||||
</ds-dso-selector>
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -4,6 +4,7 @@ import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
|
||||
import { DSpaceObjectType } from '../../../core/shared/dspace-object-type.model';
|
||||
import { DSOSelectorModalWrapperComponent, SelectorActionType } from '../../dso-selector/modal-wrappers/dso-selector-modal-wrapper.component';
|
||||
import { DSpaceObject } from '../../../core/shared/dspace-object.model';
|
||||
import { Context } from '../../../core/shared/context.model';
|
||||
|
||||
/**
|
||||
* Component to wrap a button - to select the entire repository -
|
||||
@@ -17,6 +18,9 @@ import { DSpaceObject } from '../../../core/shared/dspace-object.model';
|
||||
templateUrl: './scope-selector-modal.component.html',
|
||||
})
|
||||
export class ScopeSelectorModalComponent extends DSOSelectorModalWrapperComponent implements OnInit {
|
||||
|
||||
readonly Context = Context;
|
||||
|
||||
objectType = DSpaceObjectType.COMMUNITY;
|
||||
/**
|
||||
* The types of DSO that can be selected from this list
|
||||
|
Reference in New Issue
Block a user