Changeset 21866 for branches/version-2_12-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_CSV.php
- Timestamp:
- 2012/05/30 15:39:34 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_12-dev/data/class/pages/admin/contents/LC_Page_Admin_Contents_CSV.php
r21864 r21866 3 3 * This file is part of EC-CUBE 4 4 * 5 * Copyright(c) 2000-201 2LOCKON CO.,LTD. All Rights Reserved.5 * Copyright(c) 2000-2011 LOCKON CO.,LTD. All Rights Reserved. 6 6 * 7 7 * http://www.lockon.co.jp/ … … 120 120 $objFormParam->addParam('編集種別', 'tpl_subno_csv', STEXT_LEN, 'a', array('ALNUM_CHECK', 'MAX_LENGTH_CHECK'), 'product'); 121 121 $objFormParam->addParam('出力設定リスト', 'output_list', INT_LEN, 'n', array('NUM_CHECK', 'MAX_LENGTH_CHECK', 'EXIST_CHECK')); 122 //デフォルト値 122 //デフォルト値で上書き 123 $objFormParam->setParam(array('tpl_subno_csv' => 'product')); 124 } 125 126 /** 127 * CSVカラム設定の読み込み 128 * 129 * @param integer $csv_id CSV ID 130 * @param integer $csv_status_flg 読み込む対象のフラグ CSV_COLUMN_STATUS_FLG_ENABLE or '' 131 * @return array SwapArrayしたカラム設定 132 */ 133 function lfGetCSVColumn($csv_id, $csv_status_flg = '', $order ='rank, no') { 134 $objCSV = new SC_Helper_CSV_Ex(); 135 if (SC_Utils_Ex::sfIsInt($csv_id)) { 136 if ($csv_status_flg !='') { 137 $arrData = $objCSV->sfGetCsvOutput($csv_id, 'status = ?' , array($csv_status_flg), $order); 138 } else { 139 $arrData = $objCSV->sfGetCsvOutput($csv_id, '', array(), $order); 140 } 141 $arrData = SC_Utils_Ex::sfSwapArray($arrData); 142 } else { 143 $arrData = array(); 144 } 145 return $arrData; 146 } 147 148 /** 149 * 選択済みカラム列情報を取得 150 * 151 * @param integer $csv_id CSV ID 152 * @return array 選択済みカラム列情報 153 */ 154 function lfGetSelected($csv_id) { 155 $arrData = $this->lfGetCSVColumn($csv_id, CSV_COLUMN_STATUS_FLG_ENABLE); 156 if (!isset($arrData['no'])) { 157 $arrData['no'] = array(); 158 } 159 return $arrData['no']; 160 } 161 162 /** 163 * カラム列情報と表示名情報を取得 164 * 165 * @param integer $csv_id CSV ID 166 * @return array 選択済みカラム列情報 167 */ 168 function lfGetOptions($csv_id) { 169 $arrData = $this->lfGetCSVColumn($csv_id); 170 if (!isset($arrData['no'])) { 171 $arrData['no'] = array(); 172 $arrData['disp_name'] = array(); 173 } 174 $arrData = SC_Utils_Ex::sfArrCombine($arrData['no'], $arrData['disp_name']); 175 return $arrData; 176 } 177 178 /** 179 * デストラクタ. 180 * 181 * @return void 182 */ 183 function destroy() { 184 parent::destroy(); 185 } 186 187 /** 188 * CSV名からCSV_IDを取得する。 189 * 190 * @param string $subno_csv CSV名 191 * @return integer CSV_ID 192 */ 193 function lfGetCsvId($subno_csv) { 194 $objCSV = new SC_Helper_CSV_Ex(); 195 $arrKey = array_keys($objCSV->arrSubnavi,$subno_csv); 196 $csv_id = $arrKey[0]; 197 if (!SC_Utils_Ex::sfIsInt($csv_id)) { 198 //初期値取りだし 199 $arrKey = array_keys($objCSV->arrSubnavi); 200 $csv_id = $arrKey[0]; 201 } 202 return $csv_id; 203 } 204 205 /** 206 * CSV出力項目設定を初期化する 207 * 208 * @param integer $csv_id CSV_ID 209 * @return boolean 成功:true 210 */ 211 function lfSetDefaultCsvOutput($csv_id) { 212 $arrData = $this->lfGetCSVColumn($csv_id, '', $order = 'no'); 213 if (!isset($arrData['no'])) { 214 $arrData['no'] = array(); 215 } 216 return $this->lfUpdCsvOutput($csv_id, $arrData['no']); 217 } 218 219 /** 220 * CSV出力項目設定を更新する処理 221 * 222 * @param integer $csv_id CSV_ID 223 * @param array $arrData 有効にするCSV列データ配列 224 * @return boolean 成功:true 225 */ 226 function lfUpdCsvOutput($csv_id, $arrData = array()) { 227 $objQuery =& SC_Query_Ex::getSingletonInstance(); 228 // ひとまず、全部使用しないで更新する 229 $table = 'dtb_csv'; 230 $where = 'csv_id = ?'; 231 $arrWhereVal = array($csv_id); 232 $arrUpdVal = array('status' => '2', 'rank' => NULL, 'update_date' => 'CURRENT_TIMESTAMP'); 233 234 $objQuery->begin(); 235 $objQuery->update($table, $arrUpdVal, $where, $arrWhereVal); 236 // 使用するものだけ、再更新する。 237 if (is_array($arrData)) { 238 $where .= ' AND no = ?'; 239 $arrUpdVal = array('status' => '1'); 240 foreach ($arrData as $key => $val) { 241 $arrWhereVal = array($csv_id, $val); 242 $arrUpdVal['rank'] = $key + 1; 243 $objQuery->update($table, $arrUpdVal, $where, $arrWhereVal); 244 } 245 } 246 $objQuery->commit(); 247 return true; 248 } 249 }
Note: See TracChangeset
for help on using the changeset viewer.