Skip to content
Snippets Groups Projects
Commit 3896e163 authored by Christian Kuhn's avatar Christian Kuhn Committed by Susanne Moog
Browse files

[TASK] Install tool: JS driven routing

The install tool suffered from three main issues since 6.2 rewrite:
* The "step" installer was re-used for recovery and installation
* The routing logic was server based and threw lots of redirects
  which lead to redirect loops
* The Controller/Action class structure was weird and hard to
  understand

The patch solves this with a rather huge rewrite:
* There are two request handlers: One for the Installer, one for
  the install tool.
* A simple list of controllers. One InstallerController for the
  step installer, the others for the main module points of the
  install tool and a Login and a Layout controller.
* Single action code is moved into controllers.
* Both tool and installer first load only a <head> section that
  contain JS references. All other calls are ajax based and the
  routing is done JS side.
* Installer and install tool no longer share controller code
  or templates, the installer can potentially be fully extracted
  from ext:install in another step.
* Installer.js is the "walk through installation" module of the
  installer.
* Router.js is the routing module for the install tool, all tool
  ajax requests get specific urls from this module and hand over
  errors to the Router.
* Error handling is handled on JS side: If for instance
  the login session expires and user clicks elsewhere, a 403
  response is returned which is handled by JS to route to login.
  This is also the place where a recovery can hook in later.
* The silent configuration updater is executed again which was
  removed during one of the previous master patches.
* The template structure is much easier.
* Various card content which has been calculated when loading
  the card layout is moved to the ajax code for single card
  content. That increases the performance of the main module
  points and makes them pretty snappy.

Change-Id: Ib40f40acba17bb47142c0da1bcfb389ab9b4b3a1
Resolves: #82504
Releases: master
Reviewed-on: https://review.typo3.org/54128


Tested-by: default avatarStefan Neufeind <typo3.neufeind@speedpartner.de>
Tested-by: default avatarTYPO3com <no-reply@typo3.com>
Reviewed-by: default avatarBenni Mack <benni@typo3.org>
Tested-by: default avatarBenni Mack <benni@typo3.org>
Reviewed-by: default avatarMona Muzaffar <mona.muzaffar@gmx.de>
Tested-by: default avatarMona Muzaffar <mona.muzaffar@gmx.de>
Tested-by: default avatarSusanne Moog <susanne.moog@typo3.org>
Reviewed-by: default avatarSusanne Moog <susanne.moog@typo3.org>
parent ea160516
Branches
Tags
No related merge requests found
Showing
with 34 additions and 1115 deletions
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment