Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dbupdates/patch20131128.sql =================================================================== diff -u --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dbupdates/patch20131128.sql (revision 0) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dbupdates/patch20131128.sql (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -0,0 +1,13 @@ +-- Turn off autocommit, so nothing is committed if there is an error +SET AUTOCOMMIT = 0; + +----------------------Put all sql statements below here------------------------- + +-- LDEV-3153 Enlarge instructions field for Share Resource +ALTER TABLE tl_larsrc11_item_instruction MODIFY description TEXT; + +----------------------Put all sql statements above here------------------------- + +-- If there were no errors, commit and restore autocommit to on +COMMIT; +SET AUTOCOMMIT = 1; \ No newline at end of file Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/model/ResourceItemInstruction.java =================================================================== diff -u -r920894ca746cba5e080023c5cc80167d64d1653d -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/model/ResourceItemInstruction.java (.../ResourceItemInstruction.java) (revision 920894ca746cba5e080023c5cc80167d64d1653d) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/model/ResourceItemInstruction.java (.../ResourceItemInstruction.java) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -26,65 +26,73 @@ import java.util.Set; import org.apache.log4j.Logger; + /** * @hibernate.class table="tl_larsrc11_item_instruction" * @author Steve.Ni * * @version $Revision$ */ -public class ResourceItemInstruction implements Cloneable{ - private static final Logger log = Logger.getLogger(ResourceItemInstruction.class); - - private Long uid; - private int sequenceId; - private String description; +public class ResourceItemInstruction implements Cloneable { + private static final Logger log = Logger.getLogger(ResourceItemInstruction.class); - public Object clone(){ - Object obj = null; - try { - obj = super.clone(); - ((ResourceItemInstruction)obj).setUid(null); - } catch (CloneNotSupportedException e) { - log.error("When clone " + ResourceItemInstruction.class + " failed"); - } - - return obj; + private Long uid; + private int sequenceId; + private String description; + + public Object clone() { + Object obj = null; + try { + obj = super.clone(); + ((ResourceItemInstruction) obj).setUid(null); + } catch (CloneNotSupportedException e) { + log.error("When clone " + ResourceItemInstruction.class + " failed"); } -// ********************************************************** - // Get/Set methods -// ********************************************************** - /** - * @hibernate.id generator-class="native" type="java.lang.Long" column="uid" - * @return Returns the uid. - */ - public Long getUid() { - return uid; - } - /** - * @param uid The uid to set. - */ - public void setUid(Long userID) { - this.uid = userID; - } - /** - * @hibernate.property column="description" - * @return - */ - public String getDescription() { - return description; - } - public void setDescription(String description) { - this.description = description; - } - /** - * @hibernate.property column="sequence_id" - * @return - */ - public int getSequenceId() { - return sequenceId; - } - public void setSequenceId(int sequenceId) { - this.sequenceId = sequenceId; - } + return obj; + } + + // ********************************************************** + // Get/Set methods + // ********************************************************** + /** + * @hibernate.id generator-class="native" type="java.lang.Long" column="uid" + * @return Returns the uid. + */ + public Long getUid() { + return uid; + } + + /** + * @param uid + * The uid to set. + */ + public void setUid(Long userID) { + this.uid = userID; + } + + /** + * @hibernate.property column="description" type="text" + * @return + */ + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + /** + * @hibernate.property column="sequence_id" + * @return + */ + public int getSequenceId() { + return sequenceId; + } + + public void setSequenceId(int sequenceId) { + this.sequenceId = sequenceId; + } + } Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java =================================================================== diff -u -rdfe9ef3dde4b722b5d87c4964a66f19fd48ea2b0 -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision dfe9ef3dde4b722b5d87c4964a66f19fd48ea2b0) +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java (.../AuthoringAction.java) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -29,7 +29,6 @@ import java.sql.Timestamp; import java.util.ArrayList; import java.util.Date; -import java.util.Enumeration; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; @@ -274,8 +273,8 @@ String sessionMapID = WebUtil.readStrParam(request, ResourceConstants.ATTR_SESSION_MAP_ID); ((ResourceItemForm) form).setSessionMapID(sessionMapID); - short type = (short) NumberUtils.stringToInt(request.getParameter(AuthoringAction.ITEM_TYPE)); - List instructionList = new ArrayList(AuthoringAction.INIT_INSTRUCTION_COUNT); + short type = (short) WebUtil.readIntParam(request, AuthoringAction.ITEM_TYPE); + List instructionList = new ArrayList(AuthoringAction.INIT_INSTRUCTION_COUNT); for (int idx = 0; idx < AuthoringAction.INIT_INSTRUCTION_COUNT; idx++) { instructionList.add(""); } @@ -339,8 +338,8 @@ * @return */ private ActionForward newInstruction(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { - int numberOfInstructions = getNumberOfInstructionsInRequest(request); - List instructionList = new ArrayList(++numberOfInstructions); + int numberOfInstructions = WebUtil.readIntParam(request, INSTRUCTION_ITEM_COUNT); + List instructionList = new ArrayList(++numberOfInstructions); for (int idx = 0; idx < numberOfInstructions; idx++) { String item = request.getParameter(AuthoringAction.INSTRUCTION_ITEM_DESC_PREFIX + idx); if (item == null) { @@ -363,9 +362,9 @@ * @return */ private ActionForward removeInstruction(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { - int numberOfInstructions = getNumberOfInstructionsInRequest(request); - int removeIdx = NumberUtils.stringToInt(request.getParameter("removeIdx"), -1); - List instructionList = new ArrayList(numberOfInstructions - 1); + int numberOfInstructions = WebUtil.readIntParam(request, INSTRUCTION_ITEM_COUNT); + int removeIdx = WebUtil.readIntParam(request, "removeIdx"); + List instructionList = new ArrayList(numberOfInstructions - 1); for (int idx = 0; idx < numberOfInstructions; idx++) { String item = request.getParameter(AuthoringAction.INSTRUCTION_ITEM_DESC_PREFIX + idx); if (idx == removeIdx) { @@ -949,23 +948,6 @@ } /** - * Get number of instruction items in the HttpRequest - * - * @param request - * the HttpServletRequest - * @return numberOfInstruction the number of instructions in the request - */ - private int getNumberOfInstructionsInRequest(HttpServletRequest request) { - int numberOfInstructions = 0; - Enumeration e = request.getParameterNames(); - while (e.hasMoreElements()) { - if (e.nextElement().toString().indexOf(AuthoringAction.INSTRUCTION_ITEM_DESC_PREFIX) != -1) - numberOfInstructions++; - } - return numberOfInstructions; - } - - /** * Get back relative ActionForward from request. * * @param type Index: lams_tool_larsrc/web/common/header.jsp =================================================================== diff -u -r35a0e719d061c08b52e705135bb2f2126079ed21 -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/common/header.jsp (.../header.jsp) (revision 35a0e719d061c08b52e705135bb2f2126079ed21) +++ lams_tool_larsrc/web/common/header.jsp (.../header.jsp) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -10,7 +10,6 @@ - Index: lams_tool_larsrc/web/common/tabbedheader.jsp =================================================================== diff -u -r18e5e690d2e1a7c3d918759f7a2827c8205feaac -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/common/tabbedheader.jsp (.../tabbedheader.jsp) (revision 18e5e690d2e1a7c3d918759f7a2827c8205feaac) +++ lams_tool_larsrc/web/common/tabbedheader.jsp (.../tabbedheader.jsp) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -10,7 +10,7 @@ - + Index: lams_tool_larsrc/web/includes/javascript/rsrcresourceitem.js =================================================================== diff -u -r2b350be06485bbfe1da8c66def9fc2cd81e883a8 -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/includes/javascript/rsrcresourceitem.js (.../rsrcresourceitem.js) (revision 2b350be06485bbfe1da8c66def9fc2cd81e883a8) +++ lams_tool_larsrc/web/includes/javascript/rsrcresourceitem.js (.../rsrcresourceitem.js) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -1,18 +1,26 @@ /* - This is Resource Item instrcution area. + This is Resource Item instruction area. */ var instructionTargetDiv = "instructionArea"; var itemAttachmentTargetDiv = "itemAttachmentArea"; - var singleInstructionHeight = 40; + var singleInstructionHeight = 74; function removeInstruction(idx){ + //prepare lams_textarea value to Ajax submit + $('textarea').trigger('change'); + var param = $("#instructionForm").serialize() + "&removeIdx="+idx; removeInstructionLoading(); - $.post(removeInstructionUrl, param, function(xml) { - removeInstructionComplete(); - document.getElementById("instructionArea").innerHTML = xml; - }); + $.post( + removeInstructionUrl, + param, + function(xml) { + removeInstructionComplete(); + document.getElementById("instructionArea").innerHTML = xml; + } + ); } + function removeItemAttachment(idx){ removeItemAttachmentLoading(); $("#" + itemAttachmentTargetDiv).load( @@ -22,16 +30,26 @@ } ); } + function addInstruction(){ + //prepare lams_textarea value to Ajax submit + $('textarea').trigger('change'); + var param = $("#instructionForm").serialize(); addInstructionLoading(); - $.post(addInstructionUrl, param, function(xml) { - addInstructionComplete(); - document.getElementById("instructionArea").innerHTML = xml; - }); + + $.post( + addInstructionUrl, + param, + function(xml) { + addInstructionComplete(); + document.getElementById("instructionArea").innerHTML = xml; + } + ); + return false; - } + function adjustInstructionsDisplayAreaHeight(adjustAmount){ var obj = window.document.getElementById('reourceInputArea'); if (!obj && window.parent) { @@ -43,13 +61,19 @@ obj.style.height=obj.contentWindow.document.body.scrollHeight+adjustAmount+'px'; } function upItem(itemIdx){ + //prepare lams_textarea value to Ajax submit + $('textarea').trigger('change'); + if(itemIdx == 0) return; var currId = "instructionItemDesc" + itemIdx; var repId = "instructionItemDesc" + (--itemIdx); switchValue(currId,repId); } function downItem(itemIdx,maxSize){ + //prepare lams_textarea value to Ajax submit + $('textarea').trigger('change'); + if(itemIdx == (maxSize -1)) return; var currId = "instructionItemDesc" + itemIdx; @@ -83,6 +107,9 @@ } function submitResourceItem(){ + //prepare lams_textarea value to Ajax submit + $('textarea').trigger('change'); + document.getElementById("instructionList").value = $("#instructionForm").serialize(); $("#resourceItemForm").submit(); // after submit, it direct to itemlist.jsp, Index: lams_tool_larsrc/web/pages/authoring/basic.jsp =================================================================== diff -u -rbf1c66f82afbc349f5702f29a0c6ab6ff9add34a -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/pages/authoring/basic.jsp (.../basic.jsp) (revision bf1c66f82afbc349f5702f29a0c6ab6ff9add34a) +++ lams_tool_larsrc/web/pages/authoring/basic.jsp (.../basic.jsp) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -2,9 +2,7 @@ <%-- If you change this file, remember to update the copy made for CNG-36 --%> - + @@ -136,9 +136,6 @@ ');" class="space-left"> - - -

Index: lams_tool_larsrc/web/pages/authoring/parts/addfile.jsp =================================================================== diff -u -r8aa8842a708722ed7a742a284cc149eaaf3001de -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/pages/authoring/parts/addfile.jsp (.../addfile.jsp) (revision 8aa8842a708722ed7a742a284cc149eaaf3001de) +++ lams_tool_larsrc/web/pages/authoring/parts/addfile.jsp (.../addfile.jsp) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -39,17 +39,6 @@ - <%-- Remove description in as LDEV-617 - - - - - - - - - --%> -

@@ -63,10 +52,8 @@ - <%@ include file="instructions.jsp"%> - Index: lams_tool_larsrc/web/pages/authoring/parts/addlearningobject.jsp =================================================================== diff -u -r8aa8842a708722ed7a742a284cc149eaaf3001de -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/pages/authoring/parts/addlearningobject.jsp (.../addlearningobject.jsp) (revision 8aa8842a708722ed7a742a284cc149eaaf3001de) +++ lams_tool_larsrc/web/pages/authoring/parts/addlearningobject.jsp (.../addlearningobject.jsp) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -36,17 +36,6 @@ - - <%-- Remove description in as LDEV-617 - - - - - - - - - --%>
@@ -60,10 +49,9 @@
+ - <%@ include file="instructions.jsp"%> - - <%-- Remove description in as LDEV-617 - - - - - - - - - --%> -
@@ -63,10 +52,8 @@ - <%@ include file="instructions.jsp"%> -
Index: lams_tool_larsrc/web/pages/authoring/parts/addwebsite.jsp =================================================================== diff -u -r8aa8842a708722ed7a742a284cc149eaaf3001de -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/pages/authoring/parts/addwebsite.jsp (.../addwebsite.jsp) (revision 8aa8842a708722ed7a742a284cc149eaaf3001de) +++ lams_tool_larsrc/web/pages/authoring/parts/addwebsite.jsp (.../addwebsite.jsp) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -39,17 +39,6 @@ - <%-- Remove description in as LDEV-617 - - - - - - - - - --%> -
@@ -62,8 +51,8 @@ + - <%@ include file="instructions.jsp"%> Index: lams_tool_larsrc/web/pages/authoring/parts/instructions.jsp =================================================================== diff -u -r2b350be06485bbfe1da8c66def9fc2cd81e883a8 -re9e2a6b00397afa86d303bfbc6ca3649744a982e --- lams_tool_larsrc/web/pages/authoring/parts/instructions.jsp (.../instructions.jsp) (revision 2b350be06485bbfe1da8c66def9fc2cd81e883a8) +++ lams_tool_larsrc/web/pages/authoring/parts/instructions.jsp (.../instructions.jsp) (revision e9e2a6b00397afa86d303bfbc6ca3649744a982e) @@ -1,45 +1,38 @@ <%@ include file="/common/taglibs.jsp"%> - + +
- +
- - + - - - -
+ ${status.index+1} - + + <%-- Don't display down icon if last line --%> - " onclick="upItem('${status.index}')"> - "> @@ -52,16 +45,15 @@ - "> <%-- Don't display down icon if last line --%> + " onclick="removeInstruction('${status.index}')"> @@ -70,12 +62,16 @@
+ + + +
+
<%-- This script will adjust resource item input area height according to the new instruction item amount. --%>