AvocadoAmber/AvocadoEdition_Light/adm/config_form_update.php

310 lines
6.4 KiB
PHP

<?php
$sub_menu = "900100";
include_once "./_common.php";
check_demo();
auth_check($auth[$sub_menu], 'w');
if ($is_admin != 'super')
alert('최고관리자만 접근 가능합니다.');
$mb = get_member($cf_admin);
if (!$mb['mb_id'])
alert('최고관리자 회원아이디가 존재하지 않습니다.');
check_admin_token();
if (!$_POST['cf_cert_use']) {
$_POST['cf_cert_ipin'] = '';
$_POST['cf_cert_hp'] = '';
}
$site_style_path = G5_DATA_PATH . "/site";
$site_style_url = G5_DATA_URL . "/site";
@mkdir($site_style_path, G5_DIR_PERMISSION);
@chmod($site_style_path, G5_DIR_PERMISSION);
$cf_site_img = $_POST['cf_site_img'];
// 이미지 등록 시, 이미지를 업로드한 뒤 - 해당 이미지 경로를 삽입
if ($_FILES['admin_icon_file']['name']) {
$image_name = "ico_admin";
upload_file($_FILES['admin_icon_file']['tmp_name'], $image_name, $site_style_path);
}
$check_keys = [
'cf_cert_kcb_cd',
'cf_cert_kcp_cd',
'cf_editor',
'cf_recaptcha_site_key',
'cf_recaptcha_secret_key',
'cf_naver_clientid',
'cf_naver_secret',
'cf_facebook_appid',
'cf_facebook_secret',
'cf_twitter_key',
'cf_twitter_secret',
'cf_google_clientid',
'cf_google_secret',
'cf_googl_shorturl_apikey',
'cf_kakao_rest_key',
'cf_kakao_client_secret',
'cf_kakao_js_apikey',
'cf_payco_clientid',
'cf_payco_secret',
'cf_cert_kg_cd',
'cf_cert_kg_mid'
];
foreach ($check_keys as $key) {
if (isset($_POST[$key]) && $_POST[$key]) {
$_POST[$key] = preg_replace('/[^a-z0-9_\-\.]/i', '', $_POST[$key]);
}
}
$fields = [
'cf_title',
'cf_theme',
'cf_admin',
'cf_admin_email',
'cf_admin_email_name',
'cf_add_script',
'cf_use_point',
'cf_point_term',
'cf_use_copy_log',
'cf_use_email_certify',
'cf_login_point',
'cf_cut_name',
'cf_nick_modify',
'cf_new_skin',
'cf_new_rows',
'cf_search_skin',
'cf_connect_skin',
'cf_faq_skin',
'cf_read_point',
'cf_write_point',
'cf_comment_point',
'cf_download_point',
'cf_write_pages',
'cf_mobile_pages',
'cf_link_target',
'cf_delay_sec',
'cf_filter',
'cf_possible_ip',
'cf_intercept_ip',
'cf_analytics',
'cf_add_meta',
'cf_syndi_token',
'cf_syndi_except',
'cf_member_skin',
'cf_use_homepage',
'cf_req_homepage',
'cf_use_tel',
'cf_req_tel',
'cf_use_hp',
'cf_req_hp',
'cf_use_addr',
'cf_req_addr',
'cf_use_signature',
'cf_req_signature',
'cf_use_profile',
'cf_req_profile',
'cf_register_level',
'cf_register_point',
'cf_icon_level',
'cf_use_recommend',
'cf_recommend_point',
'cf_leave_day',
'cf_search_part',
'cf_email_use',
'cf_email_wr_super_admin',
'cf_email_wr_group_admin',
'cf_email_wr_board_admin',
'cf_email_wr_write',
'cf_email_wr_comment_all',
'cf_email_mb_super_admin',
'cf_email_mb_member',
'cf_email_po_super_admin',
'cf_prohibit_id',
'cf_prohibit_email',
'cf_new_del',
'cf_memo_del',
'cf_visit_del',
'cf_popular_del',
'cf_use_member_icon',
'cf_member_icon_size',
'cf_member_icon_width',
'cf_member_icon_height',
'cf_login_minutes',
'cf_image_extension',
'cf_flash_extension',
'cf_movie_extension',
'cf_formmail_is_member',
'cf_page_rows',
'cf_mobile_page_rows',
'cf_stipulation',
'cf_privacy',
'cf_open_modify',
'cf_memo_send_point',
'cf_mobile_new_skin',
'cf_mobile_search_skin',
'cf_mobile_connect_skin',
'cf_mobile_faq_skin',
'cf_mobile_member_skin',
'cf_captcha_mp3',
'cf_editor',
'cf_cert_use',
'cf_cert_ipin',
'cf_cert_hp',
'cf_cert_kcb_cd',
'cf_cert_kcp_cd',
'cf_lg_mid',
'cf_lg_mert_key',
'cf_cert_limit',
'cf_cert_req',
'cf_sms_use',
'cf_sms_type',
'cf_icode_id',
'cf_icode_pw',
'cf_icode_server_ip',
'cf_icode_server_port',
'cf_googl_shorturl_apikey',
'cf_facebook_appid',
'cf_facebook_secret',
'cf_twitter_key',
'cf_twitter_secret',
'cf_kakao_js_apikey',
'cf_optimize_date',
'cf_add_fonts',
'cf_bgm',
'cf_open',
'cf_twitter',
'cf_side_title',
'cf_class_title',
'cf_shop_category',
'cf_item_category',
'cf_site_descript',
'cf_site_img',
'cf_favicon',
'cf_character_count',
'cf_search_count',
'cf_status_point',
'cf_money',
'cf_money_pice',
'cf_exp_name',
'cf_exp_pice',
'cf_rank_name',
'cf_1',
'cf_2',
'cf_3',
'cf_4',
'cf_5',
'cf_6',
'cf_7',
'cf_8',
'cf_9',
'cf_10',
'cf_use_http'
];
$trims = ['cf_possible_ip', 'cf_intercept_ip'];
$zero_fields = [
'cf_use_point',
'cf_point_term',
'cf_use_copy_log',
'cf_use_email_certify',
'cf_login_point',
'cf_cut_name',
'cf_nick_modify',
'cf_new_rows',
'cf_read_point',
'cf_write_point',
'cf_comment_point',
'cf_download_point',
'cf_write_pages',
'cf_mobile_pages',
'cf_delay_sec',
'cf_use_homepage',
'cf_req_homepage',
'cf_use_tel',
'cf_req_tel',
'cf_use_hp',
'cf_req_hp',
'cf_use_addr',
'cf_req_addr',
'cf_use_signature',
'cf_req_signature',
'cf_use_profile',
'cf_req_profile',
'cf_register_level',
'cf_register_point',
'cf_icon_level',
'cf_use_recommend',
'cf_recommend_point',
'cf_leave_day',
'cf_search_part',
'cf_email_use',
'cf_email_wr_super_admin',
'cf_email_wr_group_admin',
'cf_email_wr_board_admin',
'cf_email_wr_write',
'cf_email_wr_comment_all',
'cf_email_mb_super_admin',
'cf_email_mb_member',
'cf_email_po_super_admin',
'cf_new_del',
'cf_memo_del',
'cf_visit_del',
'cf_popular_del',
'cf_use_member_icon',
'cf_member_icon_size',
'cf_member_icon_width',
'cf_member_icon_height',
'cf_login_minutes',
'cf_formmail_is_member',
'cf_page_rows',
'cf_mobile_page_rows',
'cf_open_modify',
'cf_memo_send_point',
'cf_cert_use',
'cf_cert_limit',
'cf_cert_req',
'cf_character_count',
'cf_search_count',
'cf_status_point',
'cf_use_http'
];
$date_fields = ['cf_optimize_date'];
$updates = [];
foreach ($fields as $field) {
if (array_key_exists($field, $_POST)) {
$value = $_POST[$field];
if (in_array($field, $trims)) {
$value = trim($value);
}
if (in_array($field, $zero_fields) && $value == '') {
$value = '0';
}
if (in_array($field, $date_fields) && $value == '') {
$value = '0000-00-00';
}
$updates[] = "{$field} = '{$value}'";
}
}
if (!empty($updates)) {
$sql = "UPDATE {$g5['config_table']} SET " . implode(', ', $updates);
sql_query($sql);
}
EventHandler::triggerEvent("gnuboard.admin.config_form_update");
//sql_query(" OPTIMIZE TABLE `$g5['config_table']` ");
goto_url('./config_form.php');