Project

General

Profile

Actions

Bug #105256

closed

TypoScript USER / EXTBASEPLUGIN does not set settings

Added by Tobias Jungmann about 1 month ago. Updated about 1 month ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Extbase
Target version:
Start date:
2024-10-09
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
13
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

When using USER (or the new EXTBASEPLUGIN), it's not possible to manipulate the plugin settings, anymore.

Previously (I think until v12), it was possible to set the settings in TypoScript like that:

lib {
    login = USER
    login {
        userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
        extensionName = Felogin
        pluginName = Login

        settings < plugin.tx_felogin_login.settings
        settings {
            pages = 47
            showForgotPassword = 1
        }
    }
}

Those settings were accessable in the controller and the fluid template.
This is not possible, anymore. With EXTBASEPLUGIN it's not possible, either.


Related issues 1 (1 open0 closed)

Related to TYPO3 Core - Task #105269: Consider to change TypoScript configuration in ext:feloginNewTorben Hansen2024-10-11

Actions
Actions #1

Updated by Christian Kuhn about 1 month ago · Edited

  • Status changed from New to Needs Feedback

That's hard to track down. I was able to reproduce this in both v12 and v13, so this is at least not an v13 only thing, and I'm unsure if this is an issue at this point at all.

Could you confirm the above snippet does not end up with 'pages=47' in v12 as well?

If so, we need to dig in v12 already to then see if this is intended behavior or at this point in time, since for now I was looking for a v13-only regression and could not find one since it looks to me as if this is in v12 like that as well?

Actions #2

Updated by Christian Kuhn about 1 month ago · Edited

settings < plugin.tx_felogin_login.settings

this is imho obsolete anyways, since extbase always overloads any TS with plugin.tx_felogin_login.settings, since extbase considers this "more specific". As such, I think, this issue probably popped up with the to-extbase transition of felogin already? I'd bet there are some other existing issues that discussed this impact already, and this is not a "new" thing and can not be considered a new regression.

a solution is to use plugin.tx_felogin_login.settings.pages=47 to solve this, and I think this is the way to go here?!

Actions #3

Updated by Torben Hansen about 1 month ago

This is at least no general problem with TypoScript USER or EXTBASEPLUGIN. I just tested the example from ext:news (https://docs.typo3.org/p/georgringer/news/11.4/en-us/Tutorials/BestPractice/IntegrationWithTypoScript/Index.html) and also my own extension and using a plugin with TypoScript and overriding inherited plugin settings by TypoScript works.

The problem here however seems to be, that ext:felogin uses a plugin specific TypoScript configuration (which is tx_felogin_login) by default and not a global like tx_felogin. In this case, Extbase configuration manager overrides the TypoScript in `overrideConfigurationFromPlugin` with the plugin specific configuration we have globally for the plugin.

In general, extbase always overrules TypoScript with plugin specific (tx_myext_plugin) TypoScript.

So Lolli is right, that this most likely was introduced with the transition of ext:felogin to an extbase based extension.

Actions #4

Updated by Torben Hansen about 1 month ago

  • Related to Task #105269: Consider to change TypoScript configuration in ext:felogin added
Actions #5

Updated by Tobias Jungmann about 1 month ago

Ah, I see. My bad. Thank you very much! That's okay for me. Issue can be closed.

But in my opinion the specific configuration I give into the cObject shouldn't be overruled by a global configuration. The same applies to the flexForms configuration. If I configure a folder (e.g. 47) as pages in the felogin plugin flexForms in backend, the value is overriden by the global plugin.tx_felogin_login.settings.pages (e.g. 23) configuration.

In this specific case with felogin it wouldn't be possible to define two different plugins with different settings via typoscript (e.g. login1 for all pages in a test tree, login2 for the rest). Or do I miss something?

Actions #6

Updated by Torben Hansen about 1 month ago

  • Status changed from Needs Feedback to Closed

The problem here is, that ext:felogin defines TypoScript as plugin.tx_felogin_login. Changing extbase configuration manager is no option here, so I created #105269 in order to evaluate renaming plugin.tx_felogin_login to plugin.tx_felogin as breaking change for v14.

Closing issue as requested.

Actions

Also available in: Atom PDF