/** * マスターデータの登録. * * @access private{ * @param array $arrParams $_POST値 * @param MasterData $masterData MasterData() * @param string $master_data_name 登録対象のマスターデータのテーブル名 * @return void */ public function registMasterData($arrParams, &$masterData, $master_data_name) { $arrTmp = array(); foreach ($arrParams['id'] as $key => $val) { // ID が空のデータは生成しない if ($val != '') { $arrTmp[$val] = $arrParams['name'][$key]; } } // マスターデータを更新 $masterData->objQuery = Application::alias('eccube.query'); $masterData->objQuery->begin(); $masterData->deleteMasterData($master_data_name, false); // TODO カラム名はメタデータから取得した方が良い $masterData->registMasterData($master_data_name, array('id', 'name', 'rank'), $arrTmp, false); $masterData->objQuery->commit(); }
/** * パラメーターのキーを配列で返す. * * @access private * @param MasterData $masterData * @return array パラメーターのキーの配列 */ public function getParamKeys(&$masterData) { $keys = array(); $i = 0; foreach ($masterData->getDBMasterData('mtb_constants') as $key => $val) { $keys[$i] = $key; $i++; } return $keys; }