Ejemplo n.º 1
0
 /**
  * Sends an email notification with the details of the transaction error
  * @param  string $subject email subject line
  * @param  array  $data    transaction data
  * @return void          
  */
 protected function send_error_to_admin($subject, $data = array())
 {
     global $CFG;
     require_once $CFG->libdir . '/eventslib.php';
     $admin = get_admin();
     $site = get_site();
     $message = sprintf("%s: Transaction #%d failed. %s \n\n", $site->fullname, $this->_transaction->get_id(), $subject);
     foreach ($data as $key => $value) {
         $message .= "{$key} => {$value}\n";
     }
     // Update the transaction with the error message details
     $this->_transaction->set_error($message);
     $eventdata = new stdClass();
     $eventdata->component = 'local_moodec';
     $eventdata->name = 'payment_gateway';
     $eventdata->userfrom = $admin;
     $eventdata->userto = $admin;
     $eventdata->subject = $this->_gatewayName . " ERROR: " . $subject;
     $eventdata->fullmessage = $message;
     $eventdata->fullmessageformat = FORMAT_PLAIN;
     $eventdata->fullmessagehtml = '';
     $eventdata->smallmessage = '';
     message_send($eventdata);
 }