Index: lams_tool_forum/conf/xdoclet/struts-actions.xml
===================================================================
diff -u -r2695d54e0cc9d34939b0e227d0f7e163360a6d1e -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/conf/xdoclet/struts-actions.xml (.../struts-actions.xml) (revision 2695d54e0cc9d34939b0e227d0f7e163360a6d1e)
+++ lams_tool_forum/conf/xdoclet/struts-actions.xml (.../struts-actions.xml) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -5,6 +5,7 @@
scope="session"
validate="false"
parameter="defineLater">
+
Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/util/ForumConstants.java
===================================================================
diff -u -r6852794f79069c9b70ee194f74677323d0bf14b7 -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/util/ForumConstants.java (.../ForumConstants.java) (revision 6852794f79069c9b70ee194f74677323d0bf14b7)
+++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/util/ForumConstants.java (.../ForumConstants.java) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -70,10 +70,6 @@
public static final String MESSAGE_UID = "messageID";
- public static final String MODE = "mode";
- public static final String AUTHOR_MODE = "author_mode";
- public static final String MONITOR_MODE = "monitor_mode";
-
public static final String FINISHEDLOCK = "finishedLock";
// used in monitoring
Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/AuthoringAction.java
===================================================================
diff -u -r2695d54e0cc9d34939b0e227d0f7e163360a6d1e -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision 2695d54e0cc9d34939b0e227d0f7e163360a6d1e)
+++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/AuthoringAction.java (.../AuthoringAction.java) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -61,6 +61,7 @@
import org.lamsfoundation.lams.tool.forum.service.IForumService;
import org.lamsfoundation.lams.tool.forum.util.DateComparator;
import org.lamsfoundation.lams.tool.forum.util.ForumConstants;
+import org.lamsfoundation.lams.tool.forum.util.ForumWebUtils;
import org.lamsfoundation.lams.tool.forum.web.forms.ForumForm;
import org.lamsfoundation.lams.tool.forum.web.forms.MessageForm;
import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
@@ -90,7 +91,23 @@
// ***************** Monitoring define later screen ********************
if (param.equals("defineLater")){
+ //update define later flag to true
request.getSession().setAttribute(AttributeNames.ATTR_MODE,ToolAccessMode.TEACHER);
+ forumService = getForumManager();
+ Long contentId = new Long(WebUtil.readLongParam(request,AttributeNames.PARAM_TOOL_CONTENT_ID));
+ Forum forum = forumService.getForumByContentId(contentId);
+
+ boolean isForumEditable = ForumWebUtils.isForumEditable(forum);
+ if(!isForumEditable){
+ request.setAttribute(ForumConstants.PAGE_EDITABLE, new Boolean(isForumEditable));
+ return mapping.findForward("forbidden");
+ }
+
+ if(!forum.isContentInUse()){
+ forum.setDefineLater(true);
+ forumService.updateForum(forum);
+ }
+
return initPage(mapping, form, request, response);
}
if (param.equals("updateContent")) {
@@ -154,6 +171,7 @@
protected ActionForward initPage(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
+ ToolAccessMode mode = (ToolAccessMode) request.getSession().getAttribute(AttributeNames.ATTR_MODE);
Long contentId = new Long(WebUtil.readLongParam(request,AttributeNames.PARAM_TOOL_CONTENT_ID));
ForumForm forumForm = (ForumForm)form;
//get back the topic list and display them on page
@@ -177,8 +195,9 @@
topics = new ArrayList(map.values());
}else
topics = null;
- }else
+ }else{
topics = forumService.getAuthoredTopics(forum.getUid());
+ }
//initialize attachmentList
List attachmentList = getAttachmentList(request);
attachmentList.addAll(forum.getAttachments());
@@ -250,6 +269,7 @@
// if it is Teacher, then just update basic tab content (definelater)
forumPO.setInstructions(forum.getInstructions());
forumPO.setTitle(forum.getTitle());
+ forumPO.setDefineLater(false);
}
}
forumPO.setCreatedBy(forumUser);
Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/ClearSessionAction.java
===================================================================
diff -u -rb9a105856c81f49b60f18e80bf9ee1bc7913f390 -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/ClearSessionAction.java (.../ClearSessionAction.java) (revision b9a105856c81f49b60f18e80bf9ee1bc7913f390)
+++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/ClearSessionAction.java (.../ClearSessionAction.java) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -29,6 +29,7 @@
import org.lamsfoundation.lams.authoring.web.LamsAuthoringFinishAction;
import org.lamsfoundation.lams.tool.ToolAccessMode;
import org.lamsfoundation.lams.tool.forum.util.ForumConstants;
+import org.lamsfoundation.lams.web.util.AttributeNames;
/**
* This class give a chance to clear HttpSession when user save/close authoring page.
@@ -41,7 +42,7 @@
@Override
public void clearSession(HttpSession session, ToolAccessMode mode) {
if(mode.isAuthor()){
- session.removeAttribute(ForumConstants.MODE);
+ session.removeAttribute(AttributeNames.ATTR_MODE);
session.removeAttribute(ForumConstants.AUTHORING_TOPICS_LIST);
session.removeAttribute(ForumConstants.ATTACHMENT_LIST);
session.removeAttribute(ForumConstants.DELETED_ATTACHMENT_LIST);
Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java
===================================================================
diff -u -r6852794f79069c9b70ee194f74677323d0bf14b7 -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java (.../LearningAction.java) (revision 6852794f79069c9b70ee194f74677323d0bf14b7)
+++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/web/actions/LearningAction.java (.../LearningAction.java) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -470,7 +470,7 @@
MessageForm messageForm = (MessageForm) form;
Message message = messageForm.getMessage();
- boolean makeAuditEntry = ToolAccessMode.TEACHER.equals((ToolAccessMode) request.getSession().getAttribute(ForumConstants.MODE));
+ boolean makeAuditEntry = ToolAccessMode.TEACHER.equals((ToolAccessMode) request.getSession().getAttribute(AttributeNames.ATTR_MODE));
String oldMessageString = null;
// get PO from database and sync with Form
@@ -571,7 +571,7 @@
forumService = getForumManager();
forumService.deleteFromRepository(uuID, versionID);
- boolean makeAuditEntry = ToolAccessMode.TEACHER.equals((ToolAccessMode) request.getSession().getAttribute(ForumConstants.MODE));
+ boolean makeAuditEntry = ToolAccessMode.TEACHER.equals((ToolAccessMode) request.getSession().getAttribute(AttributeNames.ATTR_MODE));
String oldMessageString = null;
// get value from HttpSession
Index: lams_tool_forum/web/WEB-INF/struts-config.xml
===================================================================
diff -u -r2695d54e0cc9d34939b0e227d0f7e163360a6d1e -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/web/WEB-INF/struts-config.xml (.../struts-config.xml) (revision 2695d54e0cc9d34939b0e227d0f7e163360a6d1e)
+++ lams_tool_forum/web/WEB-INF/struts-config.xml (.../struts-config.xml) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -54,6 +54,7 @@
scope="session"
validate="false"
parameter="defineLater">
+
Index: lams_tool_forum/web/WEB-INF/struts/tiles-defs.xml
===================================================================
diff -u -r6852794f79069c9b70ee194f74677323d0bf14b7 -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/web/WEB-INF/struts/tiles-defs.xml (.../tiles-defs.xml) (revision 6852794f79069c9b70ee194f74677323d0bf14b7)
+++ lams_tool_forum/web/WEB-INF/struts/tiles-defs.xml (.../tiles-defs.xml) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -102,6 +102,11 @@
+
+
+
+
+
Index: lams_tool_forum/web/jsps/authoring/definelater.jsp
===================================================================
diff -u -r71a37d456ee2d1d277774c125ac645ef7f06fa00 -red34ad93e720126f7473b282585c411c8acf7dbe
--- lams_tool_forum/web/jsps/authoring/definelater.jsp (.../definelater.jsp) (revision 71a37d456ee2d1d277774c125ac645ef7f06fa00)
+++ lams_tool_forum/web/jsps/authoring/definelater.jsp (.../definelater.jsp) (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -1,4 +1,4 @@
-<%@ include file="/includes/taglibs.jsp"%>
+<%@ include file="/common/taglibs.jsp"%>
<%@ page import="org.lamsfoundation.lams.tool.forum.util.ForumConstants"%>
<%@ page import="java.util.HashSet"%>
<%@ page import="java.util.Set"%>
Index: lams_tool_forum/web/jsps/authoring/definelaterforbid.jsp
===================================================================
diff -u
--- lams_tool_forum/web/jsps/authoring/definelaterforbid.jsp (revision 0)
+++ lams_tool_forum/web/jsps/authoring/definelaterforbid.jsp (revision ed34ad93e720126f7473b282585c411c8acf7dbe)
@@ -0,0 +1,4 @@
+<%@ include file="/common/taglibs.jsp"%>
+
+
+