Search in sources :

Example 6 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project OpenOLAT by OpenOLAT.

the class ScheduleStepForm method initForm.

@Override
protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
    formLayout.setElementCssClass("o_sel_bulk_assessment_schedule");
    setFormTitle("schedule.title");
    setFormDescription("schedule.description");
    setFormContextHelp("Using Course Tools#bulkassessment_schedule");
    String[] typeValues = new String[] { translate("schedule.immediately"), translate("schedule.delayed") };
    scheduleTypeEl = uifactory.addRadiosVertical("schedule.type", formLayout, typeKeys, typeValues);
    scheduleTypeEl.addActionListener(FormEvent.ONCHANGE);
    boolean delayed;
    Date scheduleDate;
    Task task = (Task) getFromRunContext("task");
    if (task != null && task.getScheduledDate() != null) {
        scheduleDate = task.getScheduledDate();
        delayed = true;
    } else {
        Calendar cal = Calendar.getInstance();
        cal.add(Calendar.DATE, 1);
        for (int i = Calendar.HOUR; i < Calendar.MILLISECOND; i++) {
            cal.set(i, 0);
        }
        scheduleDate = cal.getTime();
        delayed = false;
    }
    scheduleDateChooser = uifactory.addDateChooser("scheduleDateChooser", "schedule.date", scheduleDate, formLayout);
    scheduleDateChooser.setValidDateCheck("schedule.error.past");
    scheduleDateChooser.setDateChooserTimeEnabled(true);
    scheduleTypeEl.select(delayed ? typeKeys[1] : typeKeys[0], true);
    scheduleDateChooser.setVisible(delayed);
}
Also used : Task(org.olat.core.commons.services.taskexecutor.Task) Calendar(java.util.Calendar) Date(java.util.Date)

Example 7 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project OpenOLAT by OpenOLAT.

the class BulkAssessmentOverviewController method reloadTaskModel.

private void reloadTaskModel() {
    List<Task> tasks = taskManager.getTasks(courseEntry.getOlatResource());
    List<TaskData> taskDatas = new ArrayList<TaskData>(tasks.size());
    ICourse course = CourseFactory.loadCourse(courseEntry);
    Structure structure = course.getRunStructure();
    for (Task task : tasks) {
        String fullName = null;
        if (task.getCreator() != null) {
            fullName = userManager.getUserDisplayName(task.getCreator());
        }
        BulkAssessmentTask runnable = taskManager.getPersistedRunnableTask(task, BulkAssessmentTask.class);
        AssessableCourseNode courseNode = (AssessableCourseNode) structure.getNode(runnable.getCourseNodeIdent());
        taskDatas.add(new TaskData(task, runnable, courseNode, fullName));
    }
    taskModel.setObjects(taskDatas);
    taskListEl.reset();
    flc.contextPut("hasScheduledTasks", Boolean.valueOf(taskDatas.size() > 0));
}
Also used : AssessableCourseNode(org.olat.course.nodes.AssessableCourseNode) Task(org.olat.core.commons.services.taskexecutor.Task) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) ArrayList(java.util.ArrayList) ICourse(org.olat.course.ICourse) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) Structure(org.olat.course.Structure)

Example 8 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project OpenOLAT by OpenOLAT.

the class BulkAssessmentOverviewController method doEditBulkAssessment.

private void doEditBulkAssessment(UserRequest ureq, TaskData data) {
    removeAsListenerAndDispose(bulkAssessmentCtrl);
    if (editedTask != null) {
        // only for security purpose
        taskManager.returnTaskAfterEdition(editedTask, null);
    }
    AssessableCourseNode courseNode = data.getCourseNode();
    final Task editableTask = taskManager.pickTaskForEdition(data.getTask());
    editedTask = editableTask;
    if (editableTask == null) {
        showWarning("task.edited");
    } else {
        BulkAssessmentTask runnable = taskManager.getPersistedRunnableTask(editableTask, BulkAssessmentTask.class);
        BulkAssessmentDatas datas = runnable.getDatas();
        Step start = new BulkAssessment_2_DatasStep(ureq, courseNode, datas, editableTask);
        StepRunnerCallback finish = new StepRunnerCallback() {

            @Override
            public Step execute(UserRequest uureq, WindowControl wControl, StepsRunContext runContext) {
                Task task = (Task) runContext.get("task");
                Date scheduledDate = (Date) runContext.get("scheduledDate");
                AssessableCourseNode assessableCourseNode = (AssessableCourseNode) runContext.get("courseNode");
                BulkAssessmentDatas bulkDatas = (BulkAssessmentDatas) runContext.get("datas");
                Feedback feedback = doUpdateBulkAssessment(task, assessableCourseNode, scheduledDate, bulkDatas);
                runContext.put("feedback", feedback);
                editedTask = null;
                return StepsMainRunController.DONE_MODIFIED;
            }
        };
        StepRunnerCallback cancel = new StepRunnerCallback() {

            @Override
            public Step execute(UserRequest uureq, WindowControl wControl, StepsRunContext runContext) {
                taskManager.returnTaskAfterEdition(editableTask, null);
                editedTask = null;
                return Step.NOSTEP;
            }
        };
        bulkAssessmentCtrl = new StepsMainRunController(ureq, getWindowControl(), start, finish, cancel, translate("bulk.wizard.title"), "o_sel_bulk_assessment_wizard");
        listenTo(bulkAssessmentCtrl);
        getWindowControl().pushAsModalDialog(bulkAssessmentCtrl.getInitialComponent());
    }
}
Also used : Task(org.olat.core.commons.services.taskexecutor.Task) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) Step(org.olat.core.gui.control.generic.wizard.Step) WindowControl(org.olat.core.gui.control.WindowControl) StepsRunContext(org.olat.core.gui.control.generic.wizard.StepsRunContext) Date(java.util.Date) AssessableCourseNode(org.olat.course.nodes.AssessableCourseNode) BulkAssessmentDatas(org.olat.course.assessment.model.BulkAssessmentDatas) BulkAssessmentFeedback(org.olat.course.assessment.model.BulkAssessmentFeedback) StepsMainRunController(org.olat.core.gui.control.generic.wizard.StepsMainRunController) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) StepRunnerCallback(org.olat.core.gui.control.generic.wizard.StepRunnerCallback) UserRequest(org.olat.core.gui.UserRequest)

Example 9 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project openolat by klemens.

the class TaskStatusRenderer method render.

@Override
public void render(Renderer renderer, StringOutput target, Object cellValue, int row, FlexiTableComponent source, URLBuilder ubu, Translator translator) {
    if (cellValue instanceof Task) {
        cellValue = ((Task) cellValue).getStatus();
    }
    if (cellValue instanceof TaskStatus) {
        TaskStatus status = (TaskStatus) cellValue;
        Translator localTranslator = Util.createPackageTranslator(TaskStatusRenderer.class, translator.getLocale(), translator);
        switch(status) {
            case newTask:
                target.append(localTranslator.translate("newTask"));
                break;
            case inWork:
                target.append(localTranslator.translate("inWork"));
                break;
            case failed:
                target.append(localTranslator.translate("failed"));
                break;
            case done:
                target.append(localTranslator.translate("done"));
                break;
            case edition:
                target.append(localTranslator.translate("edition"));
                break;
            default:
                target.append("???");
                break;
        }
    }
}
Also used : Task(org.olat.core.commons.services.taskexecutor.Task) Translator(org.olat.core.gui.translator.Translator) TaskStatus(org.olat.core.commons.services.taskexecutor.TaskStatus)

Example 10 with Task

use of org.olat.core.commons.services.taskexecutor.Task in project openolat by klemens.

the class BulkAssessmentOverviewController method doEditBulkAssessment.

private void doEditBulkAssessment(UserRequest ureq, TaskData data) {
    removeAsListenerAndDispose(bulkAssessmentCtrl);
    if (editedTask != null) {
        // only for security purpose
        taskManager.returnTaskAfterEdition(editedTask, null);
    }
    AssessableCourseNode courseNode = data.getCourseNode();
    final Task editableTask = taskManager.pickTaskForEdition(data.getTask());
    editedTask = editableTask;
    if (editableTask == null) {
        showWarning("task.edited");
    } else {
        BulkAssessmentTask runnable = taskManager.getPersistedRunnableTask(editableTask, BulkAssessmentTask.class);
        BulkAssessmentDatas datas = runnable.getDatas();
        Step start = new BulkAssessment_2_DatasStep(ureq, courseNode, datas, editableTask);
        StepRunnerCallback finish = new StepRunnerCallback() {

            @Override
            public Step execute(UserRequest uureq, WindowControl wControl, StepsRunContext runContext) {
                Task task = (Task) runContext.get("task");
                Date scheduledDate = (Date) runContext.get("scheduledDate");
                AssessableCourseNode assessableCourseNode = (AssessableCourseNode) runContext.get("courseNode");
                BulkAssessmentDatas bulkDatas = (BulkAssessmentDatas) runContext.get("datas");
                Feedback feedback = doUpdateBulkAssessment(task, assessableCourseNode, scheduledDate, bulkDatas);
                runContext.put("feedback", feedback);
                editedTask = null;
                return StepsMainRunController.DONE_MODIFIED;
            }
        };
        StepRunnerCallback cancel = new StepRunnerCallback() {

            @Override
            public Step execute(UserRequest uureq, WindowControl wControl, StepsRunContext runContext) {
                taskManager.returnTaskAfterEdition(editableTask, null);
                editedTask = null;
                return Step.NOSTEP;
            }
        };
        bulkAssessmentCtrl = new StepsMainRunController(ureq, getWindowControl(), start, finish, cancel, translate("bulk.wizard.title"), "o_sel_bulk_assessment_wizard");
        listenTo(bulkAssessmentCtrl);
        getWindowControl().pushAsModalDialog(bulkAssessmentCtrl.getInitialComponent());
    }
}
Also used : Task(org.olat.core.commons.services.taskexecutor.Task) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) Step(org.olat.core.gui.control.generic.wizard.Step) WindowControl(org.olat.core.gui.control.WindowControl) StepsRunContext(org.olat.core.gui.control.generic.wizard.StepsRunContext) Date(java.util.Date) AssessableCourseNode(org.olat.course.nodes.AssessableCourseNode) BulkAssessmentDatas(org.olat.course.assessment.model.BulkAssessmentDatas) BulkAssessmentFeedback(org.olat.course.assessment.model.BulkAssessmentFeedback) StepsMainRunController(org.olat.core.gui.control.generic.wizard.StepsMainRunController) BulkAssessmentTask(org.olat.course.assessment.manager.BulkAssessmentTask) StepRunnerCallback(org.olat.core.gui.control.generic.wizard.StepRunnerCallback) UserRequest(org.olat.core.gui.UserRequest)

Aggregations

Task (org.olat.core.commons.services.taskexecutor.Task)10 Date (java.util.Date)4 BulkAssessmentTask (org.olat.course.assessment.manager.BulkAssessmentTask)4 AssessableCourseNode (org.olat.course.nodes.AssessableCourseNode)4 ArrayList (java.util.ArrayList)2 Calendar (java.util.Calendar)2 LongRunnable (org.olat.core.commons.services.taskexecutor.LongRunnable)2 Sequential (org.olat.core.commons.services.taskexecutor.Sequential)2 TaskStatus (org.olat.core.commons.services.taskexecutor.TaskStatus)2 PersistentTask (org.olat.core.commons.services.taskexecutor.model.PersistentTask)2 UserRequest (org.olat.core.gui.UserRequest)2 WindowControl (org.olat.core.gui.control.WindowControl)2 Step (org.olat.core.gui.control.generic.wizard.Step)2 StepRunnerCallback (org.olat.core.gui.control.generic.wizard.StepRunnerCallback)2 StepsMainRunController (org.olat.core.gui.control.generic.wizard.StepsMainRunController)2 StepsRunContext (org.olat.core.gui.control.generic.wizard.StepsRunContext)2 Translator (org.olat.core.gui.translator.Translator)2 ICourse (org.olat.course.ICourse)2 Structure (org.olat.course.Structure)2 BulkAssessmentDatas (org.olat.course.assessment.model.BulkAssessmentDatas)2