<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<%@ page import="java.util.*"  %>
<%@ page import="org.apache.commons.lang.*" %>
<%@ page import="com.csc.library.report.ReportUDF" %>

<%@page import="com.csc.library.entry.HelpEntry,com.csc.library.system.*,com.csc.library.utilities.*"%>
<%@ page import="com.csc.library.entry.*,com.csc.library.database.*,com.csc.library.session.*"  %>
<jsp:useBean id="EMV028" class="com.csc.library.system.Task" scope="page" />
<jsp:setProperty name="EMV028" property="appname" value="empview" />

<%
	
	EMV028.setChannel(request,response);
	HelpEntry screen = (HelpEntry) EMV028.process("HelpEntry","OI_CALENDARHELP");
	final UProfile uprofile = screen.getUProfile();
	
	// initial variable
	final ReportUDF report = new ReportUDF();
	final CscCalendar current = new CscCalendar();
	int year = current.getYear();
	int month = current.getMonth()+1;
	int date = 1;
	String  view = "month";
	boolean byMeOnly =  ("1".equalsIgnoreCase( request.getParameter("__bymeonly")));
	// request parameter
	
	// get year
	try {
		year = Integer.parseInt(request.getParameter("year"));
	} catch (Exception e) { /*Ignore Error */}
	
	// get month
	try {
		month = Integer.parseInt(request.getParameter("month"));
	} catch (Exception e) { /*Ignore Error */}

	// get view
	if( "day".equalsIgnoreCase( request.getParameter("view") )) {
		view = "day";
		
		// get date
		try {
			date = Integer.parseInt(request.getParameter("date"));
		
		} catch (Exception e) { 
			if(month == current.getMonth()+1) {
				date = current.getDate();
			}
		}
		
	}
	
	// set value	
	final CscCalendar requestDate = new CscCalendar(year, month, date);
	final CscCalendar prevPeriod = new CscCalendar(requestDate.getTime());
	final CscCalendar nextPeriod = new CscCalendar(requestDate.getTime());
	
	if("day".equalsIgnoreCase(view)) {
		prevPeriod.decDate(1);
		nextPeriod.incDate(1);
	} else {
		prevPeriod.decMonth(1);
		nextPeriod.incMonth(1);
	}

%>
	
<%    

	screen.getInquiry().setFixFilter("event_group ='01' AND event_type ='MANAGER' ");
	
	if(byMeOnly) {
		screen.getInquiry().setFilter("employeeid", (String)uprofile.get("employeeid"), "", "=");
	}
	if("day".equalsIgnoreCase(view)) {
		screen.getInquiry().setFilter("displaydate", requestDate.getYYYYMMDD(), "", "=");
		
	} else {
		screen.getInquiry().setFilter("displaydate", prevPeriod.getYYYYMMDD(), nextPeriod.getYYYYMMDD(), "between");
	}
	
	//System.out.println("---------------------------------------------------------------------------");
	// force select all rows
	screen.setMaxLine(-1);
	screen.process();
	//System.out.println("---------------------------------------------------------------------------");
	

%>

<%
	final EventCalendar htmlCal = new EventCalendar();
	htmlCal.setMonth(requestDate.getMonth()+1, requestDate.getYear());
	htmlCal.setLanguage((String)uprofile.get("lang"));
	htmlCal.setWeekEnd(Calendar.SUNDAY);
	htmlCal.setWeekEnd(Calendar.SATURDAY);
	htmlCal.setShowHeader(false);
	htmlCal.setHeader("MMMM yyyy");
	
%>


<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<title>Employee View</title>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<!-- Begin CSS Links -->
<link rel="stylesheet" type="text/css" href="../CSS/DDMENU.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_DEFAULT.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_LAYOUT.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_LAYOUT_TWO.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EMV_TEXT.css" />
<link rel="stylesheet" type="text/css" href="../CSS/EVENT_CALENDAR.css" />
<style type="text/css">
	#event_group, #event_type { min-width:150px; width: 150px; }
	.input_group { margin-right: 15px; vertical-align: top;}
	.table-search-condition .column-input, .table-search-condition .column-label { padding-bottom: 2px; }
    #event_type_grp { max-height: 100px; overflow-y: auto; }
    #event_type_grp label { width: 250px; float: left; white-space: nowrap;}
</style>

<!-- End CSS Links -->
<!-- Begin Scripts -->
<script language="JavaScript"  type="text/javascript"src="../JS/EVENTS.js"></script>
<!-- Begin script for Dropdown Menu -->
<!-- DO NOT EDIT -->
<script language="JavaScript"  type="text/javascript" src="../JS/DDMENU.js"></script>
<!--[if lt IE 7]><script language="JavaScript" type="text/javascript" src="../JS/IEHOVER-FIX.js"></script><![endif]-->
<!-- DO NOT EDIT -->
<!-- End script for Dropdown Menu -->
<script language="JavaScript"  type="text/javascript" src="../JS/UTILITIES.js"></script>
<script language="JavaScript"  type="text/javascript"src="../JS/ACTIVE_OBJECT.js"></script>
<script language="JavaScript"  type="text/javascript"src="../JS/SCREEN.js"></script>


<script language="JavaScript" type="text/javascript">
	setLang("<%=uprofile.get("lang")%>");
	//setLang("tha");
	setPageTitle(swap2String("Event Calendar2"));
	
	
	function GoSearch() {
		with(document.cscform) {
			submit();
		}
	}
	function goNext() {
		goCalendar("<%=nextPeriod.getYear()%>", "<%=(nextPeriod.getMonth()+1)%>", "<%=nextPeriod.getDate() %>");
	}
	function goPrev() {
		goCalendar("<%=prevPeriod.getYear()%>","<%=(prevPeriod.getMonth()+1)%>", "<%=prevPeriod.getDate() %>");
	}
	function goCalendar(y,m,d) {
		with(document.cscform){
			var tmp = new Date(d);
			date.value = d;
			month.value = m;
			year.value= y;
			GoSearch();
		}
	}
	
	function viewToday() {
		with(document.cscform){
			goCalendar("", "", "");
		}
	}
	function viewAsMonth() {
		with(document.cscform) {
			view.value="month";
			GoSearch();
		}
	}
	function viewAsDay() {
		with(document.cscform) {
			view.value="day";
			GoSearch();
		}
	}
	
	function viewDay(d) {
		with(document.cscform) {
			view.value="day";
			var tmp = d.split("-");
			goCalendar(tmp[0],tmp[1],tmp[2]);
		}
	}
	
	function sendMail(receiver) {
		PopupCenter("OI_ECMAIL.jsp?__receiver=" +receiver);
	}
	
</script>
<style type="text/css">
#header {
 	background: #FFFFFF ;
}
</style>
<!-- End Scripts -->

</head>
<body>
<div id="wrapper">
  <div id="header">
    <jsp:include page="EMV_HEADER.jsp" flush="true" />
  </div>
  <div id="topnav">
  	<jsp:include page="EMV_TOPMENU.jsp" flush="true" />
  </div>
  <div id="container">
    <div id="sidebar">
		<jsp:include page="EMV_SIDEBAR.jsp" flush="true" />
   </div>
    <div id="content">
      <!-- Begin Main Content -->
      <jsp:include page="EMV_HELPBAR.jsp" flush="true" />
      <div class="content">
        <form name="cscform" id="cscform" method="get" action="?">
          <input type="hidden" name="__cmd" value="" />
          <input type="hidden" name="__screen" value="OI_CALENDAR" />
          <input type="hidden" name="__language" value ="<%=uprofile.get("lang")%>" />
          <input type="hidden" name="view" value ="<%=view%>" />
          <input type="hidden" name="year" value ="<%=requestDate.getYear()%>" />
          <input type="hidden" name="month" value ="<%=requestDate.getMonth()+1%>" />
          <input type="hidden" name="date" value ="<%=requestDate.getDate()%>" />
          <input type="hidden" name="__event_group" id="event_group" value="01" />
           <input type="hidden" name="__event_type" id="event_type" value="MANAGER" />
          
		<div class="box-search-condition">
            <div class="content-title">
              <script type="text/javascript" language="JavaScript">swapLang("Search Condition")</script>
            </div>
            <table width="100%" border="0" cellpadding="0" cellspacing="0" class="table-search-condition">
              <tr>
                <td colspan="2" class="column-label"><img src="../IMAGES/SPACER.gif" width="100" height="1" /></td>
              </tr>
              <tr>
                <td colspan="2" class="column-label">&nbsp;</td>
              </tr>
              <tr>
                <td width="150" class="column-label"><label for="bymeonly">
                  <script language="JavaScript" type="text/javascript">swapLang("Only Me")</script></label></td>
                <td class="column-input"><input type="checkbox" name="__bymeonly" id="bymeonly" value="1" <%=(byMeOnly?"  checked=\"checked\"":"")%> /></td>
             </tr>
              
              <tr>
                <td colspan="2" class="column-label"></td>
              </tr>
              <tr>
                <td class="column-label">&nbsp;</td>
                <td class="column-input"><a href="javascript:GoSearch();"><img src="../IMAGES/EMPVIEW/BUTTON/SEARCH.gif" alt="Search" width="60" height="23" border="0" align="top" /></a></td>
              </tr>
              <tr>
                <td colspan="2" class="column-label">&nbsp;</td>
              </tr>
            </table>
          </div>
          
          
      <div class="content-box1">
        <div class="content-header">
			<h2><script language="JavaScript" type="text/javascript">swapLang("Event Calendar2");</script></h2>
		</div>
			
			<div class="ec-calendar">
               	<div class="ec-view-switch">
                   <table cellspacing="0" cellpadding="0">
                     <tbody>
                         <tr>
                           <td><a href="javascript:viewAsDay();"><img src="../IMAGES/CALENDAR/day_view.gif" /><span>Day</span></a> </td>
                           <td><a href="javascript:viewAsMonth();"><img src="../IMAGES/CALENDAR/month_view.gif" /><span>Month</span></a> </td>
                           <td><div class="ec-separator"></div></td>
                           <td><a href="javascript:viewToday();" ><img src="../IMAGES/CALENDAR/today_view.gif" /><span>Today</span></a></td>
                         </tr>
                       </tbody>
                    </table>
                </div>
                <table width="100%" cellpadding="0" cellspacing="0" class="ec-calendar-nav">
                    <thead>
						<tr>
	                        <th class="ec-nav ec-prev" width="5%"><a href="javascript:goPrev();">&laquo;</a></th>
	                        <th class="ec-nav ec-next" width="5%"><a href="javascript:goNext();">&raquo;</a></th>
	                        <th class="ec-header" width="90%"><%=("day".equalsIgnoreCase(view))?report.getFullLongDate((String)uprofile.get("lang"), requestDate.getYYYYMMDD()):htmlCal.getHeader("MMMM yyyy") %></th>
	                    </tr>
                    </thead>
                  </table>
				  <br />
               <%  if("day".equalsIgnoreCase(view)) {  %>
				
                <% 
					while(screen.nextRec() ) {
				%>
                	<div class="ec-event-detail">
                    
                    	<div class="ec-<%=screen.getString("event_group") %>">
                        
                        	
                        	<%
							 StringBuilder eventDate = new StringBuilder();
							 eventDate.append( screen.getString("startdate")).append(" ");
							 if( ! ("1").equalsIgnoreCase(screen.getString("alldayevent")) ) { 
							 	eventDate.append( screen.getString("starttime") ).append(" ");
							 }
							 
							 eventDate.append(" - ").append( screen.getString("enddate") ).append(" ");
							 if( ! ("1").equalsIgnoreCase(screen.getString("alldayevent")) ) { 
							 	eventDate.append( screen.getString("endtime"));
							}
                            
                             %>
                            
                            <div id="ec-event-date"><script language="JavaScript" type="text/javascript">swapLang("Date: ");</script> <%=eventDate.toString() %> </div>
                        	<div id="ec-event-owner"><script language="JavaScript" type="text/javascript">swapLang("Name: ");</script> <%=screen.getString("memployee", "fullname") %> <a href="javascript:sendMail('<%=screen.getString("employeeid") %>');"><img src="../IMAGES/CALENDAR/email-icon.gif" width="16" height="16" border="0" align="texttop" /></a></div>
                            <div>
                            
                            </div>
                        
						
                        
                        
						<%=StringUtils.trimToEmpty( screen.getString("tsubject")) %> 
                         <div><script language="JavaScript" type="text/javascript">swapLang("Remark: ");</script> <%=StringUtils.trimToEmpty( screen.getString("tdesc") ) %></div>
                     </div>
                        
                    </div>
					<% 
						}  //while
					%>

            <% } else { 
			
					System.out.println("rec count =" +screen.getInquiry().recCount());
					final List<EventEntry> eventList = new ArrayList<EventEntry>();
					EventEntry entry;
					
					while(screen.nextRec() ) {
						try {
							DbRecord rec = screen.getInquiry().getCurrentDbRecord();
							entry = new EventEntry( rec.getString("eventid") );
							entry.setEventGroup( rec.getString("event_group") );
							entry.setEventType( rec.getString("event_type") );
							entry.setSubject( rec.getString("tsubject") );
							entry.setDescription( rec.getString("tdesc") );
							entry.setStartDate( rec.getString("startdate") );
							entry.setAllDayEvent( ("1").equalsIgnoreCase( rec.getString("alldayevent") ) );
							entry.setStartTime( rec.getString("starttime") );
							entry.setEndTime( rec.getString("endtime") );
							eventList.add( entry );
						
						} catch (Exception e) { e.printStackTrace(); /* Ignore error */}
					} // while
					
					htmlCal.setEvent(eventList);

					out.println( htmlCal.getHtml() );
         		} 
		 %>
    				
               </div>
      		</div>
		 </form>
      </div>
      <!-- End Main Content -->
      </div>
  </div>
  <div id="footer">
  <jsp:include page="EMV_FOOTER.jsp" flush="true" />
    </div>
</div>
</body>
</html>