summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authordeva <deva>2010-02-13 15:29:04 +0000
committerdeva <deva>2010-02-13 15:29:04 +0000
commit22ad514ccace5535e5fc66e96d927a2d02cd0e92 (patch)
tree6debd4266f2a23f9a95200966fa69c2c7e7b88e7 /utils
parent6d14d895fb7e17b4adfd6111bd6591776dba6188 (diff)
Moved to modules.
Diffstat (limited to 'utils')
-rw-r--r--utils/newsletter.php146
1 files changed, 0 insertions, 146 deletions
diff --git a/utils/newsletter.php b/utils/newsletter.php
deleted file mode 100644
index 049e3f5..0000000
--- a/utils/newsletter.php
+++ /dev/null
@@ -1,146 +0,0 @@
-<?php
-
-/**
- * CONFIG
- */
-$subject_prefix = "DIE Newsletter";
-$sender = "DIE <info@executionroom.com>";
-$replyto = $sender;
-$footer = "
-
-Stay Brutal!
-// DIE
-http://www.executionroom.com
-info@executionroom.com
-";
-
-class Email {
- public $timestamp;
- public $email;
-
- public function Email($email, $timestamp)
- {
- $this->email = $email;
- $this->timestamp = $timestamp;
- }
-
- function send($subject, $message) {
- global $subject_prefix;
- global $sender;
- global $replyto;
- global $footer;
-
- $message .= $footer;
- $message .= "\nTo stop receiving this newsletter, click the following link: http://www.executionroom.com/?page=news&action=unsubscribe&email=". $this->email . "\n";
- $headers = "From: " . $sender . "\r\n";
- $headers .= "Reply-To: " . $replyto . "\r\n";
- $headers .= "Content-Type: text/plain; charset=iso-8859-1\r\n";
- $headers .= "X-Mailer: PHP/" . phpversion();
- $subject = "[".$subject_prefix."] " . $subject;
-
- $ret = mail($this->email, $subject, $message, $headers);
- if(!$ret) echo "Fail(".$this->email.")";
-
- //usleep(100000);
- }
-}
-
-class Mailinglist {
- private $file;
- private $mailinglist = array();
-
- public function add($email) {
- $key = $email->email;
- $this->mailinglist[$key] = $email;
- }
-
- public function remove($email) {
- if(array_key_exists($email, $this->mailinglist)) {
- unset($this->mailinglist[$email]);
- }
- }
-
- public function write()
- {
- $fp = fopen($this->file, "w");
- fwrite($fp, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
-
- fwrite($fp, "<mailinglist>\n");
- foreach($this->mailinglist as $email) {
- fwrite($fp, " <email email=\"" .
- htmlspecialchars($email->email, ENT_QUOTES, "UTF-8") . "\"\n");
- fwrite($fp, " timestamp=\"" . $email->timestamp . "\">\n");
- fwrite($fp, " </email>\n");
- }
- fwrite($fp, "</mailinglist>\n");
-
- fclose($fp);
- }
-
- private function read()
- {
- $dom = new DomDocument;
- $dom->preserveWhiteSpace = FALSE;
- $dom->load($this->file);
- $params = $dom->getElementsByTagName('email');
-
- foreach ($params as $param) {
- $email = new Email($param->getAttribute('email'),
- $param->getAttribute('timestamp'));
- $this->add($email);
- }
- }
-
- public function subscribe($email)
- {
- $email = new EMail($email, time());
- $this->add($email);
- $this->write();
- }
-
- public function unsubscribe($email)
- {
- $this->remove($email);
- $this->write();
- }
-
- public function post($subject, $message)
- {
- $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) {
- $email->send($subject, $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;
- $this->read();
- }
-}
-
-?> \ No newline at end of file