powermail icon indicating copy to clipboard operation
powermail copied to clipboard

Problem with action optinConfirm on multilanguage installation

Open millemedia opened this issue 6 years ago • 7 comments

Hi Alex, we found an issue with powermail 7.4.0 on TYPO3 9.5.10/11. The action confirmOptin works only on default language. On second language a click on configuration link in email will result in "link not valid". When we change the url to default language everything works. We realized this because the link for deletion point to the default language.

Best regards

Andreas

millemedia avatar Nov 14 '19 12:11 millemedia

Hey Andreas,

is this problem still present? Or did you fix it? I have the same problem and have no idea where to look further.

mlembach avatar Dec 18 '19 11:12 mlembach

Hi, the problem ist still present. BR Andreas

millemedia avatar Dec 18 '19 12:12 millemedia

Hey Andreas,

for me config.tx_extbase.features.consistentTranslationOverlayHandling = 0 in template setup solved this problem.

Best regards, Michael

mlembach avatar Jan 07 '20 13:01 mlembach

@mlembach this is superb as a workaround, thank you!

But it's really just a workaround, for this switch won't be available anymore in TYPO3 10. Hopefully powermail will soon handle this correctly by itself.

artus70 avatar Jan 09 '20 13:01 artus70

@millemedia @mlembach @artus70

  • When using Double Opt-in in strickt-mode-translation the confirmation link in the mail brought an error saying link is not valid.
  • Also keep an eye on filling the fields in for SENDER (Mail to User)

This is what solved my problem ... found this code somewhere in the internet from some brilliant guy

Translation mode: strickt

Typo3 9.5.14 Powermail 7.4.0 open file typo3conf/ext/powermail/ext_localconf.php and past past this code somewhere in line 67

   /**
   * Bugfix Powermail Translation optin Mails
   */
   $signalSlotDispatcher = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Extbase\SignalSlot\Dispatcher::class)->connect(
   \In2code\Powermail\Controller\FormController::class,
   'createActionBeforeRenderView',
   function (\In2code\Powermail\Domain\Model\Mail $mail, $hash, \In2code\Powermail\Controller\FormController $formController) {
        if (is_null($mail->_getProperty('_languageUid'))) {
            $mail->_setProperty('_languageUid', -1);
        }
        /* @var \In2code\Powermail\Domain\Model\Answer $answer */
        foreach ($mail->getAnswers() as $answer) {
            if (is_null($answer->_getProperty('_languageUid'))) {
                $answer->_setProperty('_languageUid', -1);
               }
           }
       }
   );      

SimonWentland avatar Mar 17 '20 07:03 SimonWentland

We have just noticed this Problem as well. I'm unsure what is meant by "Translation mode strict" Inserting the code above did not change anything.

In our Test-Setup we have multiple Translations configured. The page containing the form has no translation but exists only in the default language 0 (German)

The Form works

  • when Captcha is removed OR
  • when Confirmation mail is disabled

TYPO3 9.5.15 Powermail 7.4.0

Schwuuuuup avatar Apr 06 '20 16:04 Schwuuuuup

Hey Andreas,

for me config.tx_extbase.features.consistentTranslationOverlayHandling = 0 in template setup solved this problem.

Best regards, Michael

Hi everyone,

This fixed it for me also.

More Info here: https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/9.5/Important-82363-MakeExtBaseTranslationHandlingConsistentWithTyposcript.html

Uwe

LimeUwe avatar Jun 17 '20 14:06 LimeUwe