- Timestamp:
- 2011/01/08 06:19:28 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/class/pages/admin/basis/LC_Page_Admin_Basis.php
r19805 r19856 114 114 break; 115 115 } 116 $this->tpl_onload = "fnCheckLimit('downloadable_days', 'downloadable_days_unlimited', '" . DISABLED_RGB . "'); window.alert('SHOPマスタの登録が完了しました。 ');";116 $this->tpl_onload = "fnCheckLimit('downloadable_days', 'downloadable_days_unlimited', '" . DISABLED_RGB . "'); window.alert('SHOPマスタの登録が完了しました。管理画面のURLを変更した場合は、新しいURLにアクセスしてください。');"; 117 117 } 118 118 if( empty($this->arrForm['regular_holiday_ids']) ) { … … 129 129 $regular_holiday_ids = explode('|', $this->arrForm['regular_holiday_ids']); 130 130 $this->arrForm['regular_holiday_ids'] = $regular_holiday_ids; 131 $admin_dir = str_replace("/","",ADMIN_DIR); 132 $this->arrForm += array("admin_dir"=>$admin_dir); 133 $this->arrForm += array("admin_force_ssl"=>ADMIN_FORCE_SSL); 134 if(defined("ADMIN_ALLOW_HOSTS")){ 135 $allow_hosts = unserialize(ADMIN_ALLOW_HOSTS); 136 $this->arrForm += array("admin_allow_hosts"=>implode("\n",$allow_hosts)); 137 }else{ 138 $this->arrForm += array("admin_allow_hosts"=>""); 139 } 131 140 $this->tpl_onload = "fnCheckLimit('downloadable_days', 'downloadable_days_unlimited', '" . DISABLED_RGB . "');"; 132 141 } … … 192 201 } 193 202 $sqlval['update_date'] = 'Now()'; 203 $this->lfUpdateAdminData($array); 194 204 // UPDATEの実行 195 205 $ret = $objQuery->update("dtb_baseinfo", $sqlval); … … 203 213 } 204 214 $sqlval['update_date'] = 'Now()'; 215 $this->lfUpdateAdminData($array); 205 216 // INSERTの実行 206 217 $ret = $objQuery->insert("dtb_baseinfo", $sqlval); 218 } 219 220 function lfUpdateAdminData($array){ 221 $admin_dir = trim($array['admin_dir'])."/"; 222 $admin_force_ssl = "FALSE"; 223 if($array['admin_force_ssl'] == 1){ 224 $admin_force_ssl = "TRUE"; 225 } 226 $admin_allow_hosts = explode("\n",$array['admin_allow_hosts']); 227 foreach($admin_allow_hosts as $key=>$host){ 228 $host = trim($host); 229 if(strlen($host) >= 8){ 230 $admin_allow_hosts[$key] = $host; 231 }else{ 232 unset($admin_allow_hosts[$key]); 233 } 234 } 235 $admin_allow_hosts = serialize($admin_allow_hosts); 236 //権限チェック 237 if(!is_writable(DATA_REALDIR . "install.php")){ 238 $this->arrErr["admin_force_ssl"] = DATA_REALDIR . "install.phpを変更する権限がありません。"; 239 } 240 if(count($this->arrErr) > 0){ 241 return false; 242 } 243 //install.phpの書き換え 244 $installData = file(DATA_REALDIR."install.php",FILE_IGNORE_NEW_LINES); 245 $diff = 0; 246 foreach($installData as $key=>$line){ 247 if(strpos($line,"ADMIN_DIR") !== false and ADMIN_DIR != $admin_dir){ 248 if(!is_writable(HTML_REALDIR . ADMIN_DIR)){ 249 $this->arrErr["admin_dir"] = URL_PATH.ADMIN_DIR."のディレクトリ名を変更する権限がありません。"; 250 } 251 if(!is_writable(USER_TEMPLATE_REALDIR . ADMIN_DIR)){ 252 $this->arrErr["admin_dir"] = USER_TEMPLATE_REALDIR . ADMIN_DIR."のディレクトリ名を変更する権限がありません。"; 253 } 254 if(count($this->arrErr) > 0 ){ 255 return false; 256 }else{ 257 $installData[$key] = 'define("ADMIN_DIR","'.$admin_dir.'");'; 258 //管理画面ディレクトリのリネーム 259 rename(HTML_REALDIR.ADMIN_DIR,HTML_REALDIR.$admin_dir); 260 rename(USER_TEMPLATE_REALDIR.ADMIN_DIR,USER_TEMPLATE_REALDIR.$admin_dir); 261 $diff ++; 262 } 263 } 264 265 if(strpos($line,"ADMIN_FORCE_SSL") !== false and ADMIN_FORCE_SSL !== (boolean)$array['admin_force_ssl']){ 266 $installData[$key] = 'define("ADMIN_FORCE_SSL",'.$admin_force_ssl.');'; 267 $diff ++; 268 } 269 if(strpos($line,"ADMIN_ALLOW_HOSTS") !== false and ADMIN_ALLOW_HOSTS != $admin_allow_hosts) { 270 $installData[$key] = "define('ADMIN_ALLOW_HOSTS','".$admin_allow_hosts."');"; 271 $diff ++; 272 } 273 } 274 275 if($diff > 0) { 276 $fp = fopen(DATA_REALDIR . "install.php","wb"); 277 $installData = implode("\n",$installData); 278 echo $installData; 279 fwrite($fp, $installData); 280 fclose($fp); 281 } 282 return true; 207 283 } 208 284 … … 239 315 $arrConvList['email03'] = "a"; 240 316 $arrConvList['email04'] = "a"; 317 $arrConvList['admin_dir'] = "a"; 318 $arrConvList['admin_force_ssl'] = "n"; 319 $arrConvList['admin_allow_hosts'] = "a"; 241 320 $arrConvList['tax'] = "n"; 242 321 $arrConvList['free_rule'] = "n"; … … 272 351 $objErr->doFunc(array('メール送信元メールアドレス', "email03", STEXT_LEN) ,array("EXIST_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 273 352 $objErr->doFunc(array('送信エラー受付メールアドレス', "email04", STEXT_LEN) ,array("EXIST_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK","MAX_LENGTH_CHECK")); 353 //管理画面設定チェック 354 $objErr->doFunc(array('ディレクトリ名', "admin_dir", ID_MAX_LEN) ,array("EXIST_CHECK","SPTAB_CHECK", "ALNUM_CHECK")); 355 $objErr->doFunc(array('SSL制限', "admin_force_ssl", 1) ,array("NUM_CHECK", "MAX_LENGTH_CHECK")); 356 $objErr->doFunc(array('IP制限', "admin_allow_hosts", LTEXT_LEN) ,array("IP_CHECK", "MAX_LENGTH_CHECK")); 357 358 274 359 // 電話番号チェック 275 360 $objErr->doFunc(array("TEL", "tel01", "tel02", "tel03"), array("TEL_CHECK"));
Note: See TracChangeset
for help on using the changeset viewer.