関数
PurchaseSanityChecks::comboSetItemChargeTypeIsValid( int $comboSetId, array $grouptoitemmap )
パラメータ パラメータ
- $comboSetId
(数値) (必須)
- $grouptoitemmap
(配列) (必須)
ファイル: src/API/PurchaseSanityChecks.php
public static function comboSetItemChargeTypeIsValid($comboSetId, $grouptoitemmap) { global $usces; $comboSetId = (int)$comboSetId; $comboset = ComboSet::getComboSetById($comboSetId); if ($comboset instanceof GenericError) { return $comboset; } $chargetype = strtolower((string)$usces->getItemChargingType($comboset->getPostId())); if ($chargetype === 'once') { $grouptoitemmap = Cart::sanitizeComboSetSelections($grouptoitemmap); foreach ($grouptoitemmap as $groupid => $itemids) { $group = ComboGroup::getComboGroupById($groupid); if (empty($group)) { continue; } foreach ($itemids as $itemid) { $item = GroupItem::getGroupItemById($itemid); if (empty($item)) { continue; } $gichargetype = strtolower((string)$usces->getItemChargingType($item->getPostId())); if ($gichargetype === 'continue') { $mvars = [__('Normal Charging', 'dlseller'), __('Continuation Charging', 'dlseller')]; $error = Master::getErrorStore()->getErrorResponse( ErrorStore::INVALID_CHARGE_TYPE_COMBINATION, $mvars, [], $mvars ); $error->setLogger(new Logger())->setData([ 'comboSet' => $comboset->getDataForLog(), 'welitemSkuMetaId' => $item->getSkuMetaId(), ]); return $error; } } } } return true; }