Sim
Well-known member
I mean something like that
UPDATE xf_user SET Digest = 'weekly'
That's what the default setting is for in the options. Anyone who has not explicitly chosen an option gets whatever the default is.
I mean something like that
UPDATE xf_user SET Digest = 'weekly'
Suggestion to overcome a problem that not many people will receive the digest email even if they choose to via the Thread update emails widget.
If (and this is the most common scenario)
something needs to happen. Because if people actively select to receive the digest, they will expect to then receive them, but won't if the Receive news and updates emails checkbox is unchecked. This is more of an issue with the widget because they don't even get to see the checkbox like you do in the preferences page.
- people actively select to receive the digest (either in their preferences or in the widget), and
- the Receive news and updates emails preference is unchecked (which it should be by default for GDPR) and
- the Only send to users opting to receive news and update emails preference is checked (as it should be for GDPR)
I suggest one of two solutions:
Would it be possible to consider this change, please?
- turn on Receive news and updates emails if the user actively selects to receive the digest
- (a better solution) open a modal informing them that their preference is to not receive news and update emails with the option to change that
I understand where you are coming from, but you will then have a situation where Receive news and updates emails is off, yet they are receiving update emails, which is confusing at the very least, right? I can imagine a scenario where people will complain because they have that setting off, but (having forgotten that they selected to receive the digest) they are receiving emails.As an alternative, can I suggest the following setup:
This will still be GDPR compliant, since users will only receive the digest emails if they have explicitly opted in by turning on the digest in their preferences or via the widget. It shouldn't matter if they have Receive news and updates emails turned off if they have explicitly opted to receive the digest emails.
- set the Default Frequency to "None" so that emails don't go out unless people explicitly opt in
- deselect Only send to users opting to receive news and update emails - this setting is redundant if the Default Frequency is set to none
I think this is the better choice - since it does not change the behaviour of Receive news and updates emails - which could be important if you have other systems or addons which also send emails to users (or you send bulk emails manually).
I understand where you are coming from, but you will then have a situation where Receive news and updates emails is off, yet they are receiving update emails, which is confusing at the very least, right? I can imagine a scenario where people will complain because they have that setting off, but (having forgotten that they selected to receive the digest) they are receiving emails.
Ok, fair enough, thanks.The behaviour of the core Activity Summary emails is exactly the same - there is a separate option for them in the preferences and the "Receive news and update emails" preference has no impact on which (opted in) users get the activity summary emails.
View attachment 245228
Settings for all three are right there in their preferences - if they have opted in to activity summary emails and/or digest emails - then they have no grounds for complaint. Their poor memory is not your fault - you simply disable the option for them and move on.
InvalidArgumentException: Job XF:EmailUnsubscribe: Column 'whatnewdigest_email' is unknown src/XF/Mvc/Entity/Entity.php:601
Generated by: Unknown account Mar 29, 2021 at 12:43
Stack trace
#0 src/XF/Mvc/Entity/Entity.php(567): XF\Mvc\Entity\Entity->set('whatnewdigest_e...', 'none')
#1 src/addons/Hampel/WhatsNewDigest/XF/EmailUnsubscribe/Processor.php(10): XF\Mvc\Entity\Entity->__set('whatnewdigest_e...', 'none')
#2 src/XF/EmailUnsubscribe/Processor.php(120): Hampel\WhatsNewDigest\XF\EmailUnsubscribe\Processor->applyUserUnsubscribeAction(Object(SV\ContactUsThread\XF\Entity\User))
#3 src/XF/EmailUnsubscribe/Processor.php(68): XF\EmailUnsubscribe\Processor->processMessage(Object(Laminas\Mail\Storage\Message))
#4 src/XF/Job/EmailUnsubscribe.php(27): XF\EmailUnsubscribe\Processor->processFromStorage(Object(XF\Mail\Storage\Imap), 8)
#5 src/XF/Job/Manager.php(258): XF\Job\EmailUnsubscribe->run(8)
#6 src/XF/Job/Manager.php(200): XF\Job\Manager->runJobInternal(Array, 8)
#7 src/XF/Job/Manager.php(84): XF\Job\Manager->runJobEntry(Array, 8)
#8 src/XF/Cli/Command/RunJobs.php(59): XF\Job\Manager->runQueue(false, 8)
#9 src/vendor/symfony/console/Command/Command.php(255): XF\Cli\Command\RunJobs->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#10 src/vendor/symfony/console/Application.php(992): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#11 src/vendor/symfony/console/Application.php(255): Symfony\Component\Console\Application->doRunCommand(Object(XF\Cli\Command\RunJobs), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#12 src/vendor/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 src/XF/Cli/Runner.php(109): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#14 cmd.php(15): XF\Cli\Runner->run()
#15 {main}
Request state
array(1) {
["cli"] => string(45) "cmd.php --quiet xf:run-jobs"
}
I get this error with v5.0.3a and xF 2.2.4 ...
Code:InvalidArgumentException: Job XF:EmailUnsubscribe: Column 'whatnewdigest_email' is unknown src/XF/Mvc/Entity/Entity.php:601 Generated by: Unknown account Mar 29, 2021 at 12:43 Stack trace #0 src/XF/Mvc/Entity/Entity.php(567): XF\Mvc\Entity\Entity->set('whatnewdigest_e...', 'none') #1 src/addons/Hampel/WhatsNewDigest/XF/EmailUnsubscribe/Processor.php(10): XF\Mvc\Entity\Entity->__set('whatnewdigest_e...', 'none') #2 src/XF/EmailUnsubscribe/Processor.php(120): Hampel\WhatsNewDigest\XF\EmailUnsubscribe\Processor->applyUserUnsubscribeAction(Object(SV\ContactUsThread\XF\Entity\User)) #3 src/XF/EmailUnsubscribe/Processor.php(68): XF\EmailUnsubscribe\Processor->processMessage(Object(Laminas\Mail\Storage\Message)) #4 src/XF/Job/EmailUnsubscribe.php(27): XF\EmailUnsubscribe\Processor->processFromStorage(Object(XF\Mail\Storage\Imap), 8) #5 src/XF/Job/Manager.php(258): XF\Job\EmailUnsubscribe->run(8) #6 src/XF/Job/Manager.php(200): XF\Job\Manager->runJobInternal(Array, 8) #7 src/XF/Job/Manager.php(84): XF\Job\Manager->runJobEntry(Array, 8) #8 src/XF/Cli/Command/RunJobs.php(59): XF\Job\Manager->runQueue(false, 8) #9 src/vendor/symfony/console/Command/Command.php(255): XF\Cli\Command\RunJobs->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #10 src/vendor/symfony/console/Application.php(992): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #11 src/vendor/symfony/console/Application.php(255): Symfony\Component\Console\Application->doRunCommand(Object(XF\Cli\Command\RunJobs), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #12 src/vendor/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #13 src/XF/Cli/Runner.php(109): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput)) #14 cmd.php(15): XF\Cli\Runner->run() #15 {main} Request state array(1) { ["cli"] => string(45) "cmd.php --quiet xf:run-jobs" }
whatnewdigest_email
in the xf_user_option
table and it seems to be missing for some reason.Yes, new install with v5.0.3a. The table column exists ...Is this a new install or has anything else changed before the error occurred?
There should be a columnwhatnewdigest_email
in thexf_user_option
table and it seems to be missing for some reason.
mysql> describe xf_user_option;
+----------------------------------+-----------------------------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------------------------+-----------------------------------------+------+-----+---------+-------+
| user_id | int(10) unsigned | NO | PRI | NULL | |
| show_dob_year | tinyint(3) unsigned | NO | | 1 | |
| show_dob_date | tinyint(3) unsigned | NO | | 1 | |
| content_show_signature | tinyint(3) unsigned | NO | | 1 | |
| receive_admin_email | tinyint(3) unsigned | NO | | 1 | |
| email_on_conversation | tinyint(3) unsigned | NO | | 1 | |
| whatsnewdigest_email | enum('none','daily','weekly','monthly') | YES | MUL | NULL | |
| push_on_conversation | tinyint(3) unsigned | NO | | 1 | |
| is_discouraged | tinyint(3) unsigned | NO | | 0 | |
[...]
InvalidArgumentException: Job XF:EmailUnsubscribe: Column 'whatnewdigest_email' is unknown src/XF/Mvc/Entity/Entity.php:601
Appears to be a spelling issue in code somewhere.There should be a columnwhatnewdigest_email
in thexf_user_option
table and it seems to be missing for some reason.
'whatnewdigest_email'
( no s in whatnew ) where table column has an s ( whatsnew )Perhaps Hampel/WhatsNewDigest/XF/EmailUnsubscribe/Processor.php ..Appears to be a spelling issue in code somewhere.
// disable What's New Digest emails
$user->Option->whatnewdigest_email = 'none';
Fixed typo in XF\EmailUnsubscribe\Processor::applyUserUnsubscribeAction - thanks to @Mouth for finding the bug!
Appears to be a spelling issue in code somewhere.
Job error is wanting'whatnewdigest_email'
( no s in whatnew ) where table column has an s ( whatsnew )
Nice add-on, will this sent out emails with the main style layout?
We use essential cookies to make this site work, and optional cookies to enhance your experience.