Ignore:
Timestamp:
2013/01/30 16:51:27 (11 years ago)
Author:
Seasoft
Message:

#2082 (LC_Page_Admin_Basis 登録後の値はDB取得していない)
#2083 (基本情報管理>SHOPマスター 登録確認ダイアログが表示されない)
#1905 (typo修正・ソース整形・ソースコメントの改善)
#2044 (無駄な処理を改善する for 2.12.4)
#2085 (LC_Page_Admin_Basis#lfInsertData 休日設定が無視される)

File:
1 edited

Legend:

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

    r22472 r22477  
    7979     */ 
    8080    function action() { 
    81  
    8281        $objDb = new SC_Helper_DB_Ex(); 
    8382 
    84         if ($objDb->sfGetBasisExists()) { 
    85             $this->tpl_mode = 'update'; 
    86         } else { 
    87             $this->tpl_mode = 'insert'; 
    88         } 
    89  
    90         if (!empty($_POST)) { 
    91  
     83        $this->tpl_onload = "fnCheckLimit('downloadable_days', 'downloadable_days_unlimited', '" . DISABLED_RGB . "');"; 
     84 
     85        if ($this->getMode() === 'confirm') { 
    9286            $objFormParam = new SC_FormParam_Ex(); 
    9387            $this->lfInitParam($objFormParam, $_POST); 
     
    9690 
    9791            $this->arrErr = $this->lfCheckError($objFormParam); 
    98             $post = $objFormParam->getHashArray(); 
    99  
    100             $this->arrForm = $post; 
    101  
    102             if (count($this->arrErr) == 0) { 
    103                 switch ($this->getMode()) { 
    104                     // 既存編集 
    105                     case 'update': 
    106                         $this->lfUpdateData($this->arrForm); 
    107                         break; 
    108                     // 新規作成 
    109                     case 'insert': 
    110                         $this->lfInsertData($this->arrForm); 
    111                         break; 
    112                     default: 
    113                         break; 
    114                 } 
    115                 $this->tpl_onload = "fnCheckLimit('downloadable_days', 'downloadable_days_unlimited', '" . DISABLED_RGB . "'); window.alert('SHOPマスターの登録が完了しました。');"; 
     92 
     93            if (!empty($this->arrErr)) { 
     94                $this->arrForm = $objFormParam->getHashArray(); 
     95                return; 
    11696            } 
    117             if (empty($this->arrForm['regular_holiday_ids'])) { 
    118                 $this->arrSel = array(); 
    119             } else { 
    120                 $this->arrSel = $this->arrForm['regular_holiday_ids']; 
    121             } 
    122         } else { 
    123             $arrCol = $this->lfGetCol(); 
    124             $col    = SC_Utils_Ex::sfGetCommaList($arrCol); 
    125             $arrRet = $objDb->sfGetBasisData(true, $col); 
    126             $this->arrForm = $arrRet; 
    127  
    128             $regular_holiday_ids = explode('|', $this->arrForm['regular_holiday_ids']); 
    129             $this->arrForm['regular_holiday_ids'] = $regular_holiday_ids; 
    130             $this->tpl_onload = "fnCheckLimit('downloadable_days', 'downloadable_days_unlimited', '" . DISABLED_RGB . "');"; 
     97 
     98            $arrData = $objFormParam->getDbArray(); 
     99            SC_Helper_DB_Ex::registerBasisData($arrData); 
     100 
     101            $this->tpl_onload .= "window.alert('SHOPマスターの登録が完了しました。');"; 
    131102        } 
    132103 
     104        $arrRet = $objDb->sfGetBasisData(true); 
     105        $objFormParam->setParam($arrRet); 
     106        $this->arrForm = $objFormParam->getHashArray(); 
     107        $this->arrForm['regular_holiday_ids'] = explode('|', $this->arrForm['regular_holiday_ids']); 
    133108    } 
    134109 
     
    142117    } 
    143118 
    144     // 基本情報用のカラムを取り出す。 
    145     function lfGetCol() { 
    146         $arrCol = array( 
    147             'company_name', 
    148             'company_kana', 
    149             'shop_name', 
    150             'shop_kana', 
    151             'shop_name_eng', 
    152             'zip01', 
    153             'zip02', 
    154             'pref', 
    155             'addr01', 
    156             'addr02', 
    157             'tel01', 
    158             'tel02', 
    159             'tel03', 
    160             'fax01', 
    161             'fax02', 
    162             'fax03', 
    163             'business_hour', 
    164             'email01', 
    165             'email02', 
    166             'email03', 
    167             'email04', 
    168             'tax', 
    169             'tax_rule', 
    170             'free_rule', 
    171             'good_traded', 
    172             'message', 
    173             'regular_holiday_ids', 
    174             'latitude', 
    175             'longitude', 
    176             'downloadable_days', 
    177             'downloadable_days_unlimited' 
    178         ); 
    179         return $arrCol; 
    180     } 
    181  
    182     function lfUpdateData($array) { 
    183         $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    184         $arrCol = $this->lfGetCol(); 
    185         foreach ($arrCol as $val) { 
    186             //配列の場合は、パイプ区切りの文字列に変換 
    187             if (is_array($array[$val])) { 
    188                 $sqlval[$val] = implode('|', $array[$val]); 
    189             } else { 
    190                 $sqlval[$val] = $array[$val]; 
    191             } 
    192         } 
    193         $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; 
    194         // UPDATEの実行 
    195         $ret = $objQuery->update('dtb_baseinfo', $sqlval); 
    196  
    197         GC_Utils_Ex::gfPrintLog('dtb_baseinfo に UPDATE を実行しました。'); 
    198     } 
    199  
    200     function lfInsertData($array) { 
    201         $objQuery =& SC_Query_Ex::getSingletonInstance(); 
    202         $arrCol = $this->lfGetCol(); 
    203         foreach ($arrCol as $val) { 
    204             $sqlval[$val] = $array[$val]; 
    205         } 
    206         $sqlval['id'] = 1; 
    207         $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; 
    208         // INSERTの実行 
    209         $ret = $objQuery->insert('dtb_baseinfo', $sqlval); 
    210  
    211         GC_Utils_Ex::gfPrintLog('dtb_baseinfo に INSERT を実行しました。'); 
     119    /** 
     120     * 前方互換用 
     121     * 
     122     * @deprecated 2.12.4 
     123     */ 
     124    function lfUpdateData($arrData) { 
     125        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     126        SC_Helper_DB_Ex::registerBasisData($arrData); 
     127    } 
     128 
     129    /** 
     130     * 前方互換用 
     131     * 
     132     * @deprecated 2.12.4 
     133     */ 
     134    function lfInsertData($arrData) { 
     135        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     136        SC_Helper_DB_Ex::registerBasisData($arrData); 
    212137    } 
    213138 
Note: See TracChangeset for help on using the changeset viewer.