Packages/TYPO3.CMS.git
9 months ago[TASK] Cleanup parameter mismatches 23/58123/2
Wouter Wolters [Sun, 2 Sep 2018 10:40:10 +0000 (12:40 +0200)]
[TASK] Cleanup parameter mismatches

Cleanup function calls that use more parameters than their declaration.

Resolves: #86083
Releases: master
Change-Id: Ic662cf71db4262141fe8754346ff45654d26091d
Reviewed-on: https://review.typo3.org/58123
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Use PHP_OS constant instead off php_uname('s') 25/58125/2
Wouter Wolters [Sun, 2 Sep 2018 11:11:02 +0000 (13:11 +0200)]
[TASK] Use PHP_OS constant instead off php_uname('s')

Resolves: #86085
Releases: master
Change-Id: Ida3e389e0d0a1df713aaffcb8ab56756c1454279
Reviewed-on: https://review.typo3.org/58125
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[TASK] Remove redundant parentheses 22/58122/3
Wouter Wolters [Sun, 2 Sep 2018 10:27:39 +0000 (12:27 +0200)]
[TASK] Remove redundant parentheses

Resolves: #86082
Releases: master
Change-Id: I4698f5f6b2a5b6995588d25b9cac3ec875e15b93
Reviewed-on: https://review.typo3.org/58122
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Cleanup unused PageUriBuilder options 95/58095/3
Benni Mack [Fri, 31 Aug 2018 07:29:35 +0000 (09:29 +0200)]
[TASK] Cleanup unused PageUriBuilder options

Due to the refactoring of the typolink method, the PageUriBuilder
is now only used for links to pages with a site configuration, so it
can be cleaned up.

This a first step in getting the PageUriBuilder API in shape.

As this class is new, and the options and the class is not public
API yet, this removal does not need any docs.

Resolves: #86052
Releases: master
Change-Id: I56205f4e3fec0e68bd317a45ae1d860f8d84a799
Reviewed-on: https://review.typo3.org/58095
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
Tested-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
9 months ago[TASK] Streamline phpDoc order of @param and @var 24/58124/2
Wouter Wolters [Sun, 2 Sep 2018 10:52:59 +0000 (12:52 +0200)]
[TASK] Streamline phpDoc order of @param and @var

Resolves: #86084
Releases: master
Change-Id: I6ebbe0756d799a3c04386c854f6e5e385eeac54f
Reviewed-on: https://review.typo3.org/58124
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[TASK] Use labels and modal in Site module 21/58121/4
Georg Ringer [Sun, 2 Sep 2018 10:20:21 +0000 (12:20 +0200)]
[TASK] Use labels and modal in Site module

Use labels instead of hardcoded text and a modal
asking users if a site configuration should be really deleted.

Resolves: #86078
Releases: master
Change-Id: I49de820ef5e48f88c6449872cfee2eca617c46eb
Reviewed-on: https://review.typo3.org/58121
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
9 months ago[TASK] Replace substr(...) with strpos(...) 66/57466/8
Wouter Wolters [Wed, 4 Jul 2018 18:13:44 +0000 (20:13 +0200)]
[TASK] Replace substr(...) with strpos(...)

strpos will use only CPU resources, substr also needs memory allocation.

Resolves: #85477
Releases: master
Change-Id: Ic25c99986f7e2e7237c10acaa75be8d0f6289f13
Reviewed-on: https://review.typo3.org/57466
Reviewed-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
Tested-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[TASK] Add pdo_sqlite to list of additional PHP extensions 20/58120/4
Michael Schams [Sun, 2 Sep 2018 00:47:54 +0000 (10:47 +1000)]
[TASK] Add pdo_sqlite to list of additional PHP extensions

TYPO3 now supports SQLite as the DBMS, if PHP module "pdo_sqlite" is
installed and enabled in the system. This change adds the module to
the list of "additional PHP extensions" in file INSTALL.md as an
optional component.
Another outdated line is removed with the patch.

Resolves: #86079
Releases: master
Change-Id: Ic91166e0482bbb80b02937361e2863e9199cae67
Reviewed-on: https://review.typo3.org/58120
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Michael Schams <typo3@2018.schams.net>
Tested-by: Michael Schams <typo3@2018.schams.net>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
9 months ago[TASK] Link site title in sites module 07/58107/3
Georg Ringer [Fri, 31 Aug 2018 20:21:45 +0000 (22:21 +0200)]
[TASK] Link site title in sites module

To keep the module in sync with the regular list module
the title must be linked as well.

Resolves: #86069
Releases: master
Change-Id: Ice88210c3b532118295238209d799e619408c70f
Reviewed-on: https://review.typo3.org/58107
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[FEATURE] Add hreflang support 05/58105/12
Kevin Appelt [Fri, 31 Aug 2018 15:56:43 +0000 (17:56 +0200)]
[FEATURE] Add hreflang support

This feature adds an hreflang tag for multilanguage-websites (one-tree)
automatically, based on the new LanguageMenuProcessor.

The href is relative as long as the domain is the same.
If the domain differs the href become absolute.
x-default href is the first supported language.

Resolves: #75806
Releases: master
Change-Id: I06754f61d7a03f6894001be11c9ce2a37ac2106f
Reviewed-on: https://review.typo3.org/58105
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
9 months ago[TASK] Add recreate button to slug field 19/58119/2
Christian Kuhn [Sat, 1 Sep 2018 21:15:37 +0000 (23:15 +0200)]
[TASK] Add recreate button to slug field

Adds a second button next to the 'manually edit slug' button
in pages: If the title is changed, this button can be used
to recalculate a new slug from the changed title.

Resolves: #86077
Releases: master
Change-Id: I862413423cefa1f391321f6d5e5c3d5dba68397e
Reviewed-on: https://review.typo3.org/58119
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Kevin Appelt <kevin.appelt@icloud.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[FEATURE] XML Sitemap 57/58057/26
Richard Haeser [Tue, 28 Aug 2018 05:59:29 +0000 (07:59 +0200)]
[FEATURE] XML Sitemap

It is now possible to generate XML sitemaps for SEO purposes without
using 3rd-party plugins. When enabled, this new feature will create a
sitemapindex with one or more sitemaps in it. Out-of-the-box it will
have one sitemap containing all the pages of the current site and
language. Per site and per language you have the possibility to render
a different sitemap.

Resolves: #84525
Releases: master
Change-Id: Iad74b114b9dd37dbc4dd72e244437691fb8c31b5
Reviewed-on: https://review.typo3.org/58057
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Tested-by: Kevin Appelt <kevin.appelt@icloud.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[TASK] Move documentation files into 9.4 folder - part 1 18/58118/4
Anja [Sat, 1 Sep 2018 19:21:41 +0000 (21:21 +0200)]
[TASK] Move documentation files into 9.4 folder - part 1

Change-Id: I95be0b5c33b9f028d28de7be64a7d18f9554ff78
Resolves: #86075
Releases: master
Reviewed-on: https://review.typo3.org/58118
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Björn Jacob <bjoern.jacob@tritum.de>
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[FEATURE] New API for UpgradeWizards 14/58114/5
Susanne Moog [Thu, 30 Aug 2018 21:45:52 +0000 (23:45 +0200)]
[FEATURE] New API for UpgradeWizards

Build a new Interface based API for UpgradeWizards that
can be used as a base for future improvements.

Resolves: #86076
Releases: master
Change-Id: Ia059dc295e00f5f39849d8dfbc009bf7d8652aba
Reviewed-on: https://review.typo3.org/58114
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[TASK] Refine DebugExceptionHandler 10/58110/8
Markus Poerschke [Sat, 1 Sep 2018 01:44:13 +0000 (03:44 +0200)]
[TASK] Refine DebugExceptionHandler

* Complete new design for the uncaught exception error page
* Show all exceptions by calling all ->getPreviousException
* Show function / method arguments with more detail
* Show code where exception was thrown

Resolves: #86070
Releases: master
Change-Id: I30bee3384cb1ea025e79246599e488540b10b98c
Reviewed-on: https://review.typo3.org/58110
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Kevin Appelt <kevin.appelt@icloud.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[BUGFIX] Properly create slug if adding new pages via FormEngine 17/58117/2
Christian Kuhn [Sat, 1 Sep 2018 19:06:30 +0000 (21:06 +0200)]
[BUGFIX] Properly create slug if adding new pages via FormEngine

Adding a page relative to another page (vanillaUid is negative then),
currently creates a slug as if the page in inside the related page.
This is because the vanillaUid is given to the JS and later fed to
the ajax slug creator.
Using 'effectivePid' instead which is the parent page uid if a
new page is added, or the uid of the page recod itself if the
page is edited, solves the issue.

Resolves: #86074
Releases: master
Change-Id: Ia3f89f615699d4e7be6bc1762bc95e17cc1939dc
Reviewed-on: https://review.typo3.org/58117
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Kevin Appelt <kevin.appelt@icloud.com>
Tested-by: Kevin Appelt <kevin.appelt@icloud.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[FEATURE] Add PageTitle API 81/57881/31
Richard Haeser [Sun, 12 Aug 2018 17:31:24 +0000 (19:31 +0200)]
[FEATURE] Add PageTitle API

It is now possible to set the title tag of a page by using
the PageTitle API. You can register your own providers and
set the priority of the provider so you are in control when
multiple extensions of a page trying to set the title.

Resolves: #85678
Releases: master
Change-Id: I1b0314f96b6af7bdad94b9865d2e2525b715d5c3
Reviewed-on: https://review.typo3.org/57881
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[FEATURE] Add commands for listing and showing sites 04/58104/9
Daniel Goerz [Fri, 31 Aug 2018 14:35:15 +0000 (16:35 +0200)]
[FEATURE] Add commands for listing and showing sites

This patch adds the following CLI commands:
site:list - shows a list of all configured sites
site:show - shows the configuration of a single site

Resolves: #86066
Releases: master
Change-Id: I9bfecceea7a28f81f99373ea847e868289de0c70
Reviewed-on: https://review.typo3.org/58104
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] typo3/testing-framework now flushes runtime caches 08/58008/5
Michael Stucki [Thu, 23 Aug 2018 14:40:50 +0000 (16:40 +0200)]
[TASK] typo3/testing-framework now flushes runtime caches

Unit test tearDown() now always calls
GeneralUtility::flushInternalRuntimeCaches() so most explicit
calls in unit tests can be removed.

composer require --dev typo3/testing-framework:~4.8.2

Resolves: #85948
Related: #85946
Releases: master, 8.7
Change-Id: I798047a06c3265404383540cacbd40d9719e7bfe
Reviewed-on: https://review.typo3.org/58008
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[BUGFIX] Do not remove LocalConfiguration if executing unit tests 13/58113/3
Christian Kuhn [Sat, 1 Sep 2018 13:04:44 +0000 (15:04 +0200)]
[BUGFIX] Do not remove LocalConfiguration if executing unit tests

Unit test and code for #84623 relies on constants PATH_typo3conf and
then removes LocalConfiguration and some other config files if the
test is executed. Since that can't be mocked, the test is removed
to prevent that side effect.

Resolves: #86072
Related: #84623
Releases: master
Change-Id: I3cd9a913e2655e6fcd1209fcfd8365cbcbb4a9ef
Reviewed-on: https://review.typo3.org/58113
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[BUGFIX] Allow config.linkVars to be added for linking to pages with site config 97/58097/2
Benni Mack [Fri, 31 Aug 2018 08:33:14 +0000 (10:33 +0200)]
[BUGFIX] Allow config.linkVars to be added for linking to pages with site config

Due to the refactoring yesterday, the TypoScript option
config.linkVars was removed, but is still a valid use-case to be added.

Resolves: #86054
Releases: master
Change-Id: I6d42c82f474668b62143982b8d9f2adf9b735935
Reviewed-on: https://review.typo3.org/58097
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[TASK] Single slashes for classes in form docs 86/58086/4
Simon Schaufelberger [Thu, 30 Aug 2018 13:09:10 +0000 (15:09 +0200)]
[TASK] Single slashes for classes in form docs

Use single backslash in code block

Releases: master, 8.7
Resolves: #86039
Change-Id: I9d7755c3f0183f4be47fe227a28ac8e186de60f4
Reviewed-on: https://review.typo3.org/58086
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[BUGFIX] Correct global/multiple icon in site configuration overview 11/58111/2
Christian Kuhn [Sat, 1 Sep 2018 09:15:59 +0000 (11:15 +0200)]
[BUGFIX] Correct global/multiple icon in site configuration overview

Resolves: #86071
Releases: master
Change-Id: Ie7ded4da5329a82e2e1ef5f5a995b714abd9aa1d
Reviewed-on: https://review.typo3.org/58111
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Riccardo De Contardi <erredeco@gmail.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
9 months ago[BUGFIX] Do not use deprecated class alias anymore 03/58103/2
Benni Mack [Fri, 31 Aug 2018 12:51:05 +0000 (14:51 +0200)]
[BUGFIX] Do not use deprecated class alias anymore

The class TYPO3\CMS\Lang\LanguageService is gone,
and only exists as class alias.

There are a few places where this class is still
used, and they are replaced.

Resolves: #86064
Releases: master
Change-Id: Ie6a9db14d3db9e3949a04f6ec146a006d792ae9f
Reviewed-on: https://review.typo3.org/58103
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[FEATURE] Add inline AJAX validation for TCA type slug 93/57993/21
Benni Mack [Wed, 22 Aug 2018 21:09:19 +0000 (23:09 +0200)]
[FEATURE] Add inline AJAX validation for TCA type slug

The TCA type slug field is "disabled" / "readonly" by default but
actually has a toggle button (like InputLinkField) to enable that field.

For new records it works like this:
- A title is entered, then the slug field gets prefilled "as-you-type"
  and the editor will see the URL directly. There is a check if the
- If a slug is manually entered:
- It is validated by "isUniqueInSite" to see if that slug is still
   free.
- If the slug is already taken, a proposal is shown below the input
   field to use the proposal for the slug. In any case, when saving,
   the same validation process kicks in anyways.

Existing records do not change their slug by changing the page title,
but only if the slug field gets modified directly.

So for existing records, the following use-cases exist, when a slug
gets manually modified:
- If the page slug is already in use, a proposal for another
  available slug is shown.
- If the page has subpages, a warning will be shown that all
  subpages need to be manually modified (not implemented yet)
- If the page slug will be changed on save, a message is shown that you
  should create a redirect (not implemented yet)

Resolves: #85931
Releases: master
Change-Id: Iabb5f02d43463b3a2bb70197cc8c9585bce1d32d
Reviewed-on: https://review.typo3.org/57993
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Missing initialization of typo3/phar-stream-wrapper 69/58069/11
Oliver Hader [Wed, 29 Aug 2018 12:54:50 +0000 (14:54 +0200)]
[BUGFIX] Missing initialization of typo3/phar-stream-wrapper

Functional tests now rely on \TYPO3\CMS\Core\Core\Bootstrap
is setting up the PharStreamWrapper and check that behavior.

Resolves: #86020
Releases: master
Change-Id: I34637eb42d68196b59e311bde975cff002748206
Reviewed-on: https://review.typo3.org/58069
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
9 months ago[BUGFIX] Expression Language should not crash Backend Modules 02/58102/2
Benni Mack [Fri, 31 Aug 2018 12:18:22 +0000 (14:18 +0200)]
[BUGFIX] Expression Language should not crash Backend Modules

When doing "[page["uid"] >= 284]" in a TypoScript condition, everything works
as expected in Frontend, but in BE it gets messy, as "page" HAS to be an array
to allow to validate this, but page does not always exist.

This comes from a wrong spec, claiming that conditionMatcher->getPage() always
returns an array, which is wrong. So let's make the code return an array all the time.

Resolves: #86062
Releases: master
Change-Id: Ia781c84ffa335fce5ba2d67bbe2997ceab5281b4
Reviewed-on: https://review.typo3.org/58102
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
9 months ago[TASK] Add frontend functional tests for pages having slugs 15/58015/17
Oliver Hader [Fri, 31 Aug 2018 07:39:35 +0000 (09:39 +0200)]
[TASK] Add frontend functional tests for pages having slugs

Functional tests for pages having site configuration and using slugs
are introduced. Existing tests (not relying on slugs) are still kept
in addition to the new tests in order to still have tests for legacy
"index.php?id=123" behavior.

Resolves: #85962
Releases: master
Change-Id: I7902bfd028f9c8a1d41f3573d72a2a7e96148b43
Reviewed-on: https://review.typo3.org/58015
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
9 months ago[BUGFIX] Ensure to use parent's page slug for generating a new pages' slug 00/58100/3
Benni Mack [Fri, 31 Aug 2018 09:43:25 +0000 (11:43 +0200)]
[BUGFIX] Ensure to use parent's page slug for generating a new pages' slug

When creating page with slug "/my-page", and then renaming the page title
to "My new page", the slug for a newly created SUBpage will be "/my-new-page/subpage",
however, it is expected to use the slug of the parent page, if it exists,
creating a new URL like "{current-slug-of-parent-page}/subpage"

Resolves: #85997
Releases: master
Change-Id: I1c6371d174c8251623e806beb1544c477c31d5b0
Reviewed-on: https://review.typo3.org/58100
Reviewed-by: Francois Suter <sutfra@gmail.com>
Tested-by: Francois Suter <sutfra@gmail.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
9 months ago[FEATURE] Add pagination and filtering to the redirects module 85/58085/8
Daniel Goerz [Thu, 30 Aug 2018 11:34:43 +0000 (13:34 +0200)]
[FEATURE] Add pagination and filtering to the redirects module

Some minor usability Improvements have been made as well:
- The source path now crops after 100 characters
- The destination column now shows the Page ID if the target is a page
- Redirects are now sorted by source host (1st) and source path (2nd)

Resolves: #83749
Releases: master
Change-Id: I7369814676e851b35da674cc837b094693345650
Reviewed-on: https://review.typo3.org/58085
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Streamline page language linking 01/58101/7
Oliver Hader [Fri, 31 Aug 2018 09:59:17 +0000 (11:59 +0200)]
[TASK] Streamline page language linking

When having a Site configuration in order to create a page link for
a specific language new property `language` has to be used instead
of previous `additionalParams=&L=1`. Since it might not be known in
all cases whether the defined TypoScript is used inside or outside
a valid Site configuration, `language` settings now take precedence
and override legacy L-parameter.

Besides that, linking to localized pages was not possible and is
resolved to their language parent pages. The new `language` setting
will be adjusted at the same time as well.

Resolves: #86058
Releases: master
Change-Id: I9531a14f8aa5913a03fdac9fcbdaced57312c2af
Reviewed-on: https://review.typo3.org/58101
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
9 months ago[BUGFIX] Do not remove trailing slash in slug sanitization 99/58099/2
Benni Mack [Fri, 31 Aug 2018 09:27:54 +0000 (11:27 +0200)]
[BUGFIX] Do not remove trailing slash in slug sanitization

It is totally legitimate to allow /my-page/ as slug (when in FormEngine
just remove the "readonly" attribute of the slug field), if explicitly
wanted.

There is a difference between "generate" (automatically create the slug)
where TYPO3 recommends slugs without slashes, and "sanitize"
to clean up a slug, where "/" is completely valid.

Resolves: #86055
Releases: master
Change-Id: I8e73f27e18fc74242cb230d69a85ec2946cf1dae
Reviewed-on: https://review.typo3.org/58099
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[TASK] Deprecate Extbase CommandControllers and @cli annotation 64/58064/7
Alexander Schnitzler [Sat, 25 Aug 2018 12:27:25 +0000 (14:27 +0200)]
[TASK] Deprecate Extbase CommandControllers and @cli annotation

Back then, the PHPDoc annotation `@cli` was added to indicate
Extbase CommandController commands to be usable on CLI only
instead of also be usable as a scheduler task.

The concept of Extbase Command Controllers has been superseded
with symfony/console and its integration into TYPO3 CLI in TYPO3 v8.0,
and contains all features necessary to build commands of any kind
of complexity.

As a matter of documentation, it is however crucial to document
how to instantiate Extbase from CLI to migrate easily from Extbase CLI
to symfony/console.

Releases: master
Resolves: #85977
Change-Id: Id87c2ce300e01bf649bd1c2219aa17b8437bda83
Reviewed-on: https://review.typo3.org/58064
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[FEATURE] Show extensions via CLI 94/58094/6
Benni Mack [Fri, 31 Aug 2018 07:19:01 +0000 (09:19 +0200)]
[FEATURE] Show extensions via CLI

A new Symfony command "extension:list" allows to list all active
extensions.

Using --all option also includes the currently inactive extensions
available for installation and --inactive only shows the currently
inactive extensions available for installation.

Additional description of the extensions can be shown by --verbose / -v.

Resolves: #86051
Releases: master
Change-Id: I88a370a1c2a0b7a850e2e99afba3a992d4dee661
Reviewed-on: https://review.typo3.org/58094
Reviewed-by: Kevin Appelt <kevin.appelt@icloud.com>
Tested-by: Kevin Appelt <kevin.appelt@icloud.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
9 months ago[TASK] Inject PSR-7 data in TSFE methods 93/58093/5
Benni Mack [Thu, 30 Aug 2018 20:39:00 +0000 (22:39 +0200)]
[TASK] Inject PSR-7 data in TSFE methods

The following public methods within TSFE now get a PSR-7 request object
handed in to fetch the GET / POST variables.

- $TSFE->preparePageContentGeneration(ServerRequestInterface $request)
- $TSFE->calculateLinkVars(array $queryParams)
- $TSFE->makeCacheHash()

Note: If a hook modified _GET and preparePageContentGeneration
is called from Core, the state of _GET and $request->getQueryParams()
will differ. This COULD be overcome by using GeneralUtility::_GETset()
which TYPO3 Core and extensions like realurl already use.

Resolves: #86046
Releases: master
Change-Id: Iecb333d1b501c0d14abf4d16d930e715e9bd8d2e
Reviewed-on: https://review.typo3.org/58093
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frans Saris <franssaris@gmail.com>
Tested-by: Frans Saris <franssaris@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[TASK] Create URLs with typolink for pages with sites 63/58063/17
Benni Mack [Thu, 30 Aug 2018 17:33:44 +0000 (19:33 +0200)]
[TASK] Create URLs with typolink for pages with sites

The PageLinkBuilder now separates out into generating links
for pages with site configuration, and without site
configuration (= as before).

The new link mechanism does not rely on previous hooks
and options like config.absRefPrefix which are not necessary
for URLs as they are always absolute.

A new TypoScript option "typolink.language" is introduced.
If not set, it is set to "current", and allows to link
across pagetrees to a given site, or render a language menu
without having to use "&L=" as additional query parameter.
 ("current" is the current language and default) is
used to also allow to explicitly link to a different language
if this language was configured for the site configuration
for the site.

As for the linking process:
- typolink.forceAbsoluteUrl is used to generate the full
  URL to a target page
- typolink.forceAbsoluteUrl.scheme is only applicable
  if the site base of the target does not explicitly
  define a scheme
- If you link to a different page tree or to a different
host/scheme, it is always treated as absolute.

On top: If you link across page trees, the link is
treated as external (extTarget is used).

The next steps are to create tests and incorporate
config.linkVars into this process.

Resolves: #86048
Releases: master
Change-Id: I01b2b43efafa23ce0d256bdcd0feb35756fbe1d5
Reviewed-on: https://review.typo3.org/58063
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
9 months ago[TASK] Ensure ?id= is allowed to be called in site handling 78/58078/13
Benni Mack [Thu, 30 Aug 2018 06:13:17 +0000 (08:13 +0200)]
[TASK] Ensure ?id= is allowed to be called in site handling

When using site configurations, it should still be possible to call a
page with "index.php?id=13" IF the site configuration's base is valid.

Currently, this was only possible when a language parameter was also
given, which vanished now.

Releases: master
Resolves: #86032
Change-Id: Iec160367be33786781f58cbb69f6d750d03e1496
Reviewed-on: https://review.typo3.org/58078
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[FEATURE] Add symfony expression language for TypoScript conditions 87/57787/29
Frank Naegler [Thu, 2 Aug 2018 22:10:03 +0000 (00:10 +0200)]
[FEATURE] Add symfony expression language for TypoScript conditions

This patch implements the symfony expression language for TypoScript conditions
in frontend and backend and is a preparation for the old conditions being deprecated.
The existing conditions are available as variables and/or functions.
This enables the full power of symfony expression language for TypoScript conditions.

Resolves: #85829
Releases: master
Change-Id: I7bcb7940ae1c36500eb7dc40fe84c7dd48d674a6
Reviewed-on: https://review.typo3.org/57787
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Use SiteLanguage in LocalizationUtility 97/57697/4
Georg Ringer [Thu, 26 Jul 2018 19:15:05 +0000 (21:15 +0200)]
[BUGFIX] Use SiteLanguage in LocalizationUtility

Check the current site language and use TS as fallback in
the LocalizationUtility

Resolves: #85644
Releases: master
Change-Id: If0e92dc7d8f12755251fc4b8cceb6db155dbf3e2
Reviewed-on: https://review.typo3.org/57697
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Rudy Gnodde <rgn@windinternet.nl>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Daniel Lorenz <daniel.lorenz@extco.de>
Tested-by: Daniel Lorenz <daniel.lorenz@extco.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Use $tsfe->type for generating the redirect URL 87/58087/3
Benni Mack [Thu, 30 Aug 2018 13:22:22 +0000 (15:22 +0200)]
[TASK] Use $tsfe->type for generating the redirect URL

At the point where TSFE creates a Redirect URL for shortcuts,
$type should be used from the normalized $tsfe->type property
and not from the GET variable directly, as this could have been modified
by a hook already.

Resolves: #86040
Releases: master
Change-Id: I87503570ca257d10ebca3a9056213ae5a5354764
Reviewed-on: https://review.typo3.org/58087
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Daniel Sattler <sattler@b13.de>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[BUGFIX] Initialize pObj before usage 91/58091/2
Susanne Moog [Thu, 30 Aug 2018 16:31:57 +0000 (18:31 +0200)]
[BUGFIX] Initialize pObj before usage

The parent::init call was removed in a code cleanup and
has been re-added as it is necessary for initialization.

Resolves: #86043
Releases: master
Change-Id: Ic0f5d9de30f6a83385850375d5f381cac5f5f941
Reviewed-on: https://review.typo3.org/58091
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Detect page routes based on deleted+workspace restriction 84/58084/2
Benni Mack [Thu, 30 Aug 2018 11:35:34 +0000 (13:35 +0200)]
[TASK] Detect page routes based on deleted+workspace restriction

The Page Router checks for all pages that are available by using
the FrontendRestrictionContainer for database queries.

This leads to side-effects in the future.

Instead, - because all page slugs in one site are unique per
language+workspace - the Page Router should only check
for deleted+current workspace, not wondering about any other
restriction, as this is done when all pages in the rootline are
checked later-on anyway.

This way, frontend previews should be available again.

Resolves: #86037
Releases: master
Change-Id: Ic11a66a958f9391de9084fad86b5d59109bd21c3
Reviewed-on: https://review.typo3.org/58084
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Daniel Sattler <sattler@b13.de>
Tested-by: Daniel Sattler <sattler@b13.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[BUGFIX] Ensure new @import syntax is loaded properly 90/58090/4
Benni Mack [Thu, 30 Aug 2018 13:52:44 +0000 (15:52 +0200)]
[BUGFIX] Ensure new @import syntax is loaded properly

The new @import TypoScript syntax only works
if there is an empty line before, so this should
be added - to be exactly in line with the <INCLUDE_TYPOSCRIPT>
syntax.

Resolves: #85867
Releases: master
Change-Id: I20fd9ba12b19baedfe4e4522811dfaebb51773fa
Reviewed-on: https://review.typo3.org/58090
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
9 months ago[BUGFIX] Allow to resolve sites without trailing slash as base 92/58092/2
Benni Mack [Thu, 30 Aug 2018 16:38:44 +0000 (18:38 +0200)]
[BUGFIX] Allow to resolve sites without trailing slash as base

When a site (language) has "/en" as base, then the page router
does not kick in, as the PageRouter receives a "/" at the very beginning
of the $routePathTail, which needs to be removed.

Resolves: #86044
Releases: master
Change-Id: I770911bc1157cfb8a217b5e16dc303859f63cedd
Reviewed-on: https://review.typo3.org/58092
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Daniel Sattler <sattler@b13.de>
Tested-by: Daniel Sattler <sattler@b13.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[FEATURE] Refactor AdminPanel API to use composition 87/57987/14
Susanne Moog [Sun, 26 Aug 2018 14:51:26 +0000 (16:51 +0200)]
[FEATURE] Refactor AdminPanel API to use composition

Enabling future enhancements for the adminpanel without
having to make breaking changes for existing module providers
is a key ingredient for providing a future proof extensible
solution. Using single big interfaces that need to change on
updates break backwards compatibility and do not provide
sufficient feature encapsulation.

The adminpanel APIs have been refactored to use a composition
pattern to allow modules more flexibility. Modules can now only
implement the interfaces they need instead of implementing all
functionality. For example an adminpanel module that only provides
page related settings does no longer have to implement the getContent
method.

Small interfaces have been provided as building blocks for modules with
rich functionality. Easy addition of new interfaces that _can_ (not
must) be implemented allow future improvements.

Additionally the API has been modified to allow a more object-oriented
approach using simple DTOs instead of associative arrays for better
type-hinting and a better developer experience. Storing and rendering
data have been separated in two steps allowing to completely disconnect
the rendered adminpanel from the current page. This is a preparation
for a standalone adminpanel that can be implemented separately.

Resolves: #86003
Releases: master
Change-Id: I88236a86e612dee9085b9f6ad7da34f90770d5ed
Reviewed-on: https://review.typo3.org/57987
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benjamin Kott <benjamin.kott@outlook.com>
Tested-by: Benjamin Kott <benjamin.kott@outlook.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Enable fallback functionality for site handling 77/58077/2
Benni Mack [Thu, 30 Aug 2018 05:58:20 +0000 (07:58 +0200)]
[BUGFIX] Enable fallback functionality for site handling

Enable the functionality again to have a site with three
languages to work in fallback mode (sys_language_mode = content_fallback)

Resolves: #86031
Releases: master
Change-Id: Id1a8897de057fb3d5a3244b3842f8dee377a4df6
Reviewed-on: https://review.typo3.org/58077
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[BUGFIX] Show url segment for new pages 82/58082/8
Christian Kuhn [Thu, 30 Aug 2018 09:54:42 +0000 (11:54 +0200)]
[BUGFIX] Show url segment for new pages

Fix three cases in the display condition of url segment:
* Show 'slug' if a new page in default language is added
* Resolve correct pid to positive int if a new page is
  created 'after' another one (incoming pid is negative)
* Always show slug if a new page below root (pid 0) is
  added that resolves to a NullSite

Change-Id: Id34021eb923ddde80920152a92aa76466a6e72ab
Releases: master
Resolves: #86036
Related: #85955
Reviewed-on: https://review.typo3.org/58082
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[TASK] Extend blog_example with relations 32/58032/15
Tymoteusz Motylewski [Fri, 24 Aug 2018 16:55:29 +0000 (18:55 +0200)]
[TASK] Extend blog_example with relations

* 1:1 inline relation csv (Post->additonalName)
* 1:1 inline relation foreign_field (Post->additonalInfo)
* 1:n inline relation csv (Post->additionalComments)
* n:1 group relation (Post->secondAuthor)

It also makes Person model translatable.

Resolves: #85974
Releases: master
Change-Id: I75a8e6c070e9a6bdfba0772b102a13bc94f7556f
Reviewed-on: https://review.typo3.org/58032
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Schreiber <mathias.schreiber@typo3.com>
Tested-by: Mathias Schreiber <mathias.schreiber@typo3.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[BUGFIX] Remove check for switching URL schemes 89/58089/2
Benni Mack [Thu, 30 Aug 2018 13:40:04 +0000 (15:40 +0200)]
[BUGFIX] Remove check for switching URL schemes

During the cleanup of https://review.typo3.org/#/c/58022/ a wrong
change was done, this actually introduces a regression showing that
the scheme part is never evaluated, removing the superfluos check now
completely.

Resolves: #86042
Related: #85964
Releases: master
Change-Id: I0e5a6f5d90141a86e34b4950ace36d620bee813f
Reviewed-on: https://review.typo3.org/58089
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[TASK] Follow redirects in frontend tests 88/58088/3
Oliver Hader [Thu, 30 Aug 2018 13:36:32 +0000 (15:36 +0200)]
[TASK] Follow redirects in frontend tests

Resolves: #86041
Releases: master
Change-Id: Id5802bc40a6070ddcd21c76e2417d438cefa9efd
Reviewed-on: https://review.typo3.org/58088
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[TASK] Extract _GP call from TSFE->initializeSearchWordData 81/58081/2
Benni Mack [Thu, 30 Aug 2018 09:14:44 +0000 (11:14 +0200)]
[TASK] Extract _GP call from TSFE->initializeSearchWordData

In order to centralize usages regarding global magic ($_GET/$_POST) within
TypoScriptFrontendController, the method initializeSearchWordData()
is renamed to something useful, and is now handed in the variable from
GeneralUtility::_GP() and also gets some unit tests, making this method
also notice-free, as a side-effect.

This pre-patch allows to inject something else (PSR-7 request) in the future
without ever touching this method.

Resolves: #86035
Releases: master
Change-Id: I3db94dd3ce23de8d2f8772067ec15d38d0f7cf64
Reviewed-on: https://review.typo3.org/58081
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[BUGFIX] Allow creation of records after another 74/58074/5
Benni Mack [Thu, 30 Aug 2018 05:29:56 +0000 (07:29 +0200)]
[BUGFIX] Allow creation of records after another

When adding a content element, EditDocumentController expects the id
for fetching being a positive page ID. This is however edgy as a
record (like tt_content) being added after another record receives
the negative ID of the previous record. So this needs to be resolved.

Resolves: #86010
Releases: master
Change-Id: I80d722a1603b8fa1d6ccb2fc2bb9c914ee38ee42
Reviewed-on: https://review.typo3.org/58074
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Refactor backend user module 91/51091/12
Helmut Hummel [Mon, 2 Jan 2017 08:49:39 +0000 (09:49 +0100)]
[TASK] Refactor backend user module

* Use module template view helpers to render the module layout
* Remove obsolete methods and inheritance
* Make compare view bookmarkable
* Remove obsolete returnUrl view variables
* Use xml syntax for Fluid namespace registration

Also move all module template related view helpers
to backend extension

Resolves: #85532
Releases: master
Change-Id: I3f8e63f57ac9cc5b8981dba23fe5652ea4adc3f1
Reviewed-on: https://review.typo3.org/51091
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
Tested-by: Jigal van Hemert <jigal.van.hemert@typo3.org>
9 months ago[BUGFIX] Export database binding types in snapshots 80/58080/3
Oliver Hader [Thu, 30 Aug 2018 07:23:29 +0000 (09:23 +0200)]
[BUGFIX] Export database binding types in snapshots

Resolves: #86034
Releases: master
Change-Id: I42f09774a08b69dc0cb2b5dc2cff6f25cf89f98d
Reviewed-on: https://review.typo3.org/58080
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
9 months ago[BUGFIX] Ensure html tag is showing lang and dir attribute 75/58075/3
Benni Mack [Thu, 30 Aug 2018 05:41:50 +0000 (07:41 +0200)]
[BUGFIX] Ensure html tag is showing lang and dir attribute

Due to some refactorings while achieving notice-free tests,
the check for adding html-tag attributes was changed.

Resolves: #86009
Related: #85849
Releases: master
Change-Id: Ic64c7e8c709d7a7f4d72aef52a9f84ed30660005
Reviewed-on: https://review.typo3.org/58075
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Remove double space in exception message 79/58079/2
Benni Mack [Thu, 30 Aug 2018 06:28:39 +0000 (08:28 +0200)]
[BUGFIX] Remove double space in exception message

Minor issue in exception messages.

Resolves: #86033
Releases: master
Change-Id: I0e133bb3a609dda611757fb5a92465295b3a377d
Reviewed-on: https://review.typo3.org/58079
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Fix paste button in page module with mode "languages" 71/57971/3
Manuel Selbach [Mon, 20 Aug 2018 17:55:37 +0000 (19:55 +0200)]
[BUGFIX] Fix paste button in page module with mode "languages"

A content element can once again be pasted directly at a specific
position with the help of the paste button when in the "languages" mode.

Releases: master, 8.7
Resolves: #85911
Change-Id: I08e48361b45c4cffaf83c4b7b92f70303ab8babf
Reviewed-on: https://review.typo3.org/57971
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Disable slug in pseudo sites and disable alias in sites 13/58013/4
Christian Kuhn [Thu, 23 Aug 2018 20:50:44 +0000 (22:50 +0200)]
[TASK] Disable slug in pseudo sites and disable alias in sites

Slug handling does now work if using pseudo sites. The patch adds
a display condition to form engine to hide the field if the edited
page is within page tree that resolves to a pseudo site.

Additionally, the 'alias' pages db field is a poor-man redirect
solution that should be outphased in v9. It is currently not resolved
if using configured sites at all. The patch turns the display condition
around for that to hide the field if a page that resolves to a proper
site object is edited.

A change in InputSlugElement that leads to wrongly resolved
languages if editing pages is fixed along the way.

Resolves: #85955
Releases: master
Change-Id: I9cc65331beb5f00edffffbe78ffcc8b50550a645
Reviewed-on: https://review.typo3.org/58013
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Andreas Wolf <andreas.wolf@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Change Site Base Handling to PSR-7 URI Interface 70/58070/7
Benni Mack [Wed, 29 Aug 2018 15:17:36 +0000 (17:17 +0200)]
[TASK] Change Site Base Handling to PSR-7 URI Interface

While working with Site Handling API, it's more than obvious
that we should utilize the UriInterface, to integrate PSR-7
more natively.

The Interface changes, however, as it was only introduced
recently, this should not be an issue.

Resolves: #86027
Releases: master
Change-Id: Id06ccbcf2bbced8408342866d295edc3f11a376a
Reviewed-on: https://review.typo3.org/58070
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[BUGFIX] Add missing table column type „SLUG“ 68/58068/2
Frank Naegler [Wed, 29 Aug 2018 08:06:54 +0000 (10:06 +0200)]
[BUGFIX] Add missing table column type „SLUG“

Resolves: #86017
Releases: master
Change-Id: Ic7315dfa4b287c42c88ff80e4040e1185273bd7c
Reviewed-on: https://review.typo3.org/58068
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Tobias Wollender <tliegl@gmail.com>
Tested-by: Tobias Wollender <tliegl@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[BUGFIX] Allow returning null values for PageRouter::matchRoute() 73/58073/2
Andreas Fernandez [Wed, 29 Aug 2018 18:23:01 +0000 (20:23 +0200)]
[BUGFIX] Allow returning null values for PageRouter::matchRoute()

Resolves: #86030
Related: #86013
Releases: master
Change-Id: I337861f5dac4e3c7e7babd056e87630c22ec1f3e
Reviewed-on: https://review.typo3.org/58073
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Mention table and record uid in DataHandler localize command log 71/58071/3
Tymoteusz Motylewski [Wed, 29 Aug 2018 15:49:24 +0000 (17:49 +0200)]
[TASK] Mention table and record uid in DataHandler localize command log

Resolves: #86029
Releases: master, 8.7
Change-Id: I75c5bf23537a987fbe16c9a6fb2464a853d12135
Reviewed-on: https://review.typo3.org/58071
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Speed up functional tests using database snapshots 66/58066/10
Oliver Hader [Tue, 28 Aug 2018 22:04:48 +0000 (00:04 +0200)]
[TASK] Speed up functional tests using database snapshots

Resolves: #86019
Releases: master
Change-Id: Ia9951730c1d1eb8b1238b92907bfa243b9518c7d
Reviewed-on: https://review.typo3.org/58066
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[TASK] Separate site resolving from page slug resolving 62/58062/11
Benni Mack [Tue, 28 Aug 2018 16:41:59 +0000 (18:41 +0200)]
[TASK] Separate site resolving from page slug resolving

Currently, the site resolver checks for a valid site, and if so,
checks for valid page slugs. The latter is now moved to the
"PageResolver" middleware where the actual root line within
TSFE is resolved, and is now decoupled.

On top, a new "RouteResult" Array Access object is added
which is attached to the PSR-7 request as attribute "routing",
which will later be used for extensions
to add their own custom mappings.

The RouteResult object is now returned from the SiteMatcher
and PageRouter in order to encapsulate symfony/routing API
even more and to work with objects instead of array with magic
properties like "next" - which was actually renamed to "tail".

Fixes with this change:
- Proper and defined 307 redirect from a site (like www.domain.com)
to the default language (www.domain.com/en/)
- Proper and defined 307 redirect when a site/language is defined
without a trailing slash but accessed with a trailing slash and vice versa
- Proper and defined 307 redirect when a page slug is defined
without a trailing slash but accessed with a trailing slash and vice versa

Tests for SiteResolving have been streamlined and tests for
PageResolver have been added.

Please note:
The hook for checkAlternativeIdMethods() is now only called for
Frontend Requests without site handling.

Resolves: #86013
Releases: master
Change-Id: I9309d4092d007d555b37d575539ecf42303628de
Reviewed-on: https://review.typo3.org/58062
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[TASK] Deprecate IMGMENU/GMENU functionality 35/57435/11
Benni Mack [Tue, 3 Jul 2018 06:38:15 +0000 (08:38 +0200)]
[TASK] Deprecate IMGMENU/GMENU functionality

GraphicalMenuContentObject (GMENU/GMENUITEM) and
ImageMenuContentObject (IMGMENU/IMGMENUITEM) will
be removed in TYPO3 v10.0, and are marked as deprecated.

A lot of functionality related to HMENU in general,
previously exposed to the public, has
been migrated to be internal, now
throwing deprecation messages as well when accessed
from the public.

In addition the following TypoScript properties
will be removed in TYPO3 v10.0.

TMENU
- imgNamePrefix
- imgNameNotRandom

TMENU Item properties
- RO_chBgColor
- beforeImg
- beforeImgTagParams
- beforeImgLink
- beforeROImg
- RO
- afterImg
- afterImgTagParams
- afterImgLink
- afterROImg

Removed item states
- IFSUBRO
- ACTRO
- ACTIFSUBRO
- CURRO
- CURIFSUBRO
- USRRO
- USERDEF1RO
- USERDEF2RO

Also deprecated: TSFE->setJS('mouseOver');

Also not needed in TYPO3 v10.0 anymore:
Folder typo3temp/assets/menu/

Resolves: #85902
Releases: master
Change-Id: I1b5920e4727e97415e6527f5810c9b103c2c6fed
Reviewed-on: https://review.typo3.org/57435
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Use typo3/phar-stream-wrapper package 42/58042/7
Oliver Hader [Sun, 26 Aug 2018 20:38:59 +0000 (22:38 +0200)]
[TASK] Use typo3/phar-stream-wrapper package

PharStreamWrapper has been released as standalone package under
the MIT license: https://github.com/TYPO3/phar-stream-wrapper

Stream invocation is handled by the new composer package, previous
classes PharStreamWrapper and PharStreamWrapperException have been
removed from the TYPO3 core but are still kept in class alias maps
for compatibility reasons. Since the standalone package is now
independent from TYPO3 constraints, the TYPO3 specific logic to
intercept Phar invocations has been moved to the new class
PharStreamWrapperInterceptor.

Resolves: #85984
Releases: master
Change-Id: I66692c3e75cfd174125e1923a2a9cb7fbbd78217
Reviewed-on: https://review.typo3.org/58042
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
9 months ago[TASK] Minor cleanup ContentObjectRenderer 65/58065/2
Benni Mack [Tue, 28 Aug 2018 19:16:06 +0000 (21:16 +0200)]
[TASK] Minor cleanup ContentObjectRenderer

ContentObjectRenderer has some minor flaws. Also the functional tests have
some unused code.

Resolves: #86015
Releases: master
Change-Id: I9ed00b32f4c00de7b667ad72052a0b7032901313
Reviewed-on: https://review.typo3.org/58065
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
9 months ago[TASK] Migrate extension commands to Symfony 55/58055/12
Benni Mack [Mon, 27 Aug 2018 14:24:00 +0000 (16:24 +0200)]
[TASK] Migrate extension commands to Symfony

The Extbase command controller from Extension Manager is the only
CommandController used in TYPO3 Core (apart from extbase:help), all
others have been migrated to symfony/console commands.

This however is now only possible due to the recent migration to define
these commands as "non-schedulable" so they do not show up in the
scheduler as a possible command to be called repeatedly.

For the "extensionmanager:extension:dumpclassloadinginformation"
call, the functionality is moved to EXT:core as this is not related to any
functionality in ExtensionManager, as it does not need any information
of this. This command has been made available under "dumpautoload"
to get closer on the naming scheme of native composer.

"install" and "uninstall" however rely on the DI concept of Extbase and
Extensionmanager to inject necessary components and is tightly
intertwined. These are now provided as "extension:activate" and
"extension:deactivate" respectively to convey their purpose and especially
show that the latter does not remove any data or code.

Releases: master
Resolves: #85996
Change-Id: I8025d8ba8f577c46815996bd3c7d13d17dec268a
Reviewed-on: https://review.typo3.org/58055
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Nicole Cordes <typo3@cordes.co>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[BUGFIX] Site Configuration Module shows hidden languages 61/58061/3
Benni Mack [Tue, 28 Aug 2018 14:33:41 +0000 (16:33 +0200)]
[BUGFIX] Site Configuration Module shows hidden languages

Site Languages which are not shown in the frontend should be displayed
in the Backend module however this is a bug that Fluid accesses only
enabled languages, but needs to use "getAllLanguages()" instead.

Resolves: #86011
Releases: master
Change-Id: I24880604675b7d0bb5ced8169a2e3f461afa8dfb
Reviewed-on: https://review.typo3.org/58061
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Jan Stockfisch <typo3@jan-stockfisch.de>
Tested-by: Jan Stockfisch <typo3@jan-stockfisch.de>
Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
9 months ago[TASK] Decouple usage of cObject->editPanel and ->editIcons 30/58030/2
Benni Mack [Fri, 24 Aug 2018 16:22:09 +0000 (18:22 +0200)]
[TASK] Decouple usage of cObject->editPanel and ->editIcons

Both methods within "ContentObjectRenderer->editPanel()" and
"ContentObjectRenderer->editIcons()" were built to have "FrontendEditingController"
resolve the editing panel (EXT:feedit) which is not needed, so ContentObjectRenderer
is calling the extensions itself.

For that use, the FrontendBackendUserAuthentication gains functionality
for checking if a record can be edited.

Resolves: #85972
Releases: master
Change-Id: Ic8405fde4cdf5b6d1336fd0925cd0553bae6cf5f
Reviewed-on: https://review.typo3.org/58030
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[TASK] Deprecate TSFE constructor with no_cache parameter 34/58034/3
Benni Mack [Fri, 24 Aug 2018 22:30:16 +0000 (00:30 +0200)]
[TASK] Deprecate TSFE constructor with no_cache parameter

Instantiating TypoScriptFrontendController with the fourth
parameter set (except null) will now trigger a deprecation
message, as it is recommended to use the method `set_no_cache`
instead.

Resolves: #86002
Releases: master
Change-Id: I6d8bbdd79d6b6169d358b5d17b036006d3c3205e
Reviewed-on: https://review.typo3.org/58034
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Daniel Gorges <daniel.gorges@b13.de>
Tested-by: Daniel Gorges <daniel.gorges@b13.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[FEATURE] Move workspaces scheduler tasks to native symfony commands 56/58056/5
Benni Mack [Tue, 28 Aug 2018 04:51:18 +0000 (06:51 +0200)]
[FEATURE] Move workspaces scheduler tasks to native symfony commands

The previously available scheduler tasks for auto-publishing and cleaning up
preview links have been moved to a symfony/command, allowing them to be
scheduled, but also triggered manually on the command line without having
to create a task record in scheduler.

The old tasks have been deprecated, as there is the possibility to create
tasks out of symfony commands as well.

The AutoPublishService, which only acted as a wrapper, but had a major
design flaw has been deprecated as well.

The scheduler tasks will be removed in TYPO3 v10. For TYPO3 v9, their
labels have been updated, and they will trigger a deprecation notice.

Resolves: #86001
Releases: master
Change-Id: I9c1f1e31b6ff59d02b20ffc2df805e645bb3f675
Reviewed-on: https://review.typo3.org/58056
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
9 months ago[BUGFIX] Use namespaced class name for blog_example fe_users subclass 52/58052/2
Tymoteusz Motylewski [Mon, 27 Aug 2018 19:23:17 +0000 (21:23 +0200)]
[BUGFIX] Use namespaced class name for blog_example fe_users subclass

The last place which was missed when porting the extension to namespaces,
is now fixed.

Also slash sign has to be escaped in SQL.

Resolves: #85999
Releases: master, 8.7
Change-Id: I844b59b209ef1434298575b57fc7dc861ecab643
Reviewed-on: https://review.typo3.org/58052
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
9 months ago[TASK] Remove site caches if page is created on top level 17/58017/4
Christian Kuhn [Thu, 23 Aug 2018 22:02:32 +0000 (00:02 +0200)]
[TASK] Remove site caches if page is created on top level

The patch fixes a fatal php scenario if a page is created
on root level. The data handler now flushes site caches if that
happens and unsets the SiteMatcher singleton so it is forced
to be recalculated if re-used in current request.

Change-Id: Ie54f70b1bbfaaf1f6302f4e6b14abcf6af4c310f
Resolves: #85985
Releases: master
Reviewed-on: https://review.typo3.org/58017
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
9 months ago[TASK] Remove toggle function from page tree root element 11/57911/3
Paweł Rogowicz [Wed, 15 Aug 2018 10:06:08 +0000 (12:06 +0200)]
[TASK] Remove toggle function from page tree root element

Remove toggle function from root node and set expanded on true if there
is only one node on depth 0. If there is more then 1
(e.g. when using DB Mounts) then keep toggle option.

Releases: master
Resolves: #85809
Change-Id: I94f9e20d048760e3a35ba1e8ed170521406a92d3
Reviewed-on: https://review.typo3.org/57911
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
9 months ago[TASK] Clean up unused / dead code 47/58047/4
Christian Kuhn [Mon, 27 Aug 2018 12:01:21 +0000 (14:01 +0200)]
[TASK] Clean up unused / dead code

A series of unused and dead code places are fixed with the patch:
* Switch + return + break -> the break is obsolete
* A couple of 'too many arguments' when calling methods
* Various assignments of variables that are never used

Change-Id: I8472597f73a739bce053cf6de772c111ae7044d7
Resolves: #85993
Releases: master
Reviewed-on: https://review.typo3.org/58047
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
9 months ago[FEATURE] Allow symfony commands to be non-schedulable 46/58046/5
Benni Mack [Mon, 27 Aug 2018 11:53:56 +0000 (13:53 +0200)]
[FEATURE] Allow symfony commands to be non-schedulable

When registering a Symfony Command, it is now possible to
define a new option `schedulable` which can explicitly set to false,
in order to have e.g. EXT:scheduler not show some.

This implements the functionality previously only available for
Extbase's CommandControllers.

Resolves: #85991
Releases: master
Change-Id: Ie2d8d3cc71d04263984a928debd257ecb88184e8
Reviewed-on: https://review.typo3.org/58046
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[TASK] Sort building process within PageLinkBuilder / TypoLink 22/58022/2
Benni Mack [Fri, 24 Aug 2018 13:32:53 +0000 (15:32 +0200)]
[TASK] Sort building process within PageLinkBuilder / TypoLink

This is a pre-cursor for unifying URL generation with slugs / based on sites,
in order to group things that belong together in the mass-method of generating
links in the frontend.

Tasks done:
- $linkText is moved to the very end, as it has no dependency.
- $targetDomain/$currentDomain handling is grouped together.
- absRefPrefix is now always taken from $tsfe->absRefPrefix, as this is the
  resolved path (not set to "auto")
- minor un-needed calls simplified (unneessary checks etc)

Resolves: #85964
Releases: master
Change-Id: Iba84cd98fa614ef7131c03a093c9cfa0a0056575
Reviewed-on: https://review.typo3.org/58022
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months ago[FEATURE] Add Upgrade Wizard to migrate to pagepath segment for pages 91/57991/9
Benni Mack [Wed, 22 Aug 2018 16:21:21 +0000 (18:21 +0200)]
[FEATURE] Add Upgrade Wizard to migrate to pagepath segment for pages

A new upgrade wizard is introduced, which sets page URLs based on the
page title and rootline, if they are empty.

All root pages will get "/", all others will have a "/path-to/my/page/"
pagepath.

On top, if RealURL generated pagepaths already (works with v1 and v2 by
checking for the database table), they will be used instead of
generated slugs.

Pages with an alias field take priority over "regular" pages and
values from RealURL, whereas alias fields will result in a slug like
"/my-alias-value".

Resolves: #85928
Releases: master
Change-Id: Ie0cfbfb9e8472e15717ea39cb1af65896743f293
Reviewed-on: https://review.typo3.org/57991
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
9 months ago[BUGFIX] Only allow QueryResultInterface in Be.PaginateViewHelper 38/58038/5
Daniel Goerz [Sat, 25 Aug 2018 12:55:29 +0000 (14:55 +0200)]
[BUGFIX] Only allow QueryResultInterface in Be.PaginateViewHelper

Resolves: #85979
Related: #81200
Releases: master
Change-Id: Ibab30517c6380d1a7fda59656e12700d4193170a
Reviewed-on: https://review.typo3.org/58038
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
9 months agoRevert "[TASK] Deprecate @cli annotation" 44/58044/2
Mathias Brodala [Mon, 27 Aug 2018 09:11:52 +0000 (11:11 +0200)]
Revert "[TASK] Deprecate @cli annotation"

We do not have a replacement for TYPO3v9 so we cannot deprecate this annotation yet.

This reverts commit c7791b01fe420cd8ed7298635ba414d1b5ea2638.

Change-Id: Ie7228d6e13a5647698f2a5c26ebe9fd56de80aac
Resolves: #85988
Related: #85977
Reviewed-on: https://review.typo3.org/58044
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[BUGFIX] Add language configuration for model tag in EXT:blog_example 41/58041/2
Łukasz Uznański [Sun, 26 Aug 2018 13:59:49 +0000 (15:59 +0200)]
[BUGFIX] Add language configuration for model tag in EXT:blog_example

Add language configuratin for model tag in EXT:blog_example, reformat TCA files,
unify sys_language_uid field configuration across all TCA files in extension

Resolves: #85983
Releases: master
Change-Id: I8e32f389216e279d59ed92a3af7e870d076b35a8
Reviewed-on: https://review.typo3.org/58041
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
10 months ago[TASK] Deprecate @cli annotation 37/58037/3
Alexander Schnitzler [Sat, 25 Aug 2018 12:27:25 +0000 (14:27 +0200)]
[TASK] Deprecate @cli annotation

Back then, the PHPDoc annotation `@cli` was added to indicate
Extbase CommandController commands to be usable on CLI only
instead of also be usable as a scheduler task.

The scheduler implementation will be refactored in TYPO3 10
and the execution of commands from the backend will vanish.
Therefore it will not be necessary any more to define if
commands can only be used on the command line or not.
In the future, all commands will only be executable
from the command line.

Releases: master
Resolves: #85977
Change-Id: I52330517b51c5c747177cab55e34a721a0df5f67
Reviewed-on: https://review.typo3.org/58037
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Inject TSFE object into ContentObjectRenderer 26/58026/2
Benni Mack [Fri, 24 Aug 2018 15:28:18 +0000 (17:28 +0200)]
[TASK] Inject TSFE object into ContentObjectRenderer

The class ContentObjectRenderer expects $typoScriptFrontendController
as first argument inside the constructor.

When creating cObj from within TypoScriptFrontendController, it is very valuable
to actually use the actual current object instead of doing the regular fallback
to $GLOBALS['TSFE'], to use this in proper recursions.

Resolves: #85968
Releases: master
Change-Id: I2238c8fc4d4d76f177b02630ed5627a3c9a7a060
Reviewed-on: https://review.typo3.org/58026
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Deprecate PageRepository->getFirstWebPage() 29/58029/4
Benni Mack [Fri, 24 Aug 2018 16:18:42 +0000 (18:18 +0200)]
[TASK] Deprecate PageRepository->getFirstWebPage()

The method PageRepository->getFirstWebPage() is only used when
no "?id" parameter is given, and no rootpage was resolved. As this is the only
use-case, a more generic "getMenu" method can be used, which does the
same except for not "limiting" the query to one result, so there is a minimal
memory penalty when doing so, however due to Pseudo-Site functionality
this drawback is only in use for rare cases.

Resolves: #85971
Releases: master
Change-Id: I42fec4251963a0ab2baa038defde39cf0eac4bbf
Reviewed-on: https://review.typo3.org/58029
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Deprecate GraphicalFunctions->init method 23/58023/3
Benni Mack [Fri, 24 Aug 2018 15:15:35 +0000 (17:15 +0200)]
[TASK] Deprecate GraphicalFunctions->init method

The init method of GraphicalFunctions/Gifbuilder was used instead of
a constructor to set up various internal properties, and is now
shifted into a new constructor, making the extra call to init() superfluous.

Resolves: #85978
Releases: master
Change-Id: I71ee3bc8045f48b1636e46681dddd742ba1f56c4
Reviewed-on: https://review.typo3.org/58023
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[TASK] Remove unused TimeTracker->fixContent() method argument 25/58025/2
Benni Mack [Fri, 24 Aug 2018 15:23:23 +0000 (17:23 +0200)]
[TASK] Remove unused TimeTracker->fixContent() method argument

The protected method TimeTracker->fixContent() has an argument $first
which is always set to "0", so the functionality can be removed.

Resolves: #85967
Releases: master
Change-Id: I4fbe73bd6d15b892dcc21b1cdd4456af4f80eeb3
Reviewed-on: https://review.typo3.org/58025
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
10 months ago[BUGFIX] Throw exception in case FileWriter's logFile is invalid 31/58031/2
Oliver Hader [Fri, 24 Aug 2018 16:23:19 +0000 (18:23 +0200)]
[BUGFIX] Throw exception in case FileWriter's logFile is invalid

GeneralUtility::getFileAbsFileName($logFile) never results in `null`,
but in some empty string in case the $logFile is invalid.

Resolves: #85973
Releases: master, 8.7
Change-Id: I2890bbf172c8f540dd2fa2775a9479d5c644b172
Reviewed-on: https://review.typo3.org/58031
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[BUGFIX] Fix various wrong phpDoc comments 27/58027/2
Benni Mack [Fri, 24 Aug 2018 15:36:26 +0000 (17:36 +0200)]
[BUGFIX] Fix various wrong phpDoc comments

Return types in phpDoc method annotations are wrong and should be adapted
to the actual return value in the PHP code.

Resolves: #85969
Releases: master
Change-Id: I10f31957db1c863510a1bff97293c0bad336568d
Reviewed-on: https://review.typo3.org/58027
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Use strict bool calls for TimeTracker->LR 24/58024/2
Benni Mack [Fri, 24 Aug 2018 15:18:40 +0000 (17:18 +0200)]
[TASK] Use strict bool calls for TimeTracker->LR

The public property "TimeTracker->$LR" is declared as boolean, but used
with integer. Let's have TYPO3 use it that way it was documented.

Resolves: #85966
Releases: master
Change-Id: I19faa67425440cb35b00924baee760b919a42ef3
Reviewed-on: https://review.typo3.org/58024
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Move LocalConfiguration* files to config folder 17/56517/41
Benni Mack [Sat, 9 Jun 2018 15:04:13 +0000 (17:04 +0200)]
[TASK] Move LocalConfiguration* files to config folder

With the introduction of the environment API, composer-based
installations have the configuration folder outside of
"public-webroot"/typo3conf/, but in the project
paths folder config/.

All checks on PATH_typo3conf/
- LocalConfiguration.php
- AdditionalConfiguration.php
- AdditionalFactoryConfiguration.php

are now done against Environment::getConfigPath(), resulting in
different locations for projects having the environment variable
"TYPO3_PATH_APP" set to something else than the "PATH_site" constant,
the configuration is now found in "TYPO3_PATH_APP" . /config/.

A migration to move all config files into the new directory
is done when accessing the Install Tool automatically.

Resolves: #84623
Releases: master
Change-Id: I94020b1df4c9ffaec66310a4e1564927dbd8cb67
Reviewed-on: https://review.typo3.org/56517
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Stephan Großberndt <stephan.grossberndt@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Helmut Hummel <typo3@helhum.io>
Tested-by: Helmut Hummel <typo3@helhum.io>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Andreas Wolf <andreas.wolf@typo3.org>
Tested-by: Andreas Wolf <andreas.wolf@typo3.org>
10 months ago[BUGFIX] Use correct image references for LiveDefaultElements 33/58033/8
Markus Klein [Fri, 24 Aug 2018 21:52:00 +0000 (23:52 +0200)]
[BUGFIX] Use correct image references for LiveDefaultElements

Resolves: #85976
Releases: master, 8.7
Change-Id: I0f6588aa58be317da51cff59a5eb915831fc0774
Reviewed-on: https://review.typo3.org/58033
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
10 months ago[BUGFIX] Fix PSR-7 URI generation without scheme 14/58014/4
Benni Mack [Thu, 23 Aug 2018 21:10:45 +0000 (23:10 +0200)]
[BUGFIX] Fix PSR-7 URI generation without scheme

When a new Uri('//newpage.com/') is added, TYPO3's PSR-7
implementation lacks the functionality to render that
properly to a string, as - like the specs - say, when there
is an authority, the implementation HAS to prefix the
authority with '//', regardless if there is a scheme or not.

Resolves: #85956
Releases: master
Change-Id: Id888c4425ac2f4a3d9bc9f2a1a3213a872bc55b4
Reviewed-on: https://review.typo3.org/58014
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Helmut Hummel <typo3@helhum.io>
Tested-by: Helmut Hummel <typo3@helhum.io>
10 months ago[TASK] Remove a series of SOBE assignments 18/58018/3
Christian Kuhn [Thu, 23 Aug 2018 23:17:23 +0000 (01:17 +0200)]
[TASK] Remove a series of SOBE assignments

The infamous $GLOBALS['SOBE'] object is still used at various
places is the core. This "talk to the hand" object registered
as runtime global to make itself available as "parent object"
is an even worse anti pattern than the also infamous $pObj.

The patch removes a series of "$GLOBALS['SOBE'] = $this" assignments
in some controllers that have no further dependency to this global
anymore for a while, are easy to review and b/w compatible.

Resolves: #85958
Releases: master
Change-Id: Ia961289c344c96eab250fa7f206c677cb65e047c
Reviewed-on: https://review.typo3.org/58018
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Deprecate authentication related compareUident() method 20/58020/2
Christian Kuhn [Thu, 23 Aug 2018 23:46:06 +0000 (01:46 +0200)]
[TASK] Deprecate authentication related compareUident() method

The patch deprecates the unused compareUident() from
AbstractAuthenticationService that calls the also unused method
with the same name from AbstractUserAuthentication.

The code is dead left over stuff from pre password hashing era
and can be safely deprecated now.

Resolves: #85960
Releases: master
Change-Id: I5f02562e35abb27a4126998193edf827edb168ac
Reviewed-on: https://review.typo3.org/58020
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[BUGFIX] Adapt a broken namespace in SaltedPasswordService 19/58019/2
Christian Kuhn [Thu, 23 Aug 2018 23:36:30 +0000 (01:36 +0200)]
[BUGFIX] Adapt a broken namespace in SaltedPasswordService

Fixes two broken namespaces that went wrong when moving and
aliasing the salted password classes. The patch only affects
the deprecated and unused SaltedPasswordService.

Resolves: #85959
Related: #85833
Releases: master
Change-Id: Iad8c95a3b9bef60fe240a2010e9910df40c75825
Reviewed-on: https://review.typo3.org/58019
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
10 months ago[TASK] Improved slug generation for translated pages 10/58010/3
Christian Kuhn [Thu, 23 Aug 2018 18:34:11 +0000 (20:34 +0200)]
[TASK] Improved slug generation for translated pages

If a slug is generated for a nested translated page that
has a not translated page up in its rootline, the slug
generator now considers the default language page instead
of not including the upper tree pages at all.

Change-Id: Id5b4d3b1b815124413919bc8b48e03f2785573d9
Resolves: #85952
Releases: master
Reviewed-on: https://review.typo3.org/58010
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[TASK] Show slug in Info->Pagetree overview 11/58011/2
Christian Kuhn [Thu, 23 Aug 2018 19:26:59 +0000 (21:26 +0200)]
[TASK] Show slug in Info->Pagetree overview

Add the new slug "URL Segment" field to the Info
Pagetree overview directly after "Alias".

Resolves: #85953
Releases: master
Change-Id: I1d5706dfe7098f9f3983d222f4344f42d1bc197c
Reviewed-on: https://review.typo3.org/58011
Reviewed-by: Richard Haeser <richard@maxserv.com>
Tested-by: Richard Haeser <richard@maxserv.com>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
10 months ago[FEATURE] Introduce Page-based URL handling 94/57994/21
Benni Mack [Wed, 22 Aug 2018 21:08:22 +0000 (23:08 +0200)]
[FEATURE] Introduce Page-based URL handling

This feature adds a new database field "pages.slug" which
allows to fill the database with URL segments which can then
be resolved and built with for URLs for a specific page.

On top, when a site is found with a proper "slug", the
PageRouter of a site now resolves a /home/my-products/
to the correct page ID.

Next steps:
- Add URL enhancers API to allow to further resolve more parts.

Resolves: #85947
Releases: master
Change-Id: Ic64a758e847520b9a8dfc8b484c7613c9ba1f869
Reviewed-on: https://review.typo3.org/57994
Tested-by: Björn Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Richard Haeser <richard@maxserv.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
10 months ago[TASK] Move domainStartPage setting to PageResolver 09/58009/2
Benni Mack [Thu, 23 Aug 2018 16:41:40 +0000 (18:41 +0200)]
[TASK] Move domainStartPage setting to PageResolver

The setting of the domainStartPage has been simplified with the PseudoSite
introduction, and, as it belongs to the enriching of the PageResolver,
the functionality is moved from the SiteResolver to the PageResolver.

Resolves: #85951
Releases: master
Change-Id: I67f88c1b6369450f63b582be1205a8639217304e
Reviewed-on: https://review.typo3.org/58009
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>