diff --git a/dmp-backend/core/src/main/java/eu/eudat/authorization/Permission.java b/dmp-backend/core/src/main/java/eu/eudat/authorization/Permission.java
index d032e5083..990163acb 100644
--- a/dmp-backend/core/src/main/java/eu/eudat/authorization/Permission.java
+++ b/dmp-backend/core/src/main/java/eu/eudat/authorization/Permission.java
@@ -46,5 +46,6 @@ public final class Permission {
// UI Pages
public static String ViewDescriptionTemplateTypePage = "ViewDescriptionTemplateTypePage";
-
+ public static String ViewDmpBlueprintPage = "ViewDmpBlueprintPage";
+
}
diff --git a/dmp-backend/web/src/main/java/eu/eudat/controllers/v2/UserSettingsController.java b/dmp-backend/web/src/main/java/eu/eudat/controllers/v2/UserSettingsController.java
index c1ab218a5..730f44015 100644
--- a/dmp-backend/web/src/main/java/eu/eudat/controllers/v2/UserSettingsController.java
+++ b/dmp-backend/web/src/main/java/eu/eudat/controllers/v2/UserSettingsController.java
@@ -33,7 +33,6 @@ import javax.management.InvalidApplicationException;
import java.util.*;
@RestController
-@CrossOrigin
@RequestMapping(path = "api/user-settings")
public class UserSettingsController {
diff --git a/dmp-frontend/src/app/app-routing.module.ts b/dmp-frontend/src/app/app-routing.module.ts
index 6d94faf13..fbd5a9dcc 100644
--- a/dmp-frontend/src/app/app-routing.module.ts
+++ b/dmp-frontend/src/app/app-routing.module.ts
@@ -82,8 +82,12 @@ const appRoutes: Routes = [
path: 'dmp-blueprints',
loadChildren: () => import('./ui/admin/dmp-blueprint/dmp-blueprint.module').then(m => m.DmpBlueprintModule),
data: {
- breadcrumb: true,
- title: 'GENERAL.TITLES.DMP-BLUEPRINTS'
+ authContext: {
+ permissions: [AppPermission.ViewDmpBlueprintPage]
+ },
+ ...BreadcrumbService.generateRouteDataConfiguration({
+ title: 'BREADCRUMBS.DMP-BLUEPRINTS'
+ })
}
},
{
@@ -106,8 +110,6 @@ const appRoutes: Routes = [
path: 'description-template-type',
loadChildren: () => import('./ui/admin/description-types/description-template-type.module').then(m => m.DescriptionTemplateTypesModule),
data: {
- breadcrumb: true,
- title: 'GENERAL.TITLES.DESCRIPTION-TEMPLATE-TYPES',
authContext: {
permissions: [AppPermission.ViewDescriptionTemplateTypePage]
},
diff --git a/dmp-frontend/src/app/core/common/enum/permission.enum.ts b/dmp-frontend/src/app/core/common/enum/permission.enum.ts
index 063694faf..c73fa420a 100644
--- a/dmp-frontend/src/app/core/common/enum/permission.enum.ts
+++ b/dmp-frontend/src/app/core/common/enum/permission.enum.ts
@@ -5,6 +5,7 @@ export enum AppPermission {
DeleteDescriptionTemplateType = "DeleteDescriptionTemplateType",
// UI Pages
- ViewDescriptionTemplateTypePage = "ViewDescriptionTemplateTypePage"
+ ViewDescriptionTemplateTypePage = "ViewDescriptionTemplateTypePage",
+ ViewDmpBlueprintPage = "ViewDmpBlueprintPage"
}
diff --git a/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.html b/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.html
index 2e9a96d09..45491ae4f 100644
--- a/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.html
+++ b/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.html
@@ -1,4 +1,4 @@
-
+
diff --git a/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.ts b/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.ts
index 7282e2bde..0ca906b0b 100644
--- a/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.ts
+++ b/dmp-frontend/src/app/ui/admin/description-types/listing/description-template-type-listing.component.ts
@@ -98,11 +98,6 @@ export class DescriptionTemplateTypeListingComponent extends BaseListingComponen
languageName: 'DESCRIPTION-TEMPLATE-TYPE-LISTING.FIELDS.STATUS',
cellTemplate: this.descriptionTemplateTypeStatus
},
- // {
- // prop: nameof
(x => x.isExclude),
- // languageName: 'DESCRIPTION-TEMPLATE-TYPE-LISTING.FIELDS.IS-EXCLUDE',
- // pipe: this.pipeService.getPipe(IsExcludeTypePipe)
- // },
{
prop: nameof(x => x.createdAt),
sortable: true,
@@ -151,8 +146,8 @@ export class DescriptionTemplateTypeListingComponent extends BaseListingComponen
public deleteType(id: Guid) {
if (id) {
const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
- maxWidth: '300px',
data: {
+ isDeleteConfirmation: true,
message: this.language.instant('GENERAL.CONFIRMATION-DIALOG.DELETE-ITEM'),
confirmButton: this.language.instant('GENERAL.CONFIRMATION-DIALOG.ACTIONS.CONFIRM'),
cancelButton: this.language.instant('GENERAL.CONFIRMATION-DIALOG.ACTIONS.CANCEL')
diff --git a/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.html b/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.html
index 92114accd..858d209f7 100644
--- a/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.html
+++ b/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.html
@@ -1,4 +1,4 @@
-
+
@@ -51,7 +51,7 @@
+ [ngClass]="{'status-chip-finalized': item.status === dmpBlueprintStatuses.Finalized, 'status-chip-draft' : item.status === dmpBlueprintStatuses.Draft}">
{{enumUtils.toDescriptionTemplateTypeStatusString(item.status) | nullifyValue}}
@@ -78,10 +78,10 @@
-
+
+ [ngClass]="{'status-chip-finalized': row.status === dmpBlueprintStatuses.Finalized, 'status-chip-draft' : row.status === dmpBlueprintStatuses.Draft}">
{{enumUtils.toDescriptionTemplateTypeStatusString(row.status) | nullifyValue}}
@@ -97,13 +97,13 @@
-
-
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.scss b/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.scss
index 1887bb1f2..4380a8f0c 100644
--- a/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.scss
+++ b/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.scss
@@ -1,77 +1,83 @@
.mat-table {
margin-top: 47px;
- border-radius: 4px;
+ border-radius: 4px;
}
-.dmp-blueprint-listing {
- margin-top: 1.3rem;
- margin-left: 1rem;
- margin-right: 2rem;
- .mat-header-row{
- background: #f3f5f8;
- }
- .mat-card {
- margin: 16px 0;
- padding: 0px;
- }
-
- .mat-row {
- cursor: pointer;
- min-height: 4.5em;
- }
-
- mat-row:hover {
- background-color: #eef5f6;
- }
- .mat-fab-bottom-right {
- float: right;
- z-index: 5;
- }
+.dmp-blueprint-listing {
+ margin-top: 1.3rem;
+ margin-left: 1rem;
+ margin-right: 2rem;
+
+ .mat-header-row {
+ background: #f3f5f8;
+ }
+
+ .mat-card {
+ margin: 16px 0;
+ padding: 0px;
+ }
+
+ .mat-row {
+ cursor: pointer;
+ min-height: 4.5em;
+ }
+
+ mat-row:hover {
+ background-color: #eef5f6;
+ }
+
+ .mat-fab-bottom-right {
+ float: right;
+ z-index: 5;
+ }
}
+
// PAGINATOR
:host ::ng-deep .mat-paginator-container {
- flex-direction: row-reverse !important;
- justify-content: space-between !important;
- background-color: #f6f6f6;
- align-items: center;
+ flex-direction: row-reverse !important;
+ justify-content: space-between !important;
+ background-color: #f6f6f6;
+ align-items: center;
}
-.create-btn {
- border-radius: 30px;
- background-color: var(--secondary-color);
- padding-left: 2em;
- padding-right: 2em;
- // color: #000;
- .button-text{
- display: inline-block;
- }
+.create-btn {
+ border-radius: 30px;
+ background-color: var(--secondary-color);
+ padding-left: 2em;
+ padding-right: 2em;
+ // color: #000;
+
+ .button-text {
+ display: inline-block;
+ }
}
.import-btn {
- background: #ffffff 0% 0% no-repeat padding-box;
- border-radius: 30px;
- // color: var(--primary-color);
- // border: 1px solid var(--primary-color);
- padding-left: 2em;
- padding-right: 2em;
- color: #000;
- border: 1px solid #000;
+ background: #ffffff 0% 0% no-repeat padding-box;
+ border-radius: 30px;
+ // color: var(--primary-color);
+ // border: 1px solid var(--primary-color);
+ padding-left: 2em;
+ padding-right: 2em;
+ color: #000;
+ border: 1px solid #000;
}
-.status-chip{
- border-radius: 20px;
- padding-left: 1em;
- padding-right: 1em;
- padding-top: 0.2em;
- font-size: .8em;
+.status-chip {
+
+ border-radius: 20px;
+ padding-left: 1em;
+ padding-right: 1em;
+ padding-top: 0.2em;
+ font-size: .8em;
}
-.status-chip-finalized{
- color: #568b5a;
- background: #9dd1a1 0% 0% no-repeat padding-box;
+.status-chip-finalized {
+ color: #568b5a;
+ background: #9dd1a1 0% 0% no-repeat padding-box;
}
-.status-chip-draft{
- color: #00c4ff;
- background: #d3f5ff 0% 0% no-repeat padding-box;
-}
\ No newline at end of file
+.status-chip-draft {
+ color: #00c4ff;
+ background: #d3f5ff 0% 0% no-repeat padding-box;
+}
diff --git a/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.ts b/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.ts
index 1e1c31937..a53290abd 100644
--- a/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.ts
+++ b/dmp-frontend/src/app/ui/admin/dmp-blueprint/listing/dmp-blueprint-listing.component.ts
@@ -8,6 +8,7 @@ import { DmpBlueprint } from '@app/core/model/dmp-blueprint/dmp-blueprint';
import { DmpBlueprintLookup } from '@app/core/query/dmp-blueprint.lookup';
import { AuthService } from '@app/core/services/auth/auth.service';
import { DmpBlueprintService } from '@app/core/services/dmp/dmp-blueprint.service';
+import { MatomoService } from '@app/core/services/matomo/matomo-service';
import { SnackBarNotificationLevel, UiNotificationService } from '@app/core/services/notification/ui-notification-service';
import { EnumUtils } from '@app/core/services/utilities/enum-utils.service';
import { QueryParamsService } from '@app/core/services/utilities/query-params.service';
@@ -34,9 +35,9 @@ export class DmpBlueprintListingComponent extends BaseListingComponent;
+ @ViewChild('dmpBlueprintStatus', { static: true }) dmpBlueprintStatus?: TemplateRef;
@ViewChild('actions', { static: true }) actions?: TemplateRef;
@ViewChild(HybridListingComponent, { static: true }) hybridListingComponent: HybridListingComponent;
@@ -61,6 +62,7 @@ export class DmpBlueprintListingComponent extends BaseListingComponent(x => x.status),
sortable: true,
languageName: 'DMP-BLUEPRINT-LISTING.FIELDS.STATUS',
- cellTemplate: this.DmpBlueprintStatus
+ cellTemplate: this.dmpBlueprintStatus
},
- // {
- // prop: nameof(x => x.isExclude),
- // languageName: 'DMP-BLUEPRINT-LISTING.FIELDS.IS-EXCLUDE',
- // pipe: this.pipeService.getPipe(IsExcludeTypePipe)
- // },
{
prop: nameof(x => x.createdAt),
sortable: true,
@@ -152,11 +150,11 @@ export class DmpBlueprintListingComponent extends BaseListingComponent {
+ // const blob = new Blob([response.body], { type: 'application/xml' });
+ // const filename = this.getFilenameFromContentDispositionHeader(response.headers.get('Content-Disposition'));
+ // FileSaver.saveAs(blob, filename);
+ // });
+ }
}
// ngOnInit() {
- // this.matomoService.trackPageView('Admin: DMP Templates');
- // this.route.params
- // .pipe(takeUntil(this._destroyed))
- // .subscribe((params: Params) => {
- // this.dmpId = params['dmpId'];
- // this.criteria.setCriteria(this.getDefaultCriteria());
- // this.refresh();
- // this.criteria.setRefreshCallback(() => this.refresh());
- // this.breadCrumbs = observableOf([{
- // parentComponentName: null,
- // label: this.languageService.instant('NAV-BAR.DMP-BLUEPRINTS-CAPS'),
- // url: '/dmp-blueprints'
- // }]);
- // });
- // }
+
// refresh() {
// this.dataSource = new DatasetDataSource(this.dmpBlueprintService, this._paginator, this.sort, this.criteria);
diff --git a/dmp-frontend/src/assets/i18n/en.json b/dmp-frontend/src/assets/i18n/en.json
index 6e30b0aab..8e6f8714a 100644
--- a/dmp-frontend/src/assets/i18n/en.json
+++ b/dmp-frontend/src/assets/i18n/en.json
@@ -233,7 +233,7 @@
"DESCRIPTION-TEMPLATE-TYPES": "Description Types",
"NEW-DESCRIPTION-TEMPLATE-TYPE": "New",
"EDIT-DESCRIPTION-TEMPLATE-TYPE": "Edit",
- "DMP-BLUEPRINTS": "DMP Bluperints",
+ "DMP-BLUEPRINTS": "DMP Blueprints",
"NEW-DMP-BLUEPRINT": "New",
"EDIT-DMP-BLUEPRINT": "Edit"
},