function commerce_authnet_aim_credit_form_validate in Commerce Authorize.Net 7
Validate handler: check the credit amount before attempting credit request.
File
- includes/
commerce_authnet.admin.inc, line 234 - Administrative forms for the Authorize.Net module.
Code
function commerce_authnet_aim_credit_form_validate($form, &$form_state) {
$transaction = $form_state['transaction'];
$amount = $form_state['values']['amount'];
// Ensure a positive numeric amount has been entered for credit.
if (!is_numeric($amount) || $amount <= 0) {
form_set_error('amount', t('You must specify a positive numeric amount to credit.'));
}
// Ensure the amount is less than or equal to the captured amount.
if ($amount > commerce_currency_amount_to_decimal($transaction->amount, $transaction->currency_code)) {
form_set_error('amount', t('You cannot credit more than you captured through Authorize.Net.'));
}
// If the transaction is older than 120 days, display an error message and redirect.
if (time() - $transaction->created > 86400 * 120) {
drupal_set_message(t('This capture has passed its 120 day limit for issuing credits.'), 'error');
drupal_goto('admin/commerce/orders/' . $form_state['order']->order_id . '/payment');
}
}