/** * 入力内容のチェックを行なう. * * @param SC_FormParam $objFormParam SC_FormParam インスタンス * @param integer $subtotal 購入金額の小計 * @param integer $max_point 会員の保持ポイント * @return array 入力チェック結果の配列 */ function lfCheckError(&$objFormParam, $subtotal, $max_point) { $objPurchase = new SC_Helper_Purchase_Ex(); // 入力データを渡す。 $arrForm = $objFormParam->getHashArray(); $objErr = new SC_CheckError_Ex($arrForm); $objErr->arrErr = $objFormParam->checkError(); if (USE_POINT === false) { return $objErr->arrErr; } if ($arrForm['point_check'] == '1') { $objErr->doFunc(array('ポイントを使用する', 'point_check'), array('EXIST_CHECK')); $objErr->doFunc(array('ポイント', 'use_point'), array('EXIST_CHECK')); if ($max_point == '') { $max_point = 0; } // FIXME mobile 互換のため br は閉じない... if ($arrForm['use_point'] > $max_point) { $objErr->arrErr['use_point'] = '※ ご利用ポイントが所持ポイントを超えています。<br>'; } if ($arrForm['use_point'] * POINT_VALUE > $subtotal) { $objErr->arrErr['use_point'] = '※ ご利用ポイントがご購入金額を超えています。<br>'; } // ポイント差し引き後の決済方法チェック $arrPayments = $objPurchase->getPaymentsByPaymentsId($arrForm['payment_id']); if ($arrPayments['rule_max'] > $subtotal - $arrForm['use_point'] * POINT_VALUE) { $objErr->arrErr['use_point'] = '※ 選択した支払方法では、ポイントは' . ($subtotal - $arrPayments['rule_max']) . 'ポイントまでご利用いただけます。<br>'; } } return $objErr->arrErr; }
/** * 入力内容のチェックを行なう. * * @param SC_FormParam $objFormParam SC_FormParam インスタンス * @param integer $subtotal 購入金額の小計 * @param integer $max_point 会員の保持ポイント * @return array 入力チェック結果の配列 */ function lfCheckError(&$objFormParam, $subtotal, $max_point) { $objPurchase = new SC_Helper_Purchase_Ex(); // 入力データを渡す。 $arrForm = $objFormParam->getHashArray(); $objErr = new SC_CheckError_Ex($arrForm); $objErr->arrErr = $objFormParam->checkError(); if (USE_POINT === false) { return $objErr->arrErr; } if ($arrForm['point_check'] == '1') { $objErr->doFunc(array(t('c_Use points_01'), 'point_check'), array('EXIST_CHECK')); $objErr->doFunc(array(t('c_Points_01'), 'use_point'), array('EXIST_CHECK')); if ($max_point == '') { $max_point = 0; } // FIXME mobile 互換のため br は閉じない... if ($arrForm['use_point'] > $max_point) { $objErr->arrErr['use_point'] = t('c_* The number of points you want to use exceeds the number of points you have.<br />_01'); } if ($arrForm['use_point'] * POINT_VALUE > $subtotal) { $objErr->arrErr['use_point'] = t('c_* The number of points you want to use exceeds the amount of your purchase.<br />_01'); } // ポイント差し引き後の決済方法チェック $arrPayments = $objPurchase->getPaymentsByPaymentsId($arrForm['payment_id']); if ($arrPayments['rule_max'] > $subtotal - $arrForm['use_point'] * POINT_VALUE) { $objErr->arrErr['use_point'] = t('c_* Based on the selected payment method, it is possible to use (T_ARG1 - T_ARG2) points.<br />_01', array('T_ARG1' => $subtotal, 'T_ARG2' => $arrPayments['rule_max'])); } } return $objErr->arrErr; }