db_Delete("generic", "gen_datestamp='".intval($_POST['mail_id'])."' "); $text = "

".MAILAN_66; // Cancelled Successfully; $text .= "

"; $ns -> tablerender(MAILAN_59, $text); echo ""; exit; } ob_implicit_flush(); /* if (ob_get_level() == 0) { ob_start(); } */ // -------------------- Configure PHP Mailer ------------------------------> require(e_HANDLER."phpmailer/class.phpmailer.php"); $mail = new PHPMailer(); $mail->From = ($_POST['email_from_email'])? $_POST['email_from_email']: $pref['siteadminemail']; $mail->FromName = ($_POST['email_from_name'])? $_POST['email_from_name']: $pref['siteadmin']; // $mail->Host = "smtp1.site.com;smtp2.site.com"; if ($pref['mailer']== 'smtp') { $mail->Mailer = "smtp"; $mail->SMTPKeepAlive = (isset($pref['smtp_keepalive']) && $pref['smtp_keepalive']==1) ? TRUE : FALSE; if($pref['smtp_server']) { $mail->Host = $pref['smtp_server']; } if($pref['smtp_username'] && $pref['smtp_password']) { $mail->SMTPAuth = TRUE; $mail->Username = $pref['smtp_username']; $mail->Password = $pref['smtp_password']; $mail->PluginDir = e_HANDLER."phpmailer/"; } } elseif ($pref['mailer']== 'sendmail') { $mail->Mailer = "sendmail"; $mail->Sendmail = ($pref['sendmail']) ? $pref['sendmail'] : "/usr/sbin/sendmail -t -i -r ".$pref['siteadminemail']; } else { $mail->Mailer = "mail"; } $mail->AddCC = ($_POST['email_cc']); $mail->WordWrap = 50; $mail->Charset = CHARSET; $mail->Subject = $_POST['email_subject']; $mail->IsHTML(TRUE); $mail->SMTPDebug = (e_MENU == "debug") ? TRUE : FALSE; if($_POST['email_cc']) { $tmp = explode(",",$_POST['email_cc']); foreach($tmp as $addc) { $mail->AddCC($addc); } } if($_POST['email_bcc']) { $tmp = explode(",",$_POST['email_bcc']); foreach($tmp as $addbc) { $mail->AddBCC($addbc); } } if($pref['mail_bounce_email'] !='') { $mail->Sender = $pref['mail_bounce_email']; } $attach = chop($_POST['email_attachment']); if (($temp = strrchr($attach,'/')) !== FALSE) { $attach = substr($attach,$temp + 1); } if(is_readable(e_DOWNLOAD.$attach)) { $attach_link = e_DOWNLOAD.$attach; } else { $attach_link = e_FILE.'public/'.$attach; } if ($attach != "" && !$mail->AddAttachment($attach_link, $attach)) { $mss = MAILAN_58."
$attach_link"; // problem with attachment. $ns->tablerender("Error", $mss); require_once(e_ADMIN."footer.php"); exit; } // ---------------------------- Setup the Email -----------------------------> $message_subject = stripslashes($tp -> toHTML($_POST['email_subject'])); $mail_head = "\n"; $mail_head .= "\n"; $mail_head .= "\n"; if (isset($_POST['use_theme'])) { $theme = $THEMES_DIRECTORY.$pref['sitetheme']."/"; // $mail_head .= "\n"; $style_css = file_get_contents(e_THEME.$pref['sitetheme']."/style.css"); $mail_head .= ""; $message_body = $mail_head; $message_body .= "\n\n"; $message_body .= "
\n"; $message_body .= $tp -> toEmail($_POST['email_body'])."
"; } else { $message_body = $mail_head; $message_body .= "\n\n"; $message_body .= $tp -> toEmail($_POST['email_body']).""; $message_body = str_replace(""", '"', $message_body); $message_body = str_replace('src="', 'src="'.SITEURL, $message_body); } $message_body = stripslashes($message_body); // ---------------- Display Progress and Send Emails. -----------------------> echo "
 ".MAILAN_59."
"; $qry = "SELECT g.*,u.* FROM #generic AS g LEFT JOIN #user AS u ON g.gen_user_id = u.user_id WHERE g.gen_type='sendmail' and g.gen_datestamp = '".intval($_POST['mail_id'])."' "; $count = $sql -> db_Select_gen($qry); if(!$count) { echo "

".MAILAN_61."
"; echo ""; echo "
"; exit; } $c = 0; $d=0; $pause_count = 1; $pause_amount = ($pref['mail_pause']) ? $pref['mail_pause'] : 10; $pause_time = ($pref['mail_pausetime']) ? $pref['mail_pausetime'] : 1; $sent = array(); $failed = array(); $unit = (1/$count)* 100; echo "
 
"; stopwatch(); while($row = $sql-> db_Fetch()){ // ---------------------- Mailing Part. --------------------------------------> $activator = (substr(SITEURL, -1) == "/" ? SITEURL."signup.php?activate.".$row['user_id'].".".$row['user_sess'] : SITEURL."/signup.php?activate.".$row['user_id'].".".$row['user_sess']); $signup_link = ($row['user_sess']) ? "$activator" : ""; $search = array("|USERNAME|","|USERID|","|SIGNUP_LINK|"); $replace = array($row['user_name'],$row['user_id'],$signup_link); $mes_body = str_replace($search,$replace,$message_body); $alt_body = str_replace($search,$replace,stripslashes($tp->toText($_POST['email_body']))); $mail->Body = $mes_body; $mail->AltBody = $alt_body; $mail->AddAddress($row['user_email'], $row['user_name']); $mail->AddCustomHeader("X-e107-id: ".$row['user_id']); if ($mail->Send()) { $sent[] = $row['user_id']; } else { $failed[] = $row['user_id']; } $mail->ClearAddresses(); // --------- End of the mailing. ---------------------------------------------> $cur = round((($c / $count) * 100) + $unit); echo str_pad(' ',4096)."
\n"; $d = ($c==0) ? 10 : round($width + $d); echo "
".($c+1)." / ".$count." (" . $cur . "%)  complete
"; if($cur != $prev){ echo "\n"; } $prev = $cur; ob_flush(); flush(); if($pause_count > $pause_amount){ sleep($pause_time); $pause_count = 1; } // Default sleep to reduce server-load: 1 second. sleep(1); $c++; $pause_count++; } ob_end_flush(); echo "

"; echo MAILAN_62." ".count($sent)."
"; echo MAILAN_63." ".count($failed)."
"; echo MAILAN_64." ".stopwatch()." ".MAILAN_65."
"; echo "
"; $message = $sql -> db_Delete("generic", "gen_datestamp='".intval($_POST['mail_id'])."' ") ? "deleted" : "deleted_failed"; $mail->ClearAttachments(); if ($pref['mailer']== 'smtp') { $mail->SmtpClose(); } echo "

"; echo ""; function headerjs(){ $text = " "; $text .= " "; return $text; } function stopwatch(){ static $mt_previous = 0; list($usec, $sec) = explode(" ",microtime()); $mt_current = (float)$usec + (float)$sec; if (!$mt_previous) { $mt_previous = $mt_current; return ""; } else { $mt_diff = ($mt_current - $mt_previous); $mt_previous = $mt_current; return round(sprintf('%.16f',$mt_diff),2); } } ?>