Skip to content

Commit

Permalink
[BUGFIX] Only list valid forms
Browse files Browse the repository at this point in the history
Only list valid forms within the form manger and the form plugin.

Valid forms have an "identifier" and a "type" and the type must be "Form".

Resolves: #85132
Releases: master, 8.7
Change-Id: I2f473925b3edf839d5f965136b6b02030671350a
Reviewed-on: https://review.typo3.org/57108
Reviewed-by: Jan Helke <typo3@helke.de>
Tested-by: Jan Helke <typo3@helke.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Mona Muzaffar <mona.muzaffar@gmx.de>
Tested-by: Mona Muzaffar <mona.muzaffar@gmx.de>
Tested-by: TYPO3com <no-reply@typo3.com>
  • Loading branch information
waldhacker1 authored and janhelke committed Jun 1, 2018
1 parent c262bec commit 4d55926
Showing 1 changed file with 28 additions and 24 deletions.
Expand Up @@ -259,18 +259,20 @@ public function listForms(): array
$persistenceIdentifier = $storage->getUid() . ':' . $file->getIdentifier();

$form = $this->load($persistenceIdentifier);
$forms[] = [
'identifier' => $form['identifier'],
'name' => $form['label'] ?? $form['identifier'],
'persistenceIdentifier' => $persistenceIdentifier,
'readOnly' => $formReadOnly,
'removable' => true,
'location' => 'storage',
'duplicateIdentifier' => false,
'invalid' => $form['invalid'],
'error' => $form['error'],
];
$identifiers[$form['identifier']]++;
if (isset($form['identifier'], $form['type']) && $form['type'] === 'Form') {
$forms[] = [
'identifier' => $form['identifier'],
'name' => $form['label'] ?? $form['identifier'],
'persistenceIdentifier' => $persistenceIdentifier,
'readOnly' => $formReadOnly,
'removable' => true,
'location' => 'storage',
'duplicateIdentifier' => false,
'invalid' => $form['invalid'],
'error' => $form['error'],
];
$identifiers[$form['identifier']]++;
}
}
$storage->resetFileAndFolderNameFiltersToDefault();
}
Expand All @@ -282,18 +284,20 @@ public function listForms(): array
continue;
}
$form = $this->load($relativePath . $fileInfo->getFilename());
$forms[] = [
'identifier' => $form['identifier'],
'name' => $form['label'] ?? $form['identifier'],
'persistenceIdentifier' => $relativePath . $fileInfo->getFilename(),
'readOnly' => $this->formSettings['persistenceManager']['allowSaveToExtensionPaths'] ? false: true,
'removable' => $this->formSettings['persistenceManager']['allowDeleteFromExtensionPaths'] ? true: false,
'location' => 'extension',
'duplicateIdentifier' => false,
'invalid' => $form['invalid'],
'error' => $form['error'],
];
$identifiers[$form['identifier']]++;
if (isset($form['identifier'], $form['type']) && $form['type'] === 'Form') {
$forms[] = [
'identifier' => $form['identifier'],
'name' => $form['label'] ?? $form['identifier'],
'persistenceIdentifier' => $relativePath . $fileInfo->getFilename(),
'readOnly' => $this->formSettings['persistenceManager']['allowSaveToExtensionPaths'] ? false: true,
'removable' => $this->formSettings['persistenceManager']['allowDeleteFromExtensionPaths'] ? true: false,
'location' => 'extension',
'duplicateIdentifier' => false,
'invalid' => $form['invalid'],
'error' => $form['error'],
];
$identifiers[$form['identifier']]++;
}
}
}

Expand Down

0 comments on commit 4d55926

Please sign in to comment.