-
{{titlePrefix}} {{'DATASET-PROFILE-LISTING.TITLE' | translate}}
-
-
+
+
+
{{titlePrefix}} {{'DATASET-PROFILE-LISTING.TITLE' | translate}}
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -31,12 +48,12 @@
{{'DATASET-PROFILE-LISTING.COLUMNS.STATUS' |
translate}}
- {{ (row.status | parseStatus) | translate}}
+ {{ (row.status | parseStatus) | translate}}
- {{'DATASET-PROFILE-LISTING.COLUMNS.ACTIONS' | translate}}
+
@@ -53,7 +70,7 @@
@@ -63,14 +80,10 @@
+
-
-
-
-
+
diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.scss b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.scss
index b2318bf16..5696518c5 100644
--- a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.scss
+++ b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.scss
@@ -1,9 +1,14 @@
.dataset-profile-listing {
margin-top: 1rem;
+ margin-left: 1rem;
+ margin-right: 2rem;
}
.mat-table {
- margin: 24px;
+ margin-top: 47px;
+ margin-bottom: 20px;
+ border-radius: 4px;
+
}
.mat-fab-bottom-right {
@@ -16,6 +21,10 @@
z-index: 5;
}
+.mat-header-row{
+ background: #f3f5f8;
+}
+
.full-width {
width: 100%;
}
@@ -26,20 +35,39 @@
.mat-row {
cursor: pointer;
+ min-height: 4.5em;
}
mat-row:hover {
- background-color: lightgray;
+ background-color: #eef5f6;
}
+.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-draft{
+ color: #00c4ff;
+ background: #d3f5ff 0% 0% no-repeat padding-box;
+}
// mat-row:nth-child(even){
// background-color:red;
// }
-mat-row:nth-child(odd) {
- background-color: #0c748914;
- // background-color: #eef0fb;
-}
+// mat-row:nth-child(odd) {
+// background-color: #0c748914;
+// // background-color: #eef0fb;
+// }
::ng-deep .mat-paginator-container {
flex-direction: row-reverse !important;
@@ -71,3 +99,20 @@ mat-row:nth-child(odd) {
height: 30px !important;
font-size: 12px !important;
}
+
+.import-btn {
+ background: #ffffff 0% 0% no-repeat padding-box;
+ border-radius: 30px;
+ // color: #129d99;
+ // border: 1px solid #129d99;
+ padding-left: 2em;
+ padding-right: 2em;
+ color: #000;
+ border: 1px solid #000;
+}
+.create-btn {
+ border-radius: 30px;
+ background-color: #f7dd72;
+ padding-left: 2em;
+ padding-right: 2em;
+}
\ No newline at end of file
diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts
index 0b17a2951..82a6be1f5 100644
--- a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts
+++ b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts
@@ -1,9 +1,11 @@
import { DataSource } from '@angular/cdk/table';
import { HttpClient } from '@angular/common/http';
import { Component, OnInit, ViewChild } from '@angular/core';
+import { MatDialog } from '@angular/material/dialog';
import { MatPaginator, PageEvent } from '@angular/material/paginator';
import { MatSort } from '@angular/material/sort';
import { ActivatedRoute, Params, Router } from '@angular/router';
+import { DatasetStatus } from '@app/core/common/enum/dataset-status';
import { DataTableRequest } from '@app/core/model/data-table/data-table-request';
import { DatasetListingModel } from '@app/core/model/dataset/dataset-listing';
import { DmpModel } from '@app/core/model/dmp/dmp';
@@ -18,6 +20,8 @@ import { BaseComponent } from '@common/base/base.component';
import { TranslateService } from '@ngx-translate/core';
import { merge as observableMerge, Observable, of as observableOf } from 'rxjs';
import { map, startWith, switchMap, takeUntil } from 'rxjs/operators';
+import { DialogConfirmationUploadDatasetProfiles } from './criteria/dialog-confirmation-upload-profile/dialog-confirmation-upload-profiles.component';
+import { ParseStatus } from './pipe/parse-status.pipe';
@Component({
selector: 'app-dataset-profile-listing-component',
@@ -46,7 +50,8 @@ export class DatasetProfileListingComponent extends BaseComponent implements OnI
private language: TranslateService,
private uiNotificationService: UiNotificationService,
private httpClient: HttpClient,
- private matomoService: MatomoService
+ private matomoService: MatomoService,
+ private dialog: MatDialog
) {
super();
}
@@ -122,6 +127,41 @@ export class DatasetProfileListingComponent extends BaseComponent implements OnI
// debugger;
// this.datasetService.makeDatasetPublic(id).pipe(takeUntil(this._destroyed)).subscribe();
// }
+
+ openDialog(): void {
+ const dialogRef = this.dialog.open(DialogConfirmationUploadDatasetProfiles, {
+ width: '500px',
+ restoreFocus: false,
+ data: {
+ message: this.language.instant('DATASET-WIZARD.UPLOAD.UPLOAD-XML-FILE-TITLE'),
+ confirmButton: this.language.instant('DATASET-WIZARD.UPLOAD.UPLOAD-XML'),
+ cancelButton: this.language.instant('DATASET-WIZARD.UPLOAD.UPLOAD-XML-FILE-CANCEL'),
+ name: "",
+ file: FileList,
+ sucsess: false
+ }
+ });
+ dialogRef.afterClosed().pipe(takeUntil(this._destroyed)).subscribe(data => {
+ if (data && data.sucsess && data.name != null && data.file != null) {
+ this.datasetService.uploadFile(data.file, data.name)
+ .pipe(takeUntil(this._destroyed))
+ .subscribe();
+ }
+ });
+ }
+
+ /**
+ * gets as a a pameter a number representing the status and returns the class that is applied
+ * to status-chip */
+ getStatusClass(status: DatasetStatus):string{
+
+ if(status == DatasetStatus.Finalized){
+ return 'status-chip-finalized'
+ }
+
+ return 'status-chip-draft';
+ }
+
}
export class DatasetDataSource extends DataSource
{
diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/pipe/parse-status.pipe.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/pipe/parse-status.pipe.ts
index 33cbd4b8c..82b75d2ab 100644
--- a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/pipe/parse-status.pipe.ts
+++ b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/pipe/parse-status.pipe.ts
@@ -1,4 +1,5 @@
import { Pipe, PipeTransform } from '@angular/core';
+import { DatasetStatus } from '@app/core/common/enum/dataset-status';
@Pipe({
name: 'parseStatus',
@@ -10,7 +11,17 @@ export class ParseStatus implements PipeTransform {
}
- parseStatus(status: number): string {
- return status != 0 ? 'DATASET-PROFILE-STATUS.FINALIZED' : 'DATASET-PROFILE-STATUS.DRAFT';
+ parseStatus(status: DatasetStatus): string {
+
+ switch (status) {
+ case DatasetStatus.Finalized:
+ return 'DATASET-PROFILE-STATUS.FINALIZED';
+ case DatasetStatus.Draft:
+ return 'DATASET-PROFILE-STATUS.DRAFT';
+ case DatasetStatus.Deleted:
+ return 'DATASET-PROFILE-STATUS.DRAFT.DELETED';
+ default:
+ return 'DATASET-PROFILE-STATUS.DRAFT.NONE';
+ }
}
}
diff --git a/dmp-frontend/src/assets/i18n/de.json b/dmp-frontend/src/assets/i18n/de.json
index 12b8b6ae5..c10317679 100644
--- a/dmp-frontend/src/assets/i18n/de.json
+++ b/dmp-frontend/src/assets/i18n/de.json
@@ -1587,6 +1587,7 @@
"DATASET-PROFILE-STATUS": {
"NONE": "None",
"DRAFT": "Draft",
- "FINALIZED": "Finalized"
+ "FINALIZED": "Finalized",
+ "DELETED": "Deleted"
}
}
diff --git a/dmp-frontend/src/assets/i18n/en.json b/dmp-frontend/src/assets/i18n/en.json
index 24d7e056e..3908440c5 100644
--- a/dmp-frontend/src/assets/i18n/en.json
+++ b/dmp-frontend/src/assets/i18n/en.json
@@ -1591,6 +1591,7 @@
"DATASET-PROFILE-STATUS": {
"NONE": "None",
"DRAFT": "Draft",
- "FINALIZED": "Finalized"
+ "FINALIZED": "Finalized",
+ "DELETED": "Deleted"
}
-}
+}
\ No newline at end of file
diff --git a/dmp-frontend/src/assets/i18n/es.json b/dmp-frontend/src/assets/i18n/es.json
index 9aa30926a..cf1c9f364 100644
--- a/dmp-frontend/src/assets/i18n/es.json
+++ b/dmp-frontend/src/assets/i18n/es.json
@@ -1587,6 +1587,7 @@
"DATASET-PROFILE-STATUS": {
"NONE": "Ninguno",
"DRAFT": "Borrador",
- "FINALIZED": "Finalizado"
+ "FINALIZED": "Finalizado",
+ "DELETED": "Deleted"
}
}
diff --git a/dmp-frontend/src/assets/i18n/gr.json b/dmp-frontend/src/assets/i18n/gr.json
index 09d6421a3..1332ffd15 100644
--- a/dmp-frontend/src/assets/i18n/gr.json
+++ b/dmp-frontend/src/assets/i18n/gr.json
@@ -1587,6 +1587,7 @@
"DATASET-PROFILE-STATUS": {
"NONE": "Όλα",
"DRAFT": "Πρόχειρα",
- "FINALIZED": "Οριστικοποιημένα"
+ "FINALIZED": "Οριστικοποιημένα",
+ "DELETED": "Deleted"
}
}
diff --git a/dmp-frontend/src/assets/i18n/sk.json b/dmp-frontend/src/assets/i18n/sk.json
index de19ff8da..ed035162a 100644
--- a/dmp-frontend/src/assets/i18n/sk.json
+++ b/dmp-frontend/src/assets/i18n/sk.json
@@ -1587,6 +1587,7 @@
"DATASET-PROFILE-STATUS": {
"NONE": "ˇŽiadny",
"DRAFT": "Návrh",
- "FINALIZED": "Dokončené"
+ "FINALIZED": "Dokončené",
+ "DELETED": "Deleted"
}
}
diff --git a/dmp-frontend/src/assets/i18n/sr.json b/dmp-frontend/src/assets/i18n/sr.json
index 6bb34235f..6f2fd7dc1 100644
--- a/dmp-frontend/src/assets/i18n/sr.json
+++ b/dmp-frontend/src/assets/i18n/sr.json
@@ -1534,6 +1534,7 @@
"DATASET-PROFILE-STATUS": {
"NONE": "Nijedan",
"DRAFT": "Radna verzija",
- "FINALIZED": "Završeno"
+ "FINALIZED": "Završeno",
+ "DELETED": "Deleted"
}
}
\ No newline at end of file
diff --git a/dmp-frontend/src/assets/i18n/tr.json b/dmp-frontend/src/assets/i18n/tr.json
index 9d5e2e006..6f6303d11 100644
--- a/dmp-frontend/src/assets/i18n/tr.json
+++ b/dmp-frontend/src/assets/i18n/tr.json
@@ -1587,6 +1587,7 @@
"DATASET-PROFILE-STATUS": {
"NONE": "Hiç Biri",
"DRAFT": "Taslak",
- "FINALIZED": "Tamamlandı"
+ "FINALIZED": "Tamamlandı",
+ "DELETED": "Deleted"
}
}