Search in sources :

Example 6 with BinderSecurityCallback

use of org.olat.modules.portfolio.BinderSecurityCallback in project OpenOLAT by OpenOLAT.

the class PortfolioResultDetailsController method doOpenMap.

private void doOpenMap(UserRequest ureq, Binder binder) {
    if (stackPanel instanceof TooledStackedPanel) {
        binder = portfolioService.getBinderByKey(binder.getKey());
        portfolioService.updateBinderUserInformations(binder, getIdentity());
        List<AccessRights> rights = portfolioService.getAccessRights(binder, getIdentity());
        BinderSecurityCallback secCallback = BinderSecurityCallbackFactory.getCallbackForCourseCoach(binder, rights);
        BinderConfiguration config = BinderConfiguration.createConfig(binder);
        BinderController binderCtrl = new BinderController(ureq, getWindowControl(), (TooledStackedPanel) stackPanel, secCallback, binder, config);
        String displayName = StringHelper.escapeHtml(binder.getTitle());
        stackPanel.pushController(displayName, binderCtrl);
        binderCtrl.activate(ureq, null, null);
    }
}
Also used : AccessRights(org.olat.modules.portfolio.model.AccessRights) TooledStackedPanel(org.olat.core.gui.components.stack.TooledStackedPanel) BinderController(org.olat.modules.portfolio.ui.BinderController) BinderSecurityCallback(org.olat.modules.portfolio.BinderSecurityCallback) BinderConfiguration(org.olat.modules.portfolio.BinderConfiguration)

Example 7 with BinderSecurityCallback

use of org.olat.modules.portfolio.BinderSecurityCallback in project OpenOLAT by OpenOLAT.

the class BinderOnePageController method loadPage.

private void loadPage(UserRequest ureq, Page page) {
    String id = "page_w_" + (++counter);
    VelocityContainer pageVC = createVelocityContainer(id, "page_content_print");
    mainVC.put(id, pageVC);
    components.add(id);
    BinderSecurityCallback secCallback = BinderSecurityCallbackFactory.getReadOnlyCallback();
    PageMetadataController metadatCtrl = new PageMetadataController(ureq, getWindowControl(), secCallback, page);
    listenTo(metadatCtrl);
    Component pageMetaCmp = metadatCtrl.getInitialComponent();
    pageVC.put("meta", pageMetaCmp);
    PageController pageCtrl = new PageController(ureq, getWindowControl(), new PortfolioPageProvider(page), renderingHints);
    listenTo(pageCtrl);
    pageCtrl.loadElements(ureq);
    Component pageCmp = pageCtrl.getInitialComponent();
    pageVC.put("page", pageCmp);
    CommentAndRatingSecurityCallback commentSecCallback = new ReadOnlyCommentsSecurityCallback();
    OLATResourceable ores = OresHelper.createOLATResourceableInstance(Page.class, page.getKey());
    UserCommentsController commentsCtrl = new UserCommentsController(ureq, getWindowControl(), ores, null, commentSecCallback);
    listenTo(commentsCtrl);
    if (commentsCtrl.getNumOfComments() > 0) {
        pageVC.put("comments", commentsCtrl.getInitialComponent());
    }
}
Also used : CommentAndRatingSecurityCallback(org.olat.core.commons.services.commentAndRating.CommentAndRatingSecurityCallback) PageController(org.olat.modules.portfolio.ui.editor.PageController) OLATResourceable(org.olat.core.id.OLATResourceable) ReadOnlyCommentsSecurityCallback(org.olat.modules.portfolio.ui.model.ReadOnlyCommentsSecurityCallback) UserCommentsController(org.olat.core.commons.services.commentAndRating.ui.UserCommentsController) BinderSecurityCallback(org.olat.modules.portfolio.BinderSecurityCallback) Component(org.olat.core.gui.components.Component) VelocityContainer(org.olat.core.gui.components.velocity.VelocityContainer)

Example 8 with BinderSecurityCallback

use of org.olat.modules.portfolio.BinderSecurityCallback in project OpenOLAT by OpenOLAT.

the class MySharedItemsController method doSelectBinder.

private BinderController doSelectBinder(UserRequest ureq, MySharedItemRow row) {
    Binder binder = portfolioService.getBinderByKey(row.getBinderKey());
    if (binder == null) {
        showWarning("warning.portfolio.not.found");
        return null;
    } else {
        removeAsListenerAndDispose(binderCtrl);
        portfolioService.updateBinderUserInformations(binder, getIdentity());
        OLATResourceable binderOres = OresHelper.createOLATResourceableInstance("Binder", binder.getKey());
        WindowControl swControl = addToHistory(ureq, binderOres, null);
        BinderSecurityCallback secCallback = BinderSecurityCallbackFactory.getCallbackForOwnedBinder(binder);
        BinderConfiguration config = BinderConfiguration.createConfig(binder);
        binderCtrl = new BinderController(ureq, swControl, stackPanel, secCallback, binder, config);
        String displayName = StringHelper.escapeHtml(binder.getTitle());
        stackPanel.pushController(displayName, binderCtrl);
        return binderCtrl;
    }
}
Also used : Binder(org.olat.modules.portfolio.Binder) OLATResourceable(org.olat.core.id.OLATResourceable) BinderController(org.olat.modules.portfolio.ui.BinderController) BinderSecurityCallback(org.olat.modules.portfolio.BinderSecurityCallback) WindowControl(org.olat.core.gui.control.WindowControl) BinderConfiguration(org.olat.modules.portfolio.BinderConfiguration)

Example 9 with BinderSecurityCallback

use of org.olat.modules.portfolio.BinderSecurityCallback in project OpenOLAT by OpenOLAT.

the class ExportBinderAsCPResource method exportPage.

private void exportPage(Page page, ZipOutputStream zout) throws IOException {
    WindowControl mockwControl = new WindowControlMocker();
    BinderSecurityCallback secCallback = BinderSecurityCallbackFactory.getReadOnlyCallback();
    PageMetadataController metadatCtrl = new PageMetadataController(ureq, mockwControl, secCallback, page);
    PageController pageCtrl = new PageController(ureq, mockwControl, new PortfolioPageProvider(page), ExtendedMediaRenderingHints.toPrint());
    pageCtrl.loadElements(ureq);
    CommentAndRatingSecurityCallback commentSecCallback = new ReadOnlyCommentsSecurityCallback();
    OLATResourceable ores = OresHelper.createOLATResourceableInstance(Page.class, page.getKey());
    UserCommentsController commentsCtrl = new UserCommentsController(ureq, mockwControl, ores, null, commentSecCallback);
    Component metadata = metadatCtrl.getInitialComponent();
    Component component = pageCtrl.getInitialComponent();
    Component comments = commentsCtrl.getNumOfComments() > 0 ? commentsCtrl.getInitialComponent() : null;
    String html = createResultHTML(metadata, component, comments, "o_page_export");
    html = exportMedia(html, zout);
    convertToZipEntry(zout, pageFilename(page), html);
    pageCtrl.dispose();
    metadatCtrl.dispose();
}
Also used : CommentAndRatingSecurityCallback(org.olat.core.commons.services.commentAndRating.CommentAndRatingSecurityCallback) PageController(org.olat.modules.portfolio.ui.editor.PageController) OLATResourceable(org.olat.core.id.OLATResourceable) ReadOnlyCommentsSecurityCallback(org.olat.modules.portfolio.ui.model.ReadOnlyCommentsSecurityCallback) UserCommentsController(org.olat.core.commons.services.commentAndRating.ui.UserCommentsController) BinderSecurityCallback(org.olat.modules.portfolio.BinderSecurityCallback) WindowControl(org.olat.core.gui.control.WindowControl) Component(org.olat.core.gui.components.Component) WindowControlMocker(org.olat.core.gui.util.WindowControlMocker) PageMetadataController(org.olat.modules.portfolio.ui.PageMetadataController)

Example 10 with BinderSecurityCallback

use of org.olat.modules.portfolio.BinderSecurityCallback in project OpenOLAT by OpenOLAT.

the class PortfolioHomeController method doOpenMyPages.

private MyPageListController doOpenMyPages(UserRequest ureq) {
    removeAsListenerAndDispose(myPageListCtrl);
    stackPanel.popUpToRootController(ureq);
    OLATResourceable pagesOres = OresHelper.createOLATResourceableInstance("MyPages", 0l);
    WindowControl swControl = addToHistory(ureq, pagesOres, null);
    // owners of all pages
    BinderSecurityCallback secCallback = BinderSecurityCallbackFactory.getCallbackForMyPageList();
    myPageListCtrl = new MyPageListController(ureq, swControl, stackPanel, secCallback);
    listenTo(myPageListCtrl);
    stackPanel.pushController(translate("my.portfolio.pages.breadcrump"), myPageListCtrl);
    return myPageListCtrl;
}
Also used : OLATResourceable(org.olat.core.id.OLATResourceable) BinderSecurityCallback(org.olat.modules.portfolio.BinderSecurityCallback) WindowControl(org.olat.core.gui.control.WindowControl)

Aggregations

BinderSecurityCallback (org.olat.modules.portfolio.BinderSecurityCallback)30 OLATResourceable (org.olat.core.id.OLATResourceable)18 WindowControl (org.olat.core.gui.control.WindowControl)16 BinderConfiguration (org.olat.modules.portfolio.BinderConfiguration)14 Binder (org.olat.modules.portfolio.Binder)12 BinderController (org.olat.modules.portfolio.ui.BinderController)12 AccessRights (org.olat.modules.portfolio.model.AccessRights)10 EPSecurityCallback (org.olat.portfolio.EPSecurityCallback)6 EPSecurityCallbackImpl (org.olat.portfolio.EPSecurityCallbackImpl)6 CalendarController (org.olat.commons.calendar.ui.CalendarController)4 WeeklyCalendarController (org.olat.commons.calendar.ui.WeeklyCalendarController)4 FolderRunController (org.olat.core.commons.modules.bc.FolderRunController)4 CommentAndRatingSecurityCallback (org.olat.core.commons.services.commentAndRating.CommentAndRatingSecurityCallback)4 UserCommentsController (org.olat.core.commons.services.commentAndRating.ui.UserCommentsController)4 Component (org.olat.core.gui.components.Component)4 TooledStackedPanel (org.olat.core.gui.components.stack.TooledStackedPanel)4 Controller (org.olat.core.gui.control.Controller)4 CourseLinkProviderController (org.olat.course.run.calendar.CourseLinkProviderController)4 InfoGroupRunController (org.olat.group.ui.run.InfoGroupRunController)4 ChatToolController (org.olat.instantMessaging.ui.ChatToolController)4