Epic #84044

Admin Panel Rework

Added by Susanne Moog about 1 year ago. Updated 6 months ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
AdminPanel
Start date:
2010-08-11
Due date:
% Done:

100%

Sprint Focus:

Description

For version 9, we want to rework the admin panel with the following goals:

Milestones
  • Extract `AdminPanelView` modules to one class per module with interface and API to register own modules (#84045)
  • Extract module specific code lines from general code (interface expansion might be necessary) (#84118)
  • Move AdminPanel to own system extension (#84159) and let the modules be registered by the corresponding core extensions (f.e. fe_edit)
  • Remove access to globals and use PSR-7 request object instead (introduce AdminPanel PSR-15 middleware) [interface expansion with $request might be necessary]
  • Add upgrade wizard to optionally enable admin panel on upgrades (#84583)
  • Remove configuration via $_GET params (google the admin panel get vars and you'll see one of the reasons) (#84584)
  • Render modules via fluid standalone (done)
  • Render outer panel via fluid standalone (#84584)
  • Re-Design the panel (#84584)
  • Add functionality (tbd)

Subtasks

Feature #22564: The selected preview group in FE is not active if the admin-panel is not expanded.Closed

Feature #84045: Refactor admin panel module registrationClosedSusanne Moog

Task #84118: Extract module specific code from generic AdminPanelView classClosedSusanne Moog

Feature #84159: Extract admin panel to own extensionClosedSusanne Moog

Bug #84198: simulate usergroup in admin panel is reset on updateClosedFrank Naegler

Task #84209: CacheModule - Extract html structure into fluid templatesClosedJoerg Boesche

Task #84211: Preview Module - Extract html structure into fluid templatesClosedTobi Kretschmann

Feature #84216: Fluid partial debug output should not be visible in admin panelClosedFrank Naegler

Task #84271: TS debug module - Extract html structure into fluid templatesClosedJoerg Boesche

Task #84286: Info module - Extract html structure into fluid templatesClosedJoerg Boesche

Task #84291: Edit module - Extract html structure into fluid templatesClosedSteffen Frese

Bug #84510: Fix TypeScript build configuration and path error in Gruntfile.js for EXT.adminpanelClosedFrank Naegler

Bug #84519: Preview Module - Label is missingClosedTobi Kretschmann

Task #84583: Add upgrade wizard to enable the admin panelClosedSusanne Moog

Feature #84584: Re-Design the admin panelClosedSusanne Moog

Feature #84585: Extend info module with request parametersClosed

Story #84606: Add Log Module // Add InMemory Logger ClosedSusanne Moog

Story #84607: Add Hooks and Signals ModuleRejectedSusanne Moog

Story #84608: Add Cache (Content) ModuleRejected

Story #84609: SQL Log moduleClosedSusanne Moog

Story #84610: Add Environment to info moduleClosedJan Stockfisch

Story #84611: Add frontend templating debug informationRejected

Story #84612: Extend info module - USER_INT infoRejected

Story #84613: Add module for sub-requestsRejected

Story #84614: Add context switch optionRejected

Story #84615: Add TypoScript Parser/ValidatorRejected

Story #84616: Add currently online users informationClosedJan Stockfisch

Task #84641: Decouple adminPanel from frontend extensionClosedSusanne Moog

Task #84660: Streamline UpgradeWizardClosedSusanne Moog

Task #84716: Simplify overriding of adminpanels InfoModuleClosedJan Stockfisch

Bug #84789: Install Tool -> upgrade wizard is inconsistentClosedMathias Brodala

Story #84846: Add Filter functionRejected

Task #84888: Add logging to signal / slot dispatchingClosedSusanne Moog

Task #84892: Use Ajax for Toggle and SavingClosedSusanne Moog

Task #84893: Use later hook for rendering the admin panelClosedSusanne Moog

Feature #84894: Add runtime cache log writerClosedSusanne Moog

Bug #84974: EditModule of admin panel shows fluid debug outputClosedSusanne Moog

Feature #85021: Add hint for entering date/time in "simulate time" text field in admin panelClosed

Bug #85104: Initialize AdminPanel only if it is enabledClosedSusanne Moog

Story #85156: Make AdminPanel Admin OnlyRejected

Bug #85193: AdminPanel Initialization depends on parsed TypoScriptClosedSusanne Moog

Task #85675: Add unit tests for public APIClosedSusanne Moog

Bug #85677: Remove extension specific code from adminPanel abstractModuleClosedSusanne Moog

Task #85687: Deprecate RuntimeCacheWriterClosedSusanne Moog

Bug #85876: Headline of module settings is always "Settings Group"Closed

Feature #86003: Add composition based API for the adminpanelClosedSusanne Moog


Related issues

Related to TYPO3 Core - Feature #65124: AdminPanel: allow for multi domain installations New 2015-02-17
Related to TYPO3 Core - Feature #64906: Admin panel with forced TS rendering could contain more labels New 2015-02-06
Related to TYPO3 Core - Bug #43672: Admin panel unnecessarily reloads page upon expand/collapse Closed 2012-12-06
Related to TYPO3 Core - Bug #66793: "simulate time" in admin-panel does not respect timezone Closed 2015-05-05
Related to TYPO3 Core - Bug #78685: Admin panel - Display content renders content very far from visible window of Admin Panel Closed 2016-11-13
Related to TYPO3 Core - Bug #43447: admPanel.override.edit.editNoPopup = 1 doesn't work New 2012-11-29
Related to TYPO3 Core - Bug #52629: Tx_Workspaces_Service_Fehooks corrupts page output Rejected 2011-03-02

Associated revisions

Revision 61df57ef (diff)
Added by Susanne Moog about 1 year ago

[FEATURE] New API for the admin panel

The admin panel consisted of one big god class
that contained the complete rendering.

The hook to extend the admin panel only allowed to
add content but not to add new modules (with expandable
headers).

The code has been refactored as a first step for a more
flexible admin panel:

- All modules are now rendered by a class per module
- Modules have an interface
- Modules can be registered in ext_localconf (and overwritten) using
the dependency ordering service for priority
- All new classes are strictly typed

Related: #84044
Resolves: #84045
Releases: master
Change-Id: I124bb503907dcfcbd4425d6f7178b87562d2fda4
Reviewed-on: https://review.typo3.org/55890
Reviewed-by: Frank Naegler <>
Tested-by: TYPO3com <>
Tested-by: Frank Naegler <>
Reviewed-by: Benni Mack <>
Tested-by: Benni Mack <>

Revision 2925dd16 (diff)
Added by Susanne Moog about 1 year ago

[FEATURE] Extract admin panel to own extension

Extract all admin panel code to an own extension to
reduce cross-dependencies and allow clearer scoping.

See Epic / Initiative for background.

Related: #84044
Resolves: #84159
Releases: master
Change-Id: I0f6e2643746c94f0e10b87146ca7e86cbf8bc112
Reviewed-on: https://review.typo3.org/56030
Tested-by: TYPO3com <>
Reviewed-by: Mathias Schreiber <>
Tested-by: Mathias Schreiber <>
Reviewed-by: Stefan Neufeind <>
Tested-by: Stefan Neufeind <>

Revision 48adc7ac (diff)
Added by Susanne Moog 11 months ago

[TASK] Log signal dispatching to debug log

To be able to find out which signals are triggered
during requests debug logging has been implemented
in the SignalSlotDispatcher.

Related: #84044
Resolves: #84888
Releases: master
Change-Id: I2c25c51644e8294848f8f053908984d85c5a1e83
Reviewed-on: https://review.typo3.org/56822
Tested-by: TYPO3com <>
Reviewed-by: Frank Naegler <>
Tested-by: Frank Naegler <>
Reviewed-by: Georg Ringer <>
Tested-by: Georg Ringer <>

Revision e1a8c99d (diff)
Added by Susanne Moog 11 months ago

[FEATURE] Add RuntimeCacheWriter to Logging Framework

To be able to easily log request specific information
via the logging framework a new log writer has been
introduced which writes into the TYPO3 runtime cache.

Related: #84044
Resolves: #84894
Releases: master
Change-Id: I0c868d775c9ffe4d4711338778cf6202200c575c
Reviewed-on: https://review.typo3.org/56828
Tested-by: TYPO3com <>
Reviewed-by: Joerg Boesche <>
Reviewed-by: Wouter Wolters <>
Reviewed-by: Jan Stockfisch <>
Tested-by: Jan Stockfisch <>
Reviewed-by: Anja Leichsenring <>
Tested-by: Anja Leichsenring <>
Reviewed-by: Frank Naegler <>
Tested-by: Frank Naegler <>

Revision ae3970b8 (diff)
Added by Susanne Moog 11 months ago

[TASK] Rewrite toggle and save to ajax in AdminPanel

As the next step on the road to a better adminPanel,
the save and toggle actions were rewritten to use ajax
getting mostly rid of the $_GET params.

Related: #84044
Resolves: #84892
Releases: master
Change-Id: Ic9169db7cf07b0246d91240c01140bfc05ecef71
Reviewed-on: https://review.typo3.org/56826
Reviewed-by: Benni Mack <>
Tested-by: TYPO3com <>
Reviewed-by: Mathias Schreiber <>
Tested-by: Mathias Schreiber <>
Reviewed-by: Frank Naegler <>
Tested-by: Frank Naegler <>

Revision 6f27cbf4 (diff)
Added by Susanne Moog 8 months ago

[TASK] Deprecate RuntimeCacheWriter

The RuntimeCacheWriter was introduced for the AdminPanel,
but the concept has flaws and there are better and cleaner
ways to achieve the wanted behavior. Therefore, the
RuntimeCacheWriter has been deprecated.

see https://review.typo3.org/56828/

Resolves: #85687
Related: #84894
Related: #84044
Releases: master
Change-Id: Ib794ddebb8cdf6e1738b81396fa12703a1538119
Reviewed-on: https://review.typo3.org/57726
Reviewed-by: Markus Klein <>
Tested-by: Markus Klein <>
Tested-by: TYPO3com <>
Reviewed-by: Andreas Fernandez <>
Tested-by: Andreas Fernandez <>
Reviewed-by: Wouter Wolters <>
Tested-by: Wouter Wolters <>

History

#1 Updated by Susanne Moog about 1 year ago

  • Description updated (diff)

#2 Updated by Susanne Moog about 1 year ago

  • Description updated (diff)

#3 Updated by Susanne Moog about 1 year ago

  • Description updated (diff)

#4 Updated by Susanne Moog about 1 year ago

  • Description updated (diff)

#5 Updated by Susanne Moog about 1 year ago

  • Description updated (diff)

#6 Updated by Riccardo De Contardi about 1 year ago

  • Related to Feature #65124: AdminPanel: allow for multi domain installations added

#7 Updated by Riccardo De Contardi about 1 year ago

  • Related to Feature #64906: Admin panel with forced TS rendering could contain more labels added

#8 Updated by Riccardo De Contardi about 1 year ago

  • Related to Bug #43672: Admin panel unnecessarily reloads page upon expand/collapse added

#9 Updated by Riccardo De Contardi about 1 year ago

  • Related to Bug #66793: "simulate time" in admin-panel does not respect timezone added

#10 Updated by Riccardo De Contardi about 1 year ago

  • Related to Bug #78685: Admin panel - Display content renders content very far from visible window of Admin Panel added

#11 Updated by Riccardo De Contardi about 1 year ago

  • Related to Bug #84198: simulate usergroup in admin panel is reset on update added

#12 Updated by Riccardo De Contardi about 1 year ago

  • Related to Bug #43447: admPanel.override.edit.editNoPopup = 1 doesn't work added

#13 Updated by Susanne Moog 12 months ago

  • Status changed from New to In Progress

#14 Updated by Susanne Moog 12 months ago

  • Description updated (diff)

#15 Updated by Susanne Moog 11 months ago

  • Related to Bug #52629: Tx_Workspaces_Service_Fehooks corrupts page output added

#16 Updated by Susanne Moog 8 months ago

  • Category changed from Frontend to AdminPanel

#17 Updated by Susanne Moog 7 months ago

  • Target version changed from 9 LTS to Candidate for Major Version

#18 Updated by Susanne Moog 6 months ago

  • Status changed from In Progress to Closed

9er cycle done!

Also available in: Atom PDF