/** * * @param array $arrSelfInfo */ public function __construct(array $arrSelfInfo) { parent::__construct($arrSelfInfo); $this->objQuery = new SC_Query_Ex(); $this->objDb = new SC_Helper_DB_Ex(); $this->masterdata = new SC_DB_MasterData_Ex(); $this->arrConstants = $this->masterdata->getDbMasterData("mtb_constants"); $this->objManager = $this->getDbManager(); $this->dbi = $this->objManager->getDBInstance(); }
/** * Page を初期化する. * * @return void */ function init() { parent::init(); $this->sid = session_id(); $masterdata = new SC_DB_MasterData_Ex(); $objDb = new SC_Helper_DB_Ex(); if ($objDb->sfColumnExists("atd_mtb_auto_display_status", "id")) { $this->arrAutoDispStatus = $masterdata->getMasterData("atd_mtb_auto_display_status"); } if ($objDb->sfColumnExists("cp_dtb_character", "character_id")) { $this->arrCharacter = $masterdata->getDbMasterData("cp_dtb_character", array("character_id", "character_name", "rank")); } }
/** * Page を初期化する. * * @return void */ function init() { parent::init(); $this->objDb = new SC_Helper_DB_Ex(); $this->objCustomer = new SC_Helper_Customer_Ex(); $masterData = new SC_DB_MasterData_Ex(); // キャリア種別 if ($this->objDb->sfColumnExists("cp_mtb_carrier", "id")) { $this->arrCarrier = $masterData->getMasterData('cp_mtb_carrier'); } // 会員種別 if ($this->objDb->sfColumnExists("cp_mtb_customer_type", "id")) { $this->arrCustomerType = $masterData->getMasterData("cp_mtb_customer_type"); } if ($this->objDb->sfColumnExists("cp_dtb_docomo_mymenu", "id")) { // DoCoMo 月額契約 $this->arrDocomoMymenu = $masterData->getDbMasterData("cp_dtb_docomo_mymenu", explode(",", "site_id,name,price")); } if ($this->objDb->sfColumnExists("cp_dtb_customer_transaction", "id")) { $this->arrAuonePaymentAmmount = array(500 => 500); } }
/** * Page のプロセス. * * @return void */ function process() { SC_Utils_Ex::sfIsSuccess(new SC_Session()); $objView = new SC_AdminView(); $this->arrMasterDataName = $this->getMasterDataNames(array("mtb_pref", "mtb_zip", "mtb_constants")); $masterData = new SC_DB_MasterData_Ex(); if (!isset($_POST["mode"])) { $_POST["mode"] = ""; } switch ($_POST["mode"]) { case "edit": // POST 文字列の妥当性チェック $this->checkMasterDataName(); $this->errorMessage = $this->checkUniqueID(); if (empty($this->errorMessage)) { // 取得したデータからマスタデータを生成 $arrData = array(); foreach ($_POST['id'] as $key => $val) { // ID が空のデータは生成しない if ($val != "") { $arrData[$val] = $_POST['name'][$key]; } } // マスタデータを更新 $masterData->objQuery = new SC_Query(); $masterData->objQuery->begin(); $masterData->deleteMasterData($this->masterDataName, false); // TODO カラム名はメタデータから取得した方が良い $masterData->registMasterData($this->masterDataName, array("id", "name", "rank"), $arrData, false); $masterData->objQuery->commit(); $this->tpl_onload = "window.alert('マスタデータの設定が完了しました。');"; } case "show": // POST 文字列の妥当性チェック $this->checkMasterDataName(); // DB からマスタデータを取得 $this->arrMasterData = $masterData->getDbMasterData($this->masterDataName); break; default: } $objView->assignobj($this); $objView->display(MAIN_FRAME); }