Project

General

Profile

Actions

Feature #100036

closed

felogin migration documentation missing

Added by Christoph Ascherl about 1 year ago. Updated 9 months ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
felogin
Target version:
-
Start date:
2023-02-26
Due date:
% Done:

0%

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

Description

Around every 15 months I upgrade some TYPO3 instances from LTS to LTS release. As an integrator a suitable migration guide is essential. Unfortunately, for upgrade from TYPO3 10.4 to 11.5 sysext felogin entirely changed. But there is no integration guide at all. I discovered it the first time when I run my first upgrade to 11.5 and felogin did not work anymore. It took me many hours to figure out all the changes and adjust my current configuration accordingly. Please improve your documentation for integrators.

To assist others who are in the same situation, I am writing my adjustments below. These do not claim to be complete and are limited to one of my instances.

configuration

felogin configuration (10.4)

# felogin is a system extension

[loginUser('*')]
  # user logged in , use template for navbar
  plugin.tx_felogin_pi1.templateFile = EXT:my_sitepackage/Resources/Private/Templates/FrontendLogin.navbar.html
[ELSE]
  # user not logged in, use template for plugin on start page
  plugin.tx_felogin_pi1.templateFile = EXT:my_sitepackage/Resources/Private/Templates/FrontendLogin.plugin.html
[END]  

plugin.tx_felogin_pi1 {
  storagePid = 1481

  # https://forge.typo3.org/issues/59821
  showForgotPassword = 1
  showForgotPasswordLink = 1

  # Setting this option will disable the redirect options! Instead of redirecting the plugin will show the logout form.
  showLogoutFormAfterLogin = 1

  redirectPageLogin = 1478
  redirectPageLogout = 1478
  redirectMode = login, logout

  email_from = spool@mydomain.de
  email_fromName = first and last name
  replyTo = reply-to@mydomain.de

  _CSS_DEFAULT_STYLE >

  userfields {
    first_name {
      required = 1
    }
    last_name {
      required = 1
    }
  }
  _LOCAL_LANG {
    de {
      username = E-Mail
      password = Passwort
      ll_welcome_message = Bitte geben Sie Ihre E-Mailadresse und Ihr Passwort ein, um sich an der Website anzumelden:
      ll_enter_your_data = E-Mail
      ll_forgot_header = Passwort vergessen?
      ll_forgot_header_backToLogin = Zurück zur Anmeldung
      ll_error_message = Während der Anmeldung ist ein Fehler aufgetreten. Wahrscheinlich haben Sie Ihre E-Mail-Adresse oder Ihr Passwort falsch eingegeben. Vergewissern Sie sich, dass Sie beide Angaben korrekt eingegeben haben - Groß-/Kleinschreibung wird unterschieden.
      ll_forgot_reset_message_emailSent = Es wurde eine E-Mail mit einem Link zum Zurücksetzen des Passworts an Ihre E-Mail-Adresse gesendet. Sollten Sie keine E-Mail erhalten, besteht kein Zugang für diese E-Mail-Adresse.
    }
  }
}

felogin configuration (11.5)

Be aware, plugin.tx_felogin_pi1 is plugin.tx_felogin_login now and configuration is moved to plugin.tx_felogin_login.settings

# felogin is a system extension

# Login link visible when not logged in and logout link visible when logged in
10 = TEXT
10 {
    value = Login
    typolink.parameter = 1478
}
[loginUser('*')]
    10.value = Logout
    10.typolink.additionalParams = &logintype=logout
[end]

plugin.tx_felogin_login {

  view {
    templateRootPaths {
      20 = EXT:my_sitepackage/Resources/Private/felogin/Templates
    }
  }

  settings {

    pages = 1481

    showForgotPassword = 1

    # Setting this option will disable the redirect options! Instead of redirecting the plugin will show the logout form.
    showLogoutFormAfterLogin = 1

    redirectPageLogout = 1478
    redirectMode = logout,getpost

    email_from = spool@mydomain.de
    email_fromName = first and last name
    replyTo = reply-to@mydomain.de

  }

  _CSS_DEFAULT_STYLE >

  userfields {
    first_name {
      required = 1
    }
    last_name {
      required = 1
    }
  }
  _LOCAL_LANG {
    de {
      username = E-Mail
      password = Passwort
      welcome_message = Bitte geben Sie Ihre E-Mailadresse und Ihr Passwort ein, um sich an der Website anzumelden:
      enter_your_data = E-Mail
      forgot_header = Passwort vergessen?
      forgot_header_backToLogin = Zurück zur Anmeldung
      error_message = Während der Anmeldung ist ein Fehler aufgetreten. Wahrscheinlich haben Sie Ihre E-Mail-Adresse oder Ihr Passwort falsch eingegeben. Vergewissern Sie sich, dass Sie beide Angaben korrekt eingegeben haben - Groß-/Kleinschreibung wird unterschieden.
      forgot_reset_message_emailSent = Es wurde eine E-Mail mit einem Link zum Zurücksetzen des Passworts an Ihre E-Mail-Adresse gesendet. Sollten Sie keine E-Mail erhalten, besteht kein Zugang für diese E-Mail-Adresse.
      newpassword_label1 = Neues Passwort:
      newpassword_label2 = Passwort wiederholen:
    }
  }
}

content via TS

add felogin via TypoScript (10.4)

  # login form  
  20 < plugin.tx_felogin_pi1

add felogin via TypoScript (11.5)

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

    settings < plugin.tx_felogin_login.settings 
  }

templates

Copy the templates you want to customize to your sitepackage extension and add your path to templateRootPaths. You can find these in typo3/sysext/felogin/Resources/private/Templates

conclution

To be honest, because of the incredibly complex major upgrades every 15 months, I have already ported the first instances to WordPress. Every time there are some extensions in TYPO3 that are no longer developed and therefore have to be replaced (this time e.g. gridelements). Each time, dozens of templates of all configured extensions have to be checked and adjusted. And this time then felogin. For a system extension, I expect significantly more support here. I had to google all the information together. In my opinion, TYPO3 cannot survive in the long run. For comparison: an upgrade in Wordpress from 5.9 to 6.0 and then to 6.1. every time it was just a single click and a little wait.

Actions #1

Updated by Marcus Schwemer about 1 year ago

Dear Christoph

long time, no talk or read :-) (and even no coffee and beer)

Regarding the changes in EXT:felogin: There were several version, that had the old "marker- and pi-based" stuff in place, next to the new fluid based templating and extbase stuff. This was documented in the changelog.

Here is the new extbase and fluid based stuff documented:

Regarding EXT:gridelements: This is the same situation as with any 3rd party Wpordpress plugin: If an author decides to make it a premium plugin. It is his / her choice. That's anything the TYPO3 core development team can do against it.

Regarding Wordpress: Yes its core is "easy" to update. Why? The code is still php 5.6 compatible and they do not use any improvements, that the php language brought since php 5.6 (Source: https://wordpress.org/about/requirements/). All the installed plugins must also be checked manually.

Yes, there is one advantage, that WP has vs. TYPO3: For WP there are many templates available. Easy to click an install. I would love to see it in the TYPO3 world. They take much of the complexity away. But if, you want to change to a template, that uses another block engine (Gantry vs. Elementor vs. Divi ... just to name a few), the migration path is probably even harder (aka there is none), than in TYPO3 migrating from EXT:gridelements to EXT:container.

And yes ... looking at your example of the frontend login: There could be an migration guide added, for the time, when both variants co-exist.

I hope this helps a bit. If not, feel free to contact me via PM. My private e-mail did not change :-)

Best regards
Marcus

Actions #2

Updated by Torben Hansen about 1 year ago

Just a side note: The default TypoScript of ext:felogin uses settings configured in styles.content.loginform constants. This was kept by intention to make migration of settings from the old legacy plugin to the new extbase plugin as easy as possible. If plugin.tx_felogin_pi1 settings have been adjusted in TypoScript setup, then there is only manual migration is possible (e.g. PIDs, redirect settings, and more).

Actions #3

Updated by Torben Hansen 9 months ago

  • Status changed from New to Closed

Thank you for sharing your adjustments to your ext:felogin settings when switching from the legacy version of the plugin to the extbase version of the plugin. I however do not agree, that migration is as hard as you describe. If settings are configured through constants, they will automatically be used in the extbase version of the plugin. TYPO3 has a migrator to convert existing legacy felogin content elements to the new version. This includes migration of all settings too.

So as long as the extension is used without any custom integration (e.g. include plugin using TypoScript), only template path settings and template customizations must be migrated manually. This part is described in the change log as Marcus pointed out. All other parts (e.g. plugin includes through TypoScript, localization customizations) are general TYPO3 topics an integrator should learn and/or must know in order to setup a TYPO3 website with custom requirements.

Since I do not see any resulting tasks on improving the felogin extension documentation in this area, I will close this issue for now.

If you think that this is the wrong decision, please reopen it or reach me on Slack and I'll reopen it.

Actions

Also available in: Atom PDF