Search in sources :

Example 6 with GoToError

use of org.olat.modules.gotomeeting.model.GoToError in project openolat by klemens.

the class GoToRecordingsController method initForm.

@Override
protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
    // add the table
    FlexiTableColumnModel columnsModel = FlexiTableDataModelFactory.createFlexiTableColumnModel();
    columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(RecordingsCols.name.i18nHeaderKey(), RecordingsCols.name.ordinal(), true, RecordingsCols.name.name()));
    columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(RecordingsCols.start.i18nHeaderKey(), RecordingsCols.start.ordinal(), true, RecordingsCols.start.name()));
    columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel(RecordingsCols.end.i18nHeaderKey(), RecordingsCols.end.ordinal(), true, RecordingsCols.end.name()));
    columnsModel.addFlexiColumnModel(new DefaultFlexiColumnModel("select", translate("select"), "select"));
    tableModel = new GoToRecordingsTableModel(columnsModel);
    GoToError error = new GoToError();
    List<GoToRecordingsG2T> recordings = meetingMgr.getRecordings(meeting, error);
    if (recordings == null) {
        recordings = new ArrayList<>(1);
    }
    tableModel.setObjects(recordings);
    tableEl = uifactory.addTableElement(getWindowControl(), "recordings", tableModel, getTranslator(), formLayout);
    tableEl.setEmtpyTableMessageKey("recordings.empty");
    tableEl.setCustomizeColumns(false);
}
Also used : GoToError(org.olat.modules.gotomeeting.model.GoToError) FlexiTableColumnModel(org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel) GoToRecordingsG2T(org.olat.modules.gotomeeting.model.GoToRecordingsG2T) DefaultFlexiColumnModel(org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel)

Example 7 with GoToError

use of org.olat.modules.gotomeeting.model.GoToError in project openolat by klemens.

the class GoToMeetingController method doStart.

private void doStart(UserRequest ureq) {
    if (registrant == null) {
        GoToError error = new GoToError();
        registrant = meetingMgr.registerTraining(meeting, getIdentity(), error);
    }
    GoToError error = new GoToError();
    String startUrl = meetingMgr.startTraining(meeting, error);
    if (startUrl != null) {
        RedirectMediaResource redirect = new RedirectMediaResource(startUrl);
        ureq.getDispatchResult().setResultingMediaResource(redirect);
    } else if (error.getError() == GoToErrors.TrainingInSession) {
        String joinUrl = registrant.getJoinUrl();
        RedirectMediaResource redirect = new RedirectMediaResource(joinUrl);
        ureq.getDispatchResult().setResultingMediaResource(redirect);
    }
}
Also used : GoToError(org.olat.modules.gotomeeting.model.GoToError) RedirectMediaResource(org.olat.core.gui.media.RedirectMediaResource)

Example 8 with GoToError

use of org.olat.modules.gotomeeting.model.GoToError in project openolat by klemens.

the class GoToMeetingController method doJoin.

private void doJoin(UserRequest ureq) {
    boolean join = false;
    GoToError error = new GoToError();
    if (registrant == null) {
        registrant = meetingMgr.registerTraining(meeting, getIdentity(), error);
    }
    if (registrant != null) {
        String joinUrl = registrant.getJoinUrl();
        if (joinUrl != null) {
            RedirectMediaResource redirect = new RedirectMediaResource(joinUrl);
            ureq.getDispatchResult().setResultingMediaResource(redirect);
            join = true;
        }
    }
    if (!join) {
        final String errorMessage;
        if (error.hasError()) {
            if (error.getError() != null) {
                errorMessage = translate(error.getError().i18nKey());
            } else {
                errorMessage = translate("error.code.unkown");
            }
        } else {
            errorMessage = translate("error.code.unkown");
        }
        ControllerCreator creator = BaseFullWebappPopupLayoutFactory.createAuthMinimalPopupLayout(ureq, new ControllerCreator() {

            @Override
            public Controller createController(UserRequest lureq, WindowControl lwControl) {
                // Wrap in column layout, popup window needs a layout controller
                String title = "";
                String text = errorMessage;
                Controller ctr = MessageUIFactory.createErrorMessage(lureq, lwControl, title, text);
                LayoutMain3ColsController layoutCtr = new LayoutMain3ColsController(lureq, lwControl, ctr);
                layoutCtr.addDisposableChildController(ctr);
                return layoutCtr;
            }
        });
        openInNewBrowserWindow(ureq, creator);
    }
    updateButtons();
}
Also used : GoToError(org.olat.modules.gotomeeting.model.GoToError) LayoutMain3ColsController(org.olat.core.commons.fullWebApp.LayoutMain3ColsController) RedirectMediaResource(org.olat.core.gui.media.RedirectMediaResource) WindowControl(org.olat.core.gui.control.WindowControl) CloseableModalController(org.olat.core.gui.control.generic.closablewrapper.CloseableModalController) LayoutMain3ColsController(org.olat.core.commons.fullWebApp.LayoutMain3ColsController) Controller(org.olat.core.gui.control.Controller) BasicController(org.olat.core.gui.control.controller.BasicController) ControllerCreator(org.olat.core.gui.control.creator.ControllerCreator) UserRequest(org.olat.core.gui.UserRequest)

Example 9 with GoToError

use of org.olat.modules.gotomeeting.model.GoToError in project openolat by klemens.

the class GoToMeetingController method doRegister.

private void doRegister() {
    if (registrant == null) {
        GoToError error = new GoToError();
        registrant = meetingMgr.registerTraining(meeting, getIdentity(), error);
        if (registrant != null) {
            showInfo("training.register.success");
        } else {
            showWarning("training.register.failed");
        }
    }
    updateButtons();
}
Also used : GoToError(org.olat.modules.gotomeeting.model.GoToError)

Example 10 with GoToError

use of org.olat.modules.gotomeeting.model.GoToError in project OpenOLAT by OpenOLAT.

the class GoToTrainingWebService method saveTraining.

private Response saveTraining(GoToTrainingVO training) {
    try {
        GoToMeeting meeting = null;
        GoToError error = new GoToError();
        if (training.getKey() == null) {
            boolean organizerFound = false;
            List<GoToOrganizer> organizers = meetingManager.getSystemOrganizers();
            for (GoToOrganizer organizer : organizers) {
                boolean available = meetingManager.checkOrganizerAvailability(organizer, training.getStart(), training.getEnd());
                if (available) {
                    meeting = meetingManager.scheduleTraining(organizer, training.getName(), training.getExternalId(), "-", training.getStart(), training.getEnd(), entry, subIdentifier, null, error);
                    organizerFound = true;
                    if (!error.hasError()) {
                        break;
                    }
                }
            }
            if (!organizerFound) {
                error.setError(GoToErrors.OrganizerOverlap);
            }
        } else {
            meeting = meetingManager.getMeetingByExternalId(training.getExternalId());
            if (meeting == null) {
                List<GoToOrganizer> organizers = meetingManager.getSystemOrganizers();
                for (GoToOrganizer organizer : organizers) {
                    meeting = meetingManager.scheduleTraining(organizer, training.getName(), training.getExternalId(), "-", training.getStart(), training.getEnd(), entry, subIdentifier, null, error);
                    if (!error.hasError()) {
                        break;
                    }
                }
            } else {
                meetingManager.updateTraining(meeting, training.getName(), "-", training.getStart(), training.getEnd(), error);
            }
        }
        Response response;
        if (error.hasError()) {
            response = handleGoToTrainingError(error);
        } else if (meeting == null) {
            response = handleUnexpectedException();
        } else {
            response = Response.ok(new GoToTrainingVO(meeting)).build();
        }
        return response;
    } catch (Exception e) {
        log.error("", e);
        return handleUnexpectedException();
    }
}
Also used : GoToOrganizer(org.olat.modules.gotomeeting.GoToOrganizer) Response(javax.ws.rs.core.Response) GoToError(org.olat.modules.gotomeeting.model.GoToError) GoToMeeting(org.olat.modules.gotomeeting.GoToMeeting)

Aggregations

GoToError (org.olat.modules.gotomeeting.model.GoToError)16 RedirectMediaResource (org.olat.core.gui.media.RedirectMediaResource)4 GoToOrganizer (org.olat.modules.gotomeeting.GoToOrganizer)4 Date (java.util.Date)2 Response (javax.ws.rs.core.Response)2 LayoutMain3ColsController (org.olat.core.commons.fullWebApp.LayoutMain3ColsController)2 UserRequest (org.olat.core.gui.UserRequest)2 DefaultFlexiColumnModel (org.olat.core.gui.components.form.flexible.impl.elements.table.DefaultFlexiColumnModel)2 FlexiTableColumnModel (org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableColumnModel)2 Controller (org.olat.core.gui.control.Controller)2 WindowControl (org.olat.core.gui.control.WindowControl)2 BasicController (org.olat.core.gui.control.controller.BasicController)2 ControllerCreator (org.olat.core.gui.control.creator.ControllerCreator)2 CloseableModalController (org.olat.core.gui.control.generic.closablewrapper.CloseableModalController)2 GoToMeeting (org.olat.modules.gotomeeting.GoToMeeting)2 GoToRecordingsG2T (org.olat.modules.gotomeeting.model.GoToRecordingsG2T)2