use of org.olat.ims.qti.fileresource.SurveyFileResource in project OpenOLAT by OpenOLAT.
the class QTISurveyHandler method createEditorController.
@Override
public Controller createEditorController(RepositoryEntry re, UserRequest ureq, WindowControl wControl, TooledStackedPanel toolbar) {
OLATResource res = re.getOlatResource();
if (OnyxModule.isOnyxTest(res)) {
return null;
}
SurveyFileResource fr = new SurveyFileResource();
fr.overrideResourceableId(res.getResourceableId());
// check if we can edit in restricted mode -> only typos
List<Reference> referencees = CoreSpringFactory.getImpl(ReferenceManager.class).getReferencesTo(res);
QTIEditorMainController editor = new QTIEditorMainController(ureq, wControl, re, referencees, fr);
if (editor.isLockedSuccessfully()) {
return editor;
} else {
return null;
}
}
use of org.olat.ims.qti.fileresource.SurveyFileResource in project openolat by klemens.
the class IQSURVCourseNode method createNodeRunConstructionResult.
/**
* @see org.olat.course.nodes.CourseNode#createNodeRunConstructionResult(org.olat.core.gui.UserRequest,
* org.olat.core.gui.control.WindowControl,
* org.olat.course.run.userview.UserCourseEnvironment,
* org.olat.course.run.userview.NodeEvaluation)
*/
@Override
public NodeRunConstructionResult createNodeRunConstructionResult(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, NodeEvaluation ne, String nodecmd) {
Controller controller;
// Do not allow guests to start questionnaires
Roles roles = ureq.getUserSession().getRoles();
if (roles.isGuestOnly()) {
Translator trans = Util.createPackageTranslator(IQSURVCourseNode.class, ureq.getLocale());
String title = trans.translate("guestnoaccess.title");
String message = trans.translate("guestnoaccess.message");
controller = MessageUIFactory.createInfoMessage(ureq, wControl, title, message);
} else {
ModuleConfiguration config = getModuleConfiguration();
boolean onyx = IQEditController.CONFIG_VALUE_QTI2.equals(config.get(IQEditController.CONFIG_KEY_TYPE_QTI));
if (onyx) {
Translator trans = Util.createPackageTranslator(IQEditController.class, ureq.getLocale());
controller = MessageUIFactory.createInfoMessage(ureq, wControl, "", trans.translate("error.onyx"));
} else {
RepositoryEntry repositoryEntry = getReferencedRepositoryEntry();
OLATResourceable ores = repositoryEntry.getOlatResource();
Long resId = ores.getResourceableId();
SurveyFileResource fr = new SurveyFileResource();
fr.overrideResourceableId(resId);
if (!CoordinatorManager.getInstance().getCoordinator().getLocker().isLocked(fr, null)) {
AssessmentManager am = userCourseEnv.getCourseEnvironment().getAssessmentManager();
IQSecurityCallback sec = new CourseIQSecurityCallback(this, am, ureq.getIdentity());
controller = new IQRunController(userCourseEnv, getModuleConfiguration(), sec, ureq, wControl, this);
} else {
Translator trans = Util.createPackageTranslator(IQSURVCourseNode.class, ureq.getLocale());
String title = trans.translate("editor.lock.title");
String message = trans.translate("editor.lock.message");
controller = MessageUIFactory.createInfoMessage(ureq, wControl, title, message);
}
}
}
Controller ctrl = TitledWrapperHelper.getWrapper(ureq, wControl, controller, this, "o_iqsurv_icon");
return new NodeRunConstructionResult(ctrl);
}
use of org.olat.ims.qti.fileresource.SurveyFileResource in project OpenOLAT by OpenOLAT.
the class IQSURVCourseNode method createNodeRunConstructionResult.
/**
* @see org.olat.course.nodes.CourseNode#createNodeRunConstructionResult(org.olat.core.gui.UserRequest,
* org.olat.core.gui.control.WindowControl,
* org.olat.course.run.userview.UserCourseEnvironment,
* org.olat.course.run.userview.NodeEvaluation)
*/
@Override
public NodeRunConstructionResult createNodeRunConstructionResult(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, NodeEvaluation ne, String nodecmd) {
Controller controller;
// Do not allow guests to start questionnaires
Roles roles = ureq.getUserSession().getRoles();
if (roles.isGuestOnly()) {
Translator trans = Util.createPackageTranslator(IQSURVCourseNode.class, ureq.getLocale());
String title = trans.translate("guestnoaccess.title");
String message = trans.translate("guestnoaccess.message");
controller = MessageUIFactory.createInfoMessage(ureq, wControl, title, message);
} else {
ModuleConfiguration config = getModuleConfiguration();
boolean onyx = IQEditController.CONFIG_VALUE_QTI2.equals(config.get(IQEditController.CONFIG_KEY_TYPE_QTI));
if (onyx) {
Translator trans = Util.createPackageTranslator(IQEditController.class, ureq.getLocale());
controller = MessageUIFactory.createInfoMessage(ureq, wControl, "", trans.translate("error.onyx"));
} else {
RepositoryEntry repositoryEntry = getReferencedRepositoryEntry();
OLATResourceable ores = repositoryEntry.getOlatResource();
Long resId = ores.getResourceableId();
SurveyFileResource fr = new SurveyFileResource();
fr.overrideResourceableId(resId);
if (!CoordinatorManager.getInstance().getCoordinator().getLocker().isLocked(fr, null)) {
AssessmentManager am = userCourseEnv.getCourseEnvironment().getAssessmentManager();
IQSecurityCallback sec = new CourseIQSecurityCallback(this, am, ureq.getIdentity());
controller = new IQRunController(userCourseEnv, getModuleConfiguration(), sec, ureq, wControl, this);
} else {
Translator trans = Util.createPackageTranslator(IQSURVCourseNode.class, ureq.getLocale());
String title = trans.translate("editor.lock.title");
String message = trans.translate("editor.lock.message");
controller = MessageUIFactory.createInfoMessage(ureq, wControl, title, message);
}
}
}
Controller ctrl = TitledWrapperHelper.getWrapper(ureq, wControl, controller, this, "o_iqsurv_icon");
return new NodeRunConstructionResult(ctrl);
}
use of org.olat.ims.qti.fileresource.SurveyFileResource in project openolat by klemens.
the class QTISurveyHandler method createEditorController.
@Override
public Controller createEditorController(RepositoryEntry re, UserRequest ureq, WindowControl wControl, TooledStackedPanel toolbar) {
OLATResource res = re.getOlatResource();
if (OnyxModule.isOnyxTest(res)) {
return null;
}
SurveyFileResource fr = new SurveyFileResource();
fr.overrideResourceableId(res.getResourceableId());
// check if we can edit in restricted mode -> only typos
List<Reference> referencees = CoreSpringFactory.getImpl(ReferenceManager.class).getReferencesTo(res);
QTIEditorMainController editor = new QTIEditorMainController(ureq, wControl, re, referencees, fr);
if (editor.isLockedSuccessfully()) {
return editor;
} else {
return null;
}
}
Aggregations