[Svn-src-all:1429] [version-2_5-dev 20321] #964 リファクタリング 宣言を除き, 引数や返り値が無く, すべて内部のメンバ変数で処理するような関数は極力作成しない

coelacanth admin @ mail.ec-cube.net
2011年 2月 22日 (火) 11:14:12 JST


Subversion committed to /home/svn/open 20321
http://svn.ec-cube.net/open_trac/changeset/20321
┌────────────────────────────┐
│更新者 :  coelacanth                                   │
│更新日時:  2011-02-22 11:14:12 +0900 (火, 22  2月 2011)│
└────────────────────────────┘

Log:
--------------------------------------------------------
#964 リファクタリング 宣言を除き, 引数や返り値が無く, すべて内部のメンバ変数で処理するような関数は極力作成しない

Changed:                      [U:修正,A:追加,D:削除]
--------------------------------------------------------
U   branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Delivery.php
U   branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Holiday.php

変更: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Delivery.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Delivery.php	2011-02-22 02:01:30 UTC (rev 20320)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Delivery.php	2011-02-22 02:14:12 UTC (rev 20321)
@@ -77,8 +77,13 @@
 
         $mode = $this->getMode();
 
+
+
         if (!empty($_POST)) {
-            $this->arrErr = $this->lfCheckError($mode);
+            $objFormParam = new SC_FormParam();
+            $objFormParam->setParam($_POST);
+
+            $this->arrErr = $this->lfCheckError($mode, $objFormParam);
             if (!empty($this->arrErr['deliv_id'])) {
                 SC_Utils_Ex::sfDispException();
                 return;
@@ -128,18 +133,17 @@
      * @param string $mode
      * @return array
      */
-    function lfCheckError($mode) {
+    function lfCheckError($mode, &$objFormParam) {
         $arrErr = array();
         switch ($mode) {
             case "delete":
             case "up":
             case "down":
-                $this->objFormParam = new SC_FormParam();
-                $this->objFormParam->addParam('配送業者ID', 'deliv_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK'));
-                $this->objFormParam->setParam($_POST);
-                $this->objFormParam->convParam();
+                $objFormParam->addParam('配送業者ID', 'deliv_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK'));
 
-                $arrErr = $this->objFormParam->checkError();
+                $objFormParam->convParam();
+
+                $arrErr = $objFormParam->checkError();
                 break;
             default:
                 break;

変更: branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Holiday.php
===================================================================
--- branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Holiday.php	2011-02-22 02:01:30 UTC (rev 20320)
+++ branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Holiday.php	2011-02-22 02:14:12 UTC (rev 20321)
@@ -79,7 +79,15 @@
         $mode = $this->getMode();
 
         if (!empty($_POST)) {
-            $this->arrErr = $this->lfCheckError($mode, $_POST);
+
+            $objFormParam = new SC_FormParam();
+            $this->lfInitParam($mode, $objFormParam);
+            $objFormParam->setParam($_POST);
+
+            //var_dump($_POST);
+            //var_dump($objFormParam->getHashArray());
+
+            $this->arrErr = $this->lfCheckError($mode, $objFormParam);
             if (!empty($this->arrErr['holiday_id'])) {
                 SC_Utils_Ex::sfDispException();
                 return;
@@ -211,52 +219,52 @@
         }
         return $array;
     }
-
-    /**
-     * 入力エラーチェック
-     *
-     * @param string $mode
-     * @return array
-     */
-    function lfCheckError($mode, $post) {
-        $arrErr = array();
+    function lfInitParam($mode, &$objFormParam)
+    {
         switch ($mode) {
             case 'edit':
-                $post = $this->lfConvertParam($post);
-
-                $objErr = new SC_CheckError();
-                $objErr->doFunc(array("タイトル", "title", SMTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
-                $objErr->doFunc(array("月", "month", INT_LEN), array("SELECT_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
-                $objErr->doFunc(array("日", "day", INT_LEN), array("SELECT_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
-                if(!isset($objErr->arrErr['date'])) {
-                    $objQuery =& SC_Query::getSingletonInstance();
-                    $where = "del_flg = 0 AND month = ? AND day = ?";
-                    $arrval = array($post['month'], $post['day']);
-                    if (!empty($post['holiday_id'])) {
-                        $where .= " AND holiday_id <> ?";
-                        $arrval[] = $post['holiday_id'];
-                    }
-                    $arrRet = $objQuery->select("count(holiday_id)", "dtb_holiday", $where, $arrval);
-                    // 編集中のレコード以外に同じ日付が存在する場合
-                    if ($arrRet[0]['count'] > 0) {
-                        $objErr->arrErr['date'] = "※ 既に同じ日付の登録が存在します。<br>";
-                    }
-                }
+                $objFormParam->addParam('タイトル', 'title', STEXT_LEN, 'KVa', array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
+                $objFormParam->addParam('月', 'month', INT_LEN, 'n', array("SELECT_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
+                $objFormParam->addParam('日', 'day', INT_LEN, 'n', array("SELECT_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK"));
                 // breakしない
             case 'delete':
             case 'pre_edit':
             case 'down':
             case 'up':
-                $this->objFormParam = new SC_FormParam();
-                $this->objFormParam->addParam('定休日ID', 'holiday_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK'));
-                $this->objFormParam->setParam($post);
-                $this->objFormParam->convParam();
-                $arrErr = $this->objFormParam->checkError();
+                $objFormParam->addParam('定休日ID', 'holiday_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK'));
                 break;
             default:
                 break;
         }
-        return array_merge((array)$objErr->arrErr, (array)$arrErr);
     }
+
+    /**
+     * 入力エラーチェック
+     *
+     * @param string $mode
+     * @return array
+     */
+    function lfCheckError($mode, &$objFormParam) {
+        $objFormParam->convParam();
+        $arrErr = $objFormParam->checkError();
+        $post = $objFormParam->getHashArray();
+
+        if(!isset($arrErr['date'])) {
+            $objQuery =& SC_Query::getSingletonInstance();
+            $where = "del_flg = 0 AND month = ? AND day = ?";
+            $arrval = array($post['month'], $post['day']);
+            if (!empty($post['holiday_id'])) {
+                $where .= " AND holiday_id <> ?";
+                $arrval[] = $post['holiday_id'];
+            }
+            $arrRet = $objQuery->select("count(holiday_id)", "dtb_holiday", $where, $arrval);
+
+            // 編集中のレコード以外に同じ日付が存在する場合
+            if ($arrRet[0]['count'] > 0) {
+                $arrErr['date'] = "※ 既に同じ日付の登録が存在します。<br>";
+            }
+        }
+        return $arrErr;
+    }
 }
 ?>




Svn-src-all メーリングリストの案内