1
0
mirror of https://github.com/flextype/flextype.git synced 2025-08-24 13:52:56 +02:00

feat(core): add ability to extends fieldsets #301

Usage:

single fields
```
extends: base
```

or multiple fieldsets
```
extends:
  - base
  - seo

```
This commit is contained in:
Awilum
2019-11-21 20:33:23 +03:00
parent 42cdbed65b
commit e3f562e09a

View File

@@ -89,6 +89,20 @@ class Forms
$form .= $this->_csrfHiddenField();
$form .= $this->_actionHiddenField();
// Extends fieldsets
if (isset($fieldset['extends'])) {
if (is_array($fieldset['extends'])) {
foreach ($fieldset['extends'] as $extends) {
$extends_fieldset_content = Filesystem::read($this->flextype->fieldsets->getFileLocation($extends));
$fieldset = array_replace_recursive($fieldset, $this->flextype->parser->decode($extends_fieldset_content, 'yaml'));
}
} else {
$extends_fieldset_content = Filesystem::read($this->flextype->fieldsets->getFileLocation($fieldset['extends']));
$extends_fieldset = $this->flextype->parser->decode($extends_fieldset_content, 'yaml');
$fieldset = array_replace_recursive($fieldset, $extends_fieldset);
}
}
// Go through all sections
if (count($fieldset['sections']) > 0) {
$form .= '<ul class="nav nav-pills nav-justified" id="pills-tab" role="tablist">';