Project

General

Profile

Actions

Feature #89894

closed

Separate system extensions from 3rd-party extensions visually

Added by Michael Schams almost 5 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Extension Manager
Target version:
-
Start date:
2019-12-07
Due date:
% Done:

100%

Estimated time:
PHP Version:
7.3
Tags:
Complexity:
Sprint Focus:

Description

Background

The Extension Manager in TYPO3 allows backend users to list, activate, deactivate, configure, and possibly add/remove extensions from the system. When using the Extension Manager, backend users work with either core extensions (system extensions) or 3rd-party extensions, depending on their task. The current version of the Extension Manager shows a list of all available extensions and it is cumbersome to find the extension you are looking for.

Solution Suggestion

Update the Extension Manager to let backend users filter the list by system extensions (System/Global) and 3rd-party extensions (Local) — but keep the option to show all extensions by default.

Impact

A limited list of extensions, either system or 3rd-party extensions, makes it easier for backend users to find the extension they intend to work with and/or to get a quick overview which extensions are currently installed (e.g. 3rd-party extensions). This improves the usability of the backend for integrators/administrators.

Approach

One option would be to always output the complete list of extensions and offer buttons/links/dropdown box to filter the table rows based on the extension type using JavaScript (hide/show specific rows). The benefit of this option is that everything happens on the browser-side and no additional HTTP request is required.

Another option would be to output the complete list of extensions by default and offer buttons/links/dropdown box to pass an argument to the indexAction() that results in an extension list with specific extensions only. In this scenario the filtering happens on the server-side.

Other options are conceivable (e.g. retrieve the extension list by using AJAX), but they require more complex changes to the Extension Manager.

Additional Notes

A nice-to-have feature would be to store the last state in the session of the backend user. If the user filters the list, then leaves the Extension Manager and accesses another backend module, and then comes back to the Extension Manager again, it would be great to show the filtered list rather than the default (all extensions).

Demo / Proof-of-Concept

See attached video and patch file for a simple prototype that visualizes the concept. It is important to understand that this is not meant to be the final solution — this patch is simply a proof-of-concept.

The video and patch file is based on the TYPO3 v10.2 sources.


Files


Related issues 4 (0 open4 closed)

Related to TYPO3 Core - Feature #83463: EM : Add a checkbox to hide Sysexts.Closed2018-01-03

Actions
Related to TYPO3 Core - Feature #70157: Show extensions to update at top of listClosed2015-09-28

Actions
Precedes TYPO3 Core - Bug #93616: DBAL-DriverException when saving BackendUser->uc on PostgreSQLClosedStephan Großberndt2021-03-01

Actions
Precedes TYPO3 Core - Bug #93617: Do not unserialize stdClass of be_users.uc in extensionmanagerClosedStephan Großberndt2021-03-01

Actions
Actions #2

Updated by Riccardo De Contardi almost 5 years ago

  • Related to Feature #83463: EM : Add a checkbox to hide Sysexts. added
Actions #3

Updated by Riccardo De Contardi almost 5 years ago

Related: #83463

Please, tell me if can be considered obsolete and closed in favor of this one.

Actions #4

Updated by Gerrit Code Review almost 5 years ago

  • Status changed from New to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/62595

Actions #5

Updated by Michael Schams almost 5 years ago

Notes re current WIP patch set 1:

  • I don't like the three buttons (a nicer UI element should be used).
  • The code does not take "Global" extensions into account (only "System" and "Local").
  • The state is not stored in the session and not restored when the user comes back.
  • Riccardo correctly pointed out, that this forge ticket is a duplicate of #83463
Actions #6

Updated by Riccardo De Contardi almost 5 years ago

  • Related to Feature #70157: Show extensions to update at top of list added
Actions #7

Updated by Riccardo De Contardi almost 5 years ago

  • Related to Task #73020: Default sorting like in version 6.2 added
Actions #8

Updated by Riccardo De Contardi almost 5 years ago

  • Related to deleted (Task #73020: Default sorting like in version 6.2)
Actions #9

Updated by Riccardo De Contardi almost 5 years ago

I don't like the three buttons (a nicer UI element should be used).

My suggestion is use three checkboxes or three switches; as alternative, use Bootstrap's buttongroup to group them

Actions #10

Updated by Gerrit Code Review almost 5 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/62595

Actions #11

Updated by Gerrit Code Review almost 5 years ago

Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/62595

Actions #12

Updated by Gerrit Code Review almost 5 years ago

Patch set 4 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/62595

Actions #13

Updated by Anonymous almost 5 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100
Actions #14

Updated by Benni Mack over 4 years ago

  • Status changed from Resolved to Closed
Actions #15

Updated by Stephan Großberndt over 3 years ago

  • Precedes Bug #93616: DBAL-DriverException when saving BackendUser->uc on PostgreSQL added
Actions #16

Updated by Stephan Großberndt over 3 years ago

  • Precedes Bug #93617: Do not unserialize stdClass of be_users.uc in extensionmanager added
Actions

Also available in: Atom PDF