<!DOCTYPE html>
<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<%@ 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.*"  %>
<%@ page import="org.apache.commons.lang.StringUtils" %>
<%@ include file="../CHECKPROFILE.jsp" %>
<% request.setCharacterEncoding("UTF-8"); %>
<jsp:useBean id="EMV" class="com.csc.library.system.Task" scope="page"/>
<jsp:setProperty name="EMV" property="appname" value="empview" />
<%
	EMV.setChannel(request, response);
	EmvHelpEntry screen = (EmvHelpEntry) EMV.process("EmvHelpEntry","OI-POLICYHELP");
	if(screen==null){
		return;
	}
	CheckNull chk = new CheckNull();
	String dbName = screen.getUProfile().getDbName();
	String announce_start = chk.chkNullString( request.getParameter("__announce_start"));
	String announce_end = chk.chkNullString( request.getParameter("__announce_end"));
	String group1 = chk.chkNullString( request.getParameter("__group1"));
	String group2 = chk.chkNullString( request.getParameter("__group2"));
	String type1 = chk.chkNullString( request.getParameter("__type1"));
	String type2 = chk.chkNullString( request.getParameter("__type2"));
	String procedure = chk.chkNullString( request.getParameter("__procedure"));

	// group
	if( !group1.equals("") && !group2.equals("") ){
		screen.getInquiry().setFilter( "procgrpid", group1, group2, "between" );
	}
	// type
	if( !type1.equals("") && !type2.equals("") ){
		screen.getInquiry().setFilter( "proceduretypeid", type1, type2, "between" );
	}
	// description
	if( !procedure.equals("") ){
		screen.getInquiry().setFilter( "topictdesc", "%"+procedure +"%", "", "like" );
	}
	// Notice date
	if( !announce_start.equals("") && !announce_end.equals("") ){
		screen.getInquiry().setFilter( "announcedate", announce_start, announce_end, "between" );
	}
	//screen.getInquiry().setFilter( "isdisplay", "1", "","=" );
	screen.setMaxLine(15);
	int beginRow=((Integer.parseInt(screen.goPage)-1)*screen.maxLine)+1;
    int endRow=(Integer.parseInt(screen.goPage))*screen.maxLine;
    screen.getInquiry().setBetween(beginRow, endRow);
    screen.getInquiry().clearOldCondition();
	//String orderBy ="procgrpid, proceduretypeid";
    screen.getInquiry().setOrderBy("procgrpid,proceduretypeid");
	screen.inq.setFilter("isdisplay = '1'");
	screen.referLangOn();
	screen.process();

	String pgid="0";
	String pcdtid="0";
%>

<html xmlns="http://www.w3.org/1999/xhtml" ng-app="myHR">
	<head>
		<title>Employee View</title>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
	</head>
	<body>
		<div class="bg-com"></div>
		<jsp:include page="EMV_HEADMENU.jsp" flush="true" />

		<script type="text/javascript">

			setLang("<%=screen.getUProfile().get("lang")%>");
			var dbName = '<%=dbName%>';
			var swap = new swaplang();
            var titlename = dbName === "LCBK" || dbName === "LMBK" ? "SOP" : swap.swap2String("SW011249");
			setPageTitle(titlename);

			function goHelp(helpName,inputName) {
				var helpReturn;
				var FixCon ="";

				if(inputName=="__group1" ) {
					helpReturn="__group1:procgrpid";
				} else 	if(inputName=="__group2" ) {
					helpReturn="__group2:procgrpid";
				} else if(inputName=="__type1" ) {
					helpReturn="__type1:proceduretypeid";
				} else if(inputName=="__type2" ) {
					helpReturn="__type2:proceduretypeid";
				}
				linkHelp_Return(helpName,helpReturn, FixCon);
			}

			function GoSearch(){
				setCondition();
				search();
			}

			function toolTip(){
			}
			function setCondition(){
				with(document.cscform){
					__announce_start.value = __startdate.value.split("-").reverse().join("-");
					__announce_end.value = __enddate.value.split("-").reverse().join("-");
				}
			}


			//----------------- for Validate Date Input -----------------------
			//----------------- Begin Validate -----------------------

			function isDateStringFormat(sDate){
				var exp = /(^\d{8}$)|(^\d{2}-\d{2}-\d{4}$)/g;
				return exp.test(sDate)
			}
			function setBlank(){
				return "";
			}

			function toDate(sDate){
				var dArr = sDate.split("-");
				var d = new Date();
				if(dArr.length==3){
					d.setFullYear(dArr[2], dArr[1]-1, dArr[0]);
				}
				return d;
			}
			function isDate(sDate) {
				var valid = false;
				var dArr = sDate.split("-");
				if(dArr.length==3){
					var d = new Date(dArr[2], dArr[1]-1, dArr[0]);
					valid = (d.getMonth()+1 == dArr[1] && d.getDate() == dArr[0] && d.getFullYear() == dArr[2]);
				}
				return valid;
			}

			function chkInputDate(obj) {
				var temp = obj.value;
				var chk = true;

				if(temp.length==0){
					chk = true;
				}
				//ตรวจสอบดูว่ารูปแบบวันที่ถูกต้องหรือไม่ => ตัวเลข 8 ตัว หรือ 99-99-9999
				else if (!isDateStringFormat(temp)) {
					chk = false;
					alert(MyAlert[31]);
					obj.value = setBlank();
					obj.select();
				}
				// ตรวจสอบว่าวันที่ถูกต้องหรือไม่
				else if(!isDate(temp)) {
					chk = false;
					if(temp.length!=8){
						obj.value = setBlank();
						obj.select();
					}
				}
				return chk;
			}

			function formatDate(obj) {
				var textValue;
				var chkValue
				textValue = obj.value;
				chkValue = obj.value.split("-");

				if ( !chkIntNotChar (obj.value) ) {
					// format not valid
					alert(MyAlert[31]);
					obj.value = setBlank();
					obj.select();
					return;
				}
				else {
					if ( (textValue.length == 8) && (textValue == delWordDate(obj.value)) && (chkValue.length < 2) ) { // CHECK LENGTH OF VAR X
						textValue = textValue.substring(0,2) + "-" + textValue.substring(2,4) + "-" + textValue.substring(4,8);
					}
					else if ( (chkValue.length == 2) && (chkValue[0].length == 4 && chkValue[1].length == 4) ) {
						textValue = chkValue[0].substring(0,2) + "-" + chkValue[0].substring(2,4) + "-" +chkValue[1];
					}
					else if ( (chkValue.length == 2) && (chkValue[0].length == 2 && chkValue[1].length == 6) ) {
						textValue = chkValue[0] + "-" + chkValue[1].substring(0,2) + "-" +chkValue[1].substring(2,6);
					} else {
						if(textValue.length!=10){
							return;
						}
					}

					textValue = formatEngYear(textValue);
					if(isDate(textValue)){
						// date is Okey
						obj.value = textValue;
					}else{
						// format is okey but, date not valid
						msg = (getLang()=="tha")?"กรอกวันที่ไม่ถูกต้อง":"Input date invalid";
						alert(msg);
						obj.value = setBlank();
						obj.select();
					}
				}
			}
			//----------------- End Validate -----------------------

			$(document).ready(function(){
				$("input[name=__startdate").hover(function(){
					$("input[name=__startdate]").datepicker({
						dateFormat:"dd-mm-yy",
						defaultDate: -5,
						changeMonth: true,
						changeYear: true
					});
					$("input[name=__enddate]").datepicker("destroy");
				});

				$("input[name=__startdate").change(function(){
					if ($("input[name=__startdate").val()>$("input[name=__enddate").val()){
						$("input[name=__enddate").val($("input[name=__startdate").val());
					}
				});

				$("input[name=__enddate").change(function(){
					if ($("input[name=__startdate").val()==""){
						$("input[name=__startdate").val($("input[name=__enddate").val());
					}else if ($("input[name=__startdate").val()>$("input[name=__enddate").val()){
						$("input[name=__startdate").val($("input[name=__enddate").val());
					}
					$("input[name=__enddate]").datepicker("destroy");
				});

				$("input[name=__enddate]").hover(function(){
					$("input[name=__enddate").datepicker({
						dateFormat:"dd-mm-yy",
						minDate:new Date(ConvertDate($("input[name=__startdate").val())),
						changeMonth: true,
						changeYear: true
					});
				});


			});
		</script>

		<section>
			<div class="container csc-content">
				<div class="csc-block">
					<form name="cscform" class="form-horizontal" method="post" action="<%=request.getRequestURI()%>">
						<%=screen.InitialVariable()%>
						<input type="hidden" name="__screen" value="OI_POLICY">
						<input type="hidden" name="__cmd" value="">
						<input type="hidden" name="__calendar">
						<input type="hidden" name="__currentDate" value="<%=new CscCalendar().getEngYYYY()%>">
						<input type="hidden" name="__cmd" value="">
						<input type="hidden" name="__help" value="">
						<input type="hidden" name="__goPage" value="">
						<input type="hidden" name="__helpName" value="">
						<input type="hidden" name="__language" value="<%=screen.getUProfile().get("lang")%>">
						<input type="hidden" name="__fixCon" value="">
						<input type="hidden" name="__orderBy" value="">
						<input type="hidden" name="__companyid"  value="<%=screen.getUProfile().get("companyid")%>">
						<input type="hidden" name="__announce_start" value="">
						<input type="hidden" name="__announce_end" value="">
						 <script type="text/javascript">getInputFormatDate();</script>

						<div class="center">
							<% if(dbName.equalsIgnoreCase("LCBK") || dbName.equalsIgnoreCase("LMBK")) { %>
							<h2 class="csc-block-head">SOP</h2>
							<% } else { %>
							<h2 swlang code='SW011249' class="csc-block-head">Policy/Regulation/Rule</h2>
							<% } %>
						</div>

						<div class="row">
							<div class="form-group">
								<div class="col-md-4 col-sm-4 col-xs-4">
									<label class="control-label label-right" swlang code='SW000702'>Date Between</label>
								</div>

								<div class="col-md-8 col-sm-8 col-xs-8">
									<div class="col-md-3 col-sm-3 col-xs-8">
										<input type="text" class="form-control" name="__startdate" size="10" maxlength="10" onKeyup = "formatDate(this)" onBlur = "chkInputDate2(this,__enddate)" onKeypress = "chkIntegerOfDate(this.value)" value='<%=chk.chkNullString( request.getParameter("__startdate")) %>'>
									</div>
									<div class="col-md-1 col-sm-1 col-xs-8">
										<label class="control-label"> - </label>
									</div>
									<div class="col-md-3 col-sm-3 col-xs-8">
										<input type="text" class="form-control" name="__enddate" size="10" maxlength="10" onKeyup = "formatDate(this)" onBlur = "chkInputDate2(__startdate,this)" onKeypress = "chkIntegerOfDate(this.value)" value='<%=chk.chkNullString( request.getParameter("__enddate")) %>'>
									</div>
								</div>

							</div>
						</div>

						<div class="row">
							<div class="form-group">
								<div class="col-md-4 col-sm-4 col-xs-4">
									<label class="control-label label-right" swlang code='SW001939'>Group</label>
								</div>
								<div class="col-md-8 col-sm-8 col-xs-8">
									<div class="col-md-3 col-sm-3 col-xs-8">
										<div class="input-group">
											<input type="text" class="form-control" name="__group1" size="15" maxlength="15" value="<%=group1 %>">
											<a class="input-group-addon" href="javascript:goHelp('MPROCEDUREGRPHELP','__group1');">
												<i class="fa fa-search"></i>
											</a>
										</div>
									</div>
									<div class="col-md-1 col-sm-1 col-xs-8">
										<label class="control-label">-</label>
									</div>
									<div class="col-md-3 col-sm-3 col-xs-8">
										<div class="input-group">
											<input type="text" class="form-control" name="__group2" size="15" maxlength="15" value="<%=group2 %>">
											<a class="input-group-addon" href="javascript: goHelp('MPROCEDUREGRPHELP','__group2');">
												<i class="fa fa-search"></i>
											</a>
										</div>
									</div>
								</div>
							</div>
						</div>

						<div class="row">
							<div class="form-group">
								<div class="col-md-4 col-sm-4 col-xs-4">
									<label class="control-label label-right" swlang code="SW005559">Type</label>
								</div>
								<div class="col-md-8 col-sm-8 col-xs-8">
									<div class="col-md-3 col-sm-3 col-xs-8">
										<div class="input-group">
											<input type="text" class="form-control" name="__type1" size="15" maxlength="15" value="<%=type1 %>">
											<a class="input-group-addon" href="javascript: goHelp('MPROCEDURETYPEHELP','__type1');">
												<i class="fa fa-search"></i>
											</a>
										</div>
									</div>
									<div class="col-md-1 col-sm-1 col-xs-8">
										<label class="control-label">-</label>
									</div>
									<div class="col-md-3 col-sm-3 col-xs-8">
										<div class="input-group">
											<input type="text" class="form-control" name="__type2" size="15" maxlength="15" value="<%=type2 %>">
											<a class="input-group-addon" href="javascript: goHelp('MPROCEDURETYPEHELP','__type2');">
												<i class="fa fa-search"></i>
											</a>
										</div>
									</div>
								</div>
							</div>
						</div>

						<div class="row">
							<div class="form-group">
								<div class="col-md-4 col-sm-4 col-xs-4">
									<label class="control-label label-right" swlang code='SW012335'>Word in Procedure</label>
								</div>

								<div class="col-md-8 col-sm-8 col-xs-8">
									<div class="col-md-3 col-sm-3 col-xs-8">
										<input type="text" class="form-control" name="__procedure" size="35" maxlength="50" value="<%=procedure %>">
									</div>
								</div>
							</div>
						</div>

						<div class="row">
							<div class="form-group">
								<center><a href="javascript:GoSearch();" class="btn btn-primary" swlang code='SW003537'>Search</a></center>
							</div>
						</div>

					</form>
				</div><!-- end csc-block-->

				<span class="detail-table">
					<span swlang code='SW001771'>Found Data</span> :&nbsp;&nbsp;<%= screen.getInquiry().recCount() %>&nbsp;
					<span swlang code='SW001780'>records</span>
				</span>
				<span class="detail-table label-right">
					<span swlang code='SW001120'>Page</span> : <%=screen.getPageTagNew()%>
				</span>

				<table class="table table-head table-bordered table-left">
					<thead>
						<tr>
							<% if(dbName.equalsIgnoreCase("LCBK") || dbName.equalsIgnoreCase("LMBK")) { %>
							<th>SOP</th>
							<% } else { %>
							<th swlang code='SW011249'>Policy/Regulation/Rule</th>
							<% } %>
						</tr>
					</thead>
					<tbody>
						<%
							DbInquiry db =  new InitialInquiry(screen.getUProfile()).getDbInquiry();
							DbInquiry dbi =  new InitialInquiry(screen.getUProfile()).getDbInquiry();
							String typeChk="";
							boolean first = true;
							String group = "";
							boolean firstGroup = true;
							boolean firstType  = true;
							String type = "";
							int countpgid=1;
							int countpcdtid=1;
							if(screen.getInquiry().recCount()>0) {
								while(screen.nextRec()) {
									if  (!pgid.equals(screen.getString("procgrpid"))){
										if (countpgid!=1){
											out.println("</td></tr>");
										}
						%>
										<tr>
											<td class="head"><%=countpgid%> - <%=screen.getString("group_tdesc")%></td>
										</tr>
										<tr>
											<td>
						<%
										pgid=screen.getString("procgrpid");
									}

									if (!pcdtid.equals(screen.getString("proceduretypeid"))){
										pcdtid=screen.getString("proceduretypeid");
						%>
										<span class="list"><%=countpcdtid%> <%=screen.getString("type_tdesc")%></span>
						<%
										db.initMyTable("Vw_com_profile","procgrpid='"+pgid+"' and proceduretypeid='"+pcdtid+"'","");
										db.setColumn("profileid,companyid,topictdesc");
										dbi.initMyTable("mcom_profile_file","","");
										dbi.setColumn("profileid,companyid,tdesc,attac");
										db.putChild(dbi);
										db.refresh();

										if(db.recCount()>0){
											while (db.next()){
						%>
												<div class="list"><span class="list"> - <%=db.getString("topictdesc")%> &nbsp; <a href='<%=dbi.getCurrentDbRecord().getDownloadUrl("attac")%>'><i class="fa fa-download"></i>  [<%=dbi.getString("tdesc")%>] </a></span></div>
						<%
											}
										}
										out.println("<br/>");
										countpcdtid++;
									}
								}
							}
						%>
							</td>
							</tr>
					</tbody>
				<!--<tbody>
						<tr>
							<td class="head">ทดสอบ</td>
						</tr>
						<tr>
							<td>
								<span class="list">ทดสอบไงงงงงง</span>

								<div class="list"><a class="list" href="#">ggwp</a></div>
								<div class="list"><a class="list" href="#">ggw2</a></div>

							</td>
						</tr>
					</tbody>-->
				</table>
			</div><!-- container -->
			<a href="#top" id="top-button">
				<i class="fa fa-angle-up"></i>
				<div class="top-word">Back to top</div>
			</a>
		</section>
		<jsp:include page="FOOTER.jsp" flush="true" />
	</body>
</html>