Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McResources.properties
===================================================================
diff -u -rf6991bff0a6a158b9432f338079cc3fc650dd389 -r32fc4979f5d351d85b0b1d751810fe1433ee0fcc
--- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McResources.properties (.../McResources.properties) (revision f6991bff0a6a158b9432f338079cc3fc650dd389)
+++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/McResources.properties (.../McResources.properties) (revision 32fc4979f5d351d85b0b1d751810fe1433ee0fcc)
@@ -36,6 +36,9 @@
label.redo.questions =Redo Questions
label.view.summary =View Summary
label.view.answers =View Answers
+label.view =View
+label.download =Download
+label.delete =Delete
label.finished =Finished
label.attempt =Attempt
Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/AuthoringUtil.java
===================================================================
diff -u -rf6991bff0a6a158b9432f338079cc3fc650dd389 -r32fc4979f5d351d85b0b1d751810fe1433ee0fcc
--- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/AuthoringUtil.java (.../AuthoringUtil.java) (revision f6991bff0a6a158b9432f338079cc3fc650dd389)
+++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/AuthoringUtil.java (.../AuthoringUtil.java) (revision 32fc4979f5d351d85b0b1d751810fe1433ee0fcc)
@@ -1759,6 +1759,36 @@
}
+ public static List removeFileItem(List listFilesMetaData, String uuid)
+ {
+ McAttachmentDTO deletableAttachmentDTO=null;
+
+ Iterator itList = listFilesMetaData.iterator();
+ int mainIndex=0;
+ while (itList.hasNext())
+ {
+ mainIndex++;
+ McAttachmentDTO currentAttachmentDTO=(McAttachmentDTO) itList.next();
+ logger.debug("currentAttachmentDTO :" + currentAttachmentDTO);
+ logger.debug("currentAttachmentDTO uuid :" + currentAttachmentDTO.getUuid());
+
+ if (currentAttachmentDTO.getUuid().equals(uuid))
+ {
+ logger.debug("equal uuid found uuid :" + uuid);
+ deletableAttachmentDTO=currentAttachmentDTO;
+ break;
+ }
+ }
+
+ logger.debug("equal uuid found at index :" + mainIndex);
+ logger.debug("deletable attachment is:" + deletableAttachmentDTO);
+
+ listFilesMetaData.remove(deletableAttachmentDTO);
+ logger.debug("listOfflineFilesMetaData after remove:" + listFilesMetaData);
+
+ return listFilesMetaData;
+ }
+
public static void persistFilesMetaData(HttpServletRequest request, boolean isOfflineFile, McContent mcContent)
{
IMcService mcService =McUtils.getToolService(request);
@@ -1801,14 +1831,34 @@
}
+ public static List extractFileNames(List listFilesMetaData)
+ {
+ Iterator itList = listFilesMetaData.iterator();
+ LinkedList listFilenames= new LinkedList();
+
+ while (itList.hasNext())
+ {
+ McAttachmentDTO mcAttachmentDTO=(McAttachmentDTO)itList.next();
+ String filename=mcAttachmentDTO.getFilename();
+ logger.debug("extracted filename: " + filename);
+ listFilenames.add(filename);
+ }
+ logger.debug("final extracted listFilenames: " + listFilenames);
+ return listFilenames;
+ }
+
+
public static void removeRedundantOfflineFileItems(HttpServletRequest request, McContent mcContent)
{
IMcService mcService =McUtils.getToolService(request);
List allOfflineFilenames=mcService.retrieveMcUploadedOfflineFilesName(mcContent.getUid());
logger.debug("allOfflineFilenames:" + allOfflineFilenames);
- List listUploadedOfflineFileNames=(List)request.getSession().getAttribute(LIST_UPLOADED_OFFLINE_FILENAMES);
+ List listOfflineFilesMetaData =(List)request.getSession().getAttribute(LIST_OFFLINEFILES_METADATA);
+ logger.debug("listOfflineFilesMetaData:" + listOfflineFilesMetaData);
+
+ List listUploadedOfflineFileNames=extractFileNames(listOfflineFilesMetaData);
logger.debug("listUploadedOfflineFileNames:" + listUploadedOfflineFileNames);
boolean matchFound=false;
@@ -1852,9 +1902,13 @@
List allOnlineFilenames=mcService.retrieveMcUploadedOnlineFilesName(mcContent.getUid());
logger.debug("allOnlineFilenames:" + allOnlineFilenames);
- List listUploadedOnlineFileNames=(List)request.getSession().getAttribute(LIST_UPLOADED_ONLINE_FILENAMES);
+ List listOnlineFilesMetaData =(List)request.getSession().getAttribute(LIST_ONLINEFILES_METADATA);
+ logger.debug("listOnlineFilesMetaData:" + listOnlineFilesMetaData);
+
+ List listUploadedOnlineFileNames=extractFileNames(listOnlineFilesMetaData);
logger.debug("listUploadedOnlineFileNames:" + listUploadedOnlineFileNames);
+
boolean matchFound=false;
Iterator itAllOnlineFiles = allOnlineFilenames.iterator();
while (itAllOnlineFiles.hasNext())
Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java
===================================================================
diff -u -rf6991bff0a6a158b9432f338079cc3fc650dd389 -r32fc4979f5d351d85b0b1d751810fe1433ee0fcc
--- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java (.../McAction.java) (revision f6991bff0a6a158b9432f338079cc3fc650dd389)
+++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java (.../McAction.java) (revision 32fc4979f5d351d85b0b1d751810fe1433ee0fcc)
@@ -1463,8 +1463,8 @@
/**
- * prepares data to view the contents of uploaded files
- * viewFileItem(ActionMapping mapping,
+ * removes offline file data
+ * deleteFileItem(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
@@ -1474,136 +1474,41 @@
* @param mapping
* @return ActionForward
*/
- public ActionForward viewFileItem(ActionMapping mapping,
+ public ActionForward deleteOfflineFile(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws IOException,
ServletException
{
- logger.debug("dispatching viewFileItem...");
+ logger.debug("dispatching deleteOfflineFile...");
McAuthoringForm mcAuthoringForm = (McAuthoringForm) form;
IMcService mcService =McUtils.getToolService(request);
AuthoringUtil.readData(request, mcAuthoringForm);
- String userAction="viewFileItem";
- request.setAttribute(USER_ACTION, userAction);
- logger.debug("userAction:" + userAction);
-
- String filename= request.getParameter("fileItem");
- logger.debug("filename:" + filename);
-
- String uuid=mcService.getFileUuid(filename);
- logger.debug("uuid:" + uuid);
-
- if (uuid == null)
- {
- ActionMessages errors= new ActionMessages();
- errors= new ActionMessages();
- errors.add(Globals.ERROR_KEY,new ActionMessage("error.file.notPersisted"));
- saveErrors(request,errors);
- mcAuthoringForm.resetUserAction();
- persistError(request,"error.file.notPersisted");
-
- request.getSession().setAttribute(EDIT_OPTIONS_MODE, new Integer(2));
- logger.debug("setting EDIT_OPTIONS_MODE :" + 2);
- return (mapping.findForward(LOAD_QUESTIONS));
- }
-
- InputStream fileInputStream=mcService.downloadFile(new Long(uuid), null);
- logger.debug("fileInputStream:" + fileInputStream);
-
- DataInputStream dis = new DataInputStream(fileInputStream);
- logger.debug("dis:" + dis);
-
- String allFileText="";
- try
- {
- String input="";
- while ((input = dis.readLine()) != null)
- {
- logger.debug("input:" + input);
- allFileText = allFileText + input + "\r\n";
- }
- } catch (EOFException e) {
- logger.debug("error reading the file :" + e);
- logger.debug("error msg reading the file :" + e.getMessage());
- }
- catch (IOException e) {
- logger.debug("error reading the file :" + e);
- logger.debug("error msg reading the file :" + e.getMessage());
- }
-
- logger.debug("allFileText:" + allFileText);
- request.getSession().setAttribute(FILE_CONTENT, allFileText);
-
- request.setAttribute(FILE_CONTENT_READY, new Integer(1));
- logger.debug("set FILE_CONTENT_READY to 1");
-
- request.getSession().setAttribute(FILE_NAME, filename);
-
- mcAuthoringForm.resetUserAction();
- request.getSession().setAttribute(EDIT_OPTIONS_MODE, new Integer(0));
- logger.debug("setting EDIT_OPTIONS_MODE :" + 0);
- return (mapping.findForward(LOAD_QUESTIONS));
- }
-
+ String userAction="deleteOfflineFile";
+ request.setAttribute(USER_ACTION, userAction);
+ logger.debug("userAction:" + userAction);
- /**
- * removes file data
- * deleteFileItem(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response)
- *
- * @param request
- * @param form
- * @param mapping
- * @return ActionForward
- */
- public ActionForward deleteFileItem(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response) throws IOException,
- ServletException
-
- {
- logger.debug("dispatching deleteFileItem...");
- McAuthoringForm mcAuthoringForm = (McAuthoringForm) form;
- IMcService mcService =McUtils.getToolService(request);
+ String uuid =mcAuthoringForm.getUuid();
+ logger.debug("uuid:" + uuid);
- AuthoringUtil.readData(request, mcAuthoringForm);
+ List listOfflineFilesMetaData =(List)request.getSession().getAttribute(LIST_OFFLINEFILES_METADATA);
+ logger.debug("listOfflineFilesMetaData:" + listOfflineFilesMetaData);
+ listOfflineFilesMetaData=AuthoringUtil.removeFileItem(listOfflineFilesMetaData, uuid);
+ logger.debug("listOfflineFilesMetaData after remove:" + listOfflineFilesMetaData);
+ request.getSession().setAttribute(LIST_OFFLINEFILES_METADATA, listOfflineFilesMetaData);
- String userAction="deleteFileItem";
- request.setAttribute(USER_ACTION, userAction);
- logger.debug("userAction:" + userAction);
-
- String filename= request.getParameter("fileItem");
- logger.debug("filename:" + filename);
-
- String offlineFile= request.getParameter("offlineFile");
- logger.debug("offlineFile:" + offlineFile);
-
- logger.debug("start removing file:" + filename + " it is an:" + offlineFile);
-
- if (!filename.equals(""))
- {
- AuthoringUtil.removeFileItem(request, filename, offlineFile);
- logger.debug("done removing offline file");
- }
-
- mcAuthoringForm.resetUserAction();
- request.getSession().setAttribute(EDIT_OPTIONS_MODE, new Integer(0));
- logger.debug("setting EDIT_OPTIONS_MODE :" + 0);
- return (mapping.findForward(LOAD_QUESTIONS));
+ mcAuthoringForm.resetUserAction();
+ return (mapping.findForward(LOAD_QUESTIONS));
+
}
-
-
+
/**
- * moves from Advanced Tab to Basic Tab
- * doneAdvancedTab(ActionMapping mapping,
+ * removes online file data
+ * deleteFileItem(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
@@ -1613,60 +1518,38 @@
* @param mapping
* @return ActionForward
*/
- public ActionForward doneAdvancedTab(ActionMapping mapping,
+ public ActionForward deleteOnlineFile(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws IOException,
ServletException
+
{
- logger.debug("dispatching doneAdvancedTab...");
+ logger.debug("dispatching deleteOnlineFile...");
McAuthoringForm mcAuthoringForm = (McAuthoringForm) form;
IMcService mcService =McUtils.getToolService(request);
AuthoringUtil.readData(request, mcAuthoringForm);
-
- String userAction="advancedTabDone";
+
+ String userAction="deleteOnlineFile";
request.setAttribute(USER_ACTION, userAction);
logger.debug("userAction:" + userAction);
-
- mcAuthoringForm.resetUserAction();
- return (mapping.findForward(LOAD_QUESTIONS));
- }
-
-
- /**
- * moves from Instructions Tab to Basic Tab
- * doneInstructionsTab(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response)
- *
- * @param request
- * @param form
- * @param mapping
- * @return ActionForward
- */
- public ActionForward doneInstructionsTab(ActionMapping mapping,
- ActionForm form,
- HttpServletRequest request,
- HttpServletResponse response) throws IOException,
- ServletException
- {
- logger.debug("dispatching doneInstructionsTab...");
- McAuthoringForm mcAuthoringForm = (McAuthoringForm) form;
- IMcService mcService =McUtils.getToolService(request);
+
+ String uuid =mcAuthoringForm.getUuid();
+ logger.debug("uuid:" + uuid);
- AuthoringUtil.readData(request, mcAuthoringForm);
+ List listOnlineFilesMetaData =(List)request.getSession().getAttribute(LIST_ONLINEFILES_METADATA);
+ logger.debug("listOnlineFilesMetaData:" + listOnlineFilesMetaData);
+ listOnlineFilesMetaData=AuthoringUtil.removeFileItem(listOnlineFilesMetaData, uuid);
+ logger.debug("listOnlineFilesMetaData after remove:" + listOnlineFilesMetaData);
+ request.getSession().setAttribute(LIST_ONLINEFILES_METADATA, listOnlineFilesMetaData);
- String userAction="dispinstructionsTabDone";
- request.setAttribute(USER_ACTION, userAction);
- logger.debug("userAction:" + userAction);
- mcAuthoringForm.resetUserAction();
- return (mapping.findForward(LOAD_QUESTIONS));
+ mcAuthoringForm.resetUserAction();
+ return (mapping.findForward(LOAD_QUESTIONS));
}
-
- /**
+
+ /**
* adds the offline file information in the content repository.
* submitOfflineFiles(ActionMapping mapping,
ActionForm form,
@@ -1787,6 +1670,71 @@
}
+ /**
+ * moves from Advanced Tab to Basic Tab
+ * doneAdvancedTab(ActionMapping mapping,
+ ActionForm form,
+ HttpServletRequest request,
+ HttpServletResponse response)
+ *
+ * @param request
+ * @param form
+ * @param mapping
+ * @return ActionForward
+ */
+ public ActionForward doneAdvancedTab(ActionMapping mapping,
+ ActionForm form,
+ HttpServletRequest request,
+ HttpServletResponse response) throws IOException,
+ ServletException
+ {
+ logger.debug("dispatching doneAdvancedTab...");
+ McAuthoringForm mcAuthoringForm = (McAuthoringForm) form;
+ IMcService mcService =McUtils.getToolService(request);
+
+ AuthoringUtil.readData(request, mcAuthoringForm);
+
+ String userAction="advancedTabDone";
+ request.setAttribute(USER_ACTION, userAction);
+ logger.debug("userAction:" + userAction);
+
+ mcAuthoringForm.resetUserAction();
+ return (mapping.findForward(LOAD_QUESTIONS));
+ }
+
+
+ /**
+ * moves from Instructions Tab to Basic Tab
+ * doneInstructionsTab(ActionMapping mapping,
+ ActionForm form,
+ HttpServletRequest request,
+ HttpServletResponse response)
+ *
+ * @param request
+ * @param form
+ * @param mapping
+ * @return ActionForward
+ */
+ public ActionForward doneInstructionsTab(ActionMapping mapping,
+ ActionForm form,
+ HttpServletRequest request,
+ HttpServletResponse response) throws IOException,
+ ServletException
+ {
+ logger.debug("dispatching doneInstructionsTab...");
+ McAuthoringForm mcAuthoringForm = (McAuthoringForm) form;
+ IMcService mcService =McUtils.getToolService(request);
+
+ AuthoringUtil.readData(request, mcAuthoringForm);
+
+ String userAction="dispinstructionsTabDone";
+ request.setAttribute(USER_ACTION, userAction);
+ logger.debug("userAction:" + userAction);
+ mcAuthoringForm.resetUserAction();
+ return (mapping.findForward(LOAD_QUESTIONS));
+ }
+
+
/**
* ensures that the weight valued entered are valid
* validateQuestionWeights(HttpServletRequest request, McAuthoringForm mcAuthoringForm)
Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAuthoringForm.java
===================================================================
diff -u -ra94de5ff6e0fa1bf65e068d94c81ccdd232c06df -r32fc4979f5d351d85b0b1d751810fe1433ee0fcc
--- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAuthoringForm.java (.../McAuthoringForm.java) (revision a94de5ff6e0fa1bf65e068d94c81ccdd232c06df)
+++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAuthoringForm.java (.../McAuthoringForm.java) (revision 32fc4979f5d351d85b0b1d751810fe1433ee0fcc)
@@ -23,6 +23,8 @@
protected String removeOptionContent;
protected String fileItem;
+ protected String uuid;
+
protected FormFile receivedFile;
protected String offlineFile;
@@ -113,6 +115,7 @@
this.removeOptionContent=null;
this.fileItem=null;
+ this.uuid=null;
this.receivedFile=null;
this.addContent=null;
@@ -741,4 +744,16 @@
public void setOfflineFile(String offlineFile) {
this.offlineFile = offlineFile;
}
+ /**
+ * @return Returns the uuid.
+ */
+ public String getUuid() {
+ return uuid;
+ }
+ /**
+ * @param uuid The uuid to set.
+ */
+ public void setUuid(String uuid) {
+ this.uuid = uuid;
+ }
}
Index: lams_tool_lamc/web/AdvancedContent.jsp
===================================================================
diff -u -rb7285ac977222460053f4293718569503f17fe1e -r32fc4979f5d351d85b0b1d751810fe1433ee0fcc
--- lams_tool_lamc/web/AdvancedContent.jsp (.../AdvancedContent.jsp) (revision b7285ac977222460053f4293718569503f17fe1e)
+++ lams_tool_lamc/web/AdvancedContent.jsp (.../AdvancedContent.jsp) (revision 32fc4979f5d351d85b0b1d751810fe1433ee0fcc)
@@ -7,10 +7,10 @@