appUser_create.jsp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332
  1. <%@ include file="../common/header.jsp"%>
  2. <script type="text/javascript" src="./js/autocomplete/jquery.js"></script>
  3. <script type='text/javascript'
  4. src='./js/autocomplete/jquery.bgiframe.min.js'></script>
  5. <script type='text/javascript'
  6. src='./js/autocomplete/jquery.ajaxQueue.js'></script>
  7. <script type='text/javascript'
  8. src='./js/autocomplete/thickbox-compressed.js'></script>
  9. <script type='text/javascript'
  10. src='./js/autocomplete/jquery.autocomplete.js'></script>
  11. <script type='text/javascript' src='./js/autocomplete/localdata.js'></script>
  12. <script type="text/javascript">
  13. $(function() {
  14. function format(jsonmap) {
  15. return jsonmap.name + " - " + jsonmap.value;
  16. }
  17. $("#biller_name").autocomplete('appUser.do?action=getBillers', {
  18. dataType: "json",
  19. parse: function(data) {
  20. return $.map(data, function(row) {
  21. return {
  22. data: row,
  23. value: row.name,
  24. result: row.name
  25. }
  26. });
  27. },
  28. formatItem: function(jsonmap) {
  29. return format(jsonmap);
  30. }
  31. }).result(function(e, jsonmap) {
  32. //after select
  33. $("#biller").val(jsonmap.name);
  34. $("#biller_name").val(format(jsonmap));
  35. $.get("appUser.do", { "action": "getBillerGroups", "biller" : jsonmap.name },
  36. function(data){
  37. options = '';
  38. for (var i = 0; i < data.length; i++) {
  39. options += '<option value="' + data[i].name + '">' + data[i].value + '</option>';
  40. }
  41. $("#billerGroups").html(options);
  42. $('#billerGroups option:first').attr('selected', 'selected');
  43. }, "json");
  44. $.get("appUser.do", { "action": "getAccounts", "billerAccount" : jsonmap.name },
  45. function(data){
  46. optionsLeft = '';
  47. optionsRight = '';
  48. if(data.length > 0) {
  49. for (var i = 0; i < data.length; i++) {
  50. optionsLeft += '<option value="' + data[i].name + '">' + data[i].name + '</option>';
  51. }
  52. }
  53. $("#accountNumberLeft").html(optionsLeft);
  54. $("#accountNumberRight").html(optionsRight);
  55. }, "json");
  56. });
  57. });
  58. </script>
  59. <script type="text/javascript" language="javascript">
  60. <!--
  61. function doCreate(){
  62. var x = window.confirm("Create appUser?");
  63. var src = document.getElementById("accountNumberRight");
  64. for(var i=0; i<src.options.length; i++) {
  65. src.options[i].selected = true;
  66. }
  67. if (x) {
  68. document.forms.appUser.action.value="create_ok";
  69. document.forms.appUser.post.value = "true";
  70. document.forms.appUser.submit();
  71. }
  72. }
  73. function doBack(){
  74. document.forms.appUser.action.value="list";
  75. document.forms.appUser.clear.value="true";
  76. document.forms.appUser.submit();
  77. }
  78. function listbox_moveacross(sourceID, destID) {
  79. var src = document.getElementById(sourceID);
  80. var dest = document.getElementById(destID);
  81. for(var count=0; count < src.options.length; count++) {
  82. if(src.options[count].selected == true) {
  83. var option = src.options[count];
  84. var newOption = document.createElement("option");
  85. newOption.value = option.value;
  86. newOption.text = option.text;
  87. newOption.selected = true;
  88. try {
  89. dest.add(newOption, null); //Standard
  90. src.remove(count, null);
  91. }catch(error) {
  92. dest.add(newOption); // IE only
  93. src.remove(count);
  94. }
  95. count--;
  96. }
  97. }
  98. }
  99. function listbox_moveacross_all(sourceID, destID) {
  100. var src = document.getElementById(sourceID);
  101. var dest = document.getElementById(destID);
  102. for(var count=0; count < src.options.length; count++) {
  103. src.options[count].selected == true
  104. var option = src.options[count];
  105. var newOption = document.createElement("option");
  106. newOption.value = option.value;
  107. newOption.text = option.text;
  108. newOption.selected = true;
  109. try {
  110. dest.add(newOption, null); //Standard
  111. src.remove(count, null);
  112. }catch(error) {
  113. dest.add(newOption); // IE only
  114. src.remove(count);
  115. }
  116. count--;
  117. }
  118. }
  119. function listbox_selectall(listID, isSelect) {
  120. var listbox = document.getElementById(listID);
  121. for(var count=0; count < listbox.options.length; count++) {
  122. listbox.options[count].selected = isSelect;
  123. }
  124. }
  125. -->
  126. </script>
  127. <!-- CONTENT -->
  128. <form name="appUser" method="post" action="appUser.do">
  129. <input type="hidden" name="action" /> <input type="hidden" name="clear" />
  130. <input type="hidden" name="sequence" /> <input type="hidden" name="post" />
  131. <input type="hidden" name="redirect" value="create" />
  132. <table width="100%" border="0" align="center" cellpadding="2" cellspacing="4">
  133. <tr>
  134. <td class="titleHeader" align="left"><bean:message key="project.appUser.key" /> CREATE</td>
  135. </tr>
  136. </table>
  137. <table width="100%" border="0" align="center" cellpadding="2" cellspacing="4">
  138. <tr>
  139. <td align="center">
  140. <table width="100%" border="0" cellspacing="1" cellpadding="2">
  141. <tr>
  142. <td colspan="6"><html:errors /></td>
  143. </tr>
  144. <tr>
  145. <td width="15%"><b><bean:message key="appUser.loginName.key" /><font color="#FF0000">*</font></b></td>
  146. <td width="10">:</td>
  147. <td width="30%">
  148. <input type="text" name="loginName" value="<bean:write name="appUser" property="loginName" />" />
  149. </td>
  150. <td width="5%">&nbsp;</td>
  151. <td width="15%">&nbsp;</td>
  152. <td width="10">&nbsp;</td>
  153. <td width="30%">&nbsp;</td>
  154. </tr>
  155. <tr>
  156. <td width="15%"><b>
  157. <bean:message key="appUser.firstName.key" /><font color="#FF0000">*</font></b>
  158. </td>
  159. <td width="10">:</td>
  160. <td width="30%">
  161. <input type="text" name="firstName" value="<bean:write name="appUser" property="firstName" />" />
  162. </td>
  163. <td width="5%">&nbsp;</td>
  164. <td width="15%">&nbsp;</td>
  165. <td width="10">&nbsp;</td>
  166. <td width="30%">&nbsp;</td>
  167. </tr>
  168. <tr>
  169. <td width="15%">
  170. <b><bean:message key="appUser.lastName.key" /></b>
  171. </td>
  172. <td width="10">:</td>
  173. <td width="30%">
  174. <input type="text" name="lastName" value="<bean:write name="appUser" property="lastName" />" />
  175. </td>
  176. <td width="5%">&nbsp;</td>
  177. <td width="15%">&nbsp;</td>
  178. <td width="10">&nbsp;</td>
  179. <td width="30%">&nbsp;</td>
  180. </tr>
  181. <tr>
  182. <td width="15%">
  183. <b><bean:message key="appUser.biller.key" /><font color="#FF0000">*</font></b>
  184. </td>
  185. <td width="10">:</td>
  186. <td width="30%">
  187. <input type="text" id="biller_name" size="50" name="biller_name" value="<bean:write name="biller_name" />" />
  188. <input type="hidden" id="biller" name="biller" value="
  189. <logic:notEmpty name="appUser" property="biller">
  190. <bean:write name="appUser" property="biller.code" />
  191. </logic:notEmpty>
  192. " />
  193. </td>
  194. <td width="5%">&nbsp;</td>
  195. <td width="15%">&nbsp;</td>
  196. <td width="10">&nbsp;</td>
  197. <td width="30%">&nbsp;</td>
  198. </tr>
  199. <tr>
  200. <td width="15%"><b><bean:message key="appUser.billerGroup.key" /><font
  201. color="#FF0000">*</font></b></td>
  202. <td width="10">:</td>
  203. <td width="30%">
  204. <select id="billerGroups" name="billerGroups">
  205. <logic:notEmpty name="billerGroupList">
  206. <logic:iterate id="billerGroup" name="billerGroupList">
  207. <option value="<bean:write name="billerGroup" property="id" />"
  208. <logic:notEmpty name="appUser" property="billerGroup">
  209. <logic:equal name="billerGroup" property="id" value="${appUser.billerGroup}">
  210. selected="selected"
  211. </logic:equal>
  212. </logic:notEmpty>
  213. >
  214. <bean:write name="billerGroup" property="name" />
  215. </option>
  216. </logic:iterate>
  217. </logic:notEmpty>
  218. </select>
  219. </td>
  220. <td width="5%">&nbsp;</td>
  221. <td width="15%">&nbsp;</td>
  222. <td width="10">&nbsp;</td>
  223. <td width="30%">&nbsp;</td>
  224. </tr>
  225. <tr>
  226. <td valign="top"><b>Roles</b></td>
  227. <td valign="top">:</td>
  228. <td valign="top">
  229. <logic:notEmpty name="roleList">
  230. <logic:iterate id="role" name="roleList">
  231. <input type="checkbox"
  232. <logic:notEmpty name="appUser" property="roles">
  233. <logic:iterate id="element_roles" name="appUser" property="roles" >
  234. <logic:equal name="role" property="code" value="${element_roles.code}">
  235. checked="checked"
  236. </logic:equal>
  237. </logic:iterate>
  238. </logic:notEmpty>
  239. name="roleList" value="<bean:write name="role" property="code"/>" />
  240. <bean:write name="role" property="name"/> <br />
  241. </logic:iterate>
  242. </logic:notEmpty>
  243. </td>
  244. </tr>
  245. </table>
  246. <table border="0" width="98%" align="center" cellpadding="2" cellspacing="2">
  247. <tr>
  248. <td width="15%" valign="top"><b><bean:message key="appUser.accNo.key" /><font color="#FF0000">*</font></b></td>
  249. <td width="1%" valign="top">:</td>
  250. <td width="15%">
  251. <select id="accountNumberLeft" name="accountsLeft" size="10" multiple>
  252. <logic:notEmpty name="accountsList">
  253. <logic:iterate id="element_accountNumber" name="accountsList">
  254. <option value="<bean:write name="element_accountNumber" property="acctno" />">
  255. <bean:write name="element_accountNumber" property="acctno" />
  256. </option>
  257. </logic:iterate>
  258. </logic:notEmpty>
  259. <logic:empty name="accountsList">
  260. <logic:notEmpty name="accountNumberList">
  261. <logic:iterate id="element_accountNumber" name="accountNumberList">
  262. <option value="<bean:write name="element_accountNumber" property="acctno" />">
  263. <bean:write name="element_accountNumber" property="acctno" />
  264. </option>
  265. </logic:iterate>
  266. </logic:notEmpty>
  267. </logic:empty>
  268. </select>
  269. </td>
  270. <td valign="top">
  271. <a href="#" onclick="listbox_moveacross('accountNumberLeft', 'accountNumberRight')">&gt;</a>
  272. <br/>
  273. <a href="#" onclick="listbox_moveacross_all('accountNumberLeft', 'accountNumberRight')">&gt;&gt;</a>
  274. <br/><br/>
  275. <a href="#" onclick="listbox_moveacross('accountNumberRight', 'accountNumberLeft')">&lt;</a>
  276. <br/>
  277. <a href="#" onclick="listbox_moveacross_all('accountNumberRight', 'accountNumberLeft')">&lt;&lt;</a>
  278. </td>
  279. <td>
  280. <select id="accountNumberRight" name="accountsRight" size="10" multiple>
  281. <logic:notEmpty name="accountList">
  282. <logic:iterate id="account" name="accountList">
  283. <logic:notEmpty name="account" property="acctno">
  284. <option value="<bean:write name="account" property="acctno" />"selected = "selected">
  285. <bean:write name="account" property="acctno" />
  286. </option>
  287. </logic:notEmpty>
  288. </logic:iterate>
  289. </logic:notEmpty>
  290. </select>
  291. </td>
  292. <td width="5%">&nbsp;</td>
  293. <td width="15%">&nbsp;</td>
  294. <td width="10">&nbsp;</td>
  295. <td width="30%">&nbsp;</td>
  296. </tr>
  297. <tr>
  298. <td width="15%"></td>
  299. <td width="1%"></td>
  300. <td width="15%">
  301. <input type="button" value="<bean:message key="button.back"/>" onclick="javascript:doBack();" /> &nbsp;<input type="button"
  302. value="<bean:message key="button.submit"/>" onclick="javascript:doCreate();" />
  303. </td>
  304. <td colspan="4">&nbsp;</td>
  305. </tr>
  306. </table>
  307. </td>
  308. </tr>
  309. <tr>
  310. <td>&nbsp;</td>
  311. </tr>
  312. </table>
  313. </form>
  314. <!-- END CONTENT -->
  315. <%@ include file="../common/footer.jsp"%>