From: <se...@us...> - 2008-05-24 18:52:22
|
Revision: 166 http://acmcontester.svn.sourceforge.net/acmcontester/?rev=166&view=rev Author: sem62 Date: 2008-05-24 11:52:29 -0700 (Sat, 24 May 2008) Log Message: ----------- Fixed bugs with min / max score calculation and showing AnswerStatus dialog Modified Paths: -------------- WebEditor/src/edu/lnu/FireFly/WebEditor/AppletWithApiHandle.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/AppletWithApiHandle.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/AppletWithApiHandle.java 2008-05-24 17:14:09 UTC (rev 165) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/AppletWithApiHandle.java 2008-05-24 18:52:29 UTC (rev 166) @@ -4,6 +4,7 @@ import javax.swing.JApplet; +import edu.lnu.FireFly.FFManifest.Manifest; import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.FFManifest.item.Item; import edu.lnu.FireFly.FFManifest.resource.Resource; @@ -40,9 +41,14 @@ try { System.out.print("Initialize(" + parameter + ");\n"); - GlobalStateInformation.setCurrentActivity(SummaryPageManager - .getInstance().getManifest().findItemByIdentifier( - nextItemIdentifier)); + Manifest manifest = SummaryPageManager.getInstance().getManifest(); + TreeItem item = manifest.findItemByIdentifier(nextItemIdentifier); + + GlobalStateInformation.setCurrentActivity(item); + + UserAnswerStatus answer = AnswersStatusManager.getInstance().getAnswerStatus(item); + + answer.setRawAnswer(null); } catch (Exception e) { e.printStackTrace(); return "false"; @@ -68,18 +74,18 @@ } private void showAnswerResult() { - TreeItem currentActivity = GlobalStateInformation - .getCurrentActivity(); + TreeItem currentActivity = GlobalStateInformation.getCurrentActivity(); String identifier = ""; if (currentActivity != null) { identifier = currentActivity.getIdentifier(); - TreeItem item = SummaryPageManager.getInstance() - .getManifest().findItemByIdentifier(identifier); + TreeItem item = SummaryPageManager.getInstance().getManifest().findItemByIdentifier(identifier); ItemModel model = ItemModels.getModelFromItem(item); - UserAnswerStatus answerStatus = AnswersStatusManager - .getInstance().getAnswerStatus(item); - model.showAnswerStatus(answerStatus); + UserAnswerStatus answerStatus = AnswersStatusManager.getInstance().getAnswerStatus(item); + + if (answerStatus.getRawAnswer() != null && answerStatus.getRawAnswer().length > 0){ + model.showAnswerStatus(answerStatus); + } } redirectTo(identifier); Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java 2008-05-24 17:14:09 UTC (rev 165) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java 2008-05-24 18:52:29 UTC (rev 166) @@ -54,7 +54,7 @@ List<SimpleQuestionAnswer> answers = data.getAnswers().answers; - if (data.getAnswers().getAnswerType() != SimpleQuestionAnswersDataModel.ANSWER_TYPE_SELECT_ONE) { + if (data.getAnswers().getAnswerType() == SimpleQuestionAnswersDataModel.ANSWER_TYPE_CHOOSE_FEW) { result = getSum(result, answers, +1); } else { if (answers.size() > 0) { @@ -72,7 +72,7 @@ List<SimpleQuestionAnswer> answers = data.getAnswers().answers; - if (data.getAnswers().getAnswerType() != SimpleQuestionAnswersDataModel.ANSWER_TYPE_SELECT_ONE) { + if (data.getAnswers().getAnswerType() == SimpleQuestionAnswersDataModel.ANSWER_TYPE_CHOOSE_FEW) { result = getSum(result, answers, -1); } else { if (answers.size() > 0) { @@ -87,7 +87,7 @@ SimpleQuestionData data = getData(anItem); List<SimpleQuestionAnswer> answers = data.getAnswers().answers; - if (userAnswers.length != 1 || (userAnswers[0].length() != answers.size() && data.getAnswers().getAnswerType() != SimpleQuestionAnswersDataModel.ANSWER_TYPE_TYPE)) { + if (userAnswers == null || userAnswers.length != 1 || (userAnswers[0].length() != answers.size() && data.getAnswers().getAnswerType() != SimpleQuestionAnswersDataModel.ANSWER_TYPE_TYPE)) { return getAnswerMinScore(anItem); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |