Search in sources :

Example 16 with Controller

use of org.olat.core.gui.control.Controller in project OpenOLAT by OpenOLAT.

the class LLCourseNode method createNodeRunConstructionResult.

/**
 * {@inheritDoc}
 */
@Override
public NodeRunConstructionResult createNodeRunConstructionResult(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, NodeEvaluation ne, String nodecmd) {
    updateModuleConfigDefaults(false);
    Controller controller = new LLRunController(ureq, wControl, getModuleConfiguration(), this, userCourseEnv, true);
    controller = TitledWrapperHelper.getWrapper(ureq, wControl, controller, this, "o_ll_icon");
    return new NodeRunConstructionResult(controller);
}
Also used : TabbableController(org.olat.core.gui.control.generic.tabbable.TabbableController) LLEditController(de.bps.course.nodes.ll.LLEditController) LLRunController(de.bps.course.nodes.ll.LLRunController) Controller(org.olat.core.gui.control.Controller) NodeEditController(org.olat.course.editor.NodeEditController) ConditionEditController(org.olat.course.condition.ConditionEditController) NodeRunConstructionResult(org.olat.course.run.navigation.NodeRunConstructionResult) LLRunController(de.bps.course.nodes.ll.LLRunController)

Example 17 with Controller

use of org.olat.core.gui.control.Controller in project OpenOLAT by OpenOLAT.

the class VCCourseNode method createNodeRunConstructionResult.

@Override
public NodeRunConstructionResult createNodeRunConstructionResult(UserRequest ureq, WindowControl wControl, UserCourseEnvironment userCourseEnv, NodeEvaluation ne, String nodecmd) {
    updateModuleConfigDefaults(false);
    // check if user is moderator of the virtual classroom
    Roles roles = ureq.getUserSession().getRoles();
    boolean moderator = roles.isOLATAdmin();
    Long key = userCourseEnv.getCourseEnvironment().getCourseResourceableId();
    if (!moderator) {
        if (roles.isInstitutionalResourceManager() | roles.isAuthor()) {
            RepositoryManager rm = RepositoryManager.getInstance();
            ICourse course = CourseFactory.loadCourse(key);
            RepositoryEntry re = course.getCourseEnvironment().getCourseGroupManager().getCourseEntry();
            if (re != null) {
                moderator = rm.isOwnerOfRepositoryEntry(ureq.getIdentity(), re);
                if (!moderator) {
                    moderator = rm.isInstitutionalRessourceManagerFor(ureq.getIdentity(), ureq.getUserSession().getRoles(), re);
                }
            }
        }
    }
    // load configuration
    final String providerId = getModuleConfiguration().getStringValue(CONF_PROVIDER_ID);
    VCProvider provider = providerId == null ? VCProviderFactory.createDefaultProvider() : VCProviderFactory.createProvider(providerId);
    VCConfiguration config = handleConfig(provider);
    // create run controller
    Controller runCtr = new VCRunController(ureq, wControl, key + "_" + getIdent(), getShortName(), getLongTitle(), config, provider, moderator, userCourseEnv.isCourseReadOnly());
    Controller controller = TitledWrapperHelper.getWrapper(ureq, wControl, runCtr, this, "o_vc_icon");
    return new NodeRunConstructionResult(controller);
}
Also used : VCRunController(de.bps.course.nodes.vc.VCRunController) Roles(org.olat.core.id.Roles) RepositoryManager(org.olat.repository.RepositoryManager) ICourse(org.olat.course.ICourse) RepositoryEntry(org.olat.repository.RepositoryEntry) TabbableController(org.olat.core.gui.control.generic.tabbable.TabbableController) TabbableDefaultController(org.olat.core.gui.control.generic.tabbable.TabbableDefaultController) NoProviderController(de.bps.course.nodes.vc.NoProviderController) VCEditController(de.bps.course.nodes.vc.VCEditController) VCRunController(de.bps.course.nodes.vc.VCRunController) Controller(org.olat.core.gui.control.Controller) NodeEditController(org.olat.course.editor.NodeEditController) ConditionEditController(org.olat.course.condition.ConditionEditController) NodeRunConstructionResult(org.olat.course.run.navigation.NodeRunConstructionResult) VCProvider(de.bps.course.nodes.vc.provider.VCProvider) VCConfiguration(de.bps.course.nodes.vc.VCConfiguration)

Example 18 with Controller

use of org.olat.core.gui.control.Controller in project OpenOLAT by OpenOLAT.

the class UserAdminController method initTabbedPane.

/**
 * Initialize the tabbed pane according to the users rights and the system
 * configuration
 * @param identity
 * @param ureq
 */
private void initTabbedPane(Identity identity, UserRequest ureq) {
    // first Initialize the user details tabbed pane
    userTabP = new TabbedPane("userTabP", ureq.getLocale());
    userTabP.addListener(this);
    /**
     *  Determine, whether the user admin is or is not able to edit all fields in user
     *  profile form. The system admin is always able to do so.
     */
    Boolean canEditAllFields = BaseSecurityModule.USERMANAGER_CAN_EDIT_ALL_PROFILE_FIELDS;
    if (securityManager.isIdentityPermittedOnResourceable(identity, Constants.PERMISSION_HASROLE, Constants.ORESOURCE_ADMIN)) {
        canEditAllFields = Boolean.TRUE;
    }
    userProfileCtr = new ProfileAndHomePageEditController(ureq, getWindowControl(), identity, canEditAllFields.booleanValue());
    listenTo(userProfileCtr);
    userTabP.addTab(translate(NLS_EDIT_UPROFILE), userProfileCtr.getInitialComponent());
    userTabP.addTab(translate(NLS_EDIT_UPREFS), new TabCreator() {

        @Override
        public Component create(UserRequest uureq) {
            prefsCtr = new ChangePrefsController(uureq, getWindowControl(), identity);
            listenTo(prefsCtr);
            return prefsCtr.getInitialComponent();
        }
    });
    if (isPasswordChangesAllowed(identity)) {
        userTabP.addTab(translate(NLS_EDIT_UPWD), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                pwdCtr = new UserChangePasswordController(uureq, getWindowControl(), identity);
                listenTo(pwdCtr);
                return pwdCtr.getInitialComponent();
            }
        });
    }
    Boolean canAuth = BaseSecurityModule.USERMANAGER_ACCESS_TO_AUTH;
    if (canAuth.booleanValue() || isOlatAdmin) {
        userTabP.addTab(translate(NLS_EDIT_UAUTH), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                authenticationsCtr = new UserAuthenticationsEditorController(uureq, getWindowControl(), identity);
                listenTo(authenticationsCtr);
                return authenticationsCtr.getInitialComponent();
            }
        });
    }
    Boolean canProp = BaseSecurityModule.USERMANAGER_ACCESS_TO_PROP;
    if (canProp.booleanValue() || isOlatAdmin) {
        userTabP.addTab(translate(NLS_EDIT_UPROP), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                propertiesCtr = new UserPropertiesController(uureq, getWindowControl(), identity);
                listenTo(propertiesCtr);
                return propertiesCtr.getInitialComponent();
            }
        });
    }
    Boolean canStartGroups = BaseSecurityModule.USERMANAGER_CAN_START_GROUPS;
    userTabP.addTab(translate(NLS_VIEW_GROUPS), new TabCreator() {

        @Override
        public Component create(UserRequest uureq) {
            grpCtr = new GroupOverviewController(uureq, getWindowControl(), identity, canStartGroups);
            listenTo(grpCtr);
            return grpCtr.getInitialComponent();
        }
    });
    userTabP.addTab(translate(NLS_VIEW_COURSES), new TabCreator() {

        @Override
        public Component create(UserRequest uureq) {
            courseCtr = new CourseOverviewController(uureq, getWindowControl(), identity);
            listenTo(courseCtr);
            return courseCtr.getInitialComponent();
        }
    });
    if (isOlatAdmin) {
        userTabP.addTab(translate(NLS_VIEW_ACCESS), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                Controller accessCtr = new UserOrderController(uureq, getWindowControl(), identity);
                listenTo(accessCtr);
                return accessCtr.getInitialComponent();
            }
        });
    }
    if (isOlatAdmin) {
        userTabP.addTab(translate(NLS_VIEW_EFF_STATEMENTS), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                efficicencyCtrl = new CertificateAndEfficiencyStatementListController(uureq, getWindowControl(), identity, true);
                listenTo(efficicencyCtrl);
                BreadcrumbedStackedPanel stackPanel = new BreadcrumbedStackedPanel("statements", getTranslator(), efficicencyCtrl);
                stackPanel.pushController(translate(NLS_VIEW_EFF_STATEMENTS), efficicencyCtrl);
                efficicencyCtrl.setBreadcrumbPanel(stackPanel);
                stackPanel.setInvisibleCrumb(1);
                return stackPanel;
            }
        });
    }
    Boolean canSubscriptions = BaseSecurityModule.USERMANAGER_CAN_MODIFY_SUBSCRIPTIONS;
    if (canSubscriptions.booleanValue() || isOlatAdmin) {
        userTabP.addTab(translate(NLS_VIEW_SUBSCRIPTIONS), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                Controller subscriptionsCtr = new NotificationSubscriptionController(uureq, getWindowControl(), identity, true);
                listenTo(subscriptionsCtr);
                return subscriptionsCtr.getInitialComponent();
            }
        });
    }
    userTabP.addTab(translate(NLS_EDIT_UROLES), new TabCreator() {

        @Override
        public Component create(UserRequest uureq) {
            rolesCtr = new SystemRolesAndRightsController(getWindowControl(), uureq, identity);
            listenTo(rolesCtr);
            return rolesCtr.getInitialComponent();
        }
    });
    Boolean canQuota = BaseSecurityModule.USERMANAGER_ACCESS_TO_QUOTA;
    if (canQuota.booleanValue() || isOlatAdmin) {
        userTabP.addTab(translate(NLS_EDIT_UQUOTA), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                String relPath = FolderConfig.getUserHomes() + "/" + identity.getName();
                quotaCtr = QuotaManager.getInstance().getQuotaEditorInstance(uureq, getWindowControl(), relPath);
                return quotaCtr.getInitialComponent();
            }
        });
    }
    if (lectureModule.isEnabled()) {
        userTabP.addTab(translate(NLS_VIEW_LECTURES), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                lecturesCtrl = new ParticipantLecturesOverviewController(uureq, getWindowControl(), identity, true, true, true, true);
                listenTo(lecturesCtrl);
                BreadcrumbedStackedPanel stackPanel = new BreadcrumbedStackedPanel("lectures", getTranslator(), lecturesCtrl);
                stackPanel.pushController(translate(NLS_VIEW_LECTURES), lecturesCtrl);
                lecturesCtrl.setBreadcrumbPanel(stackPanel);
                stackPanel.setInvisibleCrumb(1);
                return stackPanel;
            }
        });
    }
    if (taxonomyModule.isEnabled()) {
        userTabP.addTab(translate(NLS_VIEW_COMPETENCES), new TabCreator() {

            @Override
            public Component create(UserRequest uureq) {
                competencesCtrl = new IdentityCompetencesController(uureq, getWindowControl(), identity);
                listenTo(competencesCtrl);
                BreadcrumbedStackedPanel stackPanel = new BreadcrumbedStackedPanel("competences", getTranslator(), competencesCtrl);
                stackPanel.pushController(translate(NLS_VIEW_COMPETENCES), competencesCtrl);
                competencesCtrl.setBreadcrumbPanel(stackPanel);
                stackPanel.setInvisibleCrumb(1);
                return stackPanel;
            }
        });
    }
    // now push to velocity
    myContent.put("userTabP", userTabP);
}
Also used : CourseOverviewController(org.olat.admin.user.course.CourseOverviewController) UserOrderController(org.olat.resource.accesscontrol.ui.UserOrderController) UserPropertiesController(org.olat.user.UserPropertiesController) TabbedPane(org.olat.core.gui.components.tabbedpane.TabbedPane) ParticipantLecturesOverviewController(org.olat.modules.lecture.ui.ParticipantLecturesOverviewController) NotificationSubscriptionController(org.olat.core.commons.services.notifications.ui.NotificationSubscriptionController) IdentityCompetencesController(org.olat.modules.taxonomy.ui.IdentityCompetencesController) DisplayPortraitController(org.olat.user.DisplayPortraitController) CourseOverviewController(org.olat.admin.user.course.CourseOverviewController) ProfileAndHomePageEditController(org.olat.user.ProfileAndHomePageEditController) GroupOverviewController(org.olat.admin.user.groups.GroupOverviewController) UserPropertiesController(org.olat.user.UserPropertiesController) NotificationSubscriptionController(org.olat.core.commons.services.notifications.ui.NotificationSubscriptionController) ChangePrefsController(org.olat.user.ChangePrefsController) UserOrderController(org.olat.resource.accesscontrol.ui.UserOrderController) Controller(org.olat.core.gui.control.Controller) BasicController(org.olat.core.gui.control.controller.BasicController) CertificateAndEfficiencyStatementListController(org.olat.course.certificate.ui.CertificateAndEfficiencyStatementListController) ParticipantLecturesOverviewController(org.olat.modules.lecture.ui.ParticipantLecturesOverviewController) IdentityCompetencesController(org.olat.modules.taxonomy.ui.IdentityCompetencesController) ProfileAndHomePageEditController(org.olat.user.ProfileAndHomePageEditController) TabCreator(org.olat.core.gui.components.tabbedpane.TabCreator) GroupOverviewController(org.olat.admin.user.groups.GroupOverviewController) ChangePrefsController(org.olat.user.ChangePrefsController) Component(org.olat.core.gui.components.Component) BreadcrumbedStackedPanel(org.olat.core.gui.components.stack.BreadcrumbedStackedPanel) CertificateAndEfficiencyStatementListController(org.olat.course.certificate.ui.CertificateAndEfficiencyStatementListController) UserRequest(org.olat.core.gui.UserRequest)

Example 19 with Controller

use of org.olat.core.gui.control.Controller in project OpenOLAT by OpenOLAT.

the class UserAdminMainController method createAndLockDirectUserDeleteController.

/**
 * Creates a DirectDeleteController and acquire a 'delete-user-lock'.
 * The lock is for both direct-deletion and workflow with email.
 * @param ureq
 * @return
 */
private Component createAndLockDirectUserDeleteController(UserRequest ureq, WindowControl wControl) {
    Controller lockCtrl = acquireDeleteUserLock(ureq);
    if (lockCtrl == null) {
        // success -> create new User deletion workflow
        removeAsListenerAndDispose(contentCtr);
        contentCtr = new DirectDeleteController(ureq, wControl);
        listenTo(contentCtr);
        return contentCtr.getInitialComponent();
    } else {
        // failure -> monolog controller with message that lock failed
        return lockCtrl.getInitialComponent();
    }
}
Also used : DirectDeleteController(org.olat.admin.user.delete.DirectDeleteController) UserCreateController(org.olat.admin.user.UserCreateController) TabbedPaneController(org.olat.admin.user.delete.TabbedPaneController) NewUsersNotificationsController(org.olat.admin.user.NewUsersNotificationsController) DirectDeleteController(org.olat.admin.user.delete.DirectDeleteController) LayoutMain3ColsController(org.olat.core.commons.fullWebApp.LayoutMain3ColsController) UserAdminController(org.olat.admin.user.UserAdminController) UserImportController(org.olat.admin.user.imp.UserImportController) Controller(org.olat.core.gui.control.Controller) UsermanagerUserSearchController(org.olat.admin.user.UsermanagerUserSearchController) MainLayoutBasicController(org.olat.core.gui.control.controller.MainLayoutBasicController)

Example 20 with Controller

use of org.olat.core.gui.control.Controller in project OpenOLAT by OpenOLAT.

the class UserAdminMainController method acquireDeleteUserLock.

/**
 * Acquire lock for whole delete-user workflow
 */
private Controller acquireDeleteUserLock(UserRequest ureq) {
    OLATResourceable lockResourceable = OresHelper.createOLATResourceableTypeWithoutCheck(TabbedPaneController.class.getName());
    lock = CoordinatorManager.getInstance().getCoordinator().getLocker().acquireLock(lockResourceable, ureq.getIdentity(), "deleteGroup");
    if (!lock.isSuccess()) {
        String fullname = userManager.getUserDisplayName(lock.getOwner());
        String text = getTranslator().translate("error.deleteworkflow.locked.by", new String[] { fullname });
        Controller monoCtr = MessageUIFactory.createInfoMessage(ureq, getWindowControl(), null, text);
        return monoCtr;
    }
    return null;
}
Also used : OLATResourceable(org.olat.core.id.OLATResourceable) UserCreateController(org.olat.admin.user.UserCreateController) TabbedPaneController(org.olat.admin.user.delete.TabbedPaneController) NewUsersNotificationsController(org.olat.admin.user.NewUsersNotificationsController) DirectDeleteController(org.olat.admin.user.delete.DirectDeleteController) LayoutMain3ColsController(org.olat.core.commons.fullWebApp.LayoutMain3ColsController) UserAdminController(org.olat.admin.user.UserAdminController) UserImportController(org.olat.admin.user.imp.UserImportController) Controller(org.olat.core.gui.control.Controller) UsermanagerUserSearchController(org.olat.admin.user.UsermanagerUserSearchController) MainLayoutBasicController(org.olat.core.gui.control.controller.MainLayoutBasicController) TabbedPaneController(org.olat.admin.user.delete.TabbedPaneController)

Aggregations

Controller (org.olat.core.gui.control.Controller)372 BasicController (org.olat.core.gui.control.controller.BasicController)114 LayoutMain3ColsController (org.olat.core.commons.fullWebApp.LayoutMain3ColsController)82 NodeEditController (org.olat.course.editor.NodeEditController)82 WindowControl (org.olat.core.gui.control.WindowControl)78 TabbableController (org.olat.core.gui.control.generic.tabbable.TabbableController)74 NodeRunConstructionResult (org.olat.course.run.navigation.NodeRunConstructionResult)62 RepositoryEntry (org.olat.repository.RepositoryEntry)60 Translator (org.olat.core.gui.translator.Translator)54 UserRequest (org.olat.core.gui.UserRequest)52 CloseableModalController (org.olat.core.gui.control.generic.closablewrapper.CloseableModalController)50 OLATResourceable (org.olat.core.id.OLATResourceable)46 ArrayList (java.util.ArrayList)40 ControllerCreator (org.olat.core.gui.control.creator.ControllerCreator)40 MainLayoutBasicController (org.olat.core.gui.control.controller.MainLayoutBasicController)36 Component (org.olat.core.gui.components.Component)34 Roles (org.olat.core.id.Roles)34 Activateable2 (org.olat.core.gui.control.generic.dtabs.Activateable2)32 FormBasicController (org.olat.core.gui.components.form.flexible.impl.FormBasicController)30 ContextEntry (org.olat.core.id.context.ContextEntry)30