Advertisement
Guest User

Untitled

a guest
Jun 11th, 2016
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. <?php
  2. include_once $_SERVER['DOCUMENT_ROOT'] . '/config.php';
  3.  
  4. class Mail {
  5. private $smtp = 'localhost';
  6. private $username = '---';
  7. private $password = '---';
  8. private $mailer;
  9. private $sent;
  10.  
  11. function __construct() {
  12. $this->mailer = new PHPMailer;
  13. // $this->mailer->SMTPDebug = 3;
  14. $this->mailer->isSMTP();
  15.  
  16. $this->mailer->Host = 'localhost';
  17. $this->mailer->Username = $username;
  18. $this->mailer->Password = $password;
  19. $this->mailer->SMTPSecure = 'ssl';
  20. $this->mailer->Port = 465;
  21. }
  22.  
  23. private function set_subject($subject) {
  24. $this->mailer->Subject = $subject;
  25. }
  26.  
  27. private function set_from($emailAddress = '---', $name = 'Spiffing Support') {
  28. if($name) $this->mailer->setFrom($emailAddress, $name);
  29. if(!$name) $this->mailer->setFrom($emailAddress);
  30. }
  31.  
  32. private function set_body($content) {
  33. $this->mailer->Body = $content;
  34. }
  35.  
  36. public function add_recipient($emailAddress, $name = false) {
  37. if($name) $this->mailer->addAddress($emailAddress, $name);
  38. if(!$name) $this->mailer->addAddress($emailAddress);
  39. }
  40.  
  41. public function status() {
  42. if($this->sent) {
  43. return true;
  44. };
  45. return false;
  46. }
  47.  
  48. public function send_mail($content, $subject = '---') {
  49. $this->set_from();
  50. $this->set_subject($subject);
  51. $this->set_body($content);
  52. $this->mailer->isHTML(true);
  53.  
  54. $this->sent = $this->mailer->send();
  55. }
  56.  
  57. public function send_activation($code) {
  58. $placeholders = array('{{activation_code}}');
  59. $changes = array($code);
  60. $contents = file_get_contents(DOCUMENT_ROOT . '/mail-templates/registration.html');
  61. $contents = str_replace($placeholders, $changes, $contents);
  62.  
  63. $this->send_mail($contents, 'Account activation');
  64. }
  65. }
  66. ?>
  67.  
  68. /*
  69. * Send activation email
  70. */
  71.  
  72. $mailer->add_recipient($emailAddress, $username);
  73. $mailer->send_activation($code);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement