summaryrefslogtreecommitdiff
path: root/utils/modules/newsletter.php
diff options
context:
space:
mode:
Diffstat (limited to 'utils/modules/newsletter.php')
-rw-r--r--utils/modules/newsletter.php66
1 files changed, 4 insertions, 62 deletions
diff --git a/utils/modules/newsletter.php b/utils/modules/newsletter.php
index ef172e0..5ca19bf 100644
--- a/utils/modules/newsletter.php
+++ b/utils/modules/newsletter.php
@@ -4,30 +4,10 @@ global $UTIL_DIR;
include_once($UTIL_DIR . "/mail.php");
-class Mailinglist {
+class Mailinglist extends _Mailinglist {
private $file;
- private $mailinglist = array();
- public $subj_prefix;
- public $sender;
- public $replyto;
- public $footer;
public $unsubscribe_url;
- public function add($email) {
- $key = $email->email;
- if(array_key_exists($key, $this->mailinglist)) return false;
- $this->mailinglist[$key] = $email;
- return true;
- }
-
- public function remove($email) {
- if(array_key_exists($email, $this->mailinglist)) {
- unset($this->mailinglist[$email]);
- return true;
- }
- return false;
- }
-
public function write()
{
$fp = fopen($this->file, "w");
@@ -103,6 +83,9 @@ class Mailinglist {
return $str;
}
+ /**
+ * Overrides the postSingle method in the _Mailinglist class.
+ */
public function postSingle($email, $subject, $message)
{
$subject = "[".$this->subj_prefix."] " . $subject;
@@ -114,47 +97,6 @@ class Mailinglist {
$email->send($subject, $message, $this->sender, $this->replyto);
}
- public function post($subject, $message)
- {
- $subject = "[".$this->subject_prefix."] " . $subject;
-
- $message .= "\n\n".$this->footer;
- $message .= "\n\nTo stop receiving this newsletter, click the following link: ".
- $this->unsubscribe_url."&action=unsubscribe&email=". $this->email . "\n";
-
-
- $sz = sizeof($this->mailinglist);
-
- echo "<div style=\"text-align: center; padding-top: 120px; padding-bottom: 100px; position: absolute; top: 25%; left: 0px; width: 99.4%; height: 150px; border: solid #0000ff 3px; background: #fff; color: #000;\">Sending ". $sz ." mails <br/>\n&lt;";
- ob_flush();
- flush();
-
- $num = 0;
- $lvl = 0;
- $steps = floor($sz / 10) + 1;
-
- foreach($this->mailinglist as $email) {
-
- $this->postSingle($email, $ubject, $message);
-
- $pct = $num / $sz * 100;
- if($pct >= $lvl) {
- printf("<font style=\"font-size: 9px;\">%.0f%%</font>", $lvl);
- $lvl += 100/$steps;
- } else {
- echo ".";
- }
- ob_flush();
- flush();
- $num++;
- }
- echo "<font style=\"font-size: 9px;\">[100%]</font>&gt;\n<br/>done<br/>\n";
- echo "<a style=\"font-size: 20px; font-weight: bold;\" href=\"?page=admin&amp;module=newsletter\">[CLOSE]</a>";
- echo "</div>\n";
- ob_flush();
- flush();
- }
-
public function Mailinglist($file)
{
$this->file = $file;