Skip to content

Upgrade Roadmap to Sulu 2.0 compatibility #190

@alexander-schranz

Description

@alexander-schranz
Q A
Bug? no
New Feature? yes
Bundle Version for 2.0
Sulu Version for 2.0
Browser Version Browser name and version

Changes

Remove fieldsAction and create list xml for forms.

Create form without fields section.

EvaluateFormItemExpressions should be an own service?
MetadataProviderRegistry should handle Providers as chain so an own Provider can be implemented to add the FormMetaData for the Fields blocks.

Extend sulu to have multiple form meta data loaders and create a custom one in the form bundle to load the form_details form.

We need a option in the RouteBuilder which does made it possible to add parameters to the metadata request. So the ListMetaProvider chain get this options and can dynamically add FieldDescriptors.

Use addRouterAttributesToListMetadata ... ['id' => 'id']
Use addRouterAttributesToListStore to add a filter for this list.

Register a new route for Pages and set the tabCondition dynamically over loadedStructureMetadata to add the tab only for this structures which has the single_form_selection content type.

Use addRouterAttributesToListStore to add a filter for this list.

  • 6. Database

Currently there is a strange mix about data when having a look at Dynamic.orm.xml

https://github.com/sulu/SuluFormBundle/blob/1.0.0-RC7/Resources/config/doctrine/Dynamic.orm.xml

The entity should be reduced to some basic fields:

  • id: int
  • (uuid: string)
  • type (maybe resourceKey): string
  • typeId (maybe resourceId): string
  • locale: ?string (5)
  • webspaceKey: ?string (64)
  • typeName (maybe resourceName / resourceTitle): ?string (128)
  • data: array
  • auditableFields
  • form: relation to form

For this all other fields need to be migrated into data field json, fields should only be set in data when the column have data for it.

This will also fix the MySQL 8 Incompatibility see #199

The magic function and the geter and setters should be removed and should not longer exist:

https://github.com/sulu/SuluFormBundle/blob/1.0.0-RC7/Entity/Dynamic.php#L244-L287

Controller need to be changed to dependency injection.

https://symfony.com/blog/new-in-symfony-4-3-simpler-event-dispatching

  • 10. Mailchimp List Select Mailchimp List Select  #198

  • 11. Add .editorconfig file

  • 12. Configure php-cs-fixer

  • 13. Install and configure phpstan

  • 14. Use yaml as format for route configuration

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions