NOTE:: Before reporting an issue, make sure you are running the latest version, currently 3.3.1

View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0017608phplist applicationMessage Managementpublic14-02-15 08:2506-07-15 18:04
PlatformOSOS Version
Product Version3.0.12 
Target Version3.0.XFixed in Version3.2.0 
Summary0017608: Automatic requeuing does not call plugins
DescriptionWhen a message is requeued manually, on the campaigns page, the processing includes calling the messageReQueued() method on each plugin, see file messages.php line 168:

  if ($suc6) {
    $action_result .= "... ".$GLOBALS['I18N']->get("Done");
    foreach ($GLOBALS['plugins'] as $pluginname => $plugin) {

But when a campaign is requeued periodically with the requeueinterval value, the only processing is to update the message table. There is no plugin processing nor the other processng of the messagedata table. see file actions/processqueue.php line 501.

## check for messages that need requeuing
$req = Sql_Query(sprintf('select id,requeueinterval,embargo < now() as inthepast from %s where requeueinterval > 0 and requeueuntil > now() and status = "sent"',$tables['message']));
while ($msg = Sql_Fetch_Assoc($req)) {
  if ($msg['inthepast']) {
    Sql_query(sprintf('update %s set status = "submitted",sendstart = null, embargo = date_add(now(),interval %d minute) where id = %d',$GLOBALS['tables']['message'],$msg['requeueinterval'],$msg['id']));
  } else {
    Sql_query(sprintf('update %s set status = "submitted",sendstart = null, embargo = date_add(embargo,interval %d minute) where id = %d',$GLOBALS['tables']['message'],$msg['requeueinterval'],$msg['id']));
  ## @@@ need to update message data as well
TagsNo tags attached.
Attached Files

- Relationships Relation Graph ] Dependency Graph ]

-  Notes
There are no notes attached to this issue.

Copyright © 2000 - 2017 MantisBT Team
Powered by Mantis Bugtracker