<%@page contentType="text/html; charset=UTF-8"%>
<%@page import="java.util.*"%>
<%@page import="com.csc.library.entry.HelpEntry,com.csc.library.system.*,com.csc.library.utilities.*,com.csc.library.report.*"%>
<%@ page import="com.csc.library.entry.*,com.csc.library.database.*,com.csc.library.session.*"  %>
<jsp:useBean id="SM1013" class="com.csc.library.system.Task" scope="page" />
<jsp:useBean id="SM1013SAVE" class="com.csc.library.system.Task" scope="page" />
<%
	

	SM1013.setChannel(request, response);
	UIManager screen = (UIManager) SM1013.process("SingleEntry","SM1013SAVE");

	SM1013SAVE.setChannel(request, response);
	HelpEntry screen1 = (HelpEntry) SM1013SAVE.process("HelpEntry","SM1013");
	screen1.setMaxLine(50);
	
	UProfile up=screen.getUProfile();
	String pwdlimit=up.get("ispwdlimit");
	CheckNull chk=new CheckNull();
	ThaiUtilities thai = new ThaiUtilities();
	String gopage=chk.chkNullString(request.getParameter("__goPage"),"+1");	
	String fixcon =chk.chkNullString(request.getParameter("__fixCon"));
	ReportUDF rf=new ReportUDF();
	String module[]=rf.getSystemCode("ISACTIVE",screen.getUProfile().get("lang"));	
	String username=chk.chkNullString(request.getParameter("username"));
	String empid=chk.chkNullString(request.getParameter("empid"));
	String level=chk.chkNullString(request.getParameter("level"));
	String role=chk.chkNullString(request.getParameter("role"));
	String status=chk.chkNullString(request.getParameter("status"));	
	String filter="";
	if(username.length()>0){
			filter="usernameid like '%"+username+"%' and ";
	}
	
	if(empid.length()>0){
			filter+="empid like '%"+empid+"%' and ";
	}		
	if(level.length()>0){
			filter+="user_level like '%"+level+"%' and ";
	}
	if(role.length()>0){
			filter+="user_role like '%"+role+"%' and ";
	}			
	if(status.length()>0){
			filter+="status ='"+status+"' and ";
	}				
	/*if(filter.length()>0){
		filter=filter.substring(0,filter.length()-4);
	}
	*/
	String user_role=(String)screen.getUProfile().get("user_role");
	String role_level=chk.chkNullString((String)screen.getUProfile().get("role_level"),"10");		
	filter+=" user_role in (select roleid from muser_role where role_level>='"+role_level+"')";
	
	//out.println("filter="+filter);
	screen1.getInquiry().setFilter(filter);
	//out.println("newpassword="+screen.getRecord().getString("newpassword"));
%>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<link href="../CSS/MENU.css" rel="stylesheet" type="text/css">
<link href="../CSS/TISCO.css" rel="stylesheet" type="text/css">
<link href="../CSS/bootstrap.css" rel="stylesheet"  type="text/css">
<link href="../CSS/bootstrap_csc_backend.css" rel="stylesheet"  type="text/css">
<script type="text/javascript" src="../JS/jquery-2.1.3.min.js"></script>
<script type='text/javascript' src="../JS/bootstrap.js"></script>
<script language='javascript' src="../JS/VIEWCALENDAR.js"></script>
<script  language="JavaScript" src="../JS/SCREEN.js"></script>
<script type='text/javascript' src="../JS/ICONSMENU.js"></script>
<script language='javascript' src="../JS/HOTKEY.js"></script>
<script language='javascript'>setLang('<%=screen.getUProfile().get("lang")%>');</script>
<script language="JavaScript" type="text/JavaScript">
<!--

	ThaiCode[220]="ต้องการคืนสถานะ users หรือไม่?";
	EngCode[220]="Do you want   enable users ?";

	ThaiCode[221]="ต้องการลบ users หรือไม่?";
	EngCode[221]="Do you want delete users ?";

	ThaiCode[222]="ต้องการล็อค users หรือไม่?";
	EngCode[222]="Do you want lock users ?";

	ThaiCode[223]="ต้องการปลดล็อค users หรือไม่?";
	EngCode[223]="Do you want  unlocked users ?";

	ThaiCode[224]="ต้องการยกเลิกการใช้งาน users หรือไม่?";
	EngCode[224]="Do you want   disable users ?";

	ThaiCode[225]="ต้องการกำหนดรหัสผ่านใหม่ให้ users หรือไม่?";
	EngCode[225]="Do you want  reset password ?";
	
	EngCode[203]="Please check Role level"
	ThaiCode[203]="กรุณาตรวจสอบสิทธิ์ของท่าน";	

function GoSearch()
{
	document.cscform.__goPage.value="+1";	
	search();						
}

function addPosfix(filter){
	if(filter.length>0)
	     filter+=" and "
     return filter;
}

function goHelp(helpName,inputName){
	var helpReturn;
	var tmp=document.cscform.__fixCon.value;
		 if(inputName=="empid" )
		 	helpReturn="empid:EMPLOYEEID";
		else if(inputName=="username")
		 	helpReturn=inputName+":usernameid";
		else if(inputName=="role"){
			document.cscform.__fixCon.value="role_level>='<%=role_level%>'";
		 	helpReturn=inputName+":roleid,__role_level:role_level";			
		}else if(inputName=="level")
		 	helpReturn=inputName+":user_level";
	     linkHelp_Return(helpName,helpReturn);
		 document.cscform.__fixCon.value=tmp;		 
}

function beforeSave(){
		with(document.cscform){
		__statuslist.value="";
		if(checkLength(__delprocess)){
				for(var v=0;v<__delprocess.length;v++){
					if(__delprocess[v].checked){
								__statuslist.value+=__delprocess[v].value+",";
						}
				}
			}else{
					if(__delprocess.checked)		
						__statuslist.value+=__delprocess.value+",";
			}	
		}
}

function goHelp1(helpName,inputName,listName){
	var helpReturn;
	var key;
	var tdesc="empid",edesc="";
	if (inputName=="__usernameList" ) {
		helpReturn="usernameid";
		key="usernameid";
	}
	 with(document.cscform){
		if (__fixCon.value!="") 
			__fixCon.value=__fixCon.value;
		var param="PRU085.jsp?__helpName="+helpName+"&__helpReturn="+helpReturn
		+"&__pageCall="+__screen.value+"&__fixCon="+__fixCon.value+"&__checkVerify=off"		
		+"&__listName="+listName+"&__key="+key+"&__tdesc="+tdesc+"&__edesc="+edesc;
		window.open(param,"Help","left=150,top=150,width=600,height=400,toolbar=no,status=yes,scrollbars=yes,resizable=yes");
		}	
}

function checkMyBox(obj){
	if(obj.checked){
		checkAll();
	}else{
	   decheckAll();
	}
}

function checkAll(){
		with(document.cscform){
			for(i=0;i<elements.length;i++){
					if(elements[i].type=="checkbox" )
							elements[i].checked=true;
			}//end for
		}//end with
	}//end function

	function decheckAll(){
		with(document.cscform){
			for(i=0;i<elements.length;i++){
					if(elements[i].type=="checkbox" )
							elements[i].checked=false;
			}//end for
		}//end with
	}//end function

function setValue(){
		with(document.cscform){
			__userlist.value="";
			for(i=0;i<elements.length;i++){
					if(elements[i].type=="checkbox" && elements[i].checked){
								__userlist.value+=elements[i].value+",";							
				}
			}//end for
		}//end with
	}//end function

function DeleteUser(){
		setValue();
		with(document.cscform){
				var bcon=confirm(MyCode[221]);
				if(bcon){
					__process.value="delete";
					__cmd.value="save";
					__confirm.value="s";
					submit();
				}				
		}
}

function LockUser(){
		setValue();
		with(document.cscform){
				var bcon=confirm(MyCode[222]);
				if(bcon){
					__process.value="locked";
					__cmd.value="save";
					__confirm.value="s";
					submit();
				}				
		}
}

function UnlockUser(){
		setValue();
		with(document.cscform){
				var bcon=confirm(MyCode[223]);
				if(bcon){
					__process.value="unlocked";
					__cmd.value="save";
					__confirm.value="s";
					submit();
				}				
		}
}

function EnableUser(){
		setValue();
		with(document.cscform){
				var bcon=confirm(MyCode[225]);
				if(bcon){
					__process.value="enabled";
					__cmd.value="save";
					__confirm.value="s";
					submit();
				}				
		}
}

function DisableUser(){
		setValue();
		with(document.cscform){
				var bcon=confirm(MyCode[224]);
				if(bcon){
					__process.value="disabled";
					__cmd.value="save";
					__confirm.value="s";
					submit();
				}				
		}
}

function ResetPWD(){
		setValue();
		with(document.cscform){
				var bcon=confirm(MyCode[225]);
				if(bcon){
					__process.value="resetpwd";
					__cmd.value="save";
					__confirm.value="s";
					submit();
				}				
		}
}

function AddUser(){
		with(document.cscform){
					window.open("ADDUSER.jsp?__addnew=1","ADDUSER","left=150,top=50,width=700,height=500,toolbar=no,status=yes,scrollbars=yes,resizable=yes");
		}
}

function AddMultiUser(){
		with(document.cscform){
					window.open("SM1012.jsp?__addnew=1","ADDMULTIUSER","left=150,top=50,width=900,height=600,toolbar=no,status=yes,scrollbars=yes,resizable=yes");
		}
}

//-->
</script>

<style type="text/css">
<!--
.style1 {color: #FF0000}
.layout {
	width: 100px;
	table-layout: fixed;
}

span.label1{
	 color:#FFFFFF;	
	background-color:#FF0000;
	position:absolute;
	left:90%;
	top:0px;
}  

}

-->
</style>
</head>
<body >
<div id="disabledZone" style="position:absolute; left:92%;top:0px;visibility: hidden"><span id="messageZone" class="label1"></span></div>
<div id="toolTipLayer" style="position:absolute; visibility: hidden"></div>
<script language="javascript">initToolTips();</script>
<form name="cscform" method="post" action="SM1013.jsp">
 

<!----------BEGIN CSC INITIAL ZONE ------------------------>

<%=screen.InitialVariable()%>

<!----------END CSC INITIAL ZONE -------------------------->

<input type="hidden" name="__calendar">
   <input type="hidden" name="__screen" value="SM1013SAVE">
	<input type="hidden" name="__cmd" value="">
	<input type="hidden" name="__help" value="">
	<input type="hidden" name="__goPage" value="<%=gopage%>">
	  <input name="__notNull" type="hidden" value="<%//=screen.getRequire()%>">
	<input type="hidden" name="__helpReturn" value="">
	<input type="hidden" name="__helpName" value="">
	<input type="hidden" name="__pageCall" value="">
	<input type="hidden" name="__referPage" value="">
	<input name="__language" type="hidden" value="<%=screen.getUProfile().get("lang")%>">
	<input type="hidden" name="__lockPage" value="">
	<input name="__fixCon" type="hidden" value="<%//=SM1013.getValue("__fixCon")%>">
	<input type="hidden" name="__orderBy" value="<%=request.getParameter("__orderBy")%>">
  	<input type="hidden" name="__company"  value="<%=screen.getUProfile().get("companyid")%>">
	<input type="hidden" name="__confirm" value="">
	<input type="hidden" name="__userlist">
	<input type="hidden" name="__process">
	<input type="hidden" name="__usernameid" value="none">
	<input type="hidden" name="__empid" value="none">
	<input type="hidden" name="__genpwd" value="1">
	<input type="hidden" name="__sendpwd" value="1">	
	<input type="hidden" name="__fixpwdstatus" value="1">	
	<input type="hidden" name="__role_level" value ="<%=chk.chkNullString(request.getParameter("__role_level"),role_level)%>">    	    		
  <script language="JavaScript" src="./JS/HOTKEY.js"></script>
          <script language="javascript">
	 var titlename=swap2String('Manage Users');
	 </script>
  <br>
    <table cellpadding="0" cellspacing="0" class="inframe">
      <tr >
        <td colspan="2" class="header" >SM1013, 
          <script language="javascript">swapLang(titlename);</script>&nbsp;</td>
      </tr>
      <tr >
        <td >
		<table  border="0" align="center" cellpadding="0" cellspacing="1" class="inframe">
          <tr>
            <td >
			<table width="638" border="0" align="center" cellpadding="0" cellspacing="1" class="inframe">
                <tr>
                  <td class="columnlabel"><script language="javascript">swapLang('Username');</script></td>
                  <td width="1024">&nbsp;<input type="text" name="username" size="30" maxlength="30" value="<%=username%>" onKeyPress="chkSpecialStr(event);" onKeyUp="sysIsEdit();" onBlur="trimValue(this);" onFocus="this.select();" >&nbsp;<a href="javascript:goHelp('MUSERHELP','username');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('username_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)"><img src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" alt="SEARCH" name="username_image" width="20" height="20" border="0" align="absmiddle"></a></td>
              </tr>
                <tr>
                  <td width="165" class="columnlabel"><script language="javascript">swapLang('Employeeid');</script></td>
                  <td>&nbsp;<input type="text" name="empid" size="30" maxlength="30" value="<%=empid%>" onKeyPress="chkSpecialStr(event);" onKeyUp="sysIsEdit();" onBlur="trimValue(this);" onFocus="this.select();" >&nbsp;<a href="javascript:goHelp('MEMPLOYEEHELP','empid');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('empid_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)"><img src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" alt="SEARCH" name="empid_image" width="20" height="20" border="0" align="absmiddle"></a></td>
                </tr>
                <tr class="maxsize">
                  <td  class="columnlabel"><script language="javascript">swapLang('Role');</script></td>
                  <td>&nbsp;<input type="text" name="role" size="30" maxlength="30" value="<%=role%>" onKeyPress="chkSpecialStr(event);" onKeyUp="sysIsEdit();" onBlur="trimValue(this);" onFocus="this.select();" >&nbsp;<a href="javascript:goHelp('MUSER_ROLEHELP','role');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('role_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)"><img src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" alt="SEARCH" name="role_image" width="20" height="20" border="0" align="absmiddle"></a></td>
                </tr>
                <tr class="maxsize">
                  <td  class="columnlabel"><script language="javascript">swapLang('Level');</script></td>
                  <td>&nbsp;<input type="text" name="level" size="30" maxlength="30" value="<%=level%>" onKeyPress="chkSpecialStr(event);" onKeyUp="sysIsEdit();" onBlur="trimValue(this);" onFocus="this.select();" >&nbsp;<a href="javascript:goHelp('MUSER_LEVELHELP','level');" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('level_image','','../IMAGES/BUTTON/SWAP/SEARCH_SWAP20.gif',1)"><img src="../IMAGES/BUTTON/MAIN/SEARCH20.gif" alt="SEARCH" name="level_image" width="20" height="20" border="0" align="absmiddle"></a></td>
                </tr>
                <tr class="maxsize">
                  <td  class="columnlabel"><script language="javascript">swapLang('Status');</script></td>
                  <td>
				  <select name="status">
				  	<option value="">...</option>
				  <%
														String keyvalue[];
														for(int n=0;n<module.length;n++){
															keyvalue=module[n].split(",");
					%>
													<option value="<%=keyvalue[0]%>" <%=status.equals(keyvalue[0])?"selected":""%>><%=keyvalue[1]%></option>
					<%
						}
					%>
					</select>					
				  </td>
                </tr>		
                <tr>
                  <td class="columnlabel">&nbsp;</td>
                  <td><button type="button" class="btn btn-primary width100" swlang code="SW013168" onClick="GoSearch();">SEARCH</button></td>
                </tr>
				<%
        	screen1.process();		
				%>
                <tr>
                  <td class="columnlabel">&nbsp;</td>
                  <td align="right"><%=screen1.getPageTag()%></td>
                </tr>
              </table>			</td>
			</tr>
          <tr>
            <td >
<table border="0" align="center" cellpadding="0" cellspacing="1"class="inframe tablewithborder">
                  <tr class="title1">
                    <td width="3%"  class="title1"><div align="center"><input type="checkbox"  onClick="checkMyBox(this)">
                    </div></td>
                    <td  width="12%"  class="title1"><div align="center"><%=screen1.getLabel("usernameid")%></div></td>
                    <td  width="25%"  class="title1"><div align="center"><script language="javascript">swapLang('Name-Surname');</script></div></td>
                    <td  width="16%"  class="title1"><div align="center"><%=screen1.getLabel("user_role")%></div></td>
                    <td  width="16%"  class="title1"><div align="center"><%=screen1.getLabel("user_level")%></div></td>
                    <td  width="12%"  class="title1"><div align="center"><%=screen1.getLabel("status")%></div></div></td>
                    <td  width="12%"  class="title1"><div align="center"><%=screen1.getLabel("pwdstatus")%></div></div></td>
                    <td  width="12%"  class="title1"><div align="center"><%=screen1.getLabel("tmppasswd")%></div></div></td>
              </tr>
				  <%
				  HashMap hm=new HashMap();
				  String newpassword=screen.getRecord().getString("newpassword");
				  
				  String[] str=null;
				  if(newpassword.indexOf(",")>-1){
				  str=newpassword.split(",");
					  if(str.length>1){
						  for(int i=0;i<str.length;i++){
								String[] str2=str[i].split("#");
								hm.put(str2[0],str2[1]);
						  }
					  }
				  }
				  String cls="";
				  int i=0;
				  		while(screen1.nextRec()){
						cls="";
									if(screen1.checkLinePage()){
									if(i%2==0) cls="class='writeback' ";
									i++;
				  %>
                  <tr >
                    <td <%=cls%> width="3%" ><div align="center"><input type="checkbox" value="<%=screen1.getString("usernameid")%>#<%=screen1.getString("memployee","email")%>"></div></td>
                    <td <%=cls%> width="12%"><%=screen1.getString("usernameid")%></td>
                    <td <%=cls%> width="25%"><%=screen1.getString("memployee","fullname")%></td>
                    <td <%=cls%> width="16%" style="text-align:center;"><%=screen1.getString("user_role")%></td>
                    <td <%=cls%> width="16%" style="text-align:center;"><%=screen1.getString("muser_level","tdesc")%></td>
                    <td <%=cls%> width="12%" style="text-align:center;"><%=screen1.getInquiry().getCurrentDbRecord().getSystemCode("status")%></div></td>
                    <td <%=cls%> width="12%" style="text-align:center;"><%=screen1.getInquiry().getCurrentDbRecord().getSystemCode("pwdstatus")%></div></td>
                    <td <%=cls%> width="12%" style="text-align:center;">&nbsp;<%
					if(screen1.getString("pwdstatus").equals("0")){
						out.println(screen1.getString("tmppasswd"));
					}else{
						out.println("&nbsp;");
					}
					%></div></td>
					
                  </tr>
				  <%
				  }
				 if(screen1.outLinePage()){ break; }
				  }
				  
				  %>
                  </table>			</td>

			<tr>
				<td  class="buttonline" colspan="7"><div align="center">
					<button type="button" class="btn btn-primary width100" swlang code="SW013165" onClick="AddUser();">ADD</button>
					<button type="button" class="btn btn-primary width100" swlang code="SW013195" onClick="AddMultiUser();">ADD USERS</button>
					<button type="button" class="btn btn-primary width100" swlang code="SW000123" onClick="DeleteUser();">DELETE</button>&nbsp; &nbsp;
					<button type="button" class="btn btn-primary width100" swlang code="SW013196" onClick="LockUser();">LOCK</button>
					<button type="button" class="btn btn-primary width100" swlang code="SW013197" onClick="UnlockUser();">UN LOCK</button>&nbsp; &nbsp;
					<button type="button" class="btn btn-primary width100" swlang code="SW013198" onClick="EnableUser();">END ABLE</button>
					<button type="button" class="btn btn-primary width100" swlang code="SW013199" onClick="DisableUser();">DISABLE</button>&nbsp;
					<button type="button" class="btn btn-primary width100" swlang code="SW012466" onClick="ResetPWD();">RESETPWD</button>
				</div>
				</td>
			</tr>
          <tr>
            <td  class="bottom" ></td>
          </tr>
        </table>
		<!--/td>
      </tr>
    </table-->
</form>
</body>
</html>