Search in sources :

Example 56 with Activateable2

use of org.olat.core.gui.control.generic.dtabs.Activateable2 in project OpenOLAT by OpenOLAT.

the class CoachMainController method selectMenuItem.

private Activateable2 selectMenuItem(UserRequest ureq, String cmd) {
    Controller selectedCtrl = null;
    if ("members".equalsIgnoreCase(cmd) || "students".equalsIgnoreCase(cmd)) {
        if (studentListCtrl == null) {
            OLATResourceable ores = OresHelper.createOLATResourceableInstance("Members", 0l);
            ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores));
            WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl());
            studentListCtrl = new StudentListController(ureq, bwControl, content);
            listenTo(studentListCtrl);
        }
        selectedCtrl = studentListCtrl;
    } else if ("groups".equalsIgnoreCase(cmd)) {
        if (groupListCtrl == null) {
            OLATResourceable ores = OresHelper.createOLATResourceableInstance("Groups", 0l);
            ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores));
            WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl());
            groupListCtrl = new GroupListController(ureq, bwControl, content);
            listenTo(groupListCtrl);
        }
        selectedCtrl = groupListCtrl;
    } else if ("courses".equalsIgnoreCase(cmd)) {
        if (courseListCtrl == null) {
            OLATResourceable ores = OresHelper.createOLATResourceableInstance("Courses", 0l);
            ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores));
            WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl());
            courseListCtrl = new CourseListController(ureq, bwControl, content);
            listenTo(courseListCtrl);
        }
        selectedCtrl = courseListCtrl;
    } else if ("lectures".equalsIgnoreCase(cmd)) {
        if (lecturesSearchCtrl == null) {
            OLATResourceable ores = OresHelper.createOLATResourceableInstance("Lectures", 0l);
            ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores));
            WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl());
            lecturesSearchCtrl = new LecturesSearchController(ureq, bwControl, content);
            listenTo(lecturesSearchCtrl);
        }
        selectedCtrl = lecturesSearchCtrl;
    } else if ("search".equalsIgnoreCase(cmd)) {
        if (userSearchCtrl == null) {
            OLATResourceable ores = OresHelper.createOLATResourceableInstance("Search", 0l);
            ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores));
            WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl());
            userSearchCtrl = new UserSearchController(ureq, bwControl, content);
            listenTo(userSearchCtrl);
        }
        selectedCtrl = userSearchCtrl;
    }
    if (selectedCtrl != null) {
        TreeNode selTreeNode = TreeHelper.findNodeByUserObject(cmd, menu.getTreeModel().getRootNode());
        if (selTreeNode != null && !selTreeNode.getIdent().equals(menu.getSelectedNodeId())) {
            menu.setSelectedNodeId(selTreeNode.getIdent());
        }
        content.rootController(selTreeNode.getTitle(), selectedCtrl);
        addToHistory(ureq, selectedCtrl);
    }
    return (Activateable2) selectedCtrl;
}
Also used : LecturesSearchController(org.olat.modules.lecture.ui.coach.LecturesSearchController) Activateable2(org.olat.core.gui.control.generic.dtabs.Activateable2) OLATResourceable(org.olat.core.id.OLATResourceable) GenericTreeNode(org.olat.core.gui.components.tree.GenericTreeNode) TreeNode(org.olat.core.gui.components.tree.TreeNode) LecturesSearchController(org.olat.modules.lecture.ui.coach.LecturesSearchController) LayoutMain3ColsController(org.olat.core.commons.fullWebApp.LayoutMain3ColsController) Controller(org.olat.core.gui.control.Controller) MainLayoutBasicController(org.olat.core.gui.control.controller.MainLayoutBasicController) WindowControl(org.olat.core.gui.control.WindowControl)

Example 57 with Activateable2

use of org.olat.core.gui.control.generic.dtabs.Activateable2 in project openolat by klemens.

the class MySharedItemsController method formInnerEvent.

@Override
protected void formInnerEvent(UserRequest ureq, FormItem source, FormEvent event) {
    if (tableEl == source) {
        if (event instanceof SelectionEvent) {
            SelectionEvent se = (SelectionEvent) event;
            String cmd = se.getCommand();
            MySharedItemRow row = model.getObject(se.getIndex());
            if ("select".equals(cmd)) {
                Activateable2 activateable = doSelectBinder(ureq, row);
                if (activateable != null) {
                    activateable.activate(ureq, null, null);
                }
            }
        } else if (event instanceof FlexiTableSearchEvent) {
            FlexiTableSearchEvent se = (FlexiTableSearchEvent) event;
            loadModel(se.getSearch());
        }
    }
    super.formInnerEvent(ureq, source, event);
}
Also used : MySharedItemRow(org.olat.modules.portfolio.model.MySharedItemRow) Activateable2(org.olat.core.gui.control.generic.dtabs.Activateable2) SelectionEvent(org.olat.core.gui.components.form.flexible.impl.elements.table.SelectionEvent) FlexiTableSearchEvent(org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableSearchEvent)

Example 58 with Activateable2

use of org.olat.core.gui.control.generic.dtabs.Activateable2 in project openolat by klemens.

the class MySharedItemsController method activate.

@Override
public void activate(UserRequest ureq, List<ContextEntry> entries, StateEntry state) {
    if (entries == null || entries.isEmpty())
        return;
    String resName = entries.get(0).getOLATResourceable().getResourceableTypeName();
    if ("Binder".equalsIgnoreCase(resName)) {
        Long resId = entries.get(0).getOLATResourceable().getResourceableId();
        MySharedItemRow activatedRow = null;
        for (MySharedItemRow row : model.getObjects()) {
            if (row.getBinderKey().equals(resId)) {
                activatedRow = row;
                break;
            }
        }
        if (activatedRow != null) {
            Activateable2 activeateable = doSelectBinder(ureq, activatedRow);
            if (activeateable != null) {
                List<ContextEntry> subEntries = entries.subList(1, entries.size());
                activeateable.activate(ureq, subEntries, entries.get(0).getTransientState());
            }
        }
    }
}
Also used : MySharedItemRow(org.olat.modules.portfolio.model.MySharedItemRow) Activateable2(org.olat.core.gui.control.generic.dtabs.Activateable2) ContextEntry(org.olat.core.id.context.ContextEntry)

Example 59 with Activateable2

use of org.olat.core.gui.control.generic.dtabs.Activateable2 in project openolat by klemens.

the class SharedBindersController method activate.

@Override
public void activate(UserRequest ureq, List<ContextEntry> entries, StateEntry state) {
    if (entries.isEmpty())
        return;
    Long resId = entries.get(0).getOLATResourceable().getResourceableId();
    String resName = entries.get(0).getOLATResourceable().getResourceableTypeName();
    if ("Binder".equalsIgnoreCase(resName)) {
        SharedItemRow activatedRow = null;
        List<SharedItemRow> rows = model.getObjects();
        for (SharedItemRow row : rows) {
            if (row.getBinderKey().equals(resId)) {
                activatedRow = row;
                break;
            }
        }
        if (activatedRow != null) {
            Activateable2 activeateable = doSelectBinder(ureq, activatedRow);
            if (activeateable != null) {
                List<ContextEntry> subEntries = entries.subList(1, entries.size());
                activeateable.activate(ureq, subEntries, entries.get(0).getTransientState());
            }
        }
    }
}
Also used : SharedItemRow(org.olat.modules.portfolio.model.SharedItemRow) Activateable2(org.olat.core.gui.control.generic.dtabs.Activateable2) ContextEntry(org.olat.core.id.context.ContextEntry)

Example 60 with Activateable2

use of org.olat.core.gui.control.generic.dtabs.Activateable2 in project openolat by klemens.

the class SharedBindersController method doSelectSection.

private void doSelectSection(UserRequest ureq) {
    try {
        String row = ureq.getParameter("select-section");
        int index = Integer.parseInt(row);
        SharedItemRow itemRow = model.getObject(index);
        if (itemRow != null) {
            String sectionParam = ureq.getParameter("section");
            int sectionIndex = Integer.parseInt(sectionParam);
            AssessedBinderSection section = itemRow.getSections().get(sectionIndex);
            Activateable2 activeateable = doSelectBinder(ureq, itemRow);
            if (activeateable != null) {
                List<ContextEntry> entries = new ArrayList<>(2);
                entries.add(BusinessControlFactory.getInstance().createContextEntry(OresHelper.createOLATResourceableInstance("Entries", 0l)));
                entries.add(BusinessControlFactory.getInstance().createContextEntry(OresHelper.createOLATResourceableInstance("Section", section.getSectionKey())));
                activeateable.activate(ureq, entries, null);
            }
        }
    } catch (Exception e) {
        logError("", e);
    }
}
Also used : SharedItemRow(org.olat.modules.portfolio.model.SharedItemRow) Activateable2(org.olat.core.gui.control.generic.dtabs.Activateable2) ArrayList(java.util.ArrayList) AssessedBinderSection(org.olat.modules.portfolio.model.AssessedBinderSection) ContextEntry(org.olat.core.id.context.ContextEntry)

Aggregations

Activateable2 (org.olat.core.gui.control.generic.dtabs.Activateable2)78 ContextEntry (org.olat.core.id.context.ContextEntry)44 Controller (org.olat.core.gui.control.Controller)28 LayoutMain3ColsController (org.olat.core.commons.fullWebApp.LayoutMain3ColsController)22 TreeNode (org.olat.core.gui.components.tree.TreeNode)16 WindowControl (org.olat.core.gui.control.WindowControl)16 BasicController (org.olat.core.gui.control.controller.BasicController)14 CourseNode (org.olat.course.nodes.CourseNode)12 CollaborationTools (org.olat.collaboration.CollaborationTools)10 SelectionEvent (org.olat.core.gui.components.form.flexible.impl.elements.table.SelectionEvent)10 MainLayoutBasicController (org.olat.core.gui.control.controller.MainLayoutBasicController)10 AssessableCourseNode (org.olat.course.nodes.AssessableCourseNode)10 GTACourseNode (org.olat.course.nodes.GTACourseNode)10 FlexiTableSearchEvent (org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableSearchEvent)8 GenericTreeNode (org.olat.core.gui.components.tree.GenericTreeNode)8 FormLink (org.olat.core.gui.components.form.flexible.elements.FormLink)6 ChiefController (org.olat.core.gui.control.ChiefController)6 VetoableCloseController (org.olat.core.gui.control.VetoableCloseController)6 BornSiteInstance (org.olat.core.gui.control.navigation.BornSiteInstance)6 OLATResourceable (org.olat.core.id.OLATResourceable)5