<!--// XE ver.1.2.x 게시판을 이용한 플래너/음력달력  (Skin Planner123-Simple)-----------------------
## [author]
##  - Keysung Chung, 2009, 07, 28
##  - http://chungfamily.woweb.net/
## [function]
##  - 24절기 일자를 구하기 위해 Chilbong Kim님의 class.calendar.php와 class.solar.php를 사용
##  - 기타 펑션은 인터넷에서 구하거나 직접 코딩함.
## [changes]
##  - PlannerXE123 ver. 2.1.0 : Keysung Chung, 2010, 09, 13
##  - PlannerXE123 ver. 2.0.0 : Keysung Chung, 2010, 09, 01
##  - PlannerXE123 ver. 1.7.0 : Keysung Chung, 2010, 08, 01
##  - PlannerXE123 ver. 1.6.0 : Keysung Chung, 2010, 07, 01
##  - PlannerXE123 ver. 1.5.0 : Keysung Chung, 2010, 06, 15
##  - PlannerXE123 ver. 1.4.0 : Keysung Chung, 2010, 06, 01
##  - PlannerXE123 ver. 1.3.0 : Keysung Chung, 2010, 05, 15
##  - PlannerXE123 ver. 1.2.0 : Keysung Chung, 2010, 05, 01
##  - PlannerXE123 ver. 1.1.0 : Keysung Chung, 2010, 04, 14
##  - PlannerXE123 ver. 1.0.0 : Keysung Chung, 2010, 04, 01
##  - PlannerXE123 ver. 0.3 : Keysung Chung, 2010, 02, 28
##  - PlannerXE123 ver. 0.2 : Keysung Chung, 2009, 11, 09
##	- PlannerXE123 ver. 0.1 : Keysung Chung, 2009, 07, 28
----------------------------------------------------------------------- -->
{@ $var_version = "PlannerXE123: Skin Ver 2.1.0"}
<!--// 모바일스킨에서 jquery 작동을 위해 추가함: 모바일 디폴트 스킨 쓰기 앞부분임-->
<!--@if($_COOKIE["mobile"])-->
{@ Context::addJsFile("./common/js/jquery.js", true, '', -100000) }
{@ Context::addJsFile("./common/js/js_app.js", true, '', -100000) }
{@ Context::addJsFile("./common/js/x.js", true, '', -100000) }
{@ Context::addJsFile("./common/js/common.js", true, '', -100000) }
{@ Context::addJsFile("./common/js/xml_handler.js", true, '', -100000) }
{@ Context::addJsFile("./common/js/xml_js_filter.js", true, '', -100000) }
<!--%import("../default/js/mboard.js")-->
<!--%import("../default/css/mboard.css")-->
<!--@endif-->
<!--// 모바일에서 쓰기가 정상 작동이 안되어 추가함 -->

<?php 
$GLOBALS['pOption'] = Context::get('pOption');	// XE변수 넘겨받기 위해서.
$pOption=$GLOBALS['pOption']; 					// XE변수 넘겨받기 위해서.
$GLOBALS['pYear'] = Context::get('pYear');	// XE변수 넘겨받기 위해서.
$pYear=$GLOBALS['pYear']; 					// XE변수 넘겨받기 위해서.
$GLOBALS['pMonth'] = Context::get('pMonth');	// XE변수 넘겨받기 위해서.
$pMonth=$GLOBALS['pMonth']; 					// XE변수 넘겨받기 위해서.
?>

{@ $link_path = getUrl('','mid',$mid,'dummy',1,'offset',$offset)}
{@ $XE_path = getUrl('')}

{@ $today_bgcolor="#CDE6AC"}   <!--// 달력의 당일 칸 배경색 -->
{@ $today_bodercolor="#58792E"}   <!--// 달력의 당일 칸 border 색 -->
{@ $mouseover_bgcolor="#ddfffa"}   <!--// 달력의 칸에 마우스오버시 배경색 #ddfffa -->

<!--@if($module_info->calendar_bgcolor == null )-->
	{@ $day_bgcolor="white"}      <!--// 달력의 평일 칸 배경색 -->
<!--@else-->
	{@ $day_bgcolor=$module_info->calendar_bgcolor}      <!--// 달력의 평일 칸 배경색 -->
<!--@end-->

<!--//  CSS 인쿨르드 -->
<!--%import("./css/planner123_calendar.css")-->

<?php 
$linkpath = $__Context->link_path;
$xepath = $__Context->XE_path;
$skinpath = $tpl_path; // 스킨 설치 경로지정
$today_bgcolor = $__Context->today_bgcolor;
$today_bodercolor = $__Context->today_bodercolor;
$mouseover_bgcolor = $__Context->mouseover_bgcolor;
$day_bgcolor = $__Context->day_bgcolor;
//echo $linkpath;
//echo $skinpath;
?>

<!--//  function 인쿨르드: 파일 확장자가 "html" 이어야만 정상작동(php는 안됨), 또 class함수는 작동안됨-->
<!--//  아래 require 함수로 대체함 아울러 휴일,기념일함수를 별도 분리함-->
<!--//#include("function/function_simple.html")-->
<!--//  인쿨르드 끝 -->
<?php
require_once($skinpath.'function/function_simple.php');
require_once($skinpath.'function/function_holimemday_kor.php');  // 한국 휴일, 기념일
?>

<!--// 날자 설정 ---------------------------------- -->
<?php
// Daylight saving time을 위해 Time zone을 지정할 수 있음 ( php4.대에서는 에러 발생, php5.1 이상에서 정상작동)
// date_default_timezone_set('America/Toronto'); // 타임존목록 http://kr.php.net/manual/kr/timezones.php )예: America/Toronto
$server_timestamp = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y"));
$server_offset = date("Z");
$xe_timestamp = fn_xetimestamp();
$xe_offset = date("Z")+zgap();
$client_offset = Context::get('offset');        // url 변수로 받은 client offset  
$__Context->client_timestamp = $client_timestamp = mktime(date("H"), date("i"), date("s")-date("Z")+$client_offset, date("m"), date("d"), date("Y"));

// 화면에 보여줄 서버시간: 기본 XE시간으로 설정, 만약 default_timezone을 사용할 경우는 $server_timestamp, $server_offset 로 변경
$__Context->display_timestamp = $display_timestamp = $xe_timestamp;  
$__Context->display_offset = $xe_offset;	    
//$__Context->display_timestamp = $display_timestamp = $server_timestamp;  
//$__Context->display_offset = $server_offset;	    

if ($client_offset == null ) {
	$wrk_timestamp = $display_timestamp;
} else {
	$wrk_timestamp = $client_timestamp;
}

if ($pYear == null ) {
	$pYear = date("Y", $wrk_timestamp);
}

if ($pMonth == null ) {
	$pMonth = date("n", $wrk_timestamp);
}

if ($pMon == null ) {
	$pMon = date("F", $wrk_timestamp);
}

if ($pDay == null ) {
	$pDay = date("j", $wrk_timestamp);
}

if ($pOption < 1 || $pOption > 3 ) {
	$pOption=1;		// 간지옵션
}

$__Context->pYear = $pYear =date("Y", mktime(0, 0, 0, $pMonth, 1, $pYear)); 
$__Context->pMonth = $pMonth =date("n", mktime(0, 0, 0, $pMonth, 1, $pYear));
$__Context->pMon = $pMon =date("F", mktime(0, 0, 0, $pMonth, 1, $pYear));

$todayYY = date("Y", $wrk_timestamp);	// 당일년도
$todayMM = date("n", $wrk_timestamp);	// 당일월
$todayDD = date("j", $wrk_timestamp);	// 당일일
$__Context->wrk_timestamp = $wrk_timestamp;
?>

<?php 
$Calmain = fn_CalMain($pYear,$pMonth);		// 달력일자
$Holiday = fn_HolidayChk($pYear, $pMonth);		// 휴일(달력일자 붉은색표시를 위해..)
?>
<!--@if($module_info->display_holiday == 'Y')-->
<?php 
//$Holiday = fn_HolidayChk($pYear, $pMonth);	// 휴일
$ind_holiday = "Y";
?>
<!--@end-->
<!--@if($module_info->display_memday == 'Y')-->
<?php 
$Memday = fn_MemdayChk($pYear, $pMonth);      // 기념일  
$ind_memday = "Y";
?>
<!--@end-->
<!--@if($module_info->display_lunar == 'Y')-->
<?php 
$Lunarday = fn_sol2lun_ary($pYear,$pMonth);   // 음력일자 
$ind_lunar = "Y";
?>
<!--@end-->
<!--@if($module_info->display_lunar == 'Y_all')-->
<?php 
$Lunarday = fn_sol2lun_ary($pYear,$pMonth);   // 음력일자 - 모든날자
$ind_lunar_all = "Y";
?>
<!--@end-->

<?php 
$ind_use_category = $__Context->module_info->use_category;				// 분류(카테고리) 사용여부
$ind_bgcolor_option = $__Context->module_info->use_category_bgcolor;	// 일정 배경색상 옵션
$ind_image_diary = $__Context->module_info->image_diary;				// 그림일기 사용여부
$ind_complete_doc = $__Context->module_info->display_complete_doc;		// 완료일정 표시여부
$ind_duplicated_schedule = $__Context->module_info->duplicated_schedule; // 중복일정 허용여부
?>

<!--// planner123 문서목록 얻기---------------------------------- -->
<!--// 검색년월 및 목록수 설정------ -->
<?php
$__Context->pYear = $pYear;					
$tempmonth = substr("0".$pMonth, -2);				//월 을 "7" 에서 "07"로
$__Context->tempMonth = $tempmonth;
$list_count = $__Context->module_info->list_count;  //목록수
$page_count = $__Context->module_info->page_count;  //목록수
?>

<!--// 검색필드 설정------ -->
<?php
$search_target = $__Context->search_target;
$search_keyword = $__Context->search_keyword;

// 검색 Target에 따른 검색필드 설정.
if ($search_keyword != null) {
	switch ($search_target) {
      case (title):
		$obj->var_search_title = $search_keyword;
        break;
      case (content):
		$obj->var_search_content = $search_keyword;
        break;
      case (title_content):
		$obj->var_search_title = $search_keyword;
		$obj->var_search_content = $search_keyword;
        break;
//      case (comment):   // 댓글 검색하지 않음
//        $obj->var_search_comment = $search_keyword;
//        break;
      case (user_name):
        $obj->var_search_user_name = $search_keyword;
        break;
      case (nick_name):
        $obj->var_search_nick_name = $search_keyword;
        break;
      case (user_id):
        $obj->var_search_user_id = $search_keyword;
        break;
      case (tag):
        $obj->var_search_tags = $search_keyword;
        break;
      default :
         if(strpos($search_target,'extra_vars')!==false) {
            $obj->var_search_extra_idx = substr($search_target, strlen('extra_vars'));
            $obj->var_search_extra_value = str_replace(' ','%',$search_keyword);
         }
         break;
    }
}
?>

<!--// 분류필드 설정--- -->
<!--@if($module_info->use_category == "Y")-->
<?php
$tmp_category = Context::get('category_list');  // 분류srl 얻기 (1단계만 지원, 그룹제한 고려 않음)
if (!$tmp_category) {
	$tmp_category = array();
}
$wrk_var_category_srl = "0";					// 디폴트
foreach ($tmp_category as $val) {
	$wrk_var_category_srl .= ",".$val->category_srl;
    if ($val->selected) {
	    $obj->var_category_srl = $val->category_srl;
	}
}
if (!$obj->var_category_srl) {
$obj->var_category_srl = $wrk_var_category_srl;
}
?>
<!--@end-->

<!--// loged member --- -->
<?php
$module_srl = $__Context->module_info->module_srl;	// module srl (drag&drop 에서 사용)
$module_name = $__Context->module_info->module;	// module name (drag&drop 에서 사용)
$member_temp_name = $__Context->logged_info->nick_name; // 공개그룹 user에 nick_name 이용
// $member_temp_name = $__Context->logged_info->user_name; //  공개그룹 user에 user_name 이용
$member_srl = $__Context->logged_info->member_srl;
$group_list = $__Context->logged_info->group_list;
$usergroup_arr = array();
if ($member_srl != null) {
	$obj->var_member_srl = $member_srl;	 // user srl
    foreach($group_list as $key => $val) {
       $group_titles .= ",".$val;
	}
    $group_titles=substr($group_titles,1);    // 사용자가 소속된 그룹명칭
	$usergroup_arr = explode(",",$group_titles);
} 
?>

<!--// 쿼리 설정/실행/list만들기--- -->
<?php
$obj->site_srl = '';  // 0을 넣으면 이상해짐
$obj->module_srl = $__Context->module_info->module_srl;
$obj->sort_index_1 = 'extra_value_end';	// (일정시작 일) start를 end로(2010-08-01)
$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 = $pYear.$tempmonth."01";	 // 선택 범위시작 - 당월 01일 >=
$obj->var_period_end = $pYear.$tempmonth."31";	 // 선택 범위  끝 - 당월 31일 <=
$obj->var_fld_null = "0";	 // null 대신값 (null이면 이상해짐)

$query_path = $__Context->module_info->module."/skins/".$__Context->module_info->skin;       // 쿼리경로
$view_group = $__Context->module_info->default_document_group;    // 스킨에서 정해준 일반사용자가 볼수있는 문서그룹

if ($__Context->grant->manager) {
	$output = executeQueryArray($query_path.'.getDocumentsForPlanner_all', $obj);    // 관리자 (모든문서)
} else if ($__Context->module_info->consultation == "Y") {
	$output = executeQueryArray($query_path.'.getDocumentsForPlanner_own', $obj);    // 상담기능 (자신 + 공지)
} else if ($view_group == "owner") {
	$output = executeQueryArray($query_path.'.getDocumentsForPlanner_own', $obj);    // 자신 + 공지
} else if ($view_group == "usergroup") {
	$output = executeQueryArray($query_path.'.getDocumentsForPlanner_group', $obj);  // 자신 + 공지 + 공개그룹소속
} else if ($view_group == "nonsecured") {
	$output = executeQueryArray($query_path.'.getDocumentsForPlanner_nonSec', $obj); // 타인 비밀글및 비멤버쉽 문서 제외
} else if ($view_group == "alldocument") {
	$output = executeQueryArray($query_path.'.getDocumentsForPlanner_all', $obj);    // 모든문서
} else {
	$output = executeQueryArray($query_path.'.getDocumentsForPlanner_all', $obj);    // 모든문서
}

// ---문서 목록 생성 --
	if(count($output->data)) {
		foreach($output->data as $key => $attribute) {
			$tmp_document_srl = $attribute->document_srl;
			$tmp_Document = null;
			$tmp_Document = new documentItem();
			$tmp_Document->setAttribute($attribute, false);
			$tmp_Document->category_srl = $attribute->category_srl;
            $tmp_opengroup_arr = explode("|@|",$attribute->extra_value_group);

		  if($module_info->consultation == 'Y'){   // 상담기능 일때
			if ( $__Context->grant->manager) {
			    $tmp_document_list[$key] = $tmp_Document;       //상담기능-관리자이면 전체 문서를 처리,
			} else {
				if ($attribute->is_notice == "Y" || $attribute->member_srl == $member_srl) {
 			        $tmp_document_list[$key] = $tmp_Document;   //상담기능-관리자 아니면 공지문서나 자신의 문서이면 처리.
                }
			}
          } else {  // 상담기능 아닐때

			if ( $__Context->grant->manager || $view_group == "alldocument") {
			    $tmp_document_list[$key] = $tmp_Document;       // 관리자또는 문서그룹이 alldocument 이면 전체 문서를 처리,
			} else if ($view_group != "usergroup" && $attribute->extra_value_group == null) {
			    $tmp_document_list[$key] = $tmp_Document;       // 문서그룹이 usergroup이 아니면서 공개그룹을 선택하지 않은 문서 처리,
			} else {											// 문서그룹이 usergroup 또는 공개그룹 선택된 문서
				if ($attribute->is_notice == "Y" || $attribute->member_srl == $member_srl) {
 			        $tmp_document_list[$key] = $tmp_Document;       //공지문서나 자신의 문서이면 처리.
                } else {
                    $tmp_flag = "";
                    foreach($usergroup_arr as $tmp_key => $val_tmp) {
			    	    if (in_array($val_tmp, $tmp_opengroup_arr)){	//공개그룹 소속.
 			               $tmp_flag = "*";                        
						}
				    }
			    	if ($member_temp_name != null && in_array($member_temp_name, $tmp_opengroup_arr)){   //공개 user_name.
 						$tmp_flag = "*";                        
					}
				    if ($tmp_flag == "*") {
 			        $tmp_document_list[$key] = $tmp_Document;       //공개그룹 소속이면 처리.
                    }
			    }
			}  

		  }  //상담기능 아닐때 끝

		//echo $tmp_document_srl." ";  //디버깅용
		}  //foreeach 끝
	} else {
		$tmp_document_list = array();          
	}
$__Context->planner123_document_list = $tmp_document_list;
// ---문서 목록 생성 끝--
?>
<!--// planner123 문서목록 얻기 끝---------------------------------- -->

<!--// 공지사항과 일반문서 합치기 ($planner123_document_list로 대체함:만일을위해 살려둠) -->
<!--//(공지사항을 리스트 앞으로 가져오기 위해 합침)  -->
<!--@if($notice_list != null)-->
	{@ $planner_document_list = $notice_list}
	<!--@if($document_list != null)-->
		{@ $planner_document_list = $planner_document_list + $document_list}	
	<!--@end-->
<!--@else-->
	{@ $planner_document_list = $document_list}	
<!--@end-->
<!--// 공지사항과 일반문서 합치기 ** 사용하지 않음 끝 ** -->

<!--// Xe 확장변수 변수를 작업 ($key 등은 board설정시 목록에 포함되어야 들어옴)  -->
<!--@foreach($planner123_document_list as $no => $document)-->

	<!--// Category title & color값 얻기  -->
	<!--@if($module_info->use_category == "Y" && $document->get('category_srl'))-->
		<!--@if($category_list[$document->get('category_srl')]->color)-->
		{@ $category_color = $category_list[$document->get('category_srl')]->color}
		<!--@end-->
		{@ $category_title = $category_list[$document->get('category_srl')]->title}
	<!--@else-->
		{@ $category_color = null}
		{@ $category_title = null}
    <!--@end-->
	<?php
		$category_title = $__Context->category_title;
		$category_color = $__Context->category_color;
	?>

	<!--// 댓글 숫자 얻기  -->
    <!--@if($document->getCommentCount())-->
        {@ $plan_reply = $document->getCommentCount()}
	<!--@else-->
        {@ $plan_reply = null}
	<!--@end-->
	<?php
		$plan_reply = $__Context->plan_reply;
	?>

	<!--// 확장변수값 얻기  -->
	<!--@foreach($list_config as $key => $val)-->
		<!--@if($val->idx == -1)-->
		<!--@else-->
			<!--@if($val->idx == 1)-->
			{@ $plan_start = $document->getExtraValue($val->idx)}	
			{@ $startYY = substr($plan_start,0,4)}
			{@ $startMM = substr($plan_start,4,2)} 
			{@ $startDD = substr($plan_start,6,2)}
			{@ $plan_title = $document->getTitle($module_info->subject_cut_size)}
			{@ $plan_detail = $document->getSummary($module_info->content_cut_size)}

			<!--@if($_COOKIE["mobile"])--> <!--// 모바일일때 그림 사이즈작게 mobile::isFromMobilePhone() 함수를 쿠키로 대체-->
	            {@ $plan_img = null}
	             <!--// {@ $plan_img = $document->getThumbnail(45, 45, $module_info->thumbnail_type)} -->
			<!--@else-->
	            {@ $plan_img = $document->getThumbnail($module_info->thumbnail_width, $module_info->thumbnail_height, $module_info->thumbnail_type)}
			<!--@endif-->

			{@ $plan_doc_extra_vars = $document->get('extra_vars')}    <!--// 취소일정을 위해 추가 -->
			{@ $plan_docsrl = $document->document_srl}
			{@ $plan_url = getUrl('document_srl',$document->document_srl, 'listStyle', $listStyle, 'cpage','','offset',$offset)}
				<!--//@if($startYY == $pYear && $startMM == $tempMonth)-->
				<?php
				$plan_title = $__Context->plan_title;
				$plan_detail = $__Context->plan_detail;
                $plan_img = $__Context->plan_img;
                $plan_doc_extra_vars = $__Context->plan_doc_extra_vars;    <!--// 취소일정을 위해 추가 -->
				$plan_url = $__Context->plan_url;
				$plan_docsrl = $__Context->plan_docsrl;			// 문서번호
				$plan_start = $__Context->plan_start;			// 일정시작
				$plnstartYY = $__Context->startYY;			
				$plnstartMM = $__Context->startMM;
				$plnstartDD = $__Context->startDD;
				$plnstartMM = ltrim( $plnstartMM, "0" );	//  앞의 "0" 제거
				$plnstartDD = ltrim( $plnstartDD, "0" );	//  앞의 "0" 제거
				?>
				<!--//@end-->
			<!--@end-->
			<!--@if($val->idx == 2 )-->
			{@ $plan_end = $document->getExtraValue($val->idx)}		
				<!--@if($plan_end == null )-->
				{@ $plan_end = $plan_start}
				<!--@end-->
			{@ $endYY = substr($plan_end,0,4)}
			{@ $endMM = substr($plan_end,4,2)} 
			{@ $endDD = substr($plan_end,6,2)}
				<!--//@if($endYY >= $pYear && $endMM >= $tempMonth)-->
				<?php
				$plan_end = $__Context->plan_end;			// 일정종료
				$plnendYY = $__Context->endYY;			
				$plnendMM = $__Context->endMM;
				$plnendDD = $__Context->endDD;
				$plnendMM = ltrim( $plnendMM, "0" );	// 일자 앞의 "0" 제거
				$plnendDD = ltrim( $plnendDD, "0" );	// 일자 앞의 "0" 제거
				?>
				<!--//@end-->
			<!--@end-->
			<!--@if($val->idx == 3 )-->
			{@ $plan_bgcolor = $document->getExtraValueHTML($val->idx)}		
				<?php
				$plan_bgcolor = $__Context->plan_bgcolor;		// 배경색상
				?>
			<!--@end-->
			<!--@if($val->idx == 4 )-->
			{@ $plan_flagicon = $document->getExtraValueHTML($val->idx)}	
				<?php
				$plan_flagicon = $__Context->plan_flagicon;		// 일정확인
				?>
			<!--@end-->
			<!--@if($val->idx == 5 )-->
			{@ $plan_repeat_cycle = $document->getExtraValueHTML($val->idx)}	
				<?php
				$plan_repeat_cycle = $__Context->plan_repeat_cycle;		// 반복일정 cycle
				?>
			<!--@end-->
			<!--@if($val->idx == 6 )-->
			{@ $plan_repeat_unit = $document->getExtraValueHTML($val->idx)}	
				<?php
				$plan_repeat_unit = $__Context->plan_repeat_unit;		// 반복일정 unit
				?>
			<!--@end-->
            <!--@if($val->idx == 7 )-->
            {@ $plan_time = $document->getExtraValueHTML($val->idx)}
                <?php
                $plan_time = $__Context->plan_time;						// 시간대 (09:00, 09:30, 10:00,.. 형식)
                ?>
            <!--@end-->
		<!--@end-->
	<!--@end-->

    <!--// 새글 이미지값 얻기  -->
    {@ $plan_new = $document->printExtraImages(60*60*$module_info->duration_new)}
    <?php $plan_new = $__Context->plan_new; ?>

<?php 
if ($plnstartYY != null ) {
	if ($plnstartYY == $pYear && $plnstartMM == $pMonth) {	// 당월 시작 이면서 당월 이후 종료
		if (($plnendYY > $pYear) || (($plnendYY == $pYear) && ($plnendMM > $pMonth))) {
					$plnendYY = $pYear;
					$plnendMM = $pMonth;
					$plnendDD = 31;
		}
	}
	elseif (($plnstartYY < $pYear) || (($plnstartYY == $pYear) && ($plnstartMM < $pMonth))) {	// 당월 이전 시작 이면서 당월 종료
		if ($plnendYY == $pYear && $plnendMM == $pMonth) {
					$plnstartYY = $pYear;
					$plnstartMM = $pMonth;
					$plnstartDD = 1;
		}
		if (($plnendYY > $pYear) || (($plnendYY == $pYear) && ($plnendMM > $pMonth))) { // 당월 이전시작 이면서 당월 이후 종료
					$plnstartYY = $pYear;
					$plnstartMM = $pMonth;
					$plnstartDD = 1;
					$plnendYY = $pYear;
					$plnendMM = $pMonth;
					$plnendDD = 31;
		}
	}

// qtip 미사용으로 인해 아래 3째줄 주석처리
	$plan_detail = str_replace("'", "`", $plan_detail);			// '을 `로 대체 textbox보이기위해
	$plan_detail = str_replace("\"", "&quot;", $plan_detail);	// "를 &quot;로 대체 textbox보이기위해
//	$plan_detail = str_replace(chr(12), "<br />", $plan_detail); // FF를 제거 textbox보이기위해

	// 취소일정위해 추가
	// ('A'=>'기본', 'F'=>'완료', 'R'=>'취소');  // 기본: 최초는 null, 수정하면 A
	$_doc_extra_vars = explode(";", $plan_doc_extra_vars);
	$_doc_extra_vars1 = explode(":", $_doc_extra_vars[0]);
	$_doc_status = str_replace("\"", "", $_doc_extra_vars1[2]);

	if($_doc_status == "F" && $ind_complete_doc == "L") { $plan_title = "<span class='complete'>".$plan_title."</span>"; }  // 완료일정 제목에 취소선 긋기
	if($_doc_status != "R" && ($ind_complete_doc == "N" && $_doc_status != "F" || $ind_complete_doc != "N") ) {	// 취소일정이 아닐때 처리

	if( $plnstartYY == $pYear && $plnstartMM == $pMonth) {	// 일정관련자료 어레이에 출력
	  $arr_repeat = fn_repeat_schedule($pYear, $pMonth, $plan_start, $plan_end, $plan_repeat_cycle, $plan_repeat_unit);
	  For ($i = $plnstartMM; $i <= $plnendMM; $i++) {
		For ($j = $plnstartDD; $j <= $plnendDD; $j++ ) {
			if ( $arr_repeat[$i][$j] == "*") {
				if ($arr_repeat[$i][$j-1] != "*" || date('w', mktime(0, 0, 0, $i, $j, $pYear)) == 0) { // 새로시작 또는 일요일 이면 시작일자 보관
				$j_temp = $j;
				}
				if ($arr_repeat[$i][$j+1] != "*" || date('w', mktime(0, 0, 0, $i, $j, $pYear)) == 6) { // 마지막 또는 토요일이면 output
				$plan_length = $j-$j_temp+1;
				$arr_plan[$i][$j_temp] = $arr_plan[$i][$j_temp].$plan_title."|&Oslash;|".$plan_url."|&Oslash;|".$plan_detail."|&Oslash;|".$plan_bgcolor."|&Oslash;|".$plan_flagicon."|&Oslash;|".$category_title."|&Oslash;|".$category_color."|&Oslash;|".$plan_reply."|&Oslash;|".$plan_time."|&Oslash;|".$plan_new."|&Oslash;|".$plan_img."|&Oslash;|".$plan_length."|&Oslash;|".$plan_docsrl."|&Oslash;|".$plan_start."|&Oslash;|".$plan_end."|#&Oslash;#|";   // 어레이에 추가 1차분리자= "|#&Oslash;#|", 2차 분리자 "|&Oslash;|"
				}
			}
		}
	  }
	}	// 일정관련자료 어레이에 출력 끝

	}   // 취소일정이 아닐때 처리 끝

}	
?>
<!--@end-->

<!--// -----달력작성 ----------------------- -->
<style type="text/css">
/* {$var_version} */
.planner_calendar thead th { border:1px solid #ccc; height:27px; background: url(<?php echo $skinpath?>images/calendar/tablehd_bg.png) repeat-x; }
.planner_calendar tbody .today_bg { background:{$today_bgcolor}; border:medium solid; border-color:{$today_bodercolor}; }
.planner_calendar tbody .today_date_bg { background:{$today_bgcolor};}
.planner_calendar .droppable-hover  { background:{$today_bgcolor};}
.planner_calendar td:hover { background:{$mouseover_bgcolor};}
</style>

<!--@if($device == big_size )--> <!--// for big_calendar -->
<style type="text/css">
#columnLeft, .columnLeft, .bloozLeft, .bread-left, .bread-crumb {display:none;}
#columnRight, .columnRight, #bloozLayout .bloozRight {background:none; width:100%;}
</style>
<!--@end-->

<!--@if($device == printer )--> <!--// for print -->
<style type="text/css">
body, #contentBody {color : #000000; background : #FFFFFF;}
#header, #footer, #columnLeft, .boardInformation {display:none; padding:0px;}

#top, #menu, .columnLeft, .bloozLeft, .bread-crumb, .bread-left, .boardInformation {display:none;}
#columnRight, .columnRight, #bloozLayout .bloozRight {background: #FFFFFF; width:100%; padding:0px; border:none;}

.planner_navigation {display:none;}
.planner_calendar tbody .today_bg { background:{$day_bgcolor}; border:1px solid #ccc;}
.planner_calendar tbody .today_date_bg { background:{$day_bgcolor};}
</style>
<!--@end-->

<div id='planner123' class="planner123">
    <!--//  버튼 -->
    <div class="planner_control">
        <div class="planner_this">
            <!--//숫자형식으로 년월 표시-->
            <!--//    <font size="4" COLOR=green><b><?php echo $pYear?>年 <?php echo $pMonth?>月&nbsp;&nbsp;(<?php echo $pYear+2333?>)</b></font>-->
            <!--//영문형식으로 년월 표시-->
            <?php echo $pMon?>&nbsp;<?php echo $pYear?>
		</div>
        <div class="planner_navigation">
			<form style="float:left; width:65px;" name = "fm_select_year">
			<select style ="height:17px; margin:0; padding:0; font-size:11px;" name="selectyear" onchange="document.location.href='<?php echo $linkpath?>&amp;pOption=<?php echo $pOption?>&amp;pYear=' + this.options[this.selectedIndex].value +'&amp;pMonth=<?php echo $pMonth?>'">
			<option value='<?php echo $pYear?>'><?php echo $pYear?></option>
			<?php for ($j=$todayYY+10; $j>=$todayYY-5; $j-- ) { echo ("<option value='".$j."'>".$j."</option>"); } ?>
			</select></form>
			<!--@if(!$_COOKIE["mobile"])-->
            <img  style="float:left;" src="images/calendar/month_t.gif" width="39" height="15" />
			<a href="<?php echo $linkpath?>&amp;pOption=<?php echo $pOption?>&amp;pYear=<?php echo $pYear?>&amp;pMonth=<?php echo $pMonth-1?>&amp;pDay="><img  style="float:left;" src="images/calendar/btn_prev_year.gif" width="17" height="15" alt="전월" /></a>
            <?php
            for ($i=1; $i < 13; $i++) {
            ?>
            <a style="float:left;" href="<?php echo $linkpath?>&amp;pOption=<?php echo $pOption?>&amp;pYear=<?php echo $pYear?>&amp;pMonth=<?php echo $i?>&amp;pDay="><img src="images/calendar/month_<?php echo $i?><?php IF($pMonth == $i){ ?>_on<?php }?>.gif" width="17" height="15" alt="<?php echo $i?>월" /></a>
            <?php
            }
            ?>
			<!--@else-->
			<a href="<?php echo $linkpath?>&amp;pOption=<?php echo $pOption?>&amp;pYear=<?php echo $pYear?>&amp;pMonth=<?php echo $pMonth-1?>&amp;pDay="><img  style="float:left;" src="images/calendar/btn_prev_year.gif" width="17" height="15" alt="전월" /></a>
            <span  style="float:left;"><a href="<?php echo $linkpath?>&amp;pOption=<?php echo $pOption?>&amp;pYear=<?php echo $todayYY?>&amp;pMonth=<?php echo $todayMM?>&amp;pDay=">T-Mon</a></span>
			<!--@endif-->
            <a style="float:left;" href="<?php echo $linkpath?>&amp;pOption=<?php echo $pOption?>&amp;pYear=<?php echo $pYear?>&amp;pMonth=<?php echo $pMonth+1?>"><img src="images/calendar/btn_next_year.gif" width="17" height="15" alt="익월" /></a>
        </div>
    </div>
	<!-- 카테고리 탭 출력 -->
	<!--@if($module_info->use_category == "Y")-->
	<div style="clear:both;">
		<!--@if(!$category)-->
			<button type="button" id="btn_all" onclick="doChgCategory({$val->category_srl}); return false;" class="button" style='font-size:12px; padding:0; cursor:pointer; color:{$val->color};'><span class="strong">분류전체</span></button>
		<!--@else-->
			<button type="button" id="btn_all" onclick="doChgCategory({$val->category_srl}); return false;" class="button" style='font-size:12px; padding:0; cursor:pointer; color:{$val->color};'>분류전체</button>
		<!--@end-->    
		<!--@foreach($category_list as $val)-->
			<!--@if($category==$val->category_srl)-->
				<button type="button" id={$val->title} onclick="doChgCategory({$val->category_srl}); return false;" class="button" style='font-size:12px; padding:0; cursor:pointer; color:{$val->color};'><span class="strong" >{$val->title}</span></button>
			<!--@else-->
				<button type="submit" id={$val->title} onclick="doChgCategory({$val->category_srl}); return false;" class="button" style='font-size:12px; padding:0; cursor:pointer; color:{$val->color};'>{$val->title}</button>
			<!--@end-->
		<!--@end-->                           
	</div>
	<!--@end-->
    <!--//  달력 -->
	<?php 
		$tbl_html .=  "<table class='planner_calendar' summary='플래너123'>";
		$tbl_html .=  "<thead>";
		$tbl_html .=  "<tr>";
	    $tbl_html .=  "<th scope='col' width='14%'><font color='red'>Sun</font></th>";
	    $tbl_html .=  "<th scope='col' width='14%'>Mon</th>";
	    $tbl_html .=  "<th scope='col' width='14%'>Tue</th>";
	    $tbl_html .=  "<th scope='col' width='14%'>Wed</th>";
	    $tbl_html .=  "<th scope='col' width='14%'>Thu</th>";
	    $tbl_html .=  "<th scope='col' width='14%'>Fri</th>";
	    $tbl_html .=  "<th scope='col' width='14%'><font color='blue'>Sat</font></th>";
	    $tbl_html .=  "</tr>";
	    $tbl_html .=  "</thead>";
	    $tbl_html .=  "<tbody>";
 
		$schedule_html = null;
		$holiday_html = null;
		$memday_html = null;
		$count_seg = 0;

        $weekcount = count($Calmain);
        for($i=0; $i<$weekcount; $i++) {
            $tbl_html .= "<tr id='planner_week".$i."'>";
            for ($j=0; $j<7; $j++) {
				if($pYear == $todayYY && $pMonth == $todayMM && $Calmain[$i][$j] == $todayDD) {
					$tbl_html .= "<td class='today_bg drop'>";
				} else {
	                if ($Calmain[$i][$j]== "*"){	// 날자 없을때  
						$tbl_html .= "<td bgcolor=".$day_bgcolor.">";
					} else {
						$tbl_html .= "<td class='drop' bgcolor=".$day_bgcolor.">";
					}
				} 
				$tbl_html .= " <div class='planner_calendar_inner'>";

                $tmpfld_1 = null;
                $outtext = null;
                $k = $Calmain[$i][$j];
 
                if ($Calmain[$i][$j]== "*"){	// 날자 없을때
                    $Calmain[$i][$j]=null;
					if ($i==0 && $j==0) {		// 첫주 일요일이 날자없으면
						$tbl_html .= "<div style='margin:0; height:18px;'>&nbsp;</div>";	// 빈 날자 레이블 출력
						$tbl_html .= "<div id='week_schedule_".$i."' style='position:relative;'></div>";	// 첫주 장기일정 콘테이너
					}	
                } else {	// 날자 있을때
                    $tempday=$Calmain[$i][$j];
 
                    // --해당일의 음력일자,절기,휴일,기념일 얻기---
                    $tmparr=explode("-",$Lunarday[$pMonth][$Calmain[$i][$j]]);  //음력날자
                    if ($tmparr[3] == "윤달") {
                        $youndal = "윤";
                    }
                    else {
                        $youndal = null;
                    }
                    $tmpfld1 ="(".$youndal.$tmparr[1]."-".$tmparr[2].")";

					$tmparr4=explode("-",$Holiday[$pMonth][$Calmain[$i][$j]]);  // 공휴일
                    $tmparr5=explode("-",$Memday[$pMonth][$Calmain[$i][$j]]);   // 기념일
                    $tmparr6=explode("|#&Oslash;#|",$arr_plan[$pMonth][$Calmain[$i][$j]]);    // 일정/플랜  1차 "|#&Oslash;#|",로 분리

					// 첫줄 --일자,음력,절기,공휴일---
                    if ($pYear == $todayYY && $pMonth == $todayMM && $Calmain[$i][$j] == $todayDD ) {
                        $outtext = "<div class='today_date_bg' style='height:18px;'>";   // 당일
                    }
                    else  {
                        $outtext = "<div style='margin:0; height:18px;'>";               // 평일
                    }
 
                    if ($j==0 || $tmparr4[0] != null) {
                        $tmpfld = "<span class='date_label holiday'>".$Calmain[$i][$j]."</span>";    // 일요일 및 휴일
                    }
                    elseif ($j==6) {
                        $tmpfld = "<span class='date_label saturday'>".$Calmain[$i][$j]."</span>";   // 토요일
                    }
                    else  {
                        $tmpfld = "<span class='date_label weekday'>".$Calmain[$i][$j]."</span>";  // 평일
                    }

					if ($ind_duplicated_schedule == 'N' && mktime(0,0,0,$pMonth,$Calmain[$i][$j],$pYear) < mktime(0,0,0,$todayMM,$todayDD,$todayYY) ) {  // 중복일정금지 및 과거일자 는 링크없이.
		               $templink = "<a href='#' class='strong font_big' style='cursor:no-drop;'>";		
					} else {
						$templink = getUrl('act','dispBoardWrite','document_srl','') ;  // 일자 클릭시 쓰기로 이동
		                $templink .= "&amp;extra_vars1=$pYear-$tempmonth-".substr("0".$tempday,-2);  // 일정시작 확장변수에 값 넣기위해
		                $templink = "<a href=".$templink." class='strong font_big'>";
					}
                    $outtext .= "&nbsp;".$templink.$tmpfld."</a>";   // 일자

                    if ($ind_lunar_all == 'Y' && $Calmain[$i][$j] != null) {	
                        $outtext .= "&nbsp;"."<span class='lunar'>".$tmpfld1."</span>";    // 음력 - 모든날자 표시
                    } else if ($ind_lunar == 'Y' && ($tmparr[2] == 1 || $tmparr[2] == 10 || $tmparr[2] == 15 || $tmparr[2] == 20)) {  
						$outtext .= "&nbsp;"."<span class='lunar'>".$tmpfld1."</span>";    // 음력 - 1,10,15,20일 표시
					}
                    $outtext .= "</div>";  // end date_label

                    $tbl_html .= $outtext;
					$outtext = null;

					if ($j == 0) {	// 일요일이면
						$tbl_html .= "<div id='week_schedule_".$i."' style='position:relative;'></div>";	// 주별 장기일정 콘테이너
					}
						$tbl_html .= "<div id='day_schedule_container_".$Calmain[$i][$j]."'><div id='day_space_".$Calmain[$i][$j]."' ></div>";

					//--일정/플랜---
                    if (!empty($tmparr6[0]))
                    {
                        foreach ($tmparr6 as $val)
                        {
                            if (!$val = trim($val)) continue; // 빈어레이는 무시하고 빠진다.
                            $tmparr7=explode("|&Oslash;|",$val);  // 일정/플랜  2차 "|&Oslash;|",로 분리
                            if (!empty($tmparr7[0]))
                            {
								//분류
                                //$lplan_cat = (!empty($tmparr7[5]))?"<span style='color:".$tmparr7[6].";'>[".$tmparr7[5]."] </span>":"";
								$lplan_state = null;
								if (!empty($tmparr7[4]))
								{
									$arr_icon = explode(",",$tmparr7[4]);
									foreach ($arr_icon as $icon)
									{
										if ($icon = trim($icon))
										{
											if (file_exists($skinpath."images/icon/".$icon)) {
											    $icon_folder = "";
											} else if (file_exists($skinpath."images/icon/client/".$icon)) {
											    $icon_folder = "client/";
											} else if (file_exists($skinpath."images/icon/manager/".$icon)) {
											    $icon_folder = "manager/";
											}
			                                $lplan_state .= "<img src='images/icon/".$icon_folder.$icon."'/>"; //일정확인
										}
									}
								}
                                //$lplan_reply = (!empty($tmparr7[7]))?"<span class='small'>[".$tmparr7[7]."]</span>":""; //댓글숫자

 								if ($ind_duplicated_schedule == "N") { // 중복금지 
									$time_disply_fld = "[".$tmparr7[8]."]&#x0A;";   //선택내용 전부
								} else {
									$tmp_time = explode(",",$tmparr7[8]);		
									if ($tmparr7[8]){ 
										if ($tmp_time[1]){
											$time_disply_fld = "[".$tmp_time[0]."-".trim($tmp_time[count($tmp_time)-1])."] ";  // 일정 시간
										} else {
											$time_disply_fld = "[".$tmp_time[0]."- ] ";  // 일정 시작시간
										}
									} else { 
										$time_disply_fld = null; 
									} //시간표시
								}

								if ($tmparr7[11] > 1) {  // 일정기간 1일이상일경우 
									$id_overflow = "overflow:hidden; height:14px;";
								} else {
									$id_overflow = "";
								}

								// 배경색상 적용 옵션 반영 (단, 작성시 제목에 색상을 적용한 경우는 글자색이 그대로 유지됨)
								if ($ind_bgcolor_option == "picker_bg"){	// 선택색상을->배경색
									$tmp_style = "style='clear:both; background-color:".$tmparr7[3]."; border-bottom:1px solid #FFFFFF;".$id_overflow."'";
									$tmp_style1_0 = "style='background-color:".$tmparr7[3]."; border-bottom:1px solid #FFFFFF;'";
									$tmp_style1_1 = "style='padding:2px 0 0 2px; background-color:".$tmparr7[3]."; border:medium double  #FFFFFF;'";
									$tmp_style2 = "style='vertical-align:top; background-color:".$tmparr7[3].";'";
								} else if ($ind_bgcolor_option == "picker_text"){	// 선택색상을->글자색
									$tmp_style = "style='clear:both; color:".$tmparr7[3]."; border-bottom:1px solid #FFFFFF;".$id_overflow."'";
									$tmp_style1_0 = "style='color:".$tmparr7[3]."; border-bottom:1px solid #FFFFFF;'";
									$tmp_style1_1 = "style='padding:2px 0 0 2px; color:".$tmparr7[3]."; border:medium double ".$tmparr7[3].";'";
									$tmp_style2 = "style='vertical-align:top; color:".$tmparr7[3].";'";
								} else if ($ind_bgcolor_option == "category_bg" && $ind_use_category == "Y"){	// 분류색상을->배경색
									$tmp_style = "style='clear:both; color:whitesmoke; background-color:".$tmparr7[6]."; border-bottom:1px solid #FFFFFF;".$id_overflow."'";
									$tmp_style1_0 = "style='color:whitesmoke; background-color:".$tmparr7[6]."; border-bottom:1px solid #FFFFFF;'";
									$tmp_style1_1 = "style='padding:2px 0 0 2px; color:whitesmoke; background-color:".$tmparr7[6]."; border:medium double #FFFFFF;'";
									$tmp_style2 = "style='vertical-align:top; color:whitesmoke; background-color:".$tmparr7[6].";'";
								} else if ($ind_bgcolor_option == "category_text" && $ind_use_category == "Y"){	// 분류색상을->글자색
									$tmp_style = "style='clear:both; color:".$tmparr7[6]."; border-bottom:1px solid #FFFFFF;".$id_overflow."'";
									$tmp_style1_0 = "style='color:".$tmparr7[6]."; border-bottom:1px solid #FFFFFF;'";
									$tmp_style1_1 = "style='padding:2px 0 0 2px; color:".$tmparr7[6]."; border:medium double ".$tmparr7[6].";'";
									$tmp_style2 = "style='vertical-align:top; color:".$tmparr7[6].";'";
								}else {	// 기본은 선택색상->배경색
									$tmp_style = "style='clear:both; background-color:".$tmparr7[3]."; border-bottom:1px solid #FFFFFF;".$id_overflow."'";
									$tmp_style1_0 = "style='background-color:".$tmparr7[3]."; border-bottom:1px solid #FFFFFF;'";
									$tmp_style1_1 = "style='padding:2px 0 0 2px; background-color:".$tmparr7[3]."; border:medium double  #FFFFFF;'";
									$tmp_style2 = "style='vertical-align:top; background-color:".$tmparr7[3].";'";
								}

								//시간+일정제목
								if ($ind_image_diary == "Y" && !empty($tmparr7[10]) && $tmparr7[11] == 1 && !$_COOKIE["mobile"]){ // 액자없음-하루일정-모바일아닐때
								$temp_html = "<div class='schedule_view' ".$tmp_style1_0." title='".$time_disply_fld.$tmparr7[2]."'><a ".$tmp_style2." href=".$tmparr7[1]."><img style='vertical-align:top;' src='".$tmparr7[10]."'/><div style='clear:both;'>".$tmparr7[0].$tmparr7[9]."</div></a></div>";
								} else if ($ind_image_diary == "F" && !empty($tmparr7[10]) && $tmparr7[11] == 1  && !$_COOKIE["mobile"]){ // 액자있음-하루일정-모바일아닐때
								$temp_html = "<div class='schedule_view' ".$tmp_style1_1." title='".$time_disply_fld.$tmparr7[2]."'><a ".$tmp_style2." href=".$tmparr7[1]."><img style='vertical-align:top;' src='".$tmparr7[10]."'/><div style='clear:both;'>".$tmparr7[0].$tmparr7[9]."</div></a></div>";
								} else { 
			                    $temp_html = "<div class='schedule_view' ".$tmp_style." title='".$time_disply_fld.$tmparr7[2]."'>".$lplan_state."<a ".$tmp_style2." href=".$tmparr7[1]."> ".trim($tmp_time[0])." ".$tmparr7[0].$tmparr7[9]."</a></div>"; 
								}

							  $schedule_process = "js";	// ""는 직접처리 "js"는 jquery에서 처리
							  if (!$tmparr7[10] || $tmparr7[11] > 1 || $schedule_process == "js") { // 하루이상 일정이면 jquery에서 처리
									$segtype = "e";
									$schedule_html[$count_seg]['week'] = $i;
									$schedule_html[$count_seg]['weekday'] = $j;
									$schedule_html[$count_seg]['date'] = $k;
									$schedule_html[$count_seg]['revseq'] = 31-$k;
									$schedule_html[$count_seg]['segtype'] = $segtype;
									$schedule_html[$count_seg]['length'] = $tmparr7[11];
									$schedule_html[$count_seg]['image'] = $tmparr7[10];
									$schedule_html[$count_seg]['pln_srl'] = $tmparr7[12];
									$schedule_html[$count_seg]['pln_start'] = $tmparr7[13];
									$schedule_html[$count_seg]['pln_end'] = $tmparr7[14];
									$schedule_html[$count_seg]['html'] = $temp_html;
									$count_seg += 1;
								} else {
									$tbl_html .= $temp_html;	// 하루일정이면 바로 처리
							  }
                           }
                        }   // end foreeach
					}		// 일정플랜 끝

					//-- 휴일 jquery 또는 직접 처리---
					$holiday_process = "js";	// ""는 직접처리 "js"는 jquery에서 처리
					if ($ind_holiday == 'Y' && $tmparr4[0]) { 
						$temp_html = "<div class='holiday strong'>".$tmparr4[0]."</div>"; // 공휴일
						if ($holiday_process =="js") {
							$schedule_html[$count_seg]['week'] = $i;
							$schedule_html[$count_seg]['weekday'] = $j;
							$schedule_html[$count_seg]['date'] = $k;
							$schedule_html[$count_seg]['revseq'] = 31-$k;
							$schedule_html[$count_seg]['segtype'] ="b";
							$schedule_html[$count_seg]['length'] = 1;
							$schedule_html[$count_seg]['image'] = "";
							$schedule_html[$count_seg]['pln_srl'] = "";
							$schedule_html[$count_seg]['pln_start'] = "";
							$schedule_html[$count_seg]['pln_end'] = "";
							$schedule_html[$count_seg]['html'] = $temp_html;
							$count_seg += 1;
						} else {
							$tbl_html .= $temp_html;
						}
					}
					//-- 기념일 jquer 또는 직접 처리---
					if ($ind_memday == 'Y' && !empty($tmparr5[0])) { // 기념일만 체크
						$temp_html =  "<div class ='memorial'>".$tmparr5[0]."</div>"; // 기념일
						if ($holiday_process =="js") {
							$schedule_html[$count_seg]['week'] = $i;
							$schedule_html[$count_seg]['weekday'] = $j;
							$schedule_html[$count_seg]['date'] = $k;
							$schedule_html[$count_seg]['revseq'] = 31-$k;
							$schedule_html[$count_seg]['segtype'] ="a";
							$schedule_html[$count_seg]['length'] = 1;
							$schedule_html[$count_seg]['image'] = "";
							$schedule_html[$count_seg]['pln_srl'] = "";
							$schedule_html[$count_seg]['pln_start'] = "";
							$schedule_html[$count_seg]['pln_end'] = "";
							$schedule_html[$count_seg]['html'] = $temp_html;
							$count_seg += 1;
						} else {
							$tbl_html .= $temp_html;
						}
					}
					$tbl_html .= "</div>";	//end day_schedule_container
				}
				$tbl_html .= "</div>";	//end planner_calendar_inner
                $tbl_html .= "</td>\n";
            }
            $tbl_html .= "</tr>\n";
        }
        $tbl_html .= "</tbody>";
    $tbl_html .= "</table>";
	echo ($tbl_html);	// 달력 테이블 출력
	?>

<!--// 사용자시간 적용 -->
<!--@if($display_offset != $offset && $offset != null && $device != printer )-->
	Server time is <font color='blue'>{date("l, F j, Y, g:i a", $display_timestamp)}</font>
	and your time is <font color='blue'>{date("l, F j, Y, g:i a", $client_timestamp)}</font> : {($display_timestamp-$client_timestamp)*(-1)/3600}Hrs difference.
<!--@end-->

</div>  <!--// end class="planner123" -->

<!--// 관리자로 로그인및 문서목록출력이 Y 일경우 문서 리스트 출력 -->
<!--@if($grant->manager)-->
	<!--@if($module_info->display_doc_list != "N")-->
		<!--#include("./_style.list_planner.html")-->
	<!--@endif-->
<!--@else-->
	{@$write_ymd = date('Y',$wrk_timestamp)."-".date('m',$wrk_timestamp)."-".date('d',$wrk_timestamp)}
    <div class="buttonRight" style="float:right;">
        <a href="{getUrl('act','dispBoardWrite','document_srl','','extra_vars1',$write_ymd)}" class="buttonOfficial"><span>{$lang->cmd_write}</span></a>
    </div>
<!--@end-->

<div id='dummy' style='visibility:hidden; position:absolute; top:0px; left:-200px;'></div> <!--// 하루일정 높이계산을 위한 임시 div -->

<!--// jquery에서 사용할 스케쥴 어레이 정렬: 출력순서 조정위해 -->
<?php 
function multisort($array, $sort_by) {
    foreach ($array as $key => $value) {
        $evalstring = '';
        foreach ($sort_by as $sort_field) {
            $tmp[$sort_field][$key] = $value[$sort_field];
            $evalstring .= '$tmp[\'' . $sort_field . '\'], ';
        }
    }
    $evalstring .= '$array';
    $evalstring = 'array_multisort(' . $evalstring . ');';
    eval($evalstring);
    return $array;
} 
// 날자->긴일정 순서로 정렬
if ($schedule_html) {
$schedule_html = array_reverse(multisort( $schedule_html , array('segtype','revseq','length'))); 
}
// print_r($schedule_html);
?>

<?php	// php 5.2 이전 버전을 위해 json_encode 관련코드 추가....
if (!function_exists('json_encode')) {	// 이상하게 펑션으로 처리하면 안됨...
	require_once($skinpath.'function/JSON.php');
    $json = new Services_JSON;
	$schedule_html_json = $json->encode($schedule_html);
} else {
	$schedule_html_json = json_encode($schedule_html);
}
?>

<script type="text/javascript">
var $j = jQuery.noConflict();
$j(document).ready(function()
{
	var tr_width, td_width, position, sg_height, cnt_low=0, cnt_day=0, udt_day=0, test_week=0,
		test_lenght=0,
		outhtml = "",
		low_pos_top = 0,
		row_height = 16,
		tr_width = $j("tr:#planner_week0").width(),
//		td_width = Math.floor(tr_width/7),
		arrayFromPHP = <?php echo $schedule_html_json ?>;  // PHP에서 만든 일정 어레이를 받아서

if (arrayFromPHP && tr_width > 0) {  // 처리할 일정이 있으면 아래내용처리
	var cnt_sg = arrayFromPHP.length;		// 일정 갯수를 저장 하고

		// row 계산을위해 3차원 어레이를 만든다.
		row_arr = new Array(6);		// 한달 최대 6주
		for (i=0; i<7 ; i++) {		
			row_arr[i] = new Array(cnt_sg);	// 각주마다 예상되는 row 갯수만큼 어레이 만들고
			for (j=0; j<cnt_sg ; j++) {
				row_arr[i][j] = new Array(7);	// 각 row에 요일만큼 어레이 만든다
			}
		}

	$j.each(arrayFromPHP, function (i, elem) {	// 각 일정 마다
		var pln_week = parseInt(elem.week),		// 주 순서
			pln_weekday = parseInt(elem.weekday),	// 요일
			pln_date = parseInt(elem.date),			// 일정일자를 저장
			pln_length = parseInt(elem.length),		// 일정기간을 저장
			ind_find = "";

		// 일정기간 감안 일정이 위치할 포지션 계산.
		for (cnt_low=0; cnt_low<cnt_sg; cnt_low++) {	// 첫 row 부터 
			test_lenght = 0;	// 검사필드 클리어
			for (cnt_day = pln_weekday; cnt_day<(pln_weekday+pln_length); cnt_day++) {  //각 row의 해당 요일부터 일정기간까지 빈간 검사
				if (!row_arr[pln_week][cnt_low][cnt_day]) {		// 해당 row의 해당요일이 비어 있으면 계속 하고
					test_lenght += 1;						// 테스트 필드에 1을 더해놓고
					if (test_lenght >= pln_length) {		// 빈공간이 충분하면
						low_pos_top = row_height * cnt_low;	// 해당줄의 top 위치를 계산 

						position_week = $j("#week_schedule_" + pln_week).position();	// 주별 장기일정 콘테이너 위치 저장
						position = $j("#day_schedule_container_" + pln_date).position();	// 일별 하루일정 콘테이너 위치 저장
						outhtml += "<div id='wc-" + i + "-" + elem.pln_srl + "' class='drag' style='position: absolute; z-index:5; left:" + (position.left - position_week.left) + "px; top: " +( low_pos_top) + "px; width:" + (tr_width * pln_length/7) + "px;'>" + elem.html +"</div>";  //위치 계산후 코드생성
						ind_find = "Y";
						test_lenght = 0;

						if (pln_length == 1) {	// 하루일정일 경우 일정 높이구하고
						$j('#dummy').width(tr_width/7).empty();
						$j(elem.html).appendTo("#dummy");
						sg_height = ($j('#dummy > div').height());
						// alert (sg_height +" " +$j('#dummy').width());
						}

						// 하루일정으로 그림있는경우, 하루일정이면서 높이가 한줄 이상, 기념일, 휴일일경우
						if (pln_length == 1 && elem.image || pln_length == 1 && sg_height > row_height || elem.segtype == 'a' || elem.segtype == 'b') {
							if (elem.segtype == 'a' || elem.segtype == 'b')	{	// 기념일, 휴일
								outhtml = "<div>" + elem.html +"</div>";  // 코드생성
							} else {	// 일정
								outhtml = "<div id='dc-" + i + "-" + elem.pln_srl + "' class='drag' >" + elem.html +"</div>";  // 코드 생성 2
							}
							$j(outhtml).appendTo('#day_schedule_container_'+ pln_date);   // 일별 콘테이너 출력
							outhtml = null;
							break;		// 완료되어 for 빠져 나가고
						} else {
							$j(outhtml).appendTo('#week_schedule_'+ pln_week);   // 주별로 콘테이너 출력
							outhtml = null;
	
							// 어레이에 해당칸을 사용했다는 표시해놓고
							for (udt_day = pln_weekday; udt_day<(pln_weekday + pln_length); udt_day++) {  
								row_arr[pln_week][cnt_low][udt_day] = "*";
							}
							// 장기일정 row 갯수 * row높이가 현재 space div 높이보다 클때 space 높이변경 (일별출력콘테이너 시작위치 조정위해)
							for (cnt_d=0; cnt_d<pln_length; cnt_d++) { 
								wrk_date = pln_date + cnt_d;
								cur_height = $j("#day_space_"+wrk_date).height()
								if ((cnt_low + 1)*row_height > cur_height ) {
									$j("#day_space_"+wrk_date).height((cnt_low + 1)*row_height);
								}
							}
							break;		// 완료되어 for 빠져 나가고
						}
					}
				}else{	// 해당 row의 해당요일이 비어있지않으면 다음 Row 검사위해 for 빠져나가고
					test_lenght = 0;
					break;
				}
			}
			if (ind_find == "Y") {	// 완료 되었으면 다음일정 처리를 위해 for 빠져 나간다.
				break;
			}
		}
	});
}  // '처리할 일정이 있으면' 루프끝

//  div planner123을 visibility:hidden 으로 했을때 대비
$j('#planner123').css("visibility", "visible");	
//  drag & drop test
$j('.drag').draggable({ revert: 'invalid', zIndex: 6 });// 각 일정을 draggable로...
/*  drop을 위해서는 아마도 모듈단계에서 extra value update 지원이 필요할듯.. */

});

/* windows resize일때 일정폭 재계산 (별의미없음)*/
$j(window).resize(function() {	
	var	tr_width = $j("tr:#planner_week0").width(),
//		td_width = Math.floor(tr_width/7),
		arrayFromPHP = <?php echo $schedule_html_json ?>;  // PHP에서 만든 일정 어레이를 받아서

	if (arrayFromPHP) {  // 처리할 일정이 있으면 아래내용처리
		$j.each(arrayFromPHP, function (i, elem) {	// 각 일정 마다
			if ($j('#wc-' + i + '-' + elem.pln_srl).length){
				var pln_week = parseInt(elem.week),		// 주 순서
					pln_weekday = parseInt(elem.weekday),	// 요일
					pln_date = parseInt(elem.date),			// 일정기간을 저장
					pln_length = parseInt(elem.length);		// 일정기간을 저장
				var pln_width_new = tr_width * pln_length/7;
				position_week = $j("#week_schedule_" + pln_week).position();	// 주별 장기일정 콘테이너 위치 저장
				position = $j("#day_schedule_container_" + pln_date).position();	// 일별 하루일정 콘테이너 위치 저장
				$j('#wc-' + i + '-' + elem.pln_srl).width(pln_width_new);  // 각장기 일정 폭 조정
				$j('#wc-' + i + '-' + elem.pln_srl).css({left: (position.left - position_week.left) + "px"});  // 각장기 left 위치 조정
				// alert("day:" + elem.date + " tr:" + tr_width + " td:" + tr_width/7 +" width:" + pln_width_new);	// 검사용
			}
		});
	}
});

/* 카테고리 이동 */
function doChgCategory(category_srl) {
	if (!category_srl) {
    location.href = decodeURI(current_url).setQuery('category','');
	} else {
    location.href = decodeURI(current_url).setQuery('category',category_srl);
	}
}
</script>
