[Svn-src-all:1362] [version-2_5-dev 20252] r20220 からSC_FormParamを使った追加リファクタリング。
homan
admin @ mail.ec-cube.net
2011年 2月 20日 (日) 14:56:01 JST
Subversion committed to /home/svn/open 20252
http://svn.ec-cube.net/open_trac/changeset/20252
┌────────────────────────────┐
│更新者 : homan │
│更新日時: 2011-02-20 14:56:01 +0900 (日, 20 2月 2011)│
└────────────────────────────┘
Log:
--------------------------------------------------------
r20220 からSC_FormParamを使った追加リファクタリング。
関連チケット #1014
Changed: [U:修正,A:追加,D:削除]
--------------------------------------------------------
U branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Maker.php
変更: branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Maker.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Maker.php 2011-02-20 05:37:07 UTC (rev 20251)
+++ branches/version-2_5-dev/data/class/pages/admin/products/LC_Page_Admin_Products_Maker.php 2011-02-20 05:56:01 UTC (rev 20252)
@@ -29,7 +29,6 @@
*
* @package Page
* @author LOCKON CO.,LTD.
- * @version $Id$
*/
class LC_Page_Admin_Products_Maker extends LC_Page_Admin {
@@ -66,32 +65,42 @@
* @return void
*/
function action() {
+ $objFormParam = new SC_FormParam();
- // 認証可否の判定.
+ // 認証可否の判定
SC_Utils_Ex::sfIsSuccess(new SC_Session());
- // POST値の引き継ぎ
- $this->arrForm = $_POST;
+ // パラメータ情報の初期化
+ $this->lfInitParam($objFormParam);
- // 入力文字の変換
- $this->arrForm = $this->lfConvertParam($this->arrForm);
+ // POST値をセット
+ $objFormParam->setParam($_POST);
+
+ // POST値の入力文字変換
+ $objFormParam->convParam();
- // モードによる処理切り替え.
+ // 変換後のPOST値を取得
+ $this->arrForm = $objFormParam->getHashArray();
+
+
+ // モードによる処理切り替え
switch($this->getMode()) {
- // 編集処理.
+ // 編集処理
case 'edit':
+ // 入力文字の変換
+
// エラーチェック
$this->arrErr = $this->lfErrorCheck($this->arrForm);
if(count($this->arrErr) <= 0) {
if($this->arrForm['maker_id'] == "") {
- // メーカー情報新規登録.
+ // メーカー情報新規登録
$this->lfInsert($this->arrForm);
} else {
- // メーカー情報編集.
+ // メーカー情報編集
$this->lfUpdate($this->arrForm);
}
- // 再表示.
+ // 再表示
$this->objDisplay->reload();
} else {
// POSTデータを引き継ぐ
@@ -105,15 +114,19 @@
$this->tpl_maker_id = $this->arrForm['maker_id'];
break;
+ // メーカー順変更
case 'up':
case 'down':
- // メーカー順変更
$this->lfRankChange($this->arrForm['maker_id'], $this->getMode());
+ // リロード
+ SC_Response_Ex::reload();
break;
- // 削除.
+ // 削除
case 'delete':
$this->lfDelete($this->arrForm['maker_id']);
+ // リロード
+ SC_Response_Ex::reload();
break;
default:
@@ -134,16 +147,26 @@
parent::destroy();
}
+ /**
+ * パラメータ情報の初期化を行う.
+ *
+ * @param SC_FormParam $objFormParam SC_FormParam インスタンス
+ * @return void
+ */
+ function lfInitParam(&$objFormParam) {
+ $objFormParam->addParam("メーカーID", "maker_id", INT_LEN, "n", array("NUM_CHECK", "MAX_LENGTH_CHECK"));
+ $objFormParam->addParam("メーカー名", "name", SMTEXT_LEN, "KVa", array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
+ }
/**
- * メーカー情報表示
+ * メーカー情報表示.
*
- * @return array @arrMaker メーカー情報
+ * @return array $arrMaker メーカー情報
*/
function lfDisp() {
$objQuery =& SC_Query::getSingletonInstance();
- // 削除されていないメーカー情報を表示する.
+ // 削除されていないメーカー情報を表示する
$where = "del_flg = 0";
$objQuery->setOrder("rank DESC");
$arrMaker = array();
@@ -152,11 +175,12 @@
}
/**
- * メーカー情報新規登録
+ * メーカー情報新規登録.
*
+ * @param array $arrForm メーカー情報
* @return void
*/
- function lfInsert($arrForm) {
+ function lfInsert(&$arrForm) {
$objQuery =& SC_Query::getSingletonInstance();
// INSERTする値を作成する
@@ -172,24 +196,25 @@
}
/**
- * メーカー情報更新
+ * メーカー情報更新.
*
+ * @param array $arrForm メーカー情報
* @return void
*/
- function lfUpdate($arrForm) {
+ function lfUpdate(&$arrForm) {
$objQuery =& SC_Query::getSingletonInstance();
- // UPDATEする値を作成する.
+ // UPDATEする値を作成する
$sqlval['name'] = $arrForm['name'];
$sqlval['update_date'] = "Now()";
$where = "maker_id = ?";
- // UPDATEの実行.
+ // UPDATEの実行
$objQuery->update("dtb_maker", $sqlval, $where, array($arrForm['maker_id']));
}
/**
- * メーカー情報削除
+ * メーカー情報削除.
*
* @param integer $maker_id メーカーID
* @return void
@@ -197,13 +222,10 @@
function lfDelete($maker_id) {
$objDb = new SC_Helper_DB_Ex();
$objDb->sfDeleteRankRecord("dtb_maker", "maker_id", $maker_id, "", true);
-
- // 再表示
- $this->objDisplay->reload();
}
/**
- * メーカー情報順番変更
+ * メーカー情報順番変更.
*
* @param integer $maker_id メーカーID
* @param string $mode up か down のモードを示す文字列
@@ -220,17 +242,17 @@
case 'down':
$objDb->sfRankDown("dtb_maker", "maker_id", $maker_id);
break;
+
+ default:
+ break;
}
-
- // 再表示
- $this->objDisplay->reload();
}
/**
- * メーカー情報編集前処理
+ * メーカー情報編集前処理.
*
- * @param array $arrForm
+ * @param array $arrForm メーカー情報
* @param integer $maker_id メーカーID
* @return array $arrForm メーカー名を追加
*/
@@ -247,32 +269,12 @@
}
/**
- * 取得文字列の変換
+ * 入力エラーチェック.
*
- * @param array $arrForm 変換前
- * @return array $arrForm 変換後
- */
- function lfConvertParam($arrForm) {
- // 文字変換
- $arrConvList['maker_id'] = "n";
- $arrConvList['name'] = "KVa";
-
- foreach ($arrConvList as $key => $val) {
- // POSTされてきた値のみ変換する
- if(isset($arrForm[$key])) {
- $arrForm[$key] = mb_convert_kana($arrForm[$key] ,$val);
- }
- }
- return $arrForm;
- }
-
- /**
- * 入力エラーチェック
- *
- * @param array $arrForm
+ * @param array $arrForm メーカー情報
* @return array $objErr->arrErr エラー内容
*/
- function lfErrorCheck($arrForm) {
+ function lfErrorCheck(&$arrForm) {
$objErr = new SC_CheckError($arrForm);
$objErr->doFunc(array("メーカー名", "name", SMTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
@@ -283,7 +285,7 @@
|| SC_Utils_Ex::sfIsZeroFilling($arrForm['maker_id'])
|| !$objDb->sfIsRecord('dtb_maker', 'maker_id', array($arrForm['maker_id']))) {
- // maker_idが指定されていて、且つその値が不正と思われる場合はエラー.
+ // maker_idが指定されていて、且つその値が不正と思われる場合はエラー
$objErr->arrErr['maker_id'] = "※ メーカーIDが不正です<br />";
}
}
Svn-src-all メーリングリストの案内