diff --git a/public_html/lists/admin/bounce.php b/public_html/lists/admin/bounce.php index cba6a682e..26155c9e9 100644 --- a/public_html/lists/admin/bounce.php +++ b/public_html/lists/admin/bounce.php @@ -18,6 +18,7 @@ $deletebounce = isset($_GET['deletebounce']); //BUGFIX #15286 - nickyoung $amount = isset($_GET['amount']) ? sprintf('%d', $_GET['amount']) : ''; //BUGFIX #15286 - CS2 $unconfirm = isset($_GET['unconfirm']); //BUGFIX #15286 - CS2 +$confirm = isset($_GET['confirm']); $maketext = isset($_GET['maketext']); //BUGFIX #15286 - CS2 $deleteuser = isset($_GET['deleteuser']); //BUGFIX #15286 - CS2 @@ -76,10 +77,14 @@ } } - if (!empty($userid) && $unconfirm) { - Sql_Query(sprintf('update %s set confirmed = 0 where id = %d', + if (!empty($userid) && ($unconfirm || $confirm)) { + Sql_Query(sprintf('update %s set confirmed = ' . ($confirm ? '1' : '0') . ' where id = %d', $tables['user'], $userid)); - $actionresult .= sprintf($GLOBALS['I18N']->get('Made subscriber %s unconfirmed').'
', $userid); + if ($confirm) { + $actionresult .= sprintf(s('Made subscriber %s confirmed').'
', $userid); + } else { + $actionresult .= sprintf(s('Made subscriber %s unconfirmed').'
', $userid); + } } if (!empty($userid) && $maketext) { @@ -164,16 +169,28 @@ $GLOBALS['I18N']->get('Memo for this rule')); $newruleform .= '

'; $newruleform .= ''; - $actionpanel = ''; $actionpanel .= '
'; $actionpanel .= ''; $actionpanel .= ''; $actionpanel .= ''; $actionpanel .= ''; - $actionpanel .= ''; + list($msgDetails, $userDetails, $furtherDetails) = array('', '', ''); + if (preg_match("#bounced list message ([\d]+)#", $bounce['status'], $regs)) + $msgDetails = s('Campaign') . ' ' . PageLink2('message&id='.$regs[1], shortenTextDisplay(campaignTitle($regs[1]), 30)); + if (isset($guessedid)) { + $userDetails = Sql_Fetch_Assoc_Query(sprintf('select confirmed from %s where id = %d', $tables['user'], $guessedid)); + if ($userDetails['confirmed'] && !isBlackListed(htmlspecialchars($guessedemail))) + $ls_confirmed = $GLOBALS['img_tick']; + else + $ls_confirmed = $GLOBALS['img_cross']; + $userDetails = s('User') . ' ' . PageLink2('user&id='.$guessedid, $guessedid) . ' ' . $ls_confirmed . '
(' . s('Subscribers with a red icon are either unconfirmed or blacklisted or both') . ')'; + } + if (!empty($msgDetails) || !empty($userDetails)) + $furtherDetails = '
' . $msgDetails . (empty($msgDetails) ? '' : ' ') . $userDetails; + $actionpanel .= ''; $actionpanel .= ''; - $actionpanel .= ''; + $actionpanel .= ''; $actionpanel .= ''; $actionpanel .= ''; if (ALLOW_DELETEBOUNCE) { diff --git a/public_html/lists/admin/bounces.php b/public_html/lists/admin/bounces.php index 95bda2cd4..e7442b6f5 100644 --- a/public_html/lists/admin/bounces.php +++ b/public_html/lists/admin/bounces.php @@ -162,7 +162,8 @@ break; } -} +} elseif ($status == 'processed') + echo s('Subscribers with a red icon are either unconfirmed or blacklisted or both'); $ls = new WebblerListing(s($status).' '.s('bounces')); $ls->setElementHeading('Bounce ID'); @@ -195,7 +196,13 @@ preg_match("#([\d]+) bouncecount increased#", $bounce['comment'], $regs) OR preg_match("#([\d]+) marked unconfirmed#", $bounce['comment'], $regs) ) { - $userIdLink = PageLink2('user&id='.$regs[1], getUserEmail($regs[1])); + $userIdLink = PageLink2('user&id='.$regs[1], ($regs[1])); + $userDetails = Sql_Fetch_Assoc_Query(sprintf('select email, confirmed from %s where id = %d', $tables['user'], $regs[1])); + if ($userDetails['confirmed'] && !isBlackListed(htmlspecialchars($userDetails['email']))) + $ls_confirmed = $GLOBALS['img_tick']; + else + $ls_confirmed = $GLOBALS['img_cross']; + $userIdLink .= ' ' . $ls_confirmed; } elseif ($bounce['comment'] == 'not processed') { $userIdLink = $GLOBALS['I18N']->get('Unknown'); } else { diff --git a/public_html/lists/admin/listbounces.php b/public_html/lists/admin/listbounces.php index bc890deb2..238059ad7 100644 --- a/public_html/lists/admin/listbounces.php +++ b/public_html/lists/admin/listbounces.php @@ -103,14 +103,22 @@ if ($download) { echo $userdata['email']."\n"; } else { + if ($userdata['confirmed'] && !isBlackListed(htmlspecialchars($userdata['email']))) { + $ls_confirmed = $GLOBALS['img_tick']; + } else { + $ls_confirmed = $GLOBALS['img_cross']; + } $ls->addElement($row['userid'], PageUrl2('user&id='.$row['userid'])); - $ls->addColumn($row['userid'], s('Subscriber address'), PageLink2('user&id='.$row['userid'], $userdata['email'])); + $ls->addColumn($row['userid'], s('Subscriber address'), PageLink2('user&id='.$row['userid'], $userdata['email']) . ' ' . $ls_confirmed); $ls->addColumn($row['userid'], s('Total bounces'), PageLink2('user&id='.$row['userid'], $row['numbounces'])); } } } if (!$download) { + if ($total) { + echo s('Subscribers with a red icon are either unconfirmed or blacklisted or both'); + } echo $ls->display(); } else { exit;
'.$GLOBALS['I18N']->get('For subscriber with email').'
'.s('For subscriber with email').$furtherDetails.'
'.$GLOBALS['I18N']->get('Increase bouncecount with').'
'.$GLOBALS['I18N']->get('(use negative numbers to decrease)').'
'.$GLOBALS['I18N']->get('Mark subscriber as unconfirmed').'
'.$GLOBALS['I18N']->get('(so you can resend the request for confirmation)').'
'.s('Mark subscriber as unconfirmed').'
'.s('(so you can resend the request for confirmation)').'
'.s('or confirmed').'
'.s('(so you can revert possible auto unconfirmation)'). '
'.s('unconfirmed').''.s('confirmed').'
'.$GLOBALS['I18N']->get('Set subscriber to receive text instead of HTML').'
'.$GLOBALS['I18N']->get('Delete subscriber').'