Project

General

Profile

Actions

Bug #98363

open

EXT:form - Deletion of forms created in allowedExtensionPaths not possible

Added by Kevin Ditscheid almost 2 years ago. Updated 12 days ago.

Status:
New
Priority:
Should have
Assignee:
-
Category:
Form Framework
Target version:
-
Start date:
2022-09-16
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
11
PHP Version:
8.1
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

The deletion of forms that are placed in a path configured under TYPO3.CMS.Form.persistenceManager.allowedExtensionPaths is not possible, although the creation in these locations works without an error message.
The delete function of FormManagerController is using the ResourceFactory wich checks, if the YAML file of the form is placed in a public location. If this isn't the case (which isn't checked on creation), the PathUtility throws a InvalidFileException which the ResourceFactory interprets as ResourceDoesNotExistException with the message

Tried to access a private resource file "EXT:my_ext/Resources/Private/Forms/test1.form.yaml" from fallback compatibility storage. This storage only handles public files.

Since we can configure a private path for YAML storage and the fact that YAML files aren't public resources in the first place, I suggest removing the check for public locations when saving and deleting forms in the backend.

Example configuration in BaseSetup.yaml

TYPO3:
  CMS:
    Form:
      persistenceManager:
        allowedExtensionPaths:
          10: EXT:my_ext/Resources/Private/Forms/
        allowSaveToExtensionPaths: true
        allowDeleteFromExtensionPaths: true


Related issues 1 (0 open1 closed)

Related to TYPO3 Core - Bug #101457: Deletion of forms saved within a sitepackage crashesClosed2023-07-27

Actions
Actions #1

Updated by Riccardo De Contardi 12 days ago

  • Related to Bug #101457: Deletion of forms saved within a sitepackage crashes added
Actions #2

Updated by Riccardo De Contardi 12 days ago

As reported on #101457 this issue is still valid for version 12.

I'll write here the description of that issue to keep track of it

*Versions of relevant Components:

Typo3-Version: 12.4.3
PHP Version: 8.1
CMS-Form: 12.4.3

*Steps to Reproduce:

Step 1: Configuration of Sitepackage as storage option:

We have used forms and configured the site package as an additional option for saving as follows.

persistenceManager:
allowedExtensionPaths:
10: EXT:gartenlandooe/Resources/Private/Forms/
allowSaveToExtensionPaths: true
allowDeleteFromExtensionPaths: true

Step 2: Create new form and save it within the site package, then try to delete it.

Saving works as expected. However, on the deletion of a form saved within the sitepackage, an error is thrown. It says that the resource does not exist, although it does.

(1/1) #1633777536 TYPO3\CMS\Core\Resource\Exception\ResourceDoesNotExistException
Tried to access a private resource file "EXT:gartenlandooe/Resources/Private/Forms/test2.form.yaml" from fallback compatibility storage. This storage only handles public files.

Actions

Also available in: Atom PDF