<!--@if($module_info->duplicated_schedule == "N")--> <!--// 중복일정 Y=허용, N=불허 -->

	<!--// 카테고리별 시간표 얻기-->
	<!--@if($module_info->use_category=="Y")-->  
		<!--@foreach($category_list as $val)-->
			{@$reservation_arr[$val->category_srl] = null}  <!--// 카테고리별 일정시간표 array -->
		<!--@endforeach-->
	<!--@else-->
		{@$reservation_arr = array('0'=>null)}   <!--// 카테고리 사용않을경우 -->
	<!--@endif-->

	<!--// 일정시간표 array 안에 업무시간의에 *표-->
	{@$wrking_start_stamp = mktime(substr($working_start,0,2), substr($working_start,3,2), 0, 0, 0, 0);}
	{@$wrking_end_stamp = mktime(substr($working_end,0,2), substr($working_end,3,2), 0, 0, 0, 0);}
	<!--@foreach($reservation_arr as $key => $val)-->
		<!--@for($i = $wrking_start_stamp; $i <= $wrking_end_stamp; $i += 60*$time_interval)-->
		{@$tmp_fld03 = date('H', $i).":".date('i',$i);}
		{@$reservation_arr[$key][$tmp_fld03] = "*";}
		<!--@endfor-->
	<!--@endforeach-->

	<?php
		// 일정시간표 어레이및 카테고리 사용여부 넘기기
		$reservation_arr = $__Context->reservation_arr;
		$ind_use_category = $__Context->module_info->use_category;
	?>

	<!--@if($document_srl != null)-->  <!--// 문서선택된 경우-->
		{@$tmp_beginday=$extra_keys[1]->value}
		<?php
			$wrkYear = substr($__Context->tmp_beginday,0,4);
			$wrkMonth = substr($__Context->tmp_beginday,4,2);
			$wrkDay = substr($__Context->tmp_beginday,6,2);
		?>
	<!--@elseif(Context::get('extra_vars1') != null)-->
		<?php
		$tmparr=explode("-", $__Context->extra_vars1);	//클릭한 날자
		if ($tmparr[2] != null){
			$wrkYear = $tmparr[0];
			$wrkMonth = $tmparr[1];
			$wrkDay = $tmparr[2];
		}
		?>
	<!--@else-->
		<?php
			if ($pYear == null){
			$wrkYear = date("Y");
			$wrkMonth = date("n");
			$wrkDay = date("d");
			}
		?>
	<!--@endif-->

<!--// 쿼리 설정/실행/list만들기--- -->
<?php
$tempmonth = substr("0".$wrkMonth, -2);				//월 을 "7" 에서 "07"로

$obj->site_srl = '';  // 0을 넣으면 이상해짐
$obj->module_srl = $__Context->module_info->module_srl;
$obj->sort_index_1 = 'extra_value_start';	// (일정시작 일)
$obj->order_type_1 = 'desc';
$obj->sort_index_default_1 = 'extra_value_start';	
$obj->sort_index_2 = 'extra_value_time';	// (시작종료 시간)
$obj->order_type_2 = 'asc';
$obj->sort_index_default_2 = 'extra_value_time';
$obj->sort_index = $__Context->module_info->order_target;	// (게시판 문서 정렬 번호)
$obj->order_type = $__Context->module_info->order_type;
$obj->sort_index_default = 'list_order';	// 게시판설정 선택값이 null 일때
$obj->list_count = $list_count*10;  // 게시판 설정값 10배의 일정표시 (예:기본 20일때 200개까지)
$obj->page_count = $page_count;  // 게시판 설정값
$obj->var_idx1 = '1';    // 확장변수1번: sort target(일정시작)- 통상 값이 있음
$obj->var_idx2 = '2';	 // 확장변수2번: sort targer(일정종료)- 대부분의 경우 null 값임
$obj->var_idx7 = '7';	 // 확장변수7번: 시작종료시간
$obj->var_idx8 = '8';	 // 확장변수8번: 공개그룹
$obj->var_period_start = $wrkYear.$tempmonth.$wrkDay;	 // 선택 범위시작 - 당일 >=
$obj->var_period_end = $wrkYear.$tempmonth.$wrkDay;	 // 선택 범위  끝 - 당일 <=
$obj->var_fld_null = "0";	 // null 대신값 (null이면 이상해짐)
$obj->var_fin = 's:1:"F";';	 // 완료일정
$obj->var_rej = 's:1:"R";';	 // 취소일정

$query_path = $__Context->module_info->module."/skins/".$__Context->module_info->skin;   // 쿼리경로
$output = executeQueryArray($query_path.'.getDocumentsForPlanner_reservation', $obj);    // 당일 유효 일정

if(count($output->data)) {
	foreach($output->data as $key => $attribute) {
		$tmp_time_arr = explode('|@|',$attribute->extra_value_time);
	
// 입력된 시간만 예약시간으로 처리
		foreach($tmp_time_arr as $tmp_rev_time) {
			$tmp_fld01 = $tmp_rev_time;
			if ($ind_use_category == "Y") {
				$reservation_arr[$attribute->category_srl][$tmp_fld01] = "R";	// R:해당시간에 일정있음
			} else {
				$reservation_arr[0][$tmp_fld01] = "R";
			}
		}

// 시작 종료 사이를 전부 예약된것으로 가정 하는것은 혼란이 올수 있어 입력된 시간만 예약시간으로 처리(아래주석처리함)
/********************
		if (count($tmp_time_arr) == 1){  // 시간이 하나만(시작시간) 있을경우
			$tmp_fld01 = $tmp_time_arr[0];
			if ($ind_use_category == "Y") {
				$reservation_arr[$attribute->category_srl][$tmp_fld01] = "R";	// R:해당시간에 일정있음
			} else {
				$reservation_arr[0][$tmp_fld01] = "R";
			}
		} else {	// 시간이 하나이상 있을경우 마지막을 종료시간으로간주 
			$tmp_fld01 = $tmp_time_arr[0];
			$tmp_fld01_hh = substr($tmp_fld01,0,2);
			$tmp_fld01_mm = substr($tmp_fld01,3,2);
			$tmp_fld02 = $tmp_time_arr[count($tmp_time_arr)-1];
			$tmp_fld02_hh = substr($tmp_fld02,0,2);
			$tmp_fld02_mm = substr($tmp_fld02,3,2);
			$tmp_stamp01 = mktime($tmp_fld01_hh, $tmp_fld01_mm, 0, 0, 0, 0); // 시작 (초)
			$tmp_stamp02 = mktime($tmp_fld02_hh, $tmp_fld02_mm, 0, 0, 0, 0); // 종료 (초)
			$tmp_term =  $tmp_stamp02 - $tmp_stamp01;
			if ($tmp_term <= 0) {
				if ($ind_use_category == "Y") {
					$reservation_arr[$attribute->category_srl][$tmp_fld01] = "R";	// 종료가 시작과 같거나 빠를때
				} else {
					$reservation_arr[0][$tmp_fld01] = "R";
				}
			} else {
				for ($i = $tmp_stamp01; $i <= $tmp_stamp02; $i += 60*$time_interval) {	// 중간시간도 일정있음으로 처리
					$tmp_fld03 = date('H', $i).":".date('i',$i);
					if ($ind_use_category == "Y") {
						$reservation_arr[$attribute->category_srl][$tmp_fld03] = "R";
					} else {
						$reservation_arr[0][$tmp_fld03] = "R";
					}
				}
			}
		}	// if 끝 (시작시간 만)
*********************/

	}  // foreeach 끝

//print_r($reservation_arr)."123";  //디버깅
$__Context->reservation_arr = $reservation_arr;
}	// if 끝 ($output)
?>
<!--@endif-->  <!--// 중복일정 Y=허용, N=불허 끝-->

