Exemplo n.º 1
0
 function update(&$callingClass, $notifier, $paramsArray)
 {
     if ($notifier != "NOTIFY_CHECKOUT_PROCESS_BEGIN") {
         return;
     }
     // セッションが存在する場合は無処理
     if ($_SESSION['customer_id']) {
         return;
     }
     // セッションがタイムアウトした
     // パラメータの確認
     if (!isset($_REQUEST['SID']) || !isset($_REQUEST['FUKA'])) {
         return;
     }
     // 存在チェック
     $sid = $_REQUEST['SID'];
     $fuka = $_REQUEST['FUKA'];
     if (!digitalchcek_is_exist($sid, $fuka)) {
         return;
     }
     // 状態チェック
     // タイムアウトしたが、既に精算済みか?
     if (digitalchcek_get_status($sid, $fuka, 'cc') == 'success') {
         $customers_id = digitalchcek_get_customers_id($sid, $fuka);
         require_once "includes/languages/" . $_SESSION['language'] . "/modules/payment/digitalcheck_cc.php";
         $email_timeout = sprintf(MODULE_PAYMENT_DIGITALCHECK_CC_MAIL_TIMEOUT, $customers_id, $sid);
         zen_mail('', STORE_OWNER_EMAIL_ADDRESS, MODULE_PAYMENT_DIGITALCHECK_CC_TEXT_TIMEOUT, $email_timeout, STORE_NAME, EMAIL_FROM, $email_timeout, 'digitalcheck cc');
     }
 }
 function before_process()
 {
     global $messageStack;
     // パラメータの確認
     if (!isset($_REQUEST['SID']) || !isset($_REQUEST['FUKA'])) {
         zen_redirect(zen_href_link(FILENAME_DEFAULT));
         return false;
     }
     // 存在チェック
     $sid = $_REQUEST['SID'];
     $fuka = $_REQUEST['FUKA'];
     if (!digitalchcek_is_exist($sid, $fuka)) {
         zen_redirect(zen_href_link(FILENAME_DEFAULT));
         return false;
     }
     // 状態チェック
     if (digitalchcek_get_status($sid, $fuka, 'cc') != 'success') {
         $messageStack->add_session('checkout_payment', MODULE_PAYMENT_DIGITALCHECK_CC_TEXT_NOT_SUCCESS, 'error');
         zen_redirect(zen_href_link(FILENAME_CHECKOUT_PAYMENT));
         return false;
     }
     return false;
 }