Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java,v diff -u -r1.51 -r1.52 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java 2 Mar 2009 10:16:34 -0000 1.51 +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java 27 Mar 2009 05:33:06 -0000 1.52 @@ -898,34 +898,39 @@ * * @param request */ - private List getInstructionsFromRequest(HttpServletRequest request) { - String list = request.getParameter("instructionList"); - String[] params = list.split("&"); - Map paramMap = new HashMap(); - String[] pair; - for (String item : params) { - pair = item.split("="); - if (pair == null || pair.length != 2) { - continue; - } - try { - paramMap.put(pair[0], URLDecoder.decode(pair[1], "UTF-8")); - } catch (UnsupportedEncodingException e) { - AuthoringAction.log.error("Error occurs when decode instruction string:" + e.toString()); - } - } + private List getInstructionsFromRequest(HttpServletRequest request) { + String list = request.getParameter("instructionList"); + String[] params = list.split("&"); + Map paramMap = new HashMap(); + String[] pair; + for (String item : params) { + pair = item.split("="); + if (pair == null || pair.length != 2) { + continue; + } + try { + paramMap.put(pair[0], URLDecoder.decode(pair[1], "UTF-8")); + } catch (UnsupportedEncodingException e) { + AuthoringAction.log + .error("Error occurs when decode instruction string:" + + e.toString()); + } + } + + int count = paramMap.keySet().size(); + List instructionList = new ArrayList(); + + for (int idx = 0; idx < count; idx++) { + String item = paramMap.get(AuthoringAction.INSTRUCTION_ITEM_DESC_PREFIX + idx); + if (item == null) + continue; + + instructionList.add(item); + } + + return instructionList; - int count = NumberUtils.stringToInt(paramMap.get(AuthoringAction.INSTRUCTION_ITEM_COUNT)); - List instructionList = new ArrayList(); - for (int idx = 0; idx < count; idx++) { - String item = paramMap.get(AuthoringAction.INSTRUCTION_ITEM_DESC_PREFIX + idx); - if (item == null) { - continue; - } - instructionList.add(item); } - return instructionList; - } /** * Get back relative ActionForward from request. Index: lams_tool_larsrc/web/includes/javascript/rsrcresourceitem.js =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/web/includes/javascript/rsrcresourceitem.js,v diff -u -r1.5 -r1.6 --- lams_tool_larsrc/web/includes/javascript/rsrcresourceitem.js 7 Apr 2008 07:26:26 -0000 1.5 +++ lams_tool_larsrc/web/includes/javascript/rsrcresourceitem.js 27 Mar 2009 05:33:06 -0000 1.6 @@ -104,9 +104,11 @@ } function submitResourceItem(){ - $("instructionList").value = Form.serialize("instructionForm"); - $("resourceItemForm").submit(); - //after submit, it direct to itemlist.jsp, + //$("instructionList").value = Form.serialize("instructionForm"); + document.getElementById("instructionList").value = $("#instructionForm").serialize(); + //$("#resourceItemForm").value = $("#instructionForm").serialize(); + $("#resourceItemForm").submit(); + // after submit, it direct to itemlist.jsp, // then refresh "basic tab" resourcelist and close this window. } function cancelResourceItem(){