[TASK] Unify code in FileList
Currently, the Backend module File > FileList has two main views: * The list view * The search result view Both are handled via an Extbase controller, even though no pure Extbase-related feature (validation, type-converting, persistence) is used. Instead, the list view is generated by a PHP-based code "FileList" (similar to DatabaseRecordList), where as the search result view is built on top of Fluid. The latter approach hinders flexibility, and also leads to inconsistencies, due to the nature of using two different approaches. Most notable: - The search result view looks different than the list view, also no additional icons are possible. - The search result view has a clipboard, but does not allow to expand. - The search result view does not respect the listing limit, nor is the pagination displayed. - The search result view changes the module headline to "Search: <word>", removing the context on which folder the search was performed. However, the search result view works with the SearchDemand object which is a clean way to put the query requirements into the File List to render the found files. Therefore, this patch merges both Search Result Fluid view and PHP-based view back into one, more flexible and consistent, view. This also means, FileListController is not longer registered as an Extbase backend module and some internal ViewHelpers and classes were removed. The main benefits: * Exchanging features between DatabaseRecordList and FileList are easier to achieve * Hooks for additional icons also work in the search result view * Numeric Clipboards also work in the search result view * Buttons in each found file row look the same now * The current folder is now also displayed in search result view * Bookmarking also works properly now and additionally also takes a possible searchTerm into account * The search results are now paginated, respecting the listing limit * Invalid folders do not longer lead to an exception in the search result view Resolves: #87974 Resolves: #89867 Resolves: #92247 Resolves: #92747 Resolves: #93185 Releases: master Change-Id: I259fe7f63ef8ea69f6bdf0c787330f4338d4bd5a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/69718 Tested-by:core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
Showing
- Build/Sources/TypeScript/filelist/Resources/Public/TypeScript/FileList.ts 25 additions, 8 deletions...peScript/filelist/Resources/Public/TypeScript/FileList.ts
- Build/Sources/TypeScript/filelist/Resources/Public/TypeScript/FileSearch.ts 0 additions, 42 deletions...Script/filelist/Resources/Public/TypeScript/FileSearch.ts
- typo3/sysext/core/Tests/Acceptance/Backend/FileList/FileMetaDataCest.php 1 addition, 1 deletion...re/Tests/Acceptance/Backend/FileList/FileMetaDataCest.php
- typo3/sysext/filelist/Classes/Controller/FileListController.php 421 additions, 567 deletions...sysext/filelist/Classes/Controller/FileListController.php
- typo3/sysext/filelist/Classes/FileFacade.php 0 additions, 362 deletionstypo3/sysext/filelist/Classes/FileFacade.php
- typo3/sysext/filelist/Classes/FileList.php 88 additions, 64 deletionstypo3/sysext/filelist/Classes/FileList.php
- typo3/sysext/filelist/Classes/ViewHelpers/Uri/CopyCutFileViewHelper.php 0 additions, 74 deletions...ilelist/Classes/ViewHelpers/Uri/CopyCutFileViewHelper.php
- typo3/sysext/filelist/Classes/ViewHelpers/Uri/EditFileContentViewHelper.php 0 additions, 67 deletions...ist/Classes/ViewHelpers/Uri/EditFileContentViewHelper.php
- typo3/sysext/filelist/Classes/ViewHelpers/Uri/RenameFileViewHelper.php 0 additions, 66 deletions...filelist/Classes/ViewHelpers/Uri/RenameFileViewHelper.php
- typo3/sysext/filelist/Classes/ViewHelpers/Uri/ReplaceFileViewHelper.php 0 additions, 67 deletions...ilelist/Classes/ViewHelpers/Uri/ReplaceFileViewHelper.php
- typo3/sysext/filelist/Configuration/Services.yaml 3 additions, 0 deletionstypo3/sysext/filelist/Configuration/Services.yaml
- typo3/sysext/filelist/Resources/Private/Language/locallang.xlf 1 addition, 1 deletion.../sysext/filelist/Resources/Private/Language/locallang.xlf
- typo3/sysext/filelist/Resources/Private/Layouts/Default.html 0 additions, 10 deletionstypo3/sysext/filelist/Resources/Private/Layouts/Default.html
- typo3/sysext/filelist/Resources/Private/Partials/ClipBoard.html 0 additions, 5 deletions...sysext/filelist/Resources/Private/Partials/ClipBoard.html
- typo3/sysext/filelist/Resources/Private/Partials/SearchForm.html 0 additions, 13 deletions...ysext/filelist/Resources/Private/Partials/SearchForm.html
- typo3/sysext/filelist/Resources/Private/Templates/File/List.html 58 additions, 0 deletions...ysext/filelist/Resources/Private/Templates/File/List.html
- typo3/sysext/filelist/Resources/Private/Templates/FileList/Index.html 0 additions, 20 deletions.../filelist/Resources/Private/Templates/FileList/Index.html
- typo3/sysext/filelist/Resources/Private/Templates/FileList/MissingFolder.html 0 additions, 9 deletions...t/Resources/Private/Templates/FileList/MissingFolder.html
- typo3/sysext/filelist/Resources/Private/Templates/FileList/Search.html 0 additions, 218 deletions...filelist/Resources/Private/Templates/FileList/Search.html
- typo3/sysext/filelist/Resources/Public/JavaScript/FileList.js 1 addition, 1 deletion...3/sysext/filelist/Resources/Public/JavaScript/FileList.js
Please register or sign in to comment