use of org.olat.course.nodes.BasicLTICourseNode in project OpenOLAT by OpenOLAT.
the class CourseNodeOutcomeMapper method doUpdateResult.
@Override
protected boolean doUpdateResult(Float score) {
ICourse course = CourseFactory.loadCourse(courseOresId);
CourseNode node = course.getRunStructure().getNode(courseNodeId);
if (node instanceof BasicLTICourseNode) {
BasicLTICourseNode ltiNode = (BasicLTICourseNode) node;
Identity assessedId = getIdentity();
Float cutValue = getCutValue(ltiNode);
Float scaledScore = null;
Boolean passed = null;
if (score != null) {
float scale = getScalingFactor(ltiNode);
scaledScore = score * scale;
if (cutValue != null) {
passed = scaledScore >= cutValue;
}
}
ScoreEvaluation eval = new ScoreEvaluation(scaledScore, passed);
UserCourseEnvironment userCourseEnv = getUserCourseEnvironment(course);
ltiNode.updateUserScoreEvaluation(eval, userCourseEnv, assessedId, false, Role.user);
}
return super.doUpdateResult(score);
}
use of org.olat.course.nodes.BasicLTICourseNode in project OpenOLAT by OpenOLAT.
the class CourseNodeOutcomeMapper method doReadResult.
@Override
protected String doReadResult(IMSPOXRequest pox) {
ICourse course = CourseFactory.loadCourse(courseOresId);
CourseNode node = course.getRunStructure().getNode(courseNodeId);
if (node instanceof BasicLTICourseNode) {
BasicLTICourseNode ltiNode = (BasicLTICourseNode) node;
UserCourseEnvironment userCourseEnv = getUserCourseEnvironment(course);
ScoreEvaluation eval = ltiNode.getUserScoreEvaluation(userCourseEnv);
String score = "";
if (eval != null && eval.getScore() != null) {
float scaledScore = eval.getScore();
if (scaledScore > 0.0f) {
float scale = getScalingFactor(ltiNode);
scaledScore = scaledScore / scale;
}
score = Float.toString(scaledScore);
}
Map<String, Object> theMap = new TreeMap<String, Object>();
theMap.put("/readResultResponse/result/sourcedId", getSourcedId());
theMap.put("/readResultResponse/result/resultScore/textString", score);
theMap.put("/readResultResponse/result/resultScore/language", "en");
String theXml = XMLMap.getXMLFragment(theMap, true);
return pox.getResponseSuccess("Result read", theXml);
}
return super.doReadResult(pox);
}
use of org.olat.course.nodes.BasicLTICourseNode in project OpenOLAT by OpenOLAT.
the class CourseNodeOutcomeMapper method doDeleteResult.
@Override
protected boolean doDeleteResult() {
ICourse course = CourseFactory.loadCourse(courseOresId);
CourseNode node = course.getRunStructure().getNode(courseNodeId);
if (node instanceof BasicLTICourseNode) {
BasicLTICourseNode ltiNode = (BasicLTICourseNode) node;
Identity assessedId = getIdentity();
ScoreEvaluation eval = new ScoreEvaluation(0.0f, false);
UserCourseEnvironment userCourseEnv = getUserCourseEnvironment(course);
ltiNode.updateUserScoreEvaluation(eval, userCourseEnv, assessedId, false, Role.user);
}
return super.doDeleteResult();
}
use of org.olat.course.nodes.BasicLTICourseNode in project openolat by klemens.
the class OLATUpgrade_11_0_0 method postCopyPassedScore.
/**
* Used if a passed or score value was set.
* @param nodeAssessment
* @param course
*/
private void postCopyPassedScore(AssessmentEntry entry, ICourse course) {
String nodeIdent = entry.getSubIdent();
CourseNode courseNode = course.getRunStructure().getNode(nodeIdent);
if (courseNode instanceof GTACourseNode) {
//
} else if (courseNode instanceof TACourseNode) {
entry.setAssessmentStatus(AssessmentEntryStatus.done);
} else if (courseNode instanceof IQTESTCourseNode) {
//
} else if (courseNode instanceof PortfolioCourseNode) {
entry.setAssessmentStatus(AssessmentEntryStatus.done);
} else if (courseNode instanceof MSCourseNode) {
entry.setAssessmentStatus(AssessmentEntryStatus.done);
} else if (courseNode instanceof BasicLTICourseNode) {
entry.setAssessmentStatus(AssessmentEntryStatus.done);
} else if (courseNode instanceof ScormCourseNode) {
entry.setAssessmentStatus(AssessmentEntryStatus.done);
}
}
use of org.olat.course.nodes.BasicLTICourseNode in project openolat by klemens.
the class CourseNodeOutcomeMapper method doUpdateResult.
@Override
protected boolean doUpdateResult(Float score) {
ICourse course = CourseFactory.loadCourse(courseOresId);
CourseNode node = course.getRunStructure().getNode(courseNodeId);
if (node instanceof BasicLTICourseNode) {
BasicLTICourseNode ltiNode = (BasicLTICourseNode) node;
Identity assessedId = getIdentity();
Float cutValue = getCutValue(ltiNode);
Float scaledScore = null;
Boolean passed = null;
if (score != null) {
float scale = getScalingFactor(ltiNode);
scaledScore = score * scale;
if (cutValue != null) {
passed = scaledScore >= cutValue;
}
}
ScoreEvaluation eval = new ScoreEvaluation(scaledScore, passed);
UserCourseEnvironment userCourseEnv = getUserCourseEnvironment(course);
ltiNode.updateUserScoreEvaluation(eval, userCourseEnv, assessedId, false, Role.user);
}
return super.doUpdateResult(score);
}
Aggregations