Merge remote-tracking branch 'origin/Development' into Development
This commit is contained in:
commit
7ab5c56072
|
@ -1,4 +1,5 @@
|
||||||
export enum SaveType {
|
export enum SaveType {
|
||||||
close = 0,
|
close = 0,
|
||||||
addNew = 1
|
addNew = 1,
|
||||||
|
finalize = 2
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,8 @@ import { MatFormFieldControl } from '@angular/material/form-field';
|
||||||
import { AutoCompleteGroup } from '@app/library/auto-complete/auto-complete-group';
|
import { AutoCompleteGroup } from '@app/library/auto-complete/auto-complete-group';
|
||||||
import { MultipleAutoCompleteConfiguration } from '@app/library/auto-complete/multiple/multiple-auto-complete-configuration';
|
import { MultipleAutoCompleteConfiguration } from '@app/library/auto-complete/multiple/multiple-auto-complete-configuration';
|
||||||
import { BaseComponent } from '@common/base/base.component';
|
import { BaseComponent } from '@common/base/base.component';
|
||||||
import { Observable, of as observableOf, Subject } from 'rxjs';
|
import { isNullOrUndefined } from '@swimlane/ngx-datatable';
|
||||||
|
import { BehaviorSubject, combineLatest, Observable, of as observableOf, Subject, Subscription } from 'rxjs';
|
||||||
import { debounceTime, distinctUntilChanged, map, mergeMap, startWith, takeUntil, switchMap } from 'rxjs/operators';
|
import { debounceTime, distinctUntilChanged, map, mergeMap, startWith, takeUntil, switchMap } from 'rxjs/operators';
|
||||||
|
|
||||||
export class CustomComponentBase extends BaseComponent {
|
export class CustomComponentBase extends BaseComponent {
|
||||||
|
@ -50,6 +51,11 @@ export class MultipleAutoCompleteComponent extends _CustomComponentMixinBase imp
|
||||||
|
|
||||||
id = `multiple-autocomplete-${MultipleAutoCompleteComponent.nextId++}`;
|
id = `multiple-autocomplete-${MultipleAutoCompleteComponent.nextId++}`;
|
||||||
stateChanges = new Subject<void>();
|
stateChanges = new Subject<void>();
|
||||||
|
|
||||||
|
valueOnBlur = new BehaviorSubject<any>(null);
|
||||||
|
onSelectAutoCompleteValue = new BehaviorSubject<any>(null);
|
||||||
|
valueAssignSubscription: Subscription;
|
||||||
|
|
||||||
focused = false;
|
focused = false;
|
||||||
controlType = 'multiple-autocomplete';
|
controlType = 'multiple-autocomplete';
|
||||||
describedBy = '';
|
describedBy = '';
|
||||||
|
@ -123,7 +129,36 @@ export class MultipleAutoCompleteComponent extends _CustomComponentMixinBase imp
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() { }
|
ngOnInit() {
|
||||||
|
this.valueAssignSubscription = combineLatest(this.valueOnBlur.asObservable(), this.onSelectAutoCompleteValue.asObservable())
|
||||||
|
.pipe(debounceTime(100))
|
||||||
|
.subscribe(latest =>{
|
||||||
|
const fromBlur = latest[0];
|
||||||
|
const fromAutoComplete = latest[1];
|
||||||
|
|
||||||
|
if(isNullOrUndefined(fromBlur) && isNullOrUndefined(fromAutoComplete)){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
//higher precedence
|
||||||
|
if(!isNullOrUndefined(fromAutoComplete)){
|
||||||
|
this.optionSelectedInternal(fromAutoComplete);
|
||||||
|
|
||||||
|
// consumed and flush
|
||||||
|
this.onSelectAutoCompleteValue.next(null);
|
||||||
|
this.valueOnBlur.next(null);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!isNullOrUndefined(fromBlur)){
|
||||||
|
this.optionSelectedInternal(fromBlur);
|
||||||
|
|
||||||
|
// consumed and flush
|
||||||
|
this.onSelectAutoCompleteValue.next(null);
|
||||||
|
this.valueOnBlur.next(null);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
ngDoCheck(): void {
|
ngDoCheck(): void {
|
||||||
if (this.ngControl) {
|
if (this.ngControl) {
|
||||||
|
@ -178,7 +213,8 @@ export class MultipleAutoCompleteComponent extends _CustomComponentMixinBase imp
|
||||||
}
|
}
|
||||||
|
|
||||||
_optionSelected(event: MatAutocompleteSelectedEvent) {
|
_optionSelected(event: MatAutocompleteSelectedEvent) {
|
||||||
this.optionSelectedInternal(event.option.value);
|
// this.optionSelectedInternal(event.option.value);
|
||||||
|
this.onSelectAutoCompleteValue.next(event.option.value);
|
||||||
this.autocompleteInput.nativeElement.value = '';
|
this.autocompleteInput.nativeElement.value = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -235,7 +271,8 @@ export class MultipleAutoCompleteComponent extends _CustomComponentMixinBase imp
|
||||||
|
|
||||||
public onBlur($event: MouseEvent) {
|
public onBlur($event: MouseEvent) {
|
||||||
if (this.inputValue && this.inputValue.length > 1 && this.autocomplete.options && this.autocomplete.options.length > 0 && this.autoSelectFirstOptionOnBlur) {
|
if (this.inputValue && this.inputValue.length > 1 && this.autocomplete.options && this.autocomplete.options.length > 0 && this.autoSelectFirstOptionOnBlur) {
|
||||||
this.optionSelectedInternal(this.autocomplete.options.first.value);
|
// this.optionSelectedInternal(this.autocomplete.options.first.value);
|
||||||
|
this.valueOnBlur.next(this.autocomplete.options.first.value);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Clear text if not an option
|
// Clear text if not an option
|
||||||
|
@ -271,6 +308,10 @@ export class MultipleAutoCompleteComponent extends _CustomComponentMixinBase imp
|
||||||
ngOnDestroy() {
|
ngOnDestroy() {
|
||||||
this.stateChanges.complete();
|
this.stateChanges.complete();
|
||||||
this.fm.stopMonitoring(this.elRef.nativeElement);
|
this.fm.stopMonitoring(this.elRef.nativeElement);
|
||||||
|
if(this.valueAssignSubscription){
|
||||||
|
this.valueAssignSubscription.unsubscribe();
|
||||||
|
this.valueAssignSubscription = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//Configuration getters
|
//Configuration getters
|
||||||
|
@ -332,7 +373,8 @@ export class MultipleAutoCompleteComponent extends _CustomComponentMixinBase imp
|
||||||
const value = event.value;
|
const value = event.value;
|
||||||
// Add our fruit
|
// Add our fruit
|
||||||
if ((value || '').trim()) {
|
if ((value || '').trim()) {
|
||||||
this.optionSelectedInternal(value);
|
// this.optionSelectedInternal(value);
|
||||||
|
this.valueOnBlur.next(value);
|
||||||
}
|
}
|
||||||
// Reset the input value
|
// Reset the input value
|
||||||
if (input) {
|
if (input) {
|
||||||
|
|
|
@ -33,10 +33,21 @@
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-auto d-flex align-items-center">
|
<div class="col-auto d-flex align-items-center">
|
||||||
<button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" (click)="save()" type="button">{{ 'DATASET-WIZARD.ACTIONS.SAVE' | translate }}</button>
|
<button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" type="button" (click)="save()">
|
||||||
|
{{ 'DATASET-WIZARD.ACTIONS.SAVE' | translate }}
|
||||||
|
<mat-icon (click)="$event.stopPropagation();" style="width: 14px;" [matMenuTriggerFor]="menu">expand_more</mat-icon>
|
||||||
|
</button>
|
||||||
|
<mat-menu #menu="matMenu">
|
||||||
|
<button mat-menu-item (click)="save(saveAnd.close)" type="button">{{ 'DATASET-WIZARD.ACTIONS.SAVE-AND-CLOSE' | translate }}</button>
|
||||||
|
<button mat-menu-item (click)="save(saveAnd.addNew)" type="button">{{ 'DATASET-WIZARD.ACTIONS.SAVE-AND-ADD' | translate }}</button>
|
||||||
|
</mat-menu>
|
||||||
|
|
||||||
|
<button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" type="button" (click)="saveFinalize()">{{ 'DATASET-WIZARD.ACTIONS.FINALIZE' | translate }}</button>
|
||||||
|
<!-- <button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" (click)="save()" type="button">{{ 'DATASET-WIZARD.ACTIONS.SAVE' | translate }}</button>
|
||||||
<button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" (click)="save(saveAnd.close)" type="button">{{ 'DATASET-WIZARD.ACTIONS.SAVE-AND-CLOSE' | translate }}</button>
|
<button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" (click)="save(saveAnd.close)" type="button">{{ 'DATASET-WIZARD.ACTIONS.SAVE-AND-CLOSE' | translate }}</button>
|
||||||
<button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" (click)="save(saveAnd.addNew)">{{ 'DATASET-WIZARD.ACTIONS.SAVE-AND-ADD' | translate }}</button>
|
<button *ngIf="!lockStatus && !viewOnly" mat-raised-button class="dataset-save-btn mr-2" (click)="save(saveAnd.addNew)">{{ 'DATASET-WIZARD.ACTIONS.SAVE-AND-ADD' | translate }}</button> -->
|
||||||
<button *ngIf="lockStatus" mat-raised-button disabled class="dataset-save-btn cursor-default" type="button">{{ 'DMP-OVERVIEW.LOCKED' | translate}}</button>
|
<button *ngIf="lockStatus" mat-raised-button disabled class="dataset-save-btn cursor-default" type="button">{{ 'DMP-OVERVIEW.LOCKED' | translate}}</button>
|
||||||
|
<button *ngIf="hasReversableStatus() && !lockStatus" mat-raised-button class="dataset-save-btn mr-2" (click)="reverse()" type="button">{{ 'DATASET-WIZARD.ACTIONS.REVERSE' | translate }}</button>
|
||||||
<!-- <button *ngIf="!lockStatus" mat-raised-button class="dataset-save-btn mr-2" (click)="touchForm()" type="button">{{ 'DATASET-WIZARD.ACTIONS.VALIDATE' | translate }}</button> -->
|
<!-- <button *ngIf="!lockStatus" mat-raised-button class="dataset-save-btn mr-2" (click)="touchForm()" type="button">{{ 'DATASET-WIZARD.ACTIONS.VALIDATE' | translate }}</button> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -32,7 +32,7 @@ import { ConfirmationDialogComponent } from '@common/modules/confirmation-dialog
|
||||||
import { TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import * as FileSaver from 'file-saver';
|
import * as FileSaver from 'file-saver';
|
||||||
import { Observable, of as observableOf, interval} from 'rxjs';
|
import { Observable, of as observableOf, interval} from 'rxjs';
|
||||||
import { catchError, debounceTime, map, takeUntil } from 'rxjs/operators';
|
import { catchError, debounceTime, filter, map, takeUntil } from 'rxjs/operators';
|
||||||
import { LockService } from '@app/core/services/lock/lock.service';
|
import { LockService } from '@app/core/services/lock/lock.service';
|
||||||
import { Location } from '@angular/common';
|
import { Location } from '@angular/common';
|
||||||
import { LockModel } from '@app/core/model/lock/lock.model';
|
import { LockModel } from '@app/core/model/lock/lock.model';
|
||||||
|
@ -778,20 +778,47 @@ export class DatasetWizardComponent extends CheckDeactivateBaseComponent impleme
|
||||||
}
|
}
|
||||||
|
|
||||||
reverse() {
|
reverse() {
|
||||||
this.viewOnly = false;
|
|
||||||
this.datasetWizardModel.status = DatasetStatus.Draft;
|
this.dialog.open(ConfirmationDialogComponent, {
|
||||||
setTimeout(x => { this.formGroup = null; });
|
data:{
|
||||||
setTimeout(x => {
|
message: this.language.instant('DATASET-WIZARD.ACTIONS.UNDO-FINALIZATION-QUESTION'),
|
||||||
this.formGroup = this.datasetWizardModel.buildForm();
|
confirmButton: this.language.instant('DATASET-WIZARD.ACTIONS.CONFIRM'),
|
||||||
this.registerFormListeners();
|
cancelButton: this.language.instant('DATASET-WIZARD.ACTIONS.REJECT'),
|
||||||
|
},
|
||||||
|
maxWidth: '30em'
|
||||||
|
})
|
||||||
|
.afterClosed()
|
||||||
|
.pipe(
|
||||||
|
filter(x=> x),
|
||||||
|
takeUntil(this._destroyed)
|
||||||
|
).subscribe( _ => {
|
||||||
|
this.viewOnly = false;
|
||||||
|
this.datasetWizardModel.status = DatasetStatus.Draft;
|
||||||
|
setTimeout(x => { this.formGroup = null; });
|
||||||
|
setTimeout(x => {
|
||||||
|
this.formGroup = this.datasetWizardModel.buildForm();
|
||||||
|
this.registerFormListeners();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
saveFinalize() {
|
saveFinalize() {
|
||||||
this.formService.touchAllFormFields(this.formGroup);
|
// this.formService.touchAllFormFields(this.formGroup);
|
||||||
if (!this.isFormValid()) {
|
|
||||||
this.showValidationErrorsDialog();
|
if (!this.isSemiFormValid(this.formGroup) || (this.table0fContents && this.table0fContents.hasVisibleInvalidFields())) {
|
||||||
|
// this.showValidationErrorsDialog();
|
||||||
|
this.dialog.open(FormValidationErrorsDialogComponent, {
|
||||||
|
data:{
|
||||||
|
errorMessages:[this.language.instant('DATASET-WIZARD.MESSAGES.MISSING-FIELDS')]
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
this.touchForm();
|
||||||
|
this.hintErrors = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
|
const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
|
||||||
|
@ -805,9 +832,9 @@ export class DatasetWizardComponent extends CheckDeactivateBaseComponent impleme
|
||||||
});
|
});
|
||||||
dialogRef.afterClosed().pipe(takeUntil(this._destroyed)).subscribe(result => {
|
dialogRef.afterClosed().pipe(takeUntil(this._destroyed)).subscribe(result => {
|
||||||
if (result) {
|
if (result) {
|
||||||
if (!this.isFormValid()) { return; }
|
// if (!this.isFormValid()) { return; }
|
||||||
this.formGroup.get('status').setValue(DatasetStatus.Finalized);
|
this.formGroup.get('status').setValue(DatasetStatus.Finalized);
|
||||||
this.submit();
|
this.submit(SaveType.finalize);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -819,10 +846,11 @@ export class DatasetWizardComponent extends CheckDeactivateBaseComponent impleme
|
||||||
this.router.navigate(['/reload']).then(() => { this.router.navigate(['/datasets', 'new', this.formGroup.get('dmp').value.id]); })
|
this.router.navigate(['/reload']).then(() => { this.router.navigate(['/datasets', 'new', this.formGroup.get('dmp').value.id]); })
|
||||||
} else if (saveType === this.saveAnd.close) {
|
} else if (saveType === this.saveAnd.close) {
|
||||||
this.router.navigate(['/reload']).then(() => { this.router.navigate(['/plans', 'edit', this.formGroup.get('dmp').value.id]); });
|
this.router.navigate(['/reload']).then(() => { this.router.navigate(['/plans', 'edit', this.formGroup.get('dmp').value.id]); });
|
||||||
|
} else if (saveType === SaveType.finalize) {
|
||||||
|
this.router.navigate(['/reload']).then(() => { this.router.navigate(['/datasets', 'edit', data.id]); });
|
||||||
} else {
|
} else {
|
||||||
this.datasetWizardModel = new DatasetWizardEditorModel().fromModel(data);
|
this.datasetWizardModel = new DatasetWizardEditorModel().fromModel(data);
|
||||||
this.editMode = this.datasetWizardModel.status === DatasetStatus.Draft;
|
this.editMode = this.datasetWizardModel.status === DatasetStatus.Draft;
|
||||||
|
|
||||||
// setTimeout(() => { this.formGroup = null; });
|
// setTimeout(() => { this.formGroup = null; });
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.formGroup.get('id').patchValue(data.id);
|
this.formGroup.get('id').patchValue(data.id);
|
||||||
|
|
|
@ -12,7 +12,7 @@ import { SnackBarNotificationLevel, UiNotificationService } from '@app/core/serv
|
||||||
import { ConfigurationService } from '@app/core/services/configuration/configuration.service';
|
import { ConfigurationService } from '@app/core/services/configuration/configuration.service';
|
||||||
import { Oauth2DialogService } from '@app/ui/misc/oauth2-dialog/service/oauth2-dialog.service';
|
import { Oauth2DialogService } from '@app/ui/misc/oauth2-dialog/service/oauth2-dialog.service';
|
||||||
import { UserService } from '@app/core/services/user/user.service';
|
import { UserService } from '@app/core/services/user/user.service';
|
||||||
import { takeUntil } from 'rxjs/operators';
|
import { filter, takeUntil } from 'rxjs/operators';
|
||||||
import { Principal } from '@app/core/model/auth/principal';
|
import { Principal } from '@app/core/model/auth/principal';
|
||||||
import { Role } from '@app/core/common/enum/role';
|
import { Role } from '@app/core/common/enum/role';
|
||||||
import { Location } from '@angular/common';
|
import { Location } from '@angular/common';
|
||||||
|
@ -479,31 +479,54 @@ export class DatasetOverviewComponent extends BaseComponent implements OnInit {
|
||||||
// }
|
// }
|
||||||
|
|
||||||
finalize(dataset: DatasetOverviewModel) {
|
finalize(dataset: DatasetOverviewModel) {
|
||||||
const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
|
|
||||||
restoreFocus: false,
|
|
||||||
|
this.dialog.open(ConfirmationDialogComponent, {
|
||||||
data: {
|
data: {
|
||||||
message: this.language.instant('GENERAL.CONFIRMATION-DIALOG.FINALIZE-ITEM'),
|
message: this.language.instant('DATASET-OVERVIEW.FINALISE-POPUP.MESSAGE'),
|
||||||
confirmButton: this.language.instant('QUICKWIZARD.SAVE-DIALOG.ACTIONS.AFFIRMATIVE'),
|
confirmButton: this.language.instant('DATASET-OVERVIEW.FINALISE-POPUP.CONFIRM'),
|
||||||
cancelButton: this.language.instant('QUICKWIZARD.SAVE-DIALOG.ACTIONS.NEGATIVE'),
|
cancelButton: this.language.instant('DATASET-OVERVIEW.FINALISE-POPUP.CANCEL'),
|
||||||
isDeleteConfirmation: false
|
},
|
||||||
}
|
maxWidth: '30em'
|
||||||
});
|
})
|
||||||
dialogRef.afterClosed().pipe(takeUntil(this._destroyed)).subscribe(result => {
|
.afterClosed()
|
||||||
if (result) {
|
.pipe(
|
||||||
this.datasetWizardService.getSingle(dataset.id)
|
filter(x => x),
|
||||||
.pipe(takeUntil(this._destroyed))
|
takeUntil(this._destroyed)
|
||||||
.subscribe(data => {
|
)
|
||||||
this.datasetWizardModel = data;
|
.subscribe( _ =>{
|
||||||
this.datasetWizardModel.status = DatasetStatus.Finalized;
|
this.router.navigate(['datasets','edit',dataset.id]);
|
||||||
this.datasetWizardService.createDataset(this.datasetWizardModel)
|
})
|
||||||
.pipe(takeUntil(this._destroyed))
|
|
||||||
.subscribe(
|
|
||||||
data => this.onUpdateCallbackSuccess(),
|
|
||||||
error => this.onUpdateCallbackError(error)
|
|
||||||
);
|
|
||||||
});
|
// const dialogRef = this.dialog.open(ConfirmationDialogComponent, {
|
||||||
}
|
// restoreFocus: false,
|
||||||
});
|
// data: {
|
||||||
|
// message: this.language.instant('GENERAL.CONFIRMATION-DIALOG.FINALIZE-ITEM'),
|
||||||
|
// confirmButton: this.language.instant('QUICKWIZARD.SAVE-DIALOG.ACTIONS.AFFIRMATIVE'),
|
||||||
|
// cancelButton: this.language.instant('QUICKWIZARD.SAVE-DIALOG.ACTIONS.NEGATIVE'),
|
||||||
|
// isDeleteConfirmation: false
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// dialogRef.afterClosed().pipe(takeUntil(this._destroyed)).subscribe(result => {
|
||||||
|
// if (result) {
|
||||||
|
// this.datasetWizardService.getSingle(dataset.id)
|
||||||
|
// .pipe(takeUntil(this._destroyed))
|
||||||
|
// .subscribe(data => {
|
||||||
|
// this.datasetWizardModel = data;
|
||||||
|
// this.datasetWizardModel.status = DatasetStatus.Finalized;
|
||||||
|
// this.datasetWizardService.createDataset(this.datasetWizardModel)
|
||||||
|
// .pipe(takeUntil(this._destroyed))
|
||||||
|
// .subscribe(
|
||||||
|
// data => this.onUpdateCallbackSuccess(),
|
||||||
|
// error => this.onUpdateCallbackError(error)
|
||||||
|
// );
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
hasReversableStatus(dataset: DatasetOverviewModel): boolean {
|
hasReversableStatus(dataset: DatasetOverviewModel): boolean {
|
||||||
|
|
|
@ -68,7 +68,8 @@ export class DmpInvitationDialogComponent extends BaseComponent implements OnIni
|
||||||
valueAssign: (item) => {
|
valueAssign: (item) => {
|
||||||
const result = typeof(item) === 'string' ? item : item.email;
|
const result = typeof(item) === 'string' ? item : item.email;
|
||||||
return result;
|
return result;
|
||||||
}
|
},
|
||||||
|
autoSelectFirstOptionOnBlur: true
|
||||||
};
|
};
|
||||||
|
|
||||||
add(event: MatChipInputEvent): void {
|
add(event: MatChipInputEvent): void {
|
||||||
|
|
|
@ -142,8 +142,11 @@ export class TableOfContentsInternal implements OnInit {
|
||||||
return entry.subEntries.some(_ => this.invalidChildsVisible(_));
|
return entry.subEntries.some(_ => this.invalidChildsVisible(_));
|
||||||
}
|
}
|
||||||
if(entry.type === this.tocEntryTypeEnum.FieldSet){
|
if(entry.type === this.tocEntryTypeEnum.FieldSet){
|
||||||
|
const id = entry.form.get('id').value
|
||||||
|
if(!this.visibilityRulesService.checkElementVisibility(id)){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
const fieldsArray = entry.form.get('fields') as FormArray;
|
const fieldsArray = entry.form.get('fields') as FormArray;
|
||||||
|
|
||||||
const hasError = !fieldsArray.controls.every(field=>{//every invalid field should be invisible
|
const hasError = !fieldsArray.controls.every(field=>{//every invalid field should be invisible
|
||||||
if(field.invalid){
|
if(field.invalid){
|
||||||
const id = field.get('id').value;
|
const id = field.get('id').value;
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
<div *ngIf="tocentries" class="docs-toc-container">
|
<div *ngIf="tocentries" class="docs-toc-container">
|
||||||
|
|
||||||
<div class="scroll-container col-12 internal-table">
|
<div class="scroll-container col-12 internal-table">
|
||||||
<table-of-contents-internal [TOCENTRY_ID_PREFIX]="TOCENTRY_ID_PREFIX" [tocentries]="tocentries"
|
<table-of-contents-internal #internalTable [TOCENTRY_ID_PREFIX]="TOCENTRY_ID_PREFIX" [tocentries]="tocentries"
|
||||||
[showErrors]="showErrors"
|
[showErrors]="showErrors"
|
||||||
(entrySelected)="onToCentrySelected($event)"
|
(entrySelected)="onToCentrySelected($event)"
|
||||||
[selected]="tocentrySelected"
|
[selected]="tocentrySelected"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
import { DOCUMENT } from '@angular/common';
|
import { DOCUMENT } from '@angular/common';
|
||||||
import { Component, EventEmitter, Inject, OnInit, Output, Input, OnChanges } from '@angular/core';
|
import { Component, EventEmitter, Inject, OnInit, Output, Input, OnChanges, ViewChild } from '@angular/core';
|
||||||
import { BaseComponent } from '@common/base/base.component';
|
import { BaseComponent } from '@common/base/base.component';
|
||||||
import { interval, Subject, Subscription } from 'rxjs';
|
import { interval, Subject, Subscription } from 'rxjs';
|
||||||
import { debounceTime, distinctUntilChanged, takeUntil } from 'rxjs/operators';
|
import { debounceTime, distinctUntilChanged, takeUntil } from 'rxjs/operators';
|
||||||
|
@ -9,6 +9,7 @@ import { ToCEntry, ToCEntryType } from '../dataset-description.component';
|
||||||
import { FormArray, FormGroup } from '@angular/forms';
|
import { FormArray, FormGroup } from '@angular/forms';
|
||||||
import { VisibilityRulesService } from '../visibility-rules/visibility-rules.service';
|
import { VisibilityRulesService } from '../visibility-rules/visibility-rules.service';
|
||||||
import { Rule } from '@app/core/model/dataset-profile-definition/rule';
|
import { Rule } from '@app/core/model/dataset-profile-definition/rule';
|
||||||
|
import { TableOfContentsInternal } from './table-of-contents-internal/table-of-contents-internal';
|
||||||
|
|
||||||
export interface Link {
|
export interface Link {
|
||||||
/* id of the section*/
|
/* id of the section*/
|
||||||
|
@ -34,6 +35,9 @@ export interface Link {
|
||||||
})
|
})
|
||||||
export class TableOfContents extends BaseComponent implements OnInit, OnChanges {
|
export class TableOfContents extends BaseComponent implements OnInit, OnChanges {
|
||||||
|
|
||||||
|
@ViewChild('internalTable', {static: false}) internalTable: TableOfContentsInternal;
|
||||||
|
|
||||||
|
|
||||||
@Input() links: Link[];
|
@Input() links: Link[];
|
||||||
container: string;
|
container: string;
|
||||||
headerSelectors = '.toc-page-header, .toc-section-header, .toc-compositeField-header';
|
headerSelectors = '.toc-page-header, .toc-section-header, .toc-compositeField-header';
|
||||||
|
@ -489,6 +493,14 @@ export class TableOfContents extends BaseComponent implements OnInit, OnChanges
|
||||||
return fieldsets;
|
return fieldsets;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public hasVisibleInvalidFields():boolean {
|
||||||
|
if(!this.internalTable || !this.tocentries){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return this.tocentries.some(e => this.internalTable.invalidChildsVisible(e));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface LinkToScroll {
|
export interface LinkToScroll {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "DOCX herunterladen",
|
"DOWNLOAD-DOCX": "DOCX herunterladen",
|
||||||
"COPY-DATASET": "Datensatzbeschreibung kopieren",
|
"COPY-DATASET": "Datensatzbeschreibung kopieren",
|
||||||
"UPDATE-DATASET-PROFILE": "Vorlage aktualisieren",
|
"UPDATE-DATASET-PROFILE": "Vorlage aktualisieren",
|
||||||
"VALIDATE":"Validate"
|
"VALIDATE":"Validate",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Undo finalization?",
|
||||||
|
"CONFIRM" : "Yes",
|
||||||
|
"REJECT": "No"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "Datensatzbeschreibung ist nicht vorhanden",
|
"DATASET-NOT-FOUND": "Datensatzbeschreibung ist nicht vorhanden",
|
||||||
"DATASET-NOT-ALLOWED": "Sie haben keinen Zugriff auf diese Datensatzbeschreibung",
|
"DATASET-NOT-ALLOWED": "Sie haben keinen Zugriff auf diese Datensatzbeschreibung",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "Vorlage der Datensatzbeschreibung erfolgreich aktualisiert"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "Vorlage der Datensatzbeschreibung erfolgreich aktualisiert",
|
||||||
|
"MISSING-FIELDS": "There are some required fields left unfilled. Please check the form and make sure that all required fields are filled. (Missing fields are marked in red color)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "Importieren",
|
"UPLOAD-XML": "Importieren",
|
||||||
|
@ -770,6 +774,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE": "Dataset is locked",
|
"TITLE": "Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancel"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DATASET-LISTING": {
|
"DATASET-LISTING": {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "Download DOCX",
|
"DOWNLOAD-DOCX": "Download DOCX",
|
||||||
"COPY-DATASET": "Copy Dataset",
|
"COPY-DATASET": "Copy Dataset",
|
||||||
"UPDATE-DATASET-PROFILE": "Update Template",
|
"UPDATE-DATASET-PROFILE": "Update Template",
|
||||||
"VALIDATE":"Validate"
|
"VALIDATE":"Validate",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Undo finalization?",
|
||||||
|
"CONFIRM" : "Yes",
|
||||||
|
"REJECT": "No"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "Dataset does not exist",
|
"DATASET-NOT-FOUND": "Dataset does not exist",
|
||||||
"DATASET-NOT-ALLOWED": "You have no access to this Dataset",
|
"DATASET-NOT-ALLOWED": "You have no access to this Dataset",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "Dataset Template updated successfully"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "Dataset Template updated successfully",
|
||||||
|
"MISSING-FIELDS": "There are some required fields left unfilled. Please check the form and make sure that all required fields are filled. (Missing fields are marked in red color)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "Import",
|
"UPLOAD-XML": "Import",
|
||||||
|
@ -770,6 +774,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE": "Dataset is locked",
|
"TITLE": "Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancel"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DATASET-LISTING": {
|
"DATASET-LISTING": {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "Descargar DOCX",
|
"DOWNLOAD-DOCX": "Descargar DOCX",
|
||||||
"COPY-DATASET": "Copiar la descripción del dataset",
|
"COPY-DATASET": "Copiar la descripción del dataset",
|
||||||
"UPDATE-DATASET-PROFILE": "Plantilla de modificación",
|
"UPDATE-DATASET-PROFILE": "Plantilla de modificación",
|
||||||
"VALIDATE":"Validate"
|
"VALIDATE":"Validate",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Undo finalization?",
|
||||||
|
"CONFIRM" : "Yes",
|
||||||
|
"REJECT": "No"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "No existe la descripción del dataset",
|
"DATASET-NOT-FOUND": "No existe la descripción del dataset",
|
||||||
"DATASET-NOT-ALLOWED": "No tiene acceso a la descricipción de este dataset",
|
"DATASET-NOT-ALLOWED": "No tiene acceso a la descricipción de este dataset",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "Plantilla de descripción del dataset actualizada correctamente"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "Plantilla de descripción del dataset actualizada correctamente",
|
||||||
|
"MISSING-FIELDS": "There are some required fields left unfilled. Please check the form and make sure that all required fields are filled. (Missing fields are marked in red color)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "Importar",
|
"UPLOAD-XML": "Importar",
|
||||||
|
@ -770,6 +774,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE": "Dataset is locked",
|
"TITLE": "Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancel"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DATASET-LISTING": {
|
"DATASET-LISTING": {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "Ληψη DOCX",
|
"DOWNLOAD-DOCX": "Ληψη DOCX",
|
||||||
"COPY-DATASET": "Αντιφραφή Περιγραφής Συνόλου Δεδομένων",
|
"COPY-DATASET": "Αντιφραφή Περιγραφής Συνόλου Δεδομένων",
|
||||||
"UPDATE-DATASET-PROFILE": "Ενημέρωση Template",
|
"UPDATE-DATASET-PROFILE": "Ενημέρωση Template",
|
||||||
"VALIDATE":"Επικύρωση"
|
"VALIDATE":"Επικύρωση",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Αναίρεση Οριστικοποίησης?",
|
||||||
|
"CONFIRM" : "Ναι",
|
||||||
|
"REJECT": "Oχι"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "Η Περιγραφή Συνόλου Δεδομένων δεν υπάρχει",
|
"DATASET-NOT-FOUND": "Η Περιγραφή Συνόλου Δεδομένων δεν υπάρχει",
|
||||||
"DATASET-NOT-ALLOWED": "Δεν έχετε πρόσβαση σε αυτή την Περιγραφή Συνόλου Δεδομένων",
|
"DATASET-NOT-ALLOWED": "Δεν έχετε πρόσβαση σε αυτή την Περιγραφή Συνόλου Δεδομένων",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "Επιτυχία ενημέρωσης της Περιγραφής Συνόλου Δεδομένων"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "Επιτυχία ενημέρωσης της Περιγραφής Συνόλου Δεδομένων",
|
||||||
|
"MISSING-FIELDS": "Υπάρχουν ορισμένα υποχρεωτικά πεδία που δεν έχουν συμπληρωθεί. Ελέγξτε τη φόρμα και βεβαιωθείτε ότι έχουν συμπληρωθεί όλα τα απαιτούμενα πεδία. (Τα πεδία που λείπουν επισημαίνονται με κόκκινο χρώμα)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "Εισαγωγή",
|
"UPLOAD-XML": "Εισαγωγή",
|
||||||
|
@ -770,6 +774,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE": "Dataset is locked",
|
"TITLE": "Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancel"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DATASET-LISTING": {
|
"DATASET-LISTING": {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "Exportar para DOCX",
|
"DOWNLOAD-DOCX": "Exportar para DOCX",
|
||||||
"COPY-DATASET": "Copiar o Dataset",
|
"COPY-DATASET": "Copiar o Dataset",
|
||||||
"UPDATE-DATASET-PROFILE": "Atualizar o Modelo",
|
"UPDATE-DATASET-PROFILE": "Atualizar o Modelo",
|
||||||
"VALIDATE":"Validate"
|
"VALIDATE":"Validate",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Desfazer a finalização??",
|
||||||
|
"CONFIRM" : "Sim",
|
||||||
|
"REJECT": "Não"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "O Dataset não existe",
|
"DATASET-NOT-FOUND": "O Dataset não existe",
|
||||||
"DATASET-NOT-ALLOWED": "Não tem acesso a este Dataset",
|
"DATASET-NOT-ALLOWED": "Não tem acesso a este Dataset",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "O Dataset foi atualizado com sucesso"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "O Dataset foi atualizado com sucesso",
|
||||||
|
"MISSING-FIELDS": "Alguns campos obrigatórios não foram preenchidos. Por favor, verifique o formulário e certifique-se de que todos os campos obrigatórios foram preenchidos. (Os campos ausentes são marcados em vermelho)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "Importar",
|
"UPLOAD-XML": "Importar",
|
||||||
|
@ -729,6 +733,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE":"Dataset is locked",
|
"TITLE":"Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. You may view the dataset but you cannot make any changes. If you would like to modify it please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. You may view the dataset but you cannot make any changes. If you would like to modify it please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancelar"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DMP-OVERVIEW": {
|
"DMP-OVERVIEW": {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "Stiahnuť DOCX",
|
"DOWNLOAD-DOCX": "Stiahnuť DOCX",
|
||||||
"COPY-DATASET": "Kopírovať súbor dát",
|
"COPY-DATASET": "Kopírovať súbor dát",
|
||||||
"UPDATE-DATASET-PROFILE": "Aktualizovať šablónu",
|
"UPDATE-DATASET-PROFILE": "Aktualizovať šablónu",
|
||||||
"VALIDATE":"Validate"
|
"VALIDATE":"Validate",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Undo finalization?",
|
||||||
|
"CONFIRM" : "Yes",
|
||||||
|
"REJECT": "No"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "Súbor dát neexistuje",
|
"DATASET-NOT-FOUND": "Súbor dát neexistuje",
|
||||||
"DATASET-NOT-ALLOWED": "K tomuto súboru dát nemáte prístup",
|
"DATASET-NOT-ALLOWED": "K tomuto súboru dát nemáte prístup",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "Šablóna súboru dát bola úspešne aktualizovaná"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "Šablóna súboru dát bola úspešne aktualizovaná",
|
||||||
|
"MISSING-FIELDS": "There are some required fields left unfilled. Please check the form and make sure that all required fields are filled. (Missing fields are marked in red color)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "Importovať",
|
"UPLOAD-XML": "Importovať",
|
||||||
|
@ -770,6 +774,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE": "Dataset is locked",
|
"TITLE": "Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancel"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DATASET-LISTING": {
|
"DATASET-LISTING": {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "Preuzmite DOCX",
|
"DOWNLOAD-DOCX": "Preuzmite DOCX",
|
||||||
"COPY-DATASET": "Kopirajte skup podataka",
|
"COPY-DATASET": "Kopirajte skup podataka",
|
||||||
"UPDATE-DATASET-PROFILE": "Ažurirajte obrazac",
|
"UPDATE-DATASET-PROFILE": "Ažurirajte obrazac",
|
||||||
"VALIDATE":"Validate"
|
"VALIDATE":"Validate",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Undo finalization?",
|
||||||
|
"CONFIRM" : "Yes",
|
||||||
|
"REJECT": "No"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "Skup podataka ne postoji",
|
"DATASET-NOT-FOUND": "Skup podataka ne postoji",
|
||||||
"DATASET-NOT-ALLOWED": "Nemate pristup ovom skupu podataka",
|
"DATASET-NOT-ALLOWED": "Nemate pristup ovom skupu podataka",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "Obrazac skupa podataka je ažuriran uspešno"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "Obrazac skupa podataka je ažuriran uspešno",
|
||||||
|
"MISSING-FIELDS": "There are some required fields left unfilled. Please check the form and make sure that all required fields are filled. (Missing fields are marked in red color)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "Uvezite",
|
"UPLOAD-XML": "Uvezite",
|
||||||
|
@ -770,6 +774,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE": "Dataset is locked",
|
"TITLE": "Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancel"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DATASET-LISTING": {
|
"DATASET-LISTING": {
|
||||||
|
|
|
@ -702,12 +702,16 @@
|
||||||
"DOWNLOAD-DOCX": "DOCX İndir",
|
"DOWNLOAD-DOCX": "DOCX İndir",
|
||||||
"COPY-DATASET": "Veri Seti Tanımını Kopyala",
|
"COPY-DATASET": "Veri Seti Tanımını Kopyala",
|
||||||
"UPDATE-DATASET-PROFILE": "Şablonu Güncelle",
|
"UPDATE-DATASET-PROFILE": "Şablonu Güncelle",
|
||||||
"VALIDATE":"Validate"
|
"VALIDATE":"Validate",
|
||||||
|
"UNDO-FINALIZATION-QUESTION" :"Undo finalization?",
|
||||||
|
"CONFIRM" : "Yes",
|
||||||
|
"REJECT": "No"
|
||||||
},
|
},
|
||||||
"MESSAGES": {
|
"MESSAGES": {
|
||||||
"DATASET-NOT-FOUND": "Veri Seti mevcut değildir",
|
"DATASET-NOT-FOUND": "Veri Seti mevcut değildir",
|
||||||
"DATASET-NOT-ALLOWED": "Bu Veri Setine erişiminiz yok",
|
"DATASET-NOT-ALLOWED": "Bu Veri Setine erişiminiz yok",
|
||||||
"SUCCESS-UPDATE-DATASET-PROFILE": "Veri Seti Tanımı başarılı olarak güncellendi"
|
"SUCCESS-UPDATE-DATASET-PROFILE": "Veri Seti Tanımı başarılı olarak güncellendi",
|
||||||
|
"MISSING-FIELDS": "There are some required fields left unfilled. Please check the form and make sure that all required fields are filled. (Missing fields are marked in red color)"
|
||||||
},
|
},
|
||||||
"UPLOAD": {
|
"UPLOAD": {
|
||||||
"UPLOAD-XML": "İçeri Aktar",
|
"UPLOAD-XML": "İçeri Aktar",
|
||||||
|
@ -770,6 +774,11 @@
|
||||||
"LOCKED":{
|
"LOCKED":{
|
||||||
"TITLE": "Dataset is locked",
|
"TITLE": "Dataset is locked",
|
||||||
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
"MESSAGE": "Somebody else is modifying the dataset at this moment. If you would like to modify or view it, please come back later."
|
||||||
|
},
|
||||||
|
"FINALISE-POPUP":{
|
||||||
|
"MESSAGE":"You will be directed to Dataset Editor where you can finalize the selected dataset. Would you like to proceed?",
|
||||||
|
"CONFIRM":"OK",
|
||||||
|
"CANCEL":"Cancel"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DATASET-LISTING": {
|
"DATASET-LISTING": {
|
||||||
|
|
Loading…
Reference in New Issue