/** * Page のプロセス. * * @return void */ function process() { parent::process(); } 下記追記---------------------------------- /** * 支払方法の一覧にatoneが含まれている場合は、 * 単価の最大値と商品数量の最大値のチェックを行う。 * 最大値チェックに引っかかったものは支払方法の一覧から除く。 * * @see LC_Page_Shopping_Payment::getSelectedDeliv() * @return $arrPayment */ public function getSelectedDeliv(&$objPurchase, &$objCartSess, $deliv_id) { require_once MODULE_REALDIR . 'mdl_atone/class/util/mdl_Atone_SC_Utils.php'; $arrPaymentInfo = parent::getSelectedDeliv($objPurchase, $objCartSess, $deliv_id); $objAtoneUtil = new mdl_Atone_SC_Utils(); // atone決済が含まれているかチェック $atonePaymentId = $objAtoneUtil->getAtoneId(); $isAtone = false; $atoneKey = null; $arrPayment = $arrPaymentInfo['arrPayment']; foreach ($arrPayment as $key => $payment) { if ($payment['payment_id'] == $atonePaymentId) { $isAtone = true; $atoneKey = $key; break; } } // 上限値チェック if ($isAtone == true) { $arrItemInfo = $objAtoneUtil->getCartItemInfo($objCartSess, $objCartSess->getKey()); foreach ($arrItemInfo as $item) { if (MDL_ATONE_ITEM_UNIT_PRICE_MAX < $item['price'] || MDL_ATONE_ITEM_COUNT_MAX < $item['quantity']) { unset($arrPaymentInfo['arrPayment'][$atoneKey]); // 添え字を0から振り直す $arrPaymentInfo['arrPayment'] = array_values($arrPaymentInfo['arrPayment']); break; } } } return $arrPaymentInfo; }