[BUGFIX] Resolve correct page in slug validation
The SlugHelper now receives an encapsulated RecordState object that represents a record. This allows fine-grained control over a record and helps resolving related information, which is required to resolve slugs properly in a case where e.g. the node ("parent") and language uid can occur multiple times. The RecordState contains: - an EntityContext which describes a variant of a record by its language and workspace assignment - a node object (EntityPointer) that points to the node (aka "parent") of the record - a EntityUidPointer that describes the origin of the record by its table name and uid The RecordStateFactory creates such RecordState objects and enriches them with links (EntityPointerLink) that point to languages and versions, that are also represented by EntityPointer implementations. Resolves: #86195 Releases: master Change-Id: If17a30e98f802825d80e95044572153f2426bea2 Reviewed-on: https://review.typo3.org/58229 Tested-by:TYPO3com <no-reply@typo3.com> Reviewed-by:
Andreas Wolf <andreas.wolf@typo3.org> Tested-by:
Daniel Goerz <daniel.goerz@posteo.de> Reviewed-by:
Susanne Moog <susanne.moog@typo3.org> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Hader <oliver.hader@typo3.org>
Showing
- typo3/sysext/backend/Classes/Controller/FormSlugAjaxController.php 15 additions, 10 deletions...ext/backend/Classes/Controller/FormSlugAjaxController.php
- typo3/sysext/core/Classes/DataHandling/DataHandler.php 11 additions, 5 deletionstypo3/sysext/core/Classes/DataHandling/DataHandler.php
- typo3/sysext/core/Classes/DataHandling/Model/EntityContext.php 80 additions, 0 deletions.../sysext/core/Classes/DataHandling/Model/EntityContext.php
- typo3/sysext/core/Classes/DataHandling/Model/EntityPointer.php 44 additions, 0 deletions.../sysext/core/Classes/DataHandling/Model/EntityPointer.php
- typo3/sysext/core/Classes/DataHandling/Model/EntityPointerLink.php 83 additions, 0 deletions...ext/core/Classes/DataHandling/Model/EntityPointerLink.php
- typo3/sysext/core/Classes/DataHandling/Model/EntityUidPointer.php 91 additions, 0 deletions...sext/core/Classes/DataHandling/Model/EntityUidPointer.php
- typo3/sysext/core/Classes/DataHandling/Model/RecordState.php 164 additions, 0 deletionstypo3/sysext/core/Classes/DataHandling/Model/RecordState.php
- typo3/sysext/core/Classes/DataHandling/Model/RecordStateFactory.php 163 additions, 0 deletions...xt/core/Classes/DataHandling/Model/RecordStateFactory.php
- typo3/sysext/core/Classes/DataHandling/SlugHelper.php 27 additions, 23 deletionstypo3/sysext/core/Classes/DataHandling/SlugHelper.php
- typo3/sysext/install/Classes/Updates/PopulatePageSlugs.php 7 additions, 4 deletionstypo3/sysext/install/Classes/Updates/PopulatePageSlugs.php
Please register or sign in to comment