From 3d1b0adc6e3f0641d32cbfcb152aad038790378a Mon Sep 17 00:00:00 2001 From: gpapavgeri Date: Wed, 22 Jul 2020 17:46:21 +0300 Subject: [PATCH 1/6] add status to DmpOverviewModel used in DatasetOverviewModel --- .../data/listingmodels/DataManagementPlanOverviewModel.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dmp-backend/web/src/main/java/eu/eudat/models/data/listingmodels/DataManagementPlanOverviewModel.java b/dmp-backend/web/src/main/java/eu/eudat/models/data/listingmodels/DataManagementPlanOverviewModel.java index 17a235c57..362cd510d 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/models/data/listingmodels/DataManagementPlanOverviewModel.java +++ b/dmp-backend/web/src/main/java/eu/eudat/models/data/listingmodels/DataManagementPlanOverviewModel.java @@ -176,12 +176,12 @@ public class DataManagementPlanOverviewModel implements DataModel Date: Thu, 23 Jul 2020 12:35:08 +0300 Subject: [PATCH 2/6] lockStatus check and icon added to all components --- .../ui/dashboard/drafts/drafts.component.html | 4 +++- .../ui/dashboard/drafts/drafts.component.ts | 19 ++++++++++++++++++- .../recent-edited-activity.component.html | 8 ++++++-- .../recent-edited-activity.component.ts | 11 ++++++++++- ...ent-edited-dataset-activity.component.html | 4 +++- ...ecent-edited-dataset-activity.component.ts | 13 ++++++++++++- .../recent-edited-dmp-activity.component.html | 4 +++- .../recent-edited-dmp-activity.component.ts | 13 ++++++++++++- .../dataset-listing-item.component.html | 4 +++- .../dataset-listing-item.component.ts | 1 - .../overview/dataset-overview.component.html | 2 +- .../overview/dataset-overview.component.ts | 5 ++++- .../dmp-listing-item.component.html | 3 ++- .../dmp-listing-item.component.ts | 1 - 14 files changed, 77 insertions(+), 15 deletions(-) diff --git a/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html b/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html index bc9dd7c0d..9d70216c8 100644 --- a/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html +++ b/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html @@ -34,6 +34,8 @@ done{{ enumUtils.toDmpStatusString(activity.status) }} create{{ enumUtils.toDmpStatusString(activity.status) }} . + lock_outline{{'DMP-OVERVIEW.LOCKED' | translate}} + . {{'DATASET-LISTING.COLUMNS.GRANT' | translate}}: {{activity.grant}}
@@ -54,7 +56,7 @@ - diff --git a/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts b/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts index 1b67db843..c7cddea40 100644 --- a/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts +++ b/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts @@ -60,7 +60,6 @@ export class DmpListingItemComponent extends BaseComponent implements OnInit { this.isDraft = false; this.isFinalized = true; this.isPublished = false; - this.checkLockStatus(this.dmp.id); if (this.dmp.public == true) { this.isPublished = true } } } From 3c2caee679e9753bcc7403fb876f9000946290a5 Mon Sep 17 00:00:00 2001 From: gpapavgeri Date: Thu, 23 Jul 2020 16:24:34 +0300 Subject: [PATCH 3/6] update of users actions (edit, delete, etc) according to their role --- .../ui/dashboard/drafts/drafts.component.html | 8 ++++---- .../recent-edited-activity.component.html | 12 ++++++------ ...ecent-edited-dataset-activity.component.html | 8 ++++---- .../recent-edited-dmp-activity.component.html | 4 ++-- .../dataset-listing-item.component.html | 12 ++++++------ .../dataset-listing-item.component.ts | 13 +++++++++++++ .../overview/dataset-overview.component.html | 11 +++++------ .../dmp-listing-item.component.html | 10 +++++----- .../listing-item/dmp-listing-item.component.ts | 17 +++++++++++++++++ .../ui/dmp/overview/dmp-overview.component.html | 10 +++++----- .../ui/dmp/overview/dmp-overview.component.scss | 2 +- 11 files changed, 68 insertions(+), 39 deletions(-) diff --git a/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html b/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html index 9d70216c8..6a45a9359 100644 --- a/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html +++ b/dmp-frontend/src/app/ui/dashboard/drafts/drafts.component.html @@ -39,11 +39,11 @@ {{'DATASET-LISTING.COLUMNS.GRANT' | translate}}: {{activity.grant}}
-
{{'DATASET-LISTING.TOOLTIP.PART-OF' | translate}} -
{{'DATASET-LISTING.TOOLTIP.DMP' | translate}}
+
{{'DATASET-LISTING.TOOLTIP.PART-OF' | translate}} +
{{'DATASET-LISTING.TOOLTIP.DMP' | translate}}
-
{{'DATASET-LISTING.TOOLTIP.DMP-FOR' | translate}}: {{activity.dmp}}
+
{{activity.dmp}}
@@ -56,7 +56,7 @@ - -
{{'DATASET-LISTING.TOOLTIP.DMP-FOR' | translate}}: {{ getDmp(activity) }}
+
{{ getDmp(activity) }}
@@ -127,7 +127,7 @@ - -
{{'DATASET-LISTING.TOOLTIP.DMP-FOR' | translate}}: {{activity.dmp}}
+
{{activity.dmp}}
@@ -56,7 +56,7 @@ - -
{{'DATASET-LISTING.TOOLTIP.DMP-FOR' | translate}}: {{dataset.dmp}}
+
{{dataset.dmp}}
@@ -34,7 +34,7 @@ -
launch @@ -92,7 +91,7 @@
-
+
{{dmp.label}}
- {{ roleDisplay(dmp.users) }} - . + {{ roleDisplay(dmp.users) }} + . public{{'TYPES.DMP-VISIBILITY.PUBLIC' | translate}} done{{ enumUtils.toDmpStatusString(dmp.status) }} create{{ enumUtils.toDmpStatusString(dmp.status) }} @@ -30,9 +30,9 @@ diff --git a/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts b/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts index c7cddea40..f41c73873 100644 --- a/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts +++ b/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.ts @@ -64,6 +64,10 @@ export class DmpListingItemComponent extends BaseComponent implements OnInit { } } + public isAuthenticated(): boolean { + return !(!this.authentication.current()); + } + checkLockStatus(id: string) { this.lockService.checkLockStatus(id).pipe(takeUntil(this._destroyed)) .subscribe(lockStatus => this.lockStatus = lockStatus); @@ -130,6 +134,19 @@ export class DmpListingItemComponent extends BaseComponent implements OnInit { } } + isUserDMPRelated() { + const principal: Principal = this.authentication.current(); + let isRelated: boolean = false; + if (this.dmp && principal) { + this.dmp.users.forEach(element => { + if (element.id === principal.id) { + isRelated = true; + } + }) + } + return isRelated; + } + cloneClicked(dmp: DmpListingModel) { this.router.navigate(['/plans/clone/' + dmp.id]); } diff --git a/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.html b/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.html index dfc4e5db0..fb3457e6d 100644 --- a/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.html +++ b/dmp-frontend/src/app/ui/dmp/overview/dmp-overview.component.html @@ -16,8 +16,8 @@

{{ roleDisplayFromList(dmp.users) }}

- . -
+ . +
public {{'DMP-OVERVIEW.PUBLIC' | translate}} @@ -100,7 +100,7 @@
-
-
+

{{ 'DMP-LISTING.ACTIONS.DEPOSIT' | translate }}

-
diff --git a/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.scss b/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.scss index bd0fdb41b..d3541c7dc 100644 --- a/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.scss +++ b/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.scss @@ -218,7 +218,12 @@ opacity: 0.6; } -.pointer:hover { +.zenodo-link { + text-decoration: underline; + color: black; +} + +.pointer:hover, .zenodo-link:hover { color: #00b29f; } From 6d1ecca154d343a40243989718ce47d26075b758 Mon Sep 17 00:00:00 2001 From: gpapavgeri Date: Thu, 23 Jul 2020 17:24:02 +0300 Subject: [PATCH 5/6] routerLink changed in dataset-listing-item & delete updated for dataset-overview --- .../listing/listing-item/dataset-listing-item.component.html | 2 +- .../src/app/ui/dataset/overview/dataset-overview.component.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dmp-frontend/src/app/ui/dataset/listing/listing-item/dataset-listing-item.component.html b/dmp-frontend/src/app/ui/dataset/listing/listing-item/dataset-listing-item.component.html index 3e588a713..67b5c92ad 100644 --- a/dmp-frontend/src/app/ui/dataset/listing/listing-item/dataset-listing-item.component.html +++ b/dmp-frontend/src/app/ui/dataset/listing/listing-item/dataset-listing-item.component.html @@ -1,5 +1,5 @@
- +
{{'DATASET-LISTING.DATASET-DESCRIPTION' | translate}}
{{'DATASET-LISTING.STATES.EDITED' | translate}}: {{dataset.modified | date:"longDate"}}
diff --git a/dmp-frontend/src/app/ui/dataset/overview/dataset-overview.component.html b/dmp-frontend/src/app/ui/dataset/overview/dataset-overview.component.html index 4010e7440..c63b00497 100644 --- a/dmp-frontend/src/app/ui/dataset/overview/dataset-overview.component.html +++ b/dmp-frontend/src/app/ui/dataset/overview/dataset-overview.component.html @@ -54,7 +54,7 @@ matTooltip="{{'DMP-LISTING.ACTIONS.EDIT' | translate}}" matTooltipPosition="above"> create -
- Flag of Greece -
+ Flag of Greece +

Athena Research & Innovation Center

Dimitra Aglamisi, Elli Papadopoulou

- Flag of Spain -
+ Flag of Spain +

Consorcio Madroño

Lanko López, Juan Corrales Correyero, Fernando González Ballesteros

- Flag of Turkey -
+ Flag of Turkey +

Turkish Higher Education Council Research Data and Open Data working group

-
+
+
+ Flag of Austria +
+

UNIVERSITY OF VIENNA

+

Gerda McNeill, Raman Ganguly, Mihaela Hubert

+
+
diff --git a/dmp-frontend/src/assets/splash/assets/img/flag-of-germany.png b/dmp-frontend/src/assets/splash/assets/img/flag-of-germany.png new file mode 100644 index 0000000000000000000000000000000000000000..1e3ae7552ccf50b81e80040bfb770e054606be94 GIT binary patch literal 18388 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
ibkLHhL=u}za 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