(int) ($_POST['consultation_duration'] ?? 60), 'max_persons_per_slot' => (int) ($_POST['max_persons_per_slot'] ?? 2), 'consultation_fee' => (int) ($_POST['consultation_fee'] ?? 50000), 'account_info' => trim($_POST['account_info'] ?? ''), 'max_advance_days' => (int) ($_POST['max_advance_days'] ?? 30), 'min_advance_hours' => (int) ($_POST['min_advance_hours'] ?? 24), 'cancel_deadline_hours' => (int) ($_POST['cancel_deadline_hours'] ?? 24) ]; // 유효성 검증 (생략) foreach ($basic_settings as $key => $value) { consultant_set_config($key, $value); } alert('기본 설정이 저장되었습니다.', $_SERVER['PHP_SELF'] . '?tab=basic'); } // 요일별 설정 저장 if ($_POST['action'] == 'save_weekly_settings') { $days = ['monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday']; foreach ($days as $day) { consultant_set_config($day . '_enabled', $_POST[$day . '_enabled'] ?? '0'); consultant_set_config($day . '_start', $_POST[$day . '_start'] ?? '09:00'); consultant_set_config($day . '_end', $_POST[$day . '_end'] ?? '18:00'); consultant_set_config($day . '_lunch_start', $_POST[$day . '_lunch_start'] ?? '12:00'); consultant_set_config($day . '_lunch_end', $_POST[$day . '_lunch_end'] ?? '13:00'); } alert('요일별 설정이 저장되었습니다.', $_SERVER['PHP_SELF'] . '?tab=weekly'); } // 알림 설정 저장 if ($_POST['action'] == 'save_notification_settings') { consultant_set_config('notification_enabled', $_POST['notification_enabled'] ?? '0'); alert('알림 설정이 저장되었습니다.', $_SERVER['PHP_SELF'] . '?tab=notification'); } // 💡 [추가] 고급 설정 저장 처리 if ($_POST['action'] == 'save_advanced_settings') { $config_values = $_POST['config_value'] ?? []; $config_descs = $_POST['config_desc'] ?? []; foreach ($config_values as $key => $value) { $sql = "UPDATE consultant_config SET config_value = '" . sql_real_escape_string($value) . "', config_desc = '" . sql_real_escape_string($config_descs[$key] ?? '') . "' WHERE config_key = '" . sql_real_escape_string($key) . "'"; sql_query($sql); } alert('고급 설정이 저장되었습니다.', $_SERVER['PHP_SELF'] . '?tab=advanced'); } } catch (Exception $e) { alert('설정 저장 중 오류가 발생했습니다: ' . $e->getMessage()); } } // --- 데이터 조회 --- // 기본 설정 $consultation_duration = consultant_get_config('consultation_duration', '60'); $max_persons_per_slot = consultant_get_config('max_persons_per_slot', '2'); $consultation_fee = consultant_get_config('consultation_fee', '50000'); $account_info = consultant_get_config('account_info', '국민은행 123-456-789 (주)상담센터'); $notification_enabled = consultant_get_config('notification_enabled', '1'); $max_advance_days = consultant_get_config('max_advance_days', '30'); $min_advance_hours = consultant_get_config('min_advance_hours', '24'); $cancel_deadline_hours = consultant_get_config('cancel_deadline_hours', '24'); // 요일별 설정 $days = ['monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday']; $day_names = ['월요일', '화요일', '수요일', '목요일', '금요일', '토요일', '일요일']; $weekly_settings = []; foreach ($days as $i => $day) { $weekly_settings[$day] = [ 'name' => $day_names[$i], 'enabled' => consultant_get_config($day . '_enabled', $day == 'saturday' || $day == 'sunday' ? '0' : '1'), 'start' => consultant_get_config($day . '_start', '09:00'), 'end' => consultant_get_config($day . '_end', '18:00'), 'lunch_start' => consultant_get_config($day . '_lunch_start', '12:00'), 'lunch_end' => consultant_get_config($day . '_lunch_end', '13:00') ]; } // 💡 [추가] 고급 설정 데이터 조회 $advanced_configs = []; $result = sql_query("SELECT * FROM consultant_config ORDER BY id"); while ($row = sql_fetch_array($result)) { $advanced_configs[] = $row; } include_once(G5_ADMIN_PATH . '/admin.head.php'); ?>

📊 대시보드 📅 빠른 스케줄 관리
⚙️ 기본 설정 📅 요일별 운영시간 🛠️ 고급 설정 🔔 알림 설정
기본 설정: 1회 상담시간, 최대인원, 상담비 등 기본적인 상담 조건을 설정합니다.
⏰ 상담 기본 조건
15분~480분 사이로 설정 가능합니다. (15분 단위)
1명~50명 사이로 설정 가능합니다.
💰 결제 정보
📅 예약 제한 설정
오늘부터 몇 일 후까지 예약 가능한지 설정
최소 몇 시간 전에 예약해야 하는지 설정
상담 시작 몇 시간 전까지 고객이 직접 취소할 수 있는지 설정
요일별 운영시간: 각 요일의 상담 운영 여부와 시간을 설정합니다. '운영'을 선택해야 해당 요일의 스케줄이 생성됩니다.
$setting): ?>
onchange="toggleDayTimes('')">
고급 설정: 시스템의 모든 설정값을 직접 관리합니다. 'Key'는 시스템에서 사용하는 고유값이므로 변경할 수 없습니다.
'Value'는 실제 적용되는 값이며, 'Description'은 관리자가 참고하기 위한 설명입니다.
고급 설정 목록
Key (변경불가) Value (설정값) Description (설명)
50 || strpos($config_item['config_value'], "\n") !== false): ?>
알림 설정: 예약 관련 알림 기능을 설정합니다.
🔔 알림 기능
>
예약 확정, 취소 등의 상황에서 고객에게 알림을 발송합니다.