diff --git a/resources/i18n/en.json b/resources/i18n/en.json index 5057410ff8..ab53d312e5 100644 --- a/resources/i18n/en.json +++ b/resources/i18n/en.json @@ -84,6 +84,28 @@ "description": "Description" } }, + "journal": { + "page": { + "issn": "ISSN", + "publisher": "Publisher", + "description": "Description" + } + }, + "journalvolume": { + "page": { + "volume": "Volume", + "issuedate": "Issue Date", + "description": "Description" + } + }, + "journalissue": { + "page": { + "number": "Number", + "issuedate": "Issue Date", + "description": "Description", + "keyword": "Keywords" + } + }, "nav": { "home": "Home" }, diff --git a/src/app/+item-page/item-page.module.ts b/src/app/+item-page/item-page.module.ts index 763f549b26..ce859e0168 100644 --- a/src/app/+item-page/item-page.module.ts +++ b/src/app/+item-page/item-page.module.ts @@ -25,6 +25,9 @@ import { OrgUnitPageFieldsComponent } from './simple/entity-types/orgunit/orguni import { PersonPageFieldsComponent } from './simple/entity-types/person/person-page-fields.component'; import { ProjectPageFieldsComponent } from './simple/entity-types/project/project-page-fields.component'; import { RelatedEntitiesComponent } from './simple/related-entities/related-entities-component'; +import { JournalPageFieldsComponent } from './simple/entity-types/journal/journal-page-fields.component'; +import { JournalIssuePageFieldsComponent } from './simple/entity-types/journal-issue/journal-issue-page-fields.component'; +import { JournalVolumePageFieldsComponent } from './simple/entity-types/journal-volume/journal-volume-page-fields.component'; @NgModule({ imports: [ @@ -53,13 +56,19 @@ import { RelatedEntitiesComponent } from './simple/related-entities/related-enti PersonPageFieldsComponent, RelatedEntitiesComponent, EntityPageFieldsComponent, - GenericItemPageFieldComponent + GenericItemPageFieldComponent, + JournalPageFieldsComponent, + JournalIssuePageFieldsComponent, + JournalVolumePageFieldsComponent ], entryComponents: [ PublicationPageFieldsComponent, ProjectPageFieldsComponent, OrgUnitPageFieldsComponent, - PersonPageFieldsComponent + PersonPageFieldsComponent, + JournalPageFieldsComponent, + JournalIssuePageFieldsComponent, + JournalVolumePageFieldsComponent ] }) export class ItemPageModule { diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html new file mode 100644 index 0000000000..ae1e6f9376 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.html @@ -0,0 +1,28 @@ +

+ +

+
+
+ + + + + + + +
+
+ + + + +
+
diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.scss b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.scss new file mode 100644 index 0000000000..3575cae797 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables.scss'; diff --git a/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts new file mode 100644 index 0000000000..bbf2515945 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-issue/journal-issue-page-fields.component.ts @@ -0,0 +1,30 @@ +import { Component, Inject } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator'; +import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component'; +import { ElementViewMode } from '../../../../shared/view-mode'; +import { + EntityPageFieldsComponent, filterRelationsByTypeLabel, + relationsToItems +} from '../shared/entity-page-fields.component'; + +@rendersEntityType('JournalIssue', ElementViewMode.Full) +@Component({ + selector: 'ds-journal-issue-page-fields', + styleUrls: ['./journal-issue-page-fields.component.scss'], + templateUrl: './journal-issue-page-fields.component.html' +}) +export class JournalIssuePageFieldsComponent extends EntityPageFieldsComponent { + + constructor( + @Inject(ITEM) public item: Item, + private ids: ItemDataService + ) { + super(item); + } + ngOnInit(): void { + super.ngOnInit(); + } +} diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html new file mode 100644 index 0000000000..eabf0ede98 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.html @@ -0,0 +1,24 @@ +

+ +

+
+
+ + + + + + + +
+
+ + +
+
diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.scss b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.scss new file mode 100644 index 0000000000..3575cae797 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables.scss'; diff --git a/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts new file mode 100644 index 0000000000..1f0a046ce6 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal-volume/journal-volume-page-fields.component.ts @@ -0,0 +1,30 @@ +import { Component, Inject } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator'; +import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component'; +import { ElementViewMode } from '../../../../shared/view-mode'; +import { + EntityPageFieldsComponent, filterRelationsByTypeLabel, + relationsToItems +} from '../shared/entity-page-fields.component'; + +@rendersEntityType('JournalVolume', ElementViewMode.Full) +@Component({ + selector: 'ds-journal-volume-page-fields', + styleUrls: ['./journal-volume-page-fields.component.scss'], + templateUrl: './journal-volume-page-fields.component.html' +}) +export class JournalVolumePageFieldsComponent extends EntityPageFieldsComponent { + + constructor( + @Inject(ITEM) public item: Item, + private ids: ItemDataService + ) { + super(item); + } + ngOnInit(): void { + super.ngOnInit(); + } +} diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html new file mode 100644 index 0000000000..eaa72b8e95 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.html @@ -0,0 +1,24 @@ +

+ +

+
+
+ + + + + + + +
+
+ + +
+
diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.scss b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.scss new file mode 100644 index 0000000000..3575cae797 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.scss @@ -0,0 +1 @@ +@import '../../../../../styles/variables.scss'; diff --git a/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts new file mode 100644 index 0000000000..27b4710886 --- /dev/null +++ b/src/app/+item-page/simple/entity-types/journal/journal-page-fields.component.ts @@ -0,0 +1,30 @@ +import { Component, Inject } from '@angular/core'; +import { Observable } from 'rxjs/Observable'; +import { ItemDataService } from '../../../../core/data/item-data.service'; +import { Item } from '../../../../core/shared/item.model'; +import { rendersEntityType } from '../../../../shared/entities/entity-type-decorator'; +import { ITEM } from '../../../../shared/entities/switcher/entity-type-switcher.component'; +import { ElementViewMode } from '../../../../shared/view-mode'; +import { + EntityPageFieldsComponent, filterRelationsByTypeLabel, + relationsToItems +} from '../shared/entity-page-fields.component'; + +@rendersEntityType('Journal', ElementViewMode.Full) +@Component({ + selector: 'ds-journal-page-fields', + styleUrls: ['./journal-page-fields.component.scss'], + templateUrl: './journal-page-fields.component.html' +}) +export class JournalPageFieldsComponent extends EntityPageFieldsComponent { + + constructor( + @Inject(ITEM) public item: Item, + private ids: ItemDataService + ) { + super(item); + } + ngOnInit(): void { + super.ngOnInit(); + } +}