Skip to content
Snippets Groups Projects
Commit ee91a8f0 authored by srosse's avatar srosse
Browse files

OO-4489: create/import only for author rights in group administration

parent 66ed8b2a
No related branches found
No related tags found
No related merge requests found
......@@ -49,6 +49,7 @@ import org.olat.core.gui.control.generic.closablewrapper.CloseableModalControlle
import org.olat.core.gui.control.generic.modal.DialogBoxController;
import org.olat.core.gui.control.generic.modal.DialogBoxUIFactory;
import org.olat.core.gui.translator.Translator;
import org.olat.core.id.Roles;
import org.olat.core.util.Util;
import org.olat.course.CourseModule;
import org.olat.group.BusinessGroup;
......@@ -92,6 +93,8 @@ public class BusinessGroupEditResourceController extends BasicController impleme
private BusinessGroup group;
private final boolean managed;
private final boolean hasAuthorRight;
@Autowired
private BusinessGroupService businessGroupService;
......@@ -108,6 +111,9 @@ public class BusinessGroupEditResourceController extends BasicController impleme
this.group = group;
managed = BusinessGroupManagedFlag.isManaged(group, BusinessGroupManagedFlag.resources);
Roles roles = ureq.getUserSession().getRoles();
hasAuthorRight = roles.isAdministrator() || roles.isLearnResourceManager() || roles.isAuthor();
Translator resourceTrans = Util.createPackageTranslator(RepositoryService.class, getLocale(), getTranslator());
TableGuiConfiguration tableConfig = new TableGuiConfiguration();
tableConfig.setTableEmptyMessage(translate("resources.noresources"));
......@@ -130,24 +136,10 @@ public class BusinessGroupEditResourceController extends BasicController impleme
putInitialPanel(mainVC);
}
/**
* @see org.olat.core.gui.control.DefaultController#event(org.olat.core.gui.UserRequest,
* org.olat.core.gui.components.Component, org.olat.core.gui.control.Event)
*/
@Override
public void event(UserRequest ureq, Component source, Event event) {
if (source == addTabResourcesButton) {
removeAsListenerAndDispose(repoSearchCtr);
removeAsListenerAndDispose(cmc);
RepositoryEntryFilter filter = new ManagedEntryfilter();
repoSearchCtr = new ReferencableEntriesSearchController(getWindowControl(), ureq,
new String[]{ CourseModule.getCourseTypeName() }, filter,
translate("resources.add"), true, true, true, false, true, Can.referenceable);
listenTo(repoSearchCtr);
cmc = new CloseableModalController(getWindowControl(), translate("close"), repoSearchCtr.getInitialComponent(), true, translate("resources.add.title"));
listenTo(cmc);
cmc.activate();
doAddRepositoryEntry(ureq);
}
}
......@@ -197,6 +189,20 @@ public class BusinessGroupEditResourceController extends BasicController impleme
}
}
private void doAddRepositoryEntry(UserRequest ureq) {
removeAsListenerAndDispose(repoSearchCtr);
removeAsListenerAndDispose(cmc);
RepositoryEntryFilter filter = new ManagedEntryfilter();
repoSearchCtr = new ReferencableEntriesSearchController(getWindowControl(), ureq,
new String[]{ CourseModule.getCourseTypeName() }, filter,
translate("resources.add"), hasAuthorRight, hasAuthorRight, true, false, true, Can.referenceable);
listenTo(repoSearchCtr);
cmc = new CloseableModalController(getWindowControl(), translate("close"), repoSearchCtr.getInitialComponent(), true, translate("resources.add.title"));
listenTo(cmc);
cmc.activate();
}
private void doOpenInfos(UserRequest ureq, RepositoryEntry repositoryEntry, int rowId) {
removeAsListenerAndDispose(calloutCtrl);
removeAsListenerAndDispose(infosCtrl);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment