Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
dmp
OpenAIRE-EUDAT-DMP-service-pilot
Commits
ba865c97
Commit
ba865c97
authored
Sep 17, 2021
by
Kristian Ntavidi
Browse files
Dataset Editor (Researchers Page). Incrementing ordinals on multiplicity items.
parent
52c26cd8
Changes
4
Hide whitespace changes
Inline
Side-by-side
dmp-frontend/src/app/ui/misc/dataset-description-form/components/form-composite-field/form-composite-field.component.ts
View file @
ba865c97
...
...
@@ -61,6 +61,13 @@ export class FormCompositeFieldComponent {
const
parent
=
this
.
form
.
parent
;
const
index
=
(
parent
as
FormArray
).
controls
.
indexOf
(
this
.
form
);
(
parent
as
FormArray
).
removeAt
(
index
);
(
parent
as
FormArray
).
controls
.
forEach
((
control
,
i
)
=>
{
try
{
control
.
get
(
'
ordinal
'
).
setValue
(
i
);
}
catch
{
throw
'
Could not find ordinal
'
;
}
});
// (<FormArray>(this.form as AbstractControl)).removeAt(fildIndex);
}
}
dmp-frontend/src/app/ui/misc/dataset-description-form/components/form-section/form-section-inner/form-section-inner.component.ts
View file @
ba865c97
...
...
@@ -58,8 +58,9 @@ export class FormSectionInnerComponent implements OnInit, OnChanges {
addMultipleField
(
fieldsetIndex
:
number
)
{
const
compositeFieldToBeCloned
=
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
fieldsetIndex
)
as
FormGroup
).
getRawValue
();
const
compositeField
:
DatasetDescriptionCompositeFieldEditorModel
=
new
DatasetDescriptionCompositeFieldEditorModel
().
cloneForMultiplicity
(
compositeFieldToBeCloned
);
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
fieldsetIndex
).
get
(
'
multiplicityItems
'
))).
push
(
compositeField
.
buildForm
());
const
multiplicityItemsArray
=
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
fieldsetIndex
).
get
(
'
multiplicityItems
'
)));
const
compositeField
:
DatasetDescriptionCompositeFieldEditorModel
=
new
DatasetDescriptionCompositeFieldEditorModel
().
cloneForMultiplicity
(
compositeFieldToBeCloned
,
multiplicityItemsArray
.
length
);
multiplicityItemsArray
.
push
(
compositeField
.
buildForm
());
}
deleteCompositeFieldFormGroup
(
compositeFildIndex
:
number
)
{
...
...
@@ -72,7 +73,15 @@ export class FormSectionInnerComponent implements OnInit, OnChanges {
}
deleteMultipeFieldFromCompositeFormGroup
(
compositeFildIndex
:
number
,
fildIndex
:
number
)
{
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
compositeFildIndex
).
get
(
'
multiplicityItems
'
))).
removeAt
(
fildIndex
);
const
multiplicityItemsArray
=
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
compositeFildIndex
).
get
(
'
multiplicityItems
'
)))
multiplicityItemsArray
.
removeAt
(
fildIndex
);
multiplicityItemsArray
.
controls
.
forEach
((
control
,
i
)
=>
{
try
{
control
.
get
(
'
ordinal
'
).
setValue
(
i
);
}
catch
{
throw
'
Could not find ordinal
'
;
}
});
}
// isElementVisible(fieldSet: CompositeField): boolean {
...
...
dmp-frontend/src/app/ui/misc/dataset-description-form/components/form-section/form-section.component.ts
View file @
ba865c97
...
...
@@ -70,8 +70,9 @@ export class FormSectionComponent implements OnInit, OnChanges {
addMultipleField
(
fieldsetIndex
:
number
)
{
const
compositeFieldToBeCloned
=
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
fieldsetIndex
)
as
FormGroup
).
getRawValue
();
const
compositeField
:
DatasetDescriptionCompositeFieldEditorModel
=
new
DatasetDescriptionCompositeFieldEditorModel
().
cloneForMultiplicity
(
compositeFieldToBeCloned
);
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
fieldsetIndex
).
get
(
'
multiplicityItems
'
))).
push
(
compositeField
.
buildForm
());
const
multiplicityItemsArray
=
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
fieldsetIndex
).
get
(
'
multiplicityItems
'
)));;
const
compositeField
:
DatasetDescriptionCompositeFieldEditorModel
=
new
DatasetDescriptionCompositeFieldEditorModel
().
cloneForMultiplicity
(
compositeFieldToBeCloned
,
multiplicityItemsArray
.
length
);
multiplicityItemsArray
.
push
(
compositeField
.
buildForm
());
}
deleteCompositeFieldFormGroup
(
compositeFildIndex
:
number
)
{
...
...
@@ -84,7 +85,15 @@ export class FormSectionComponent implements OnInit, OnChanges {
}
deleteMultipeFieldFromCompositeFormGroup
(
compositeFildIndex
:
number
,
fildIndex
:
number
)
{
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
compositeFildIndex
).
get
(
'
multiplicityItems
'
))).
removeAt
(
fildIndex
);
const
multiplicityItemsArray
=
(
<
FormArray
>
(
this
.
form
.
get
(
'
compositeFields
'
).
get
(
''
+
compositeFildIndex
).
get
(
'
multiplicityItems
'
)));
multiplicityItemsArray
.
removeAt
(
fildIndex
);
multiplicityItemsArray
.
controls
.
forEach
((
control
,
i
)
=>
{
try
{
control
.
get
(
'
ordinal
'
).
setValue
(
i
);
}
catch
{
throw
'
Could not find ordinal
'
;
}
});
}
// isElementVisible(fieldSet: CompositeField): boolean {
...
...
dmp-frontend/src/app/ui/misc/dataset-description-form/dataset-description-form.model.ts
View file @
ba865c97
...
...
@@ -194,13 +194,13 @@ export class DatasetDescriptionCompositeFieldEditorModel extends BaseFormModel {
// return newItem;
// }
cloneForMultiplicity
(
item
:
CompositeField
):
DatasetDescriptionCompositeFieldEditorModel
{
cloneForMultiplicity
(
item
:
CompositeField
,
ordinal
:
number
):
DatasetDescriptionCompositeFieldEditorModel
{
const
newItem
:
DatasetDescriptionCompositeFieldEditorModel
=
new
DatasetDescriptionCompositeFieldEditorModel
();
newItem
.
id
=
'
multiple_
'
+
item
.
id
+
'
_
'
+
Guid
.
create
();
item
.
fields
.
forEach
((
field
,
index
)
=>
{
newItem
.
fields
.
push
(
new
DatasetDescriptionFieldEditorModel
().
cloneForMultiplicity
(
field
,
newItem
.
id
));
});
newItem
.
ordinal
=
item
.
ordinal
;
newItem
.
ordinal
=
ordinal
;
return
newItem
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment