Guest User

Untitled

a guest
Nov 17th, 2018
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. function onBeforeWrite() {
  2.  
  3. if (!self::$has_written && $this->isChanged('Date', 2) && $this->isChanged('SendEmail', 2)) {
  4.  
  5. $NewsletterFile = DataObject::get_by_id("File", $this->NewsletterAttachmentID);
  6. $NewsletterGroup = DataObject::get_by_id("Group", '5');
  7.  
  8.  
  9. $data['URL'] = $NewsletterFile->Filename;
  10. $data['Date'] = date('d/m/Y', strtotime($this->Date));
  11.  
  12. $this->EmailsNotSent()->addMany($NewsletterGroup->Members());
  13.  
  14. foreach ($NewsletterGroup->Members() as $member) {
  15.  
  16. $From = 'test@test.com';
  17. $To = $member->Email;
  18. $Subject = "Test Newsletter ".$data['Date'];
  19. $email = new Email($From, $To, $Subject);
  20.  
  21. $attachedfile = $NewsletterFile->Filename;
  22. $email->attachFile($attachedfile, 'Newsletter-'.$this->Date.'.pdf');
  23.  
  24. $email->setTemplate('WeeklyNewsletterEmail');
  25.  
  26. $email->populateTemplate($data);
  27.  
  28. $email->send();
  29.  
  30. $this->EmailsNotSent()-> remove($member);
  31. usleep(2000);
  32. self::$has_written = true;
  33.  
  34. }}
  35.  
  36. parent::onBeforeWrite();
  37. }
Add Comment
Please, Sign In to add comment