.. include:: /Includes.rst.txt .. _upgrade: ======== Updating ======== If you update EXT:yellowpages2 to a newer version, please read this section carefully! Upgrade to version 9.0.0 ======================== This version closes a security issue and changes how company logo and image uploads are handled. The `activate` action, used by the link in the administrator notification email to publish a company record straight away, previously had no authorization check at all. Anyone who knew or guessed a company's UID could activate it. `activate`, `edit`, and `update` now require a signed `moderationToken` request argument in addition to (or, for `activate`, instead of) the existing frontend user check. If you have overridden `Templates/Map/Create.html` or `Templates/Map/Update.html` in your own site package, add `moderationToken` to the `arguments` of both `f:link.action` calls, otherwise the links in the email no longer work: .. code-block:: html Edit record Company logo and image uploads have been migrated to Extbase's native `#[FileUpload]` API (TYPO3 >= 13.3), replacing the extension's own `UploadMultipleFilesConverter` property mapper and `AssignMediaTypeConverterEventListener`, both of which have been removed. If you have overridden `Partials/Company/Fields/Logo.html` or `Images.html`, replace the old per-index upload fields (`logo.0`, `images.0` through `images.4`) with the native multi-file pattern: .. code-block:: html `Domain\Model\Company::getOriginalLogo()`, `getOriginalImages()`, `getOriginalMainTrade()`, and `getOriginalTrades()` have been removed. Their former callers should use `getLogo()`, `getImages()`, `getMainTrade()`, and `getTrades()` instead, which now return the underlying `ObjectStorage` directly rather than a plain array. Code iterating these values in Fluid keeps working unchanged; PHP code expecting a plain `array` must call `->toArray()` itself. The classic static template registration under `Configuration/TypoScript/` has been removed in favor of the `jweiland/yellowpages2` Site Set. If your site still relies on the classic "Include static (from extensions)" template mechanism instead of Site Sets, add the `jweiland/yellowpages2` Site Set to your site's `dependencies` in `config.yaml`, see :ref:`site-set-settings`. Upgrade to version 7.0.0 ======================== This version is focused on upgrading the compatibility version to TYPO3 version 12 LTS. We moved some extension functionalities from PSR-14 Event Listeners to Middlewares as the request setArgument not possible anymore with TYPO3 version 12. Upgrade to version 6.1.0 ======================== If you make use of the `ModifyQueryToFindCompanyByLetterEvent` or `ModifyQueryToSearchForCompaniesEvent` event: We have changed the strict type of TYPO3 QueryBuilder to Extbase QueryResult. Yes, this is a breaking change, but it seems that no one makes use of it. Please adapt your code to use QueryResult. You can retrieve the Extbase query with method `getQuery()`. Upgrade to version 6.0.0 ======================== As TYPO3 has deprecated the ObjectManager, we have changed many properties in our scheduler task `Update yellowpages`. Please remove that scheduler task completely and create a new one of type `Inform users to update their company record`. We have changed a lot of classes. Please click the `Flush Cache` button in the Install Tool to rebuild the Dependency Injection cache. If you have maps2 version 9 installed you have to override or change following part in `Properties.html` from: .. code-block:: html to: .. code-block:: html Upgrade to version 5.0.0 ======================== We have moved a lot of code of yellowpages2 controllers to EventListeners. Please flush the cache in the maintenance module. As a developer, you should check whether you have overwritten some methods of MapController or CompanyController and adapt them to the new structure. Upgrade to version 4.0.0 ======================== We have removed column wsp_member as this column was specific to one of our customers. If you have used it, you have to add it back with the help of EXT:extender. We have removed column icon from table sys_category. This also removed fallbackIconPath. If you have used it, you have to add it back with the help of EXT:extender. We are using the API of glossary2 now. Please check whether your own queries are still working.