if ($gv_page->fields['order_id'] == $_GET['order']) { break; } $page_cnt++; $gv_page->MoveNext(); } $_GET['page'] = round($page_cnt / MAX_DISPLAY_SEARCH_RESULTS); zen_redirect(zen_href_link_admin(FILENAME_GV_QUEUE, 'gid=' . $gv_id . '&page=' . $_GET['page'])); } // eof: find gv for a particular order and set page if ($_GET['action'] == 'confirmrelease' && BitBase::verifyId($_GET['gid'])) { $gv = $gBitDb->getRow("select release_flag from " . TABLE_COUPON_GV_QUEUE . " where unique_id=?", array($_GET['gid'])); if ($gv['release_flag'] == 'N' && ($gv = $gBitDb->getRow("select customer_id, amount, order_id from " . TABLE_COUPON_GV_QUEUE . " where unique_id=?", array($_GET['gid'])))) { $fromUser = new BitUser($gv['customer_id']); $fromUser->load(); if ($couponCode = CommerceVoucher::customerSendCoupon($fromUser, array('email' => $fromUser->getField('email'), 'to_name' => $fromUser->getDisplayName()), $gv['amount'])) { $gBitSmarty->assign('gvAmount', $currencies->format($gv['amount'])); //send the message $textMessage = $gBitSmarty->fetch('bitpackage:bitcommerce/gv_purchase_email_text.tpl'); $htmlMessage = $gBitSmarty->fetch('bitpackage:bitcommerce/gv_purchase_email_html.tpl'); zen_mail($fromUser->getDisplayName(), $fromUser->getField('email'), TEXT_REDEEM_GV_SUBJECT . TEXT_REDEEM_GV_SUBJECT_ORDER . $gv['order_id'], $textMessage, STORE_NAME, EMAIL_FROM, $htmlMessage, 'gv_queue'); $gBitDb->Execute("update " . TABLE_COUPON_GV_QUEUE . "\n\t\t\t\t\t\t set `release_flag`= 'Y'\n\t\t\t\t\t\t where `unique_id`='" . $_GET['gid'] . "'"); } bit_redirect(BITCOMMERCE_PKG_URL . 'admin/gv_queue.php'); } } ?> <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> <html <?php echo HTML_PARAMS; ?>
$requestAmount = NULL; if (!empty($_POST['amount'])) { $requestAmount = preg_replace('/[^0-9.]/', '', $_POST['amount']); $requestAmountValue = $currencies->value($requestAmount, true, DEFAULT_CURRENCY); } $gvBalance = CommerceVoucher::getGiftAmount(FALSE); if ($requestAction == 'send') { $_SESSION['complete'] = ''; if (!zen_validate_email(trim($_POST['email']))) { $feedback['error']['error_email'] = ERROR_ENTRY_EMAIL_ADDRESS_CHECK; } if (!is_numeric($requestAmount) || $requestAmountValue > $gvBalance) { $feedback['error']['error_amount'] = ERROR_ENTRY_AMOUNT_CHECK; } } elseif ($requestAction == 'process') { if ($couponCode = CommerceVoucher::customerSendCoupon($gBitUser, $_POST, $requestAmountValue)) { $requestAction = 'complete'; // do a fresh calculation after sending an email $gvBalance = CommerceVoucher::getGiftAmount(FALSE); } else { $feedback['error']['error_amount'] = ERROR_ENTRY_AMOUNT_CHECK; $requestAction = 'send'; } } $gBitSmarty->assign('gvBalance', $currencies->format($gvBalance, true)); if ($requestAction == 'complete') { zen_redirect(zen_href_link(FILENAME_GV_SEND, 'action=doneprocess')); } $breadcrumb->add(NAVBAR_TITLE); if ($requestAction == 'doneprocess') { $feedback['success'] = tra(TEXT_SUCCESS);