Ignore:
Timestamp:
2011/02/22 15:57:30 (11 years ago)
Author:
coelacanth
Message:

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis_Mail.php

    r20297 r20326  
    7474        SC_Utils_Ex::sfIsSuccess($objSess); 
    7575 
     76        $mode = $this->getMode(); 
     77 
     78        if (!empty($_POST)) { 
     79            $objFormParam = new SC_FormParam(); 
     80            $this->lfInitParam($mode, $objFormParam); 
     81            $objFormParam->setParam($_POST); 
     82            $objFormParam->convParam(); 
     83 
     84            $this->arrErr = $objFormParam->checkError(); 
     85            if (!empty($this->arrErr['template_id'])) { 
     86                SC_Utils_Ex::sfDispException(); 
     87                return; 
     88            } 
     89            $post = $objFormParam->getHashArray(); 
     90        } 
     91 
    7692        $this->arrMailTEMPLATE = $masterData->getMasterData("mtb_mail_template"); 
    77         switch ($this->getMode()) { 
     93 
     94        switch ($mode) { 
    7895        case 'id_set': 
    79             // テンプレートプルダウン変更時 
    80  
    81             if ( SC_Utils_Ex::sfIsInt( $_POST['template_id']) ){ 
    82                 $result = $this->lfGetMailTemplateByTemplateID($_POST['template_id']); 
    83                 if ( $result ){ 
     96                $result = $this->lfGetMailTemplateByTemplateID($post['template_id']); 
     97                if ($result){ 
    8498                    $this->arrForm = $result[0]; 
    8599                } else { 
    86                     $this->arrForm['template_id'] = $_POST['template_id']; 
     100                    $this->arrForm['template_id'] = $post['template_id']; 
    87101                } 
    88             } 
    89102            break; 
    90103        case 'regist': 
    91             if (SC_Utils_Ex::sfIsInt( $_POST['template_id']) ){ 
    92104 
    93                 // POSTデータの引き継ぎ 
    94                 $this->arrForm = $this->lfConvertParam($_POST); 
    95                 $this->arrErr = $this->fnErrorCheck($this->arrForm); 
    96  
    97                 if ( $this->arrErr ){ 
     105                $this->arrForm = $post; 
     106                if ($this->arrErr){ 
    98107                    // エラーメッセージ 
    99108                    $this->tpl_msg = "エラーが発生しました"; 
     
    101110                } else { 
    102111                    // 正常 
    103                     $this->lfRegist($this->arrForm, $_POST['template_id'], $_SESSION['member_id']); 
     112                    $this->lfRegistMailTemplate($this->arrForm, $_SESSION['member_id']); 
    104113 
    105114                    // 完了メッセージ 
     
    107116                    unset($this->arrForm); 
    108117                } 
    109             } 
    110118            break; 
    111119        default: 
     
    130138    } 
    131139 
    132     function lfRegist($data, $template_id, $member_id){ 
     140    function lfRegistMailTemplate($post, $member_id){ 
    133141        $objQuery =& SC_Query::getSingletonInstance(); 
    134142 
    135         $data['creator_id'] = $member_id; 
     143        $post['creator_id'] = $member_id; 
    136144 
    137145        $sql = "SELECT * FROM dtb_mailtemplate WHERE template_id = ?"; 
    138         $result = $objQuery->getAll($sql, array($template_id)); 
    139         if ( $result ){ 
     146        $template_data = $objQuery->getAll($sql, array($post['template_id'])); 
     147        if ($template_data){ 
    140148            $sql_where = "template_id = ?"; 
    141             $objQuery->update("dtb_mailtemplate", $data, $sql_where, array(addslashes($template_id))); 
     149            $objQuery->update("dtb_mailtemplate", $post, $sql_where, array(addslashes($post['template_id']))); 
    142150        }else{ 
    143             $objQuery->insert("dtb_mailtemplate", $data); 
     151            $objQuery->insert("dtb_mailtemplate", $post); 
    144152        } 
    145153 
    146154    } 
    147155 
    148  
    149     function lfConvertParam($array) { 
    150  
    151         $new_array["template_id"] = $array["template_id"]; 
    152         $new_array["subject"] = mb_convert_kana($array["subject"] ,"KV"); 
    153         $new_array["header"] = mb_convert_kana($array["header"] ,"KV"); 
    154         $new_array["footer"] = mb_convert_kana($array["footer"] ,"KV"); 
    155  
    156         return $new_array; 
    157     } 
    158  
    159     /* 入力エラーのチェック */ 
    160     function fnErrorCheck($array) { 
    161  
    162         $objErr = new SC_CheckError($array); 
    163  
    164         $objErr->doFunc(array("テンプレート",'template_id'), array("EXIST_CHECK")); 
    165         $objErr->doFunc(array("メールタイトル",'subject',MTEXT_LEN,"BIG"), array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 
    166         $objErr->doFunc(array("ヘッダー",'header',LTEXT_LEN,"BIG"), array("MAX_LENGTH_CHECK")); 
    167         $objErr->doFunc(array("フッター",'footer',LTEXT_LEN,"BIG"), array("MAX_LENGTH_CHECK")); 
    168  
    169         return $objErr->arrErr; 
     156    function lfInitParam($mode, &$objFormParam) { 
     157        switch ($mode) { 
     158            case 'regist': 
     159                $objFormParam->addParam('メールタイトル', 'subject', MTEXT_LEN, 'KVa', array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     160                $objFormParam->addParam('ヘッダー', 'header', LTEXT_LEN, 'KVa', array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     161                $objFormParam->addParam('フッター', 'footer', LTEXT_LEN, 'KVa', array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     162            case 'id_set': 
     163                $objFormParam->addParam('テンプレート', 'template_id', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK')); 
     164                break; 
     165            default: 
     166                break; 
     167        } 
    170168    } 
    171169} 
Note: See TracChangeset for help on using the changeset viewer.