foreach ($templates as $template) { showDebug("Checking autosender [ID: " . $template['id'] . "]"); $day = number_format($template['orderr'], 0) - 1; $sql = "SELECT * FROM " . TABLE_PREFIX . "user WHERE qhvbmailer_ar_day='" . $day . "' AND qhvbmailer_ar_last < '" . dateOnly() . "'"; $users = $vbulletin->db->query_read_slave($sql); while ($user = $vbulletin->db->fetch_array($users)) { $userinfo = fetch_userinfo($user['userid'], 1); if ($userinfo['adminemail'] > 0) { $ntemplates = array_reverse($templates); foreach ($ntemplates as $template2) { $day2 = number_format($template2['orderr'], 0) - 1; if ($day2 == $user['qhvbmailer_ar_day']) { $subject = getQHPhrase($userinfo['languageid'], $template2['id'], 'subject', 'ar'); $attachment = getAttachment($template2['attachment_id']); $text = getQHPhrase($userinfo['languageid'], $template2['id'], 'text', 'ar'); $html = getQHPhrase($userinfo['languageid'], $template2['id'], 'html', 'ar'); if (!empty($subject) && !empty($text) && !empty($html)) { if (sendEmail($user, $subject, $text, $html, 0, $attachment)) { showDebug("Email sent to '" . $user['email'] . "' [ID: " . $user['userid'] . "]"); $sends++; if ($sends == $vbulletin->options['qhvbmailer_sleepafter']) { showDebug("Sleeping for " . $vbulletin->options['qhvbmailer_sleepamount'] . " seconds"); sleep($vbulletin->options['qhvbmailer_sleepamount']); $sends = 0; } } else { showDebug("Email cannot be sent to '" . $user['email'] . "' [ID: " . $user['userid'] . "]", 2); } } else { showDebug("Could not get phrases for '" . $user['email'] . "' [ID: " . $user['userid'] . "]", 3); }
$attachment = getAttachment($campaign['attachment_id']); showDebug("Checking campaign '" . $campaign['subject'] . "' [ID: " . $campaign['id'] . "]"); if ($campaign['send_to'] > 0) { //$extra_sql = " WHERE usergroupid='" . $campaign['send_to'] . "'"; //$extra_sql .= " OR membergroupids like '%" . $campaign['send_to'] . "%'"; $extra_sql = " WHERE concat(',', usergroupid, if(STRCMP(membergroupids, ''), ',', ''), membergroupids) LIKE '%," . $campaign['send_to'] . "%'"; } $sql = "SELECT * FROM " . TABLE_PREFIX . "user" . $extra_sql; $users = $vbulletin->db->query_read_slave($sql); while ($user = $vbulletin->db->fetch_array($users)) { $userinfo = fetch_userinfo($user['userid'], 1); // lwe added overrider for bloodless pros usergroup. if ($campaign['send_to'] == '20' || $userinfo['adminemail'] > 0) { $subject = getQHPhrase($userinfo['languageid'], $campaign['template_id'], 'subject'); $text = getQHPhrase($userinfo['languageid'], $campaign['template_id'], 'text'); $html = getQHPhrase($userinfo['languageid'], $campaign['template_id'], 'html'); if (!empty($subject) && !empty($text) && !empty($html)) { if (sendEmail($user, $subject, $text, $html, $campaign['id'], $attachment)) { insertTrack($campaign['id'], $user['email'], 'sent'); showDebug("Email sent to '" . $user['email'] . "' [ID: " . $user['userid'] . "]"); $sends++; if ($sends == $vbulletin->options['qhvbmailer_sleepafter']) { showDebug("Sleeping for " . $vbulletin->options['qhvbmailer_sleepamount'] . " seconds"); sleep($vbulletin->options['qhvbmailer_sleepamount']); $sends = 0; } } else { insertTrack($campaign['id'], $user['email'], 'failed'); showDebug("Email cannot be sent to '" . $user['email'] . "' [ID: " . $user['userid'] . "]", 2); } } else {
$sql = "SELECT * FROM " . TABLE_PREFIX . "qhvbmailer_templates WHERE orderr < 1 AND nl_every > 0 ORDER BY created DESC"; $newsletters = $vbulletin->db->query_read_slave($sql); while ($newsletter = $vbulletin->db->fetch_array($newsletters)) { $days = floor((TIMENOW - $newsletter['nl_last']) / 86400); if ($days >= $newsletter['nl_every']) { showDebug(); showDebug("Time to send '" . $newsletter['varname'] . "'"); $sql = "SELECT * FROM " . TABLE_PREFIX . "user"; $users = $vbulletin->db->query_read_slave($sql); while ($user = $vbulletin->db->fetch_array($users)) { $userinfo = fetch_userinfo($user['userid'], 1); if ($userinfo['adminemail'] > 0) { $subject = getQHPhrase($userinfo['languageid'], $newsletter['id'], 'subject', 'nl'); $attachment = getAttachment($newsletter['attachment_id']); $text = getQHPhrase($userinfo['languageid'], $newsletter['id'], 'text', 'nl'); $html = getQHPhrase($userinfo['languageid'], $newsletter['id'], 'html', 'nl'); if (!empty($subject) && !empty($text) && !empty($html)) { if (sendEmail($user, $subject, $text, $html, 0, $attachment)) { showDebug("Email sent to '" . $user['email'] . "' [ID: " . $user['userid'] . "]"); $sends++; if ($sends == $vbulletin->options['qhvbmailer_sleepafter']) { showDebug("Sleeping for " . $vbulletin->options['qhvbmailer_sleepamount'] . " seconds"); sleep($vbulletin->options['qhvbmailer_sleepamount']); $sends = 0; } } else { showDebug("Email cannot be sent to '" . $user['email'] . "' [ID: " . $user['userid'] . "]", 2); } } else { showDebug("Could not get phrases for '" . $user['email'] . "' [ID: " . $user['userid'] . "]", 3); }