Index: lams_tool_lamc/db/sql/init_lams_tool_lamc.sql =================================================================== diff -u -rb729587d2ebffa80f02239e91bc80352869d311a -r2535250d78ca2298cbdc24c1bb1bb9a87d9a234c --- lams_tool_lamc/db/sql/init_lams_tool_lamc.sql (.../init_lams_tool_lamc.sql) (revision b729587d2ebffa80f02239e91bc80352869d311a) +++ lams_tool_lamc/db/sql/init_lams_tool_lamc.sql (.../init_lams_tool_lamc.sql) (revision 2535250d78ca2298cbdc24c1bb1bb9a87d9a234c) @@ -32,12 +32,15 @@ , retries TINYINT(1) NOT NULL DEFAULT 0 , pass_mark INTEGER , show_feedback TINYINT(1) NOT NULL DEFAULT 0 + , UNIQUE UQ_tl_lamc11_content_1 (content_id) , PRIMARY KEY (uid) )TYPE=InnoDB; CREATE TABLE lams.tl_lamc11_que_content ( uid BIGINT(20) NOT NULL AUTO_INCREMENT , question VARCHAR(255) + , weight INT(5) NOT NULL DEFAULT 0 + , disabled TINYINT(1) NOT NULL DEFAULT 1 , display_order INT(5) , mc_content_id BIGINT(20) NOT NULL , PRIMARY KEY (uid) @@ -64,6 +67,7 @@ , session_end_date DATETIME , session_status VARCHAR(100) , mc_content_id BIGINT(20) NOT NULL + , UNIQUE UQ_tl_lamc11_session_1 (mc_session_id) , PRIMARY KEY (uid) , INDEX (mc_content_id) , CONSTRAINT FK_tl_lamc_session_1 FOREIGN KEY (mc_content_id) @@ -76,6 +80,7 @@ , mc_session_id BIGINT(20) NOT NULL , username VARCHAR(100) , fullname VARCHAR(100) + , UNIQUE UQ_tl_lamc11_que_usr_1 (que_usr_id) , PRIMARY KEY (uid) , INDEX (mc_session_id) , CONSTRAINT FK_tl_lamc_tool_usr_1 FOREIGN KEY (mc_session_id) Index: lams_tool_lamc/db/sql/insert_lams_tool_lamc.sql =================================================================== diff -u -rb9d979e7f1478db56c700664c515c4036557f29f -r2535250d78ca2298cbdc24c1bb1bb9a87d9a234c --- lams_tool_lamc/db/sql/insert_lams_tool_lamc.sql (.../insert_lams_tool_lamc.sql) (revision b9d979e7f1478db56c700664c515c4036557f29f) +++ lams_tool_lamc/db/sql/insert_lams_tool_lamc.sql (.../insert_lams_tool_lamc.sql) (revision 2535250d78ca2298cbdc24c1bb1bb9a87d9a234c) @@ -41,22 +41,25 @@ 0, 0); - + INSERT INTO tl_lamc11_que_content ( uid, question, + weight, + disabled, display_order, mc_content_id -) -VALUES ( +)VALUES ( null, 'a sample question', + 0, 1, + 1, 1); -INSERT INTO tl_lamc11_options_content ( + INSERT INTO tl_lamc11_options_content ( uid, correct_option, mc_que_content_id, Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McQueContentDAO.java =================================================================== diff -u -r735c5db341aaba22874662bf7e44ec91a24424c7 -r2535250d78ca2298cbdc24c1bb1bb9a87d9a234c --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McQueContentDAO.java (.../McQueContentDAO.java) (revision 735c5db341aaba22874662bf7e44ec91a24424c7) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/dao/hibernate/McQueContentDAO.java (.../McQueContentDAO.java) (revision 2535250d78ca2298cbdc24c1bb1bb9a87d9a234c) @@ -22,6 +22,7 @@ package org.lamsfoundation.lams.tool.mc.dao.hibernate; import java.util.Iterator; +import java.util.LinkedList; import java.util.List; import org.apache.log4j.Logger; @@ -44,13 +45,13 @@ public class McQueContentDAO extends HibernateDaoSupport implements IMcQueContentDAO { static Logger logger = Logger.getLogger(McQueContentDAO.class.getName()); - private static final String LOAD_QUESTION_CONTENT_BY_CONTENT_ID = "from mcQueContent in class McQueContent where mcQueContent.mcContentId=:mcContentId orderby displayOrder"; + private static final String LOAD_QUESTION_CONTENT_BY_CONTENT_ID = "from mcQueContent in class McQueContent where mcQueContent.mcContentId=:mcContentId order by mcQueContent.displayOrder"; private static final String CLEAN_QUESTION_CONTENT_BY_CONTENT_ID = "from mcQueContent in class McQueContent where mcQueContent.mcContentId=:mcContentId and mcQueContent.disabled=true"; private static final String REFRESH_QUESTION_CONTENT = "from mcQueContent in class McQueContent where mcQueContent.mcContentId=:mcContentId and mcQueContent.disabled=false"; - private static final String LOAD_QUESTION_CONTENT_BY_QUESTION_TEXT = "from mcQueContent in class McQueContent where mcQueContent.question=:question and mcQueContent.mcContentId=:mcContentUid orderby displayOrder"; + private static final String LOAD_QUESTION_CONTENT_BY_QUESTION_TEXT = "from mcQueContent in class McQueContent where mcQueContent.question=:question and mcQueContent.mcContentId=:mcContentUid"; public McQueContent getMcQueContentByUID(Long uid) @@ -80,8 +81,8 @@ List list = getSession().createQuery(LOAD_QUESTION_CONTENT_BY_CONTENT_ID) .setLong("mcContentId", mcContentId) .list(); - - return list; + + return list; } public List refreshQuestionContent(final Long mcContentId) Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java =================================================================== diff -u -r735c5db341aaba22874662bf7e44ec91a24424c7 -r2535250d78ca2298cbdc24c1bb1bb9a87d9a234c --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java (.../McAction.java) (revision 735c5db341aaba22874662bf7e44ec91a24424c7) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McAction.java (.../McAction.java) (revision 2535250d78ca2298cbdc24c1bb1bb9a87d9a234c) @@ -663,8 +663,32 @@ isRetries=true; logger.debug("passmark: " + mcAuthoringForm.getPassmark()); - if ((mcAuthoringForm.getPassmark() != null) && (mcAuthoringForm.getPassmark().length() > 0)) + + if (mcAuthoringForm.getPassmark() != null) + { + try + { + passmark= new Integer(mcAuthoringForm.getPassmark()).intValue(); + logger.debug("tried passmark: " + passmark); + } + catch(Exception e) + { + errors= new ActionMessages(); + errors.add(Globals.ERROR_KEY,new ActionMessage("error.passmark.notInteger")); + logger.debug("add error.passmark.notInteger to ActionMessages"); + saveErrors(request,errors); + mcAuthoringForm.resetUserAction(); + persistError(request,"error.passmark.notInteger"); + return (mapping.findForward(LOAD_QUESTIONS)); + } + } + + + if ((mcAuthoringForm.getPassmark() != null) && (mcAuthoringForm.getPassmark().length() > 0)) + { passmark= new Integer(mcAuthoringForm.getPassmark()).intValue(); + logger.debug("populated passmark: " + passmark); + } else { errors= new ActionMessages(); @@ -676,19 +700,6 @@ return (mapping.findForward(LOAD_QUESTIONS)); } - - try - { - passmark= new Integer(mcAuthoringForm.getPassmark()).intValue(); - - } - catch(Exception e) - { - logger.debug("Exception occured: passmark not integer"); - persistError(request,"error.passmark.notInteger"); - return (mapping.findForward(LOAD_QUESTIONS)); - } - logger.debug("isShowFeedback: " + mcAuthoringForm.getShowFeedback()); if (mcAuthoringForm.getShowFeedback().equalsIgnoreCase(ON)) isShowFeedback=true; Index: lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McStarterAction.java =================================================================== diff -u -r735c5db341aaba22874662bf7e44ec91a24424c7 -r2535250d78ca2298cbdc24c1bb1bb9a87d9a234c --- lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McStarterAction.java (.../McStarterAction.java) (revision 735c5db341aaba22874662bf7e44ec91a24424c7) +++ lams_tool_lamc/src/java/org/lamsfoundation/lams/tool/mc/web/McStarterAction.java (.../McStarterAction.java) (revision 2535250d78ca2298cbdc24c1bb1bb9a87d9a234c) @@ -192,7 +192,7 @@ long queContentUID=0; try { - logger.debug("retrieve the default question content based on default content UID: " + contentId); + logger.debug("retrieve the default question content based on default content UID: " + queContentUID); McQueContent mcQueContent=mcService.getToolDefaultQuestionContent(contentUID); logger.debug("using mcQueContent: " + mcQueContent); if (mcQueContent == null) Index: lams_tool_lamc/web/authoringMaincontent.jsp =================================================================== diff -u -r735c5db341aaba22874662bf7e44ec91a24424c7 -r2535250d78ca2298cbdc24c1bb1bb9a87d9a234c --- lams_tool_lamc/web/authoringMaincontent.jsp (.../authoringMaincontent.jsp) (revision 735c5db341aaba22874662bf7e44ec91a24424c7) +++ lams_tool_lamc/web/authoringMaincontent.jsp (.../authoringMaincontent.jsp) (revision 2535250d78ca2298cbdc24c1bb1bb9a87d9a234c) @@ -124,9 +124,9 @@ -