kartolo / direct_mail_subscription Goto Github PK
View Code? Open in Web Editor NEWA newsletter subscription form for TYPO3 CMS
A newsletter subscription form for TYPO3 CMS
After updating from 2.0.2 to 2.0.3 I got this FE error:
Uncaught TYPO3 Exception
#1: PHP Warning: Missing argument 4 for
TYPO3\CMS\Core\Localization\LocalizationFactory::getParsedData(), called in
/typo3conf/ext/direct_mail_subscription/pi/class.dmailsubscribe.php on line
281 and defined in
/staeqwbx/typo3_src-6.2.21/typo3/sysext/core/Classes/Localization/LocalizationFactory.php
line 78
I changed the line from:
$this->LOCAL_LANG = $languageFactory->getParsedData($basePath, $this->LLkey,
$GLOBALS['TSFE']->renderCharset);
to:
$this->LOCAL_LANG = $languageFactory->getParsedData($basePath, $this->LLkey,
$GLOBALS['TSFE']->renderCharset, 1);
and it worked. The 4th parameter is not optional.
TYPO3 6.2.21
It would be great to have compatibility with Typo3 v9. Are you planing to do this?
With PHP 7.0.13 I get this warning:
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; user_dmailsubscribe has a deprecated constructor in typo3conf/ext/direct_mail_subscription/pi/class.dmailsubscribe.php on line 4
Got a TYPO3 Exception on my website:
Serialization of 'Closure' is not allowed
Exception thrown in file
/typo3_src-6.2.25/typo3/sysext/frontend/Classes/ContentObject/UserInternalContentObject.php in line 38.
when I include static template of dmail_subscription.
TYPO3: 6.2.25
direct_mail_subscription: 2.0.3
direct_mail: 4.1.0
When a user registers, he gets a confirmation link (cmd=setfixed). This link does not expire and is also valid after the user clicked it once. This means, when he clicks it again, a second confirmation mail is sent.
This might not be too problematic, but we had two cases were some Bots called the confirmation link over and over. This resulted in regular mails for the poor user. The Bots were MetaJobBot, seoscanners and someone identifying as Firefox 3.6.3. We don't know how the Bots got the confirmation URL. (Maybe some strange webmailer which scans the incoming mails for links?)
I think it's better to only send one confirmation mail. If the user already is active (hidden=0), then there's no need to send another mail.
The categories a user selects are not saved to the tt_address record. I think that's because includeLibs is removed and the userfunc call fails silently.
The fe_adminLib.inc
uses the JavaScript method updateForm
for filling submitted data in the form on a page:
direct_mail_subscription/fe_adminLib.inc
Line 1042 in 6b11614
For example:
<script type="text/javascript">
/*<![CDATA[*/
updateForm('tt_address_form','FE[tt_address][first_name]','John');
updateForm('tt_address_form','FE[tt_address][last_name]','Doe');
updateForm('tt_address_form','FE[tt_address][email]','[email protected]');
updateForm('tt_address_form','FE[tt_address][hidden]','1');
/*]]>*/
</script>
The file jsfunc.updateform.js
(https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_6-2/typo3/js/jsfunc.updateform.js) doesn't exist in TYPO3 7.6 and so a JavaScript error is thrown when the method is called:
Uncaught ReferenceError: updateForm is not defined
Whenever I enter some data into a form, there's no visible response that I forgot some fields or something like that. No error log entries, no hidden code. I removed the default required fields and just entered "email".
TYPO3 7.6.14
direct_mail_subscription: current dev version (2.0.3 has the same problem)
tt_address: 3.2.1 (3.0.3 didn't work, too)
Any advice would be appreciated, thank you :)
Ext:direct_mail_subscription creates empty records when using together with Ext:tt_address 3.1.1, since tt_address does not set the deprecated feInterface.fe_admin_fieldList anymore. This results in an empty (or shortened) fieldList in direct_mail_subscription/fe_adminLib.inc, line 185: $this->fieldList = implode(',', GeneralUtility::trimExplode(',', $GLOBALS['TCA'][$this->theTable]['feInterface']['fe_admin_fieldList'], 1));
I can't find a way to configure the duration of validity of a confirmation-link after subscription...or better for every double-opt-feature.
Is there any TS or maybe a hook i can use?
Thx for the good work,
Karsten
Everytime I install or uninstall an extension in the extension manager, I get an error:
Could not scan for classes inside "/var/www/html/typo3conf/ext/direct_mail_subscription/Classes/" which does not appear to be a file nor a folder
And after I uninstall an extension I have to delete the cache files manually after the previous error message, because it somehow prevents the cache to be cleared, and I end up with a "dead" installation and:
TYPO3 Fatal Error: Extension key "[Extension name]" is NOT loaded!
This might have something to do with https://forge.typo3.org/issues/76457
I'm on TYPO3 7.6.15, PHP 5.6.29 and direct_mail_subscription 2.0.3, by the way.
I get a parse error with direct_mail_subscription since version 2.0.3:
PHP Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in /var/www/html/typo3conf/ext/direct_mail_subscription/pi/class.dmailsubscribe.php on line 278
This points to:
$languageFactory = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Localization\LocalizationFactory::class);
Possible reason: http://stackoverflow.com/questions/34020272/laravel-parse-error-syntax-error-unexpected-t-class-expecting-t-string
We are still stuck with RHEL7 and PHP 5.4, and updating PHP on RedHat isn't really an option. :-(
Would be great if you could make it compatible with the latest LTS release.
Thank you for merging
"[BUGFIX] Add common fields to feAdmin editable field list"
But please move to version 2.0.4 and update TYPO3 CMS Extension Repository
In the Typo3.org Version 2.0.3 the File "/direct_mail_subscription/Configuration/TCA/Overrides/tt_address.php" looks like this:
`<?php
if (!defined('TYPO3_MODE')) {
die('Access denied.');
}
$GLOBALS['TCA']['tt_address']['feInterface']['fe_admin_fieldList'] .= ',name';
`
This leads to an error because "email is missing
In the Github Version it is korrekt:
`<?php
if (!defined('TYPO3_MODE')) {
die('Access denied.');
}
$GLOBALS['TCA']['tt_address']['feInterface']['fe_admin_fieldList'] .= ',hidden,gender,name,email,first_name,last_name,company';
`
Would be cool if an composer.json could be added so this ext could be used with 7LTS
overrideValues.hidden = 1 will not work
is this related to #11 ?
$GLOBALS['TCA']['tt_address']['feInterface']['fe_admin_fieldList'] .= ',hidden,gender,name,email,first_name,last_name,company';
instead of :
$GLOBALS['TCA']['tt_address']['feInterface']['fe_admin_fieldList'] .= ',gender,name,email,first_name,last_name,company';
Hi, I do have a problem, when using RealUrl and your sweet extension driect mail subscription. Wenn submitting a Name and Email, the tt_address is filled up but instead of dispaying a message there is the error:
Oops, an error occurred! Code: 20170728160421dd3ecdc0
How can I see what is in the ###FORM_URL### and is there a way to influence it?
Do I have to hardcode the URL in the tempalte instead of using ###FORM_URL###.
Thanks for your help.
Best regards
Dan
When using direct_mail_subscription 2.0.3 with tt_address 3.2.1, the tstamp shown in the recipient list in the Typo3 Backend is displayed as UNIX timestamp (e.g. 1425567589) instead of a correctly formatted date.
May be related to: #9
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.