From: ethem Date: Mon, 24 Jul 2006 12:19:20 +0000 (+0000) Subject: * Update record as soon as possible. If update/insert record fails email to admin... X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=fc9e83ed5c09e4c07865baef0307cd7b1bae9b1f;p=moodle.git * Update record as soon as possible. If update/insert record fails email to admin to have update manually. * ignore_user_abort(true) at critical section (before fwrite($fp, "POST /gateway/transact.dll). This is last change to ignore request for user. * Made some functions "static" to call function directly. So, no need new enrolment_plugin_authorize() instance. Now, these are static: get_list_of_creditcards, zero_cost, get_course_cost, prevent_double_paid, email_to_admin, check_openssl_loaded * Some mtrace cleanup. Removed default new line. This is big work. When PHP5 is required for moodle in the future, I will add static modifier to functions. Now and future, this plugin is/will unbreakable; Merged from MOODLE_16_STABLE. :) --- diff --git a/enrol/authorize/authorizenetlib.php b/enrol/authorize/authorizenetlib.php index 978d7085bf..8759dd85e5 100644 --- a/enrol/authorize/authorizenetlib.php +++ b/enrol/authorize/authorizenetlib.php @@ -15,8 +15,8 @@ require_once('const.php'); /** * Gets settlement date and time * - * @param int $time Processed time, usually now. - * @return int Settlement date + * @param int $time Time processed, usually now. + * @return int Settlement date and time */ function authorize_getsettletime($time) { @@ -54,10 +54,6 @@ function authorize_expired(&$order) { static $timediff30; - if (empty($timediff30)) { - $timediff30 = authorize_getsettletime(time()) - (30 * 24 * 3600); - } - if ($order->status == AN_STATUS_EXPIRE) { return true; } @@ -65,24 +61,27 @@ function authorize_expired(&$order) return false; } - $exp = (authorize_getsettletime($order->timecreated) < $timediff30); + if (empty($timediff30)) { + $timediff30 = authorize_getsettletime(time()) - (30 * 24 * 3600); + } - if ($exp) { + $isexpired = (authorize_getsettletime($order->timecreated) < $timediff30); + if ($isexpired) { $order->status = AN_STATUS_EXPIRE; update_record('enrol_authorize', $order); } - - return $exp; + return $isexpired; } /** - * Performs an action on authorize.net + * Performs an action on authorize.net and updates/inserts records. If record update fails, + * sends email to admin. * * @param object &$order Which transaction data will be sent. See enrol_authorize table. - * @param string &$message Information about error messages. - * @param object &$extra Extra transaction data. + * @param string &$message Information about error message if this function returns false. + * @param object &$extra Extra data that used for refunding and credit card information. * @param int $action Which action will be performed. See AN_ACTION_* - * @return bool true, transaction was successful, false otherwise. + * @return bool true Transaction was successful, false otherwise. Use $message for reason. * @author Ethem Evlice * @uses $CFG */ @@ -117,12 +116,12 @@ function authorize_action(&$order, &$message, &$extra, $action=AN_ACTION_NONE) $action = intval($action); - if (empty($order) || empty($order->id)) { + if (empty($order) or empty($order->id)) { $message = "Check order->id!"; return false; } - elseif ($action <= AN_ACTION_NONE || $action > AN_ACTION_VOID) { - $message = "No action taken!"; + elseif ($action <= AN_ACTION_NONE or $action > AN_ACTION_VOID) { + $message = "Invalid action!"; return false; } @@ -187,11 +186,10 @@ function authorize_action(&$order, &$message, &$extra, $action=AN_ACTION_NONE) return false; } if (empty($extra)) { - $message = "need extra fields for CREDIT!"; + $message = "Need extra fields to REFUND!"; return false; } $total = floatval($extra->sum) + floatval($extra->amount); - unset($extra->sum); // this is not used in refunds table. if (($extra->amount == 0) || ($total > $order->amount)) { $message = "Can be credited up to original amount."; return false; @@ -218,7 +216,7 @@ function authorize_action(&$order, &$message, &$extra, $action=AN_ACTION_NONE) } } else { - $message = "Order status must be authorized, auth/captured or refunded!"; + $message = "Order status must be authorized/pending capture or captured-refunded/pending settlement!"; return false; } $poststring .= '&x_type=VOID&x_trans_id=' . urlencode($order->transid); @@ -226,7 +224,7 @@ function authorize_action(&$order, &$message, &$extra, $action=AN_ACTION_NONE) } default: { - $message = "Missing action? $action"; + $message = "Invalid action: $action"; return false; } } @@ -243,6 +241,7 @@ function authorize_action(&$order, &$message, &$extra, $action=AN_ACTION_NONE) return false; } + @ignore_user_abort(true); // this is critical section fwrite($fp, "POST /gateway/transact.dll HTTP/1.0\r\n" . "Host: $host\r\n" . $referer . "Content-type: application/x-www-form-urlencoded\r\n" . @@ -297,6 +296,10 @@ function authorize_action(&$order, &$message, &$extra, $action=AN_ACTION_NONE) $order->status = AN_STATUS_AUTHCAPTURE; $order->settletime = authorize_getsettletime(time()); } + if (! update_record('enrol_authorize', $order)) { + enrolment_plugin_authorize::email_to_admin("Error while trying to update data " . + "in table enrol_authorize. Please edit manually this record: ID=$order->id.", $order); + } break; } case AN_ACTION_CREDIT: @@ -306,12 +309,25 @@ function authorize_action(&$order, &$message, &$extra, $action=AN_ACTION_NONE) $extra->status = AN_STATUS_CREDIT; $extra->transid = $transid; $extra->settletime = authorize_getsettletime(time()); + unset($extra->sum); // this is not used in refunds table. + if (! $extra->id = insert_record('enrol_authorize_refunds', $extra)) { + enrolment_plugin_authorize::email_to_admin("Error while trying to insert data " . + "into table enrol_authorize_refunds. Please add manually this record:", $extra); + } break; } case AN_ACTION_VOID: { - $order->status = AN_STATUS_VOID; + $tableupdate = 'enrol_authorize'; + if ($order->status == AN_STATUS_CREDIT) { + $tableupdate = 'enrol_authorize_refunds'; + } // dont't update settletime + $order->status = AN_STATUS_VOID; + if (! update_record($tableupdate, $order)) { + enrolment_plugin_authorize::email_to_admin("Error while trying to update data " . + "in table $tableupdate. Please edit manually this record: ID=$order->id.", $order); + } break; } default: return false; diff --git a/enrol/authorize/config.html b/enrol/authorize/config.html index d9ffa3e57a..71b096b8e1 100755 --- a/enrol/authorize/config.html +++ b/enrol/authorize/config.html @@ -31,7 +31,7 @@ if (!isset($frm->an_cutoff_hour)) { } if (!isset($frm->acceptccs)) { - $frm->acceptccs = array_keys(get_list_of_creditcards()); + $frm->acceptccs = array_keys(enrolment_plugin_authorize::get_list_of_creditcards()); $CFG->an_acceptccs = implode(',', $frm->acceptccs); } @@ -127,7 +127,7 @@ if (!isset($frm->acceptccs)) { an_acceptccs: $val) { print_checkbox('acceptccs[]', $key, stristr($CFG->an_acceptccs, $key) !== false, $val); echo "
\n"; } diff --git a/enrol/authorize/enrol.html b/enrol/authorize/enrol.html index 5dcc2267e6..11386cf750 100755 --- a/enrol/authorize/enrol.html +++ b/enrol/authorize/enrol.html @@ -1,6 +1,6 @@ prevent_double_paid($course); +enrolment_plugin_authorize::prevent_double_paid($course); $formvars = array('password', 'ccaddress', 'cccity', 'ccstate', 'cccountry', 'cczip', 'ccfirstname', 'cclastname', 'cc', 'ccexpiremm', 'ccexpireyyyy', 'cctype', 'cvv'); @@ -10,7 +10,7 @@ foreach ($formvars as $var) { } } -$curcost = $this->get_course_cost($course); +$curcost = enrolment_plugin_authorize::get_course_cost($course); $userfirstname = empty($form->ccfirstname) ? $USER->firstname : $form->ccfirstname; $userlastname = empty($form->cclastname) ? $USER->lastname : $form->cclastname; $useraddress = empty($form->ccaddress) ? $USER->address : $form->ccaddress; @@ -60,7 +60,7 @@ $usercountry = empty($form->cccountry) ? $USER->country : $form->cccountry; : cctype); + choose_from_menu(enrolment_plugin_authorize::get_list_of_creditcards(), 'cctype', $form->cctype); if (!empty($this->ccerrors['cctype'])) { formerr($this->ccerrors['cctype']); } ?> diff --git a/enrol/authorize/enrol.php b/enrol/authorize/enrol.php index 945a45ceeb..57398cea78 100755 --- a/enrol/authorize/enrol.php +++ b/enrol/authorize/enrol.php @@ -3,42 +3,6 @@ require_once($CFG->dirroot.'/enrol/enrol.class.php'); require_once($CFG->dirroot.'/enrol/authorize/const.php'); -/** - * get_list_of_creditcards - * - * @param bool $getall - * @return array - */ -function get_list_of_creditcards($getall = false) -{ - global $CFG; - - $alltypes = array( - 'mcd' => 'Master Card', - 'vis' => 'Visa', - 'amx' => 'American Express', - 'dsc' => 'Discover', - 'dnc' => 'Diners Club', - 'jcb' => 'JCB', - 'swi' => 'Switch', - 'dlt' => 'Delta', - 'enr' => 'EnRoute' - ); - - if ($getall || empty($CFG->an_acceptccs)) { - return $alltypes; - } - - $ret = array(); - $ccs = explode(',', $CFG->an_acceptccs); - - foreach ($ccs as $key) { - $ret[$key] = $alltypes[$key]; - } - - return $ret; -} - /** * enrolment_plugin_authorize * @@ -100,7 +64,7 @@ class enrolment_plugin_authorize function print_entry($course) { global $CFG, $USER, $form; - $zerocost = $this->zero_cost($course); + $zerocost = enrolment_plugin_authorize::zero_cost($course); if ($zerocost) { $manual = enrolment_factory::factory('manual'); if (!empty($this->errormsg)) { @@ -110,8 +74,6 @@ class enrolment_plugin_authorize return; } - httpsrequired(); - if (empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] == 'off') { if (empty($CFG->loginhttps)) { error(get_string('httpsrequired', 'enrol_authorize')); @@ -122,6 +84,8 @@ class enrolment_plugin_authorize } } + httpsrequired(); + $strcourses = get_string('courses'); $strloginto = get_string('loginto', '', $course->shortname); @@ -132,17 +96,18 @@ class enrolment_plugin_authorize print_heading(get_string('choosemethod', 'enrol_authorize'), 'center'); } + print_simple_box_start('center'); if (isguest()) { - $curcost = $this->get_course_cost($course); - echo '

'.get_string('paymentrequired').'

'; + $curcost = enrolment_plugin_authorize::get_course_cost($course); + echo '
'; + echo '

'.get_string('paymentrequired').'

'; echo '

'.get_string('cost').": $curcost[currency] $curcost[cost]".'

'; echo '

'.get_string('loginsite').'

'; echo '
'; } else { - print_simple_box_start('center'); include($CFG->dirroot.'/enrol/authorize/enrol.html'); - print_simple_box_end(); } + print_simple_box_end(); if ($course->password) { $password = ''; @@ -162,7 +127,8 @@ class enrolment_plugin_authorize * @access public */ function check_entry($form, $course) { - if ($this->zero_cost($course) or (!empty($course->password) and !empty($form->password))) { + if (enrolment_plugin_authorize::zero_cost($course) or + (!empty($course->password) and !empty($form->password))) { $manual = enrolment_factory::factory('manual'); $manual->check_entry($form, $course); if (!empty($manual->errormsg)) { @@ -187,10 +153,10 @@ class enrolment_plugin_authorize global $CFG, $USER, $SESSION; require_once('authorizenetlib.php'); - $this->prevent_double_paid($course); + enrolment_plugin_authorize::prevent_double_paid($course); $useripno = getremoteaddr(); - $curcost = $this->get_course_cost($course); + $curcost = enrolment_plugin_authorize::get_course_cost($course); $exp_date = sprintf("%02d", $form->ccexpiremm) . $form->ccexpireyyyy; // NEW ORDER @@ -208,7 +174,7 @@ class enrolment_plugin_authorize $order->currency = $curcost['currency']; $order->id = insert_record("enrol_authorize", $order); if (!$order->id) { - $this->email_to_admin("Error while trying to insert new data", $order); + enrolment_plugin_authorize::email_to_admin("Error while trying to insert new data", $order); $this->ccerrors['header'] = "Insert record error. Admin has been notified!"; return; } @@ -242,7 +208,7 @@ class enrolment_plugin_authorize $action = $an_review ? AN_ACTION_AUTH_ONLY : AN_ACTION_AUTH_CAPTURE; $success = authorize_action($order, $message, $extra, $action); if (!$success) { - $this->email_to_admin($message, $order); + enrolment_plugin_authorize::email_to_admin($message, $order); $this->ccerrors['header'] = $message; return; } @@ -261,43 +227,31 @@ class enrolment_plugin_authorize return; } - if ($an_review) { // review enabled, inform admin and redirect to main page. - if (update_record("enrol_authorize", $order)) { - $a = new stdClass; - $a->url = "$CFG->wwwroot/enrol/authorize/index.php?order=$order->id"; - $a->orderid = $order->id; - $a->transid = $order->transid; - $a->amount = "$order->currency $order->amount"; - $a->expireon = userdate(authorize_getsettletime($timenow + (30 * 3600 * 24))); - $a->captureon = userdate(authorize_getsettletime($timenow + (intval($CFG->an_capture_day) * 3600 * 24))); - $a->course = $course->fullname; - $a->user = fullname($USER); - $a->acstatus = ($CFG->an_capture_day > 0) ? get_string('yes') : get_string('no'); - $emailmessage = get_string('adminneworder', 'enrol_authorize', $a); - $a = new stdClass; - $a->course = $course->shortname; - $a->orderid = $order->id; - $emailsubject = get_string('adminnewordersubject', 'enrol_authorize', $a); - $admins = get_admins(); - foreach ($admins as $admin) { - email_to_user($admin, $USER, $emailsubject, $emailmessage); - } - } - else { - $this->email_to_admin("Error while trying to update data. Please edit manually this record: " . - "ID=$order->id in enrol_authorize table.", $order); + if ($an_review) { // review enabled, inform admin and redirect user to main page. + $a = new stdClass; + $a->url = "$CFG->wwwroot/enrol/authorize/index.php?order=$order->id"; + $a->orderid = $order->id; + $a->transid = $order->transid; + $a->amount = "$order->currency $order->amount"; + $a->expireon = userdate(authorize_getsettletime($timenow + (30 * 3600 * 24))); + $a->captureon = userdate(authorize_getsettletime($timenow + (intval($CFG->an_capture_day) * 3600 * 24))); + $a->course = $course->fullname; + $a->user = fullname($USER); + $a->acstatus = ($CFG->an_capture_day > 0) ? get_string('yes') : get_string('no'); + $emailmessage = get_string('adminneworder', 'enrol_authorize', $a); + $a = new stdClass; + $a->course = $course->shortname; + $a->orderid = $order->id; + $emailsubject = get_string('adminnewordersubject', 'enrol_authorize', $a); + $admins = get_admins(); + foreach ($admins as $admin) { + email_to_user($admin, $USER, $emailsubject, $emailmessage); } redirect($CFG->wwwroot, get_string("reviewnotify", "enrol_authorize"), '30'); return; } - // credit card captured, ENROL student... - if (!update_record("enrol_authorize", $order)) { - $this->email_to_admin("Error while trying to update data. Please edit manually this record: " . - "ID=$order->id in enrol_authorize table.", $order); - // no error occured??? enrol student??? return??? Database busy??? - } - + // Credit card captured, ENROL student now... if ($course->enrolperiod) { $timestart = $timenow; $timeend = $timestart + $course->enrolperiod; @@ -338,7 +292,8 @@ class enrolment_plugin_authorize } } } else { - $this->email_to_admin("Error while trying to enrol ".fullname($USER)." in '$course->fullname'", $order); + enrolment_plugin_authorize::email_to_admin("Error while trying to enrol " . + fullname($USER) . " in '$course->fullname'", $order); } if ($SESSION->wantsurl) { @@ -387,7 +342,8 @@ class enrolment_plugin_authorize $this->ccerrors['cvv'] = get_string('missingcvv', 'enrol_authorize'); } - if (empty($form->cctype) || !in_array($form->cctype, array_keys(get_list_of_creditcards()))) { + if (empty($form->cctype) or + !in_array($form->cctype, array_keys(enrolment_plugin_authorize::get_list_of_creditcards()))) { $this->ccerrors['cctype'] = get_string('missingcctype', 'enrol_authorize'); } @@ -414,45 +370,6 @@ class enrolment_plugin_authorize return true; } - /** - * zero_cost - * - * @param unknown_type $course - * @return number - * @access private - */ - function zero_cost($course) { - $curcost = $this->get_course_cost($course); - return (abs($curcost['cost']) < 0.01); - } - - - /** - * get_course_cost - * - * @param object $course - * @return array - * @access private - */ - function get_course_cost($course) - { - global $CFG; - - $cost = (float)0; - $currency = (!empty($course->currency)) - ? $course->currency :( empty($CFG->enrol_currency) - ? 'USD' : $CFG->enrol_currency ); - - if (!empty($course->cost)) { - $cost = (float)(((float)$course->cost) < 0) ? $CFG->enrol_cost : $course->cost; - } - - $cost = format_float($cost, 2); - $ret = array('cost' => $cost, 'currency' => $currency); - - return $ret; - } - /** * Gets access icons. @@ -465,7 +382,7 @@ class enrolment_plugin_authorize $manual = enrolment_factory::factory('manual'); $str = $manual->get_access_icons($course); - $curcost = $this->get_course_cost($course); + $curcost = enrolment_plugin_authorize::get_course_cost($course); if (abs($curcost['cost']) > 0.00) { $strrequirespayment = get_string("requirespayment"); @@ -498,7 +415,7 @@ class enrolment_plugin_authorize { global $CFG; - if (!$this->check_openssl_loaded()) { + if (! enrolment_plugin_authorize::check_openssl_loaded()) { notify('PHP must be compiled with SSL support (--with-openssl)'); } @@ -561,7 +478,9 @@ class enrolment_plugin_authorize set_config('an_teachermanagepay', optional_param('an_teachermanagepay', 0, PARAM_BOOL)); set_config('an_referer', optional_param('an_referer', 'http://', PARAM_URL)); - $acceptccs = optional_param('acceptccs', array_keys(get_list_of_creditcards()), PARAM_ALPHA); + $acceptccs = optional_param('acceptccs', + array_keys(enrolment_plugin_authorize::get_list_of_creditcards()), + PARAM_ALPHA); set_config('an_acceptccs', implode(',', $acceptccs)); $cutoff_hour = optional_param('an_cutoff_hour', 0, PARAM_INT); @@ -597,7 +516,7 @@ class enrolment_plugin_authorize $passwordval = optional_param('an_password', ''); if ((empty($CFG->loginhttps) and substr($CFG->wwwroot, 0, 5) !== 'https') || - !$this->check_openssl_loaded() || + !enrolment_plugin_authorize::check_openssl_loaded() || empty($loginval) || (empty($tranval) and empty($passwordval))) { return false; @@ -610,13 +529,51 @@ class enrolment_plugin_authorize return true; } + /** + * zero_cost (static method) + * + * @param unknown_type $course + * @return number + * @static + */ + function zero_cost($course) { + $curcost = enrolment_plugin_authorize::get_course_cost($course); + return (abs($curcost['cost']) < 0.01); + } + /** - * email_to_admin + * get_course_cost (static method) + * + * @param object $course + * @return array + * @static + */ + function get_course_cost($course) + { + global $CFG; + + $cost = (float)0; + $currency = (!empty($course->currency)) + ? $course->currency :( empty($CFG->enrol_currency) + ? 'USD' : $CFG->enrol_currency ); + + if (!empty($course->cost)) { + $cost = (float)(((float)$course->cost) < 0) ? $CFG->enrol_cost : $course->cost; + } + + $cost = format_float($cost, 2); + $ret = array('cost' => $cost, 'currency' => $currency); + + return $ret; + } + + /** + * email_to_admin (static method) * * @param string $subject * @param mixed $data - * @access private + * @static */ function email_to_admin($subject, $data) { @@ -625,19 +582,16 @@ class enrolment_plugin_authorize $admin = get_admin(); $data = (array)$data; - $message = "$SITE->fullname: Transaction failed.\n\n$subject\n\n"; - foreach ($data as $key => $value) { - $message .= "$key => $value\n"; - } - email_to_user($admin, $admin, "Authorize.net ERROR: ".$subject, $message); + $message = "$SITE->fullname: Transaction failed.\n\n$subject\n\n"; + $message .= print_r($data, true); + email_to_user($admin, $admin, "$SITE->fullname: Authorize.net ERROR", $message); } - /** - * prevent_double_paid + * prevent_double_paid (static method) * * @param object $course - * @access private + * @static */ function prevent_double_paid($course) { @@ -659,17 +613,51 @@ class enrolment_plugin_authorize } } - /** - * check_openssl_loaded + * check_openssl_loaded (static method) * * @return bool - * @access private + * @static */ function check_openssl_loaded() { return extension_loaded('openssl'); } + /** + * get_list_of_creditcards (static method) + * + * @param bool $getall + * @return array + * @static + */ + function get_list_of_creditcards($getall = false) + { + global $CFG; + + $alltypes = array( + 'mcd' => 'Master Card', + 'vis' => 'Visa', + 'amx' => 'American Express', + 'dsc' => 'Discover', + 'dnc' => 'Diners Club', + 'jcb' => 'JCB', + 'swi' => 'Switch', + 'dlt' => 'Delta', + 'enr' => 'EnRoute' + ); + + if ($getall or empty($CFG->an_acceptccs)) { + return $alltypes; + } + + $ret = array(); + $ccs = explode(',', $CFG->an_acceptccs); + foreach ($ccs as $key) { + $ret[$key] = $alltypes[$key]; + } + return $ret; + } + /** * This function is run by admin/cron.php every time if admin has enabled this plugin. @@ -698,17 +686,17 @@ class enrolment_plugin_authorize if (intval($mconfig->an_dailysettlement) < $settlementtime) { set_config('an_dailysettlement', $settlementtime, 'enrol/authorize'); - mtrace(" daily cron: some cleanups and sending email to admins the count of pending orders expiring", "..."); + mtrace(" daily cron; some cleanups and sending email to admins the count of pending orders expiring", ": "); $this->cron_daily(); - mtrace("done", "\n"); + mtrace("done"); } mtrace(" scheduled capture", ": "); if (empty($CFG->an_review) or (!empty($CFG->an_test)) or (intval($CFG->an_capture_day) < 1) or - (!$this->check_openssl_loaded())) { - mtrace("disabled", "\n"); + (!enrolment_plugin_authorize::check_openssl_loaded())) { + mtrace("disabled"); return; // order review disabled or test mode or manual capture or openssl wasn't loaded. } @@ -720,7 +708,7 @@ class enrolment_plugin_authorize " AND (E.timecreated < '$timediffcnf') AND (E.timecreated > '$timediff30')"; if (!$orders = get_records_sql($sql)) { - mtrace("no pending orders", "\n"); + mtrace("no pending orders"); return; } @@ -730,11 +718,11 @@ class enrolment_plugin_authorize $ordercount = count((array)$orders); if (($ordercount * $eachconn) + intval($mconfig->an_lastcron) > $timenow) { - mtrace("blocked", "\n"); + mtrace("blocked"); return; } - mtrace($ordercount ." orders are processing", "\n"); + mtrace(" $ordercount orders are being processed now", ": "); $faults = ''; $sendem = array(); @@ -747,10 +735,6 @@ class enrolment_plugin_authorize $extra = NULL; $success = authorize_action($order, $message, $extra, AN_ACTION_PRIOR_AUTH_CAPTURE); if ($success) { - if (!update_record("enrol_authorize", $order)) { - $this->email_to_admin("Error while trying to update data. Please edit manually this record: " . - "ID=$order->id in enrol_authorize table.", $order); - } $timestart = $timeend = 0; if ($order->enrolperiod) { $timestart = $timenow; @@ -775,6 +759,8 @@ class enrolment_plugin_authorize } } + mtrace("processed"); + $timenow = time(); $elapsed = $timenow - $elapsed; $eachconn = ceil($elapsed / $ordercount); @@ -821,7 +807,7 @@ class enrolment_plugin_authorize $emailmessage); $i = $j; } - mtrace("sent", "\n"); + mtrace("sent"); } /** diff --git a/enrol/authorize/locallib.php b/enrol/authorize/locallib.php index 733f3a323d..50eae6e1ee 100644 --- a/enrol/authorize/locallib.php +++ b/enrol/authorize/locallib.php @@ -5,6 +5,7 @@ if (!defined('MOODLE_INTERNAL')) { } require_once('const.php'); +require_once('enrol.php'); require_once('authorizenetlib.php'); define('ORDER_CAPTURE', 'capture'); @@ -224,7 +225,6 @@ function authorize_print_order_details($orderno) $message = ''; $extra = NULL; $success = authorize_action($order, $message, $extra, AN_ACTION_PRIOR_AUTH_CAPTURE); - update_record("enrol_authorize", $order); // May be expired. if (!$success) { $table->data[] = array("$strs->error:", $message); } @@ -301,17 +301,8 @@ function authorize_print_order_details($orderno) $success = authorize_action($order, $message, $extra, AN_ACTION_CREDIT); if ($success) { if (empty($CFG->an_test)) { - $extra->id = insert_record("enrol_authorize_refunds", $extra); if (empty($extra->id)) { - $emailsubject = "Authorize.net: insert record error"; - $emailmessage = "Error while trying to insert new data to enrol_authorize_refunds table:\n"; - $data = (array)$extra; - foreach ($data as $key => $value) { - $emailmessage .= "$key => $value\n"; - } - $adminuser = get_admin(); - email_to_user($adminuser, $adminuser, $emailsubject, $emailmessage); - $table->data[] = array("$strs->error:", $emailmessage); + $table->data[] = array("$strs->error:", 'insert record error'); } else { if (!empty($unenrol)) { @@ -353,7 +344,6 @@ function authorize_print_order_details($orderno) $extra = NULL; $message = ''; $success = authorize_action($order, $message, $extra, AN_ACTION_VOID); - update_record("enrol_authorize", $order); // May be expired. if ($success) { if (empty($CFG->an_test)) { redirect("index.php?order=$orderno"); @@ -395,7 +385,6 @@ function authorize_print_order_details($orderno) $message = ''; $extra = NULL; $success = authorize_action($suborder, $message, $extra, AN_ACTION_VOID); - update_record("enrol_authorize_refunds", $suborder); // May be expired. if ($success) { if (empty($CFG->an_test)) { if (!empty($unenrol)) {