Example #1
0
 /**
  * afterSave method
  *
  * If the user's password, email or username are changed notify the user by email
  *
  * @param mixed $created
  * @return void
  * @access public
  */
 function afterSave(Model $Model, $created)
 {
     if ($created) {
         if ($this->settings[$Model->alias]['sendEmails']['welcome']) {
             $data[$Model->alias]['emailType'] = 'private';
             $data[$Model->alias]['token'] = $Model->token();
             if ($this->settings[$Model->alias]['sendEmails']['welcome'] === 'noAutoSend') {
                 $autoSend = false;
             } else {
                 $autoSend = true;
             }
             if (!empty($this->settings[$Model->alias]['sendEmails']['welcome']['subject'])) {
                 $subject = $this->settings[$Model->alias]['sendEmails']['welcome']['subject'];
             } else {
                 $subject = $this->_defaultSettings['sendEmails']['welcome']['subject'];
             }
             $data[$Model->alias]['from'] = Configure::read('Site.email');
             $this->sendMail($Model, 'welcome', $data, $subject, $autoSend);
         }
         return;
     }
     if (!$this->settings[$Model->alias]['sendEmails']['accountChange']) {
         return;
     }
     if (!empty($this->settings[$Model->alias]['sendEmails']['accountChange']['subject'])) {
         $subject = $this->settings[$Model->alias]['sendEmails']['accountChange']['subject'];
     } else {
         $subject = $this->_defaultSettings['sendEmails']['accountChange']['subject'];
     }
     extract($this->settings[$Model->alias]);
     if (!empty($__passwordChanged)) {
         $data[$Model->alias]['change'] = 'password';
         $data[$Model->alias]['emailType'] = 'private';
         $this->sendMail($Model, 'account_change', $data, $subject);
         unset($this->settings[$Model->alias]['__passwordChanged']);
     }
     if (!empty($__emailChanged)) {
         $data[$Model->alias]['to'] = $__emailChanged;
         $data[$Model->alias]['change'] = 'email';
         $data[$Model->alias]['oldValue'] = $__emailChanged;
         $data[$Model->alias]['emailType'] = 'private';
         $this->sendMail($Model, 'account_change', $data, $subject);
         unset($this->settings[$Model->alias]['__emailChanged']);
     }
     if (!empty($__usernameChanged)) {
         $data[$Model->alias]['change'] = 'username';
         $data[$Model->alias]['oldValue'] = $__usernameChanged;
         $data[$Model->alias]['emailType'] = 'private';
         $this->sendMail($Model, 'account_change', $data, $subject);
         unset($this->settings[$Model->alias]['__usernameChanged']);
     }
 }