ÿØÿà JFIF  ` ` ÿþš 403 WEBHELL REBORN
403 WEBHELL REBORN
Server : Apache
System : Linux ruga7-004.fmcity.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : tkt_travelbus ( 1137)
PHP Version : 7.0.0p1
Disable Function : mysql_pconnect
Directory :  /tkt_travelbus/www/api/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

Buat Folder Baru:
Buat File Baru:

Current File : /tkt_travelbus/www/api/tk_api_toggle_date_ajax.php
<?php
	header("Content-Type: application/json");
	$g4_path = "..";

	include "common.php"; // API Common
	include "../admin/_common.php"; // Admin Common

	/*******************************************************************/
	// 타임테이블 예약 ON/OFF처리                                       //
	// FLOW : Zipline >> TK                                                //
	// CALL :  ajax                                                        //
	/*******************************************************************/

	// 개발 모드 설정 ★ 실제 운영 시 주의 ★
	$allow_addr = array(
		'119.67.250.2033', // 집
		'14.6.87.1933' // TK사무실
	);
	if(in_array($_SERVER['REMOTE_ADDR'], $allow_addr) == true){
		define('DEV_MODE', '1');
		echo "###############################\n";
		echo "########## 개발 모드 ##########\n";
		echo "###############################\n";
	} else {
		define('DEV_MODE', '0');
	}

	if(DEV_MODE) echo ("===== TKPLACE - ZIPLINE : TIMETABLE TOGGLE START =====\n");
	Log::save(sprintf("%s(%d) %s", __FILE__, __LINE__, "API START"), '', 'tk/'.date('Ym'));
	Log::save(sprintf("%s(%d) MODE : %s / POST : %s", __FILE__, __LINE__, $mode, serialize($_POST)), '', 'tk/'.date('Ym'));

	// 호출하는 곳 : 예약현황 목록(달력 - 날짜별), 일일예약현황(팝업 - 시간별)

	// 지점 별 운영시간
	$zipline_timetable = getZiplineTimeTable($branch, $month);

	$mode			= $_POST['mode'];
	$event_date		= $_POST['ti_date'];
	$event_time		= $_POST['ti_time'];
	$status			= $_POST['status'];
	$branch			= $_POST['branch']; // branch 코드 mg, yi, ad

	if($status == 'N') { // 예약불가
		$event_status = "C"; // 마감
	} else if($status == 'Y') { // 예약가능
		$event_status = "A"; // 예약가능
	} else {
		echo 'status error';
		exit;
	}

	if($mode == 'day'){ // 해당 날짜
		$event_date_arr = explode("|", $event_date);
		$event_time_arr = $zipline_timetable;
	} else if($mode == 'alltime'){ // 해당 날짜 타임 전체
		$event_date_arr[0] = $event_date;
		$event_time_arr = explode("|", $event_time);
	} else if($mode == 'time'){ // 타임별
		$event_date_arr[0] = $event_date;
		$event_time_arr[0] = $event_time;
	} else { 
		echo 'mode error';
		exit;
	}

	if(DEV_MODE){ p($_POST); }

	Log::save(sprintf("%s(%d) event_date %s event_time %s", __FILE__, __LINE__, serialize($event_date_arr), serialize($event_time_arr)), '', 'tk/'.date('Ym'));
	Log::save(sprintf("%s(%d) %s", __FILE__, __LINE__, "API CALL"), '', 'tk/'.date('Ym'));

	// 주문조회 쿼리
	$path = "/goods/event-status-zipline/";

	$call_data = array(
		"mode"			=> $mode,
		"site_id"			=> $branch,
		"start_date"		=> convertDateFormatByTK($event_date),
		"event_name"	=> $event_time,
		"event_status"	=> $event_status,
	);

	$result = call($path, $call_data);
	$data = array();

	if($result['status'] == 200){

		Log::save(sprintf("%s(%d) %s", __FILE__, __LINE__, "Change Status"), '', 'tk/'.date('Ym'));

		foreach($event_date_arr as $k_date => $v_date){ // 날짜별 변경
			foreach($event_time_arr as $k => $v_time){ // 시간별 변경

				$v_date		= date('Ymd', strtotime($v_date));
				$nowdate	= date('Y-m-d H:i:s');
				$ipaddr		= $_SERVER['REMOTE_ADDR'];

				$sql = "select * from g4_write_timetable where ti_site = '".$branch."' AND ti_date = '".$v_date."' AND ti_time = '".$v_time."' ORDER BY ti_id DESC LIMIT 1";
				$row_res = sql_fetch($sql);

				// 타임테이블 상태변경
				if($row_res['ti_id']){
					// 데이터 있을 경우 Update
					$sql = "update g4_write_timetable set ti_yn = '".$status."', ti_datetime = '".$nowdate."', ti_write_ipaddr = '".$ipaddr."' WHERE ti_id = '".$row_res['ti_id']."' LIMIT 1";

				} else {
					// 데이터 없을 경우 Insert

					// 지점별 기본 값
					if($branch == "ad"){
						$maximum = 30;
					} else if(substr($event_date, 0, 4) == '2023') {
						$maximum = 10;
					} else {
						$maximum = 12;
					}

					$insert = array(
						"ti_site"			=> $branch,
						"ti_date"			=> $v_date,
						"ti_time"			=> $v_time,
						"ti_yn"				=> $status,
						"ti_maximum"	=> $maximum,
						"ti_datetime"		=> $nowdate,
						"ti_write_ipaddr"=> $ipaddr
					);

					$sql = getInsertQuery("g4_write_timetable", $insert);
				}


				if(DEV_MODE){ p($sql); }

				// DB 처리
				if(DEV_MODE == 0){

					if(DEV_MODE){ p("DB Process..."); }
					Log::save(sprintf("%s(%d) DB Update/Insert Process  : %s", __FILE__, __LINE__, $sql), '', 'tk/'.date('Ym'));
					sql_query($sql);
				}
			}
		}

	} else {

	}

	echo json_encode($result);


	function convertDateFormatByTK($event_date){
		// 날짜 유형 변경처리 (짚라인 : YYYYMMDD / TK : YYYY-MM-DD)
		$event_date_tmp = explode("|", $event_date);
		foreach($event_date_tmp as $k => $v){
			$event_date_tmp[$k] = date('Y-m-d', strtotime($v));
		}
		$event_date = implode("|", $event_date_tmp);

		return $event_date;
	}

	?>




Anon7 - 2021