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

OO-3237: root of document pool tree use the same label as the site, remove...

OO-3237: root of document pool tree use the same label as the site, remove hard coded title of the infos page, add warning if no info page configured
parent 662bd3c9
No related branches found
No related tags found
No related merge requests found
Showing
with 22 additions and 16 deletions
...@@ -118,7 +118,7 @@ public class DocumentPoolNotificationsHandler implements NotificationsHandler { ...@@ -118,7 +118,7 @@ public class DocumentPoolNotificationsHandler implements NotificationsHandler {
Translator translator = Util.createPackageTranslator(DocumentPoolMainController.class, locale); Translator translator = Util.createPackageTranslator(DocumentPoolMainController.class, locale);
String templates = translator.translate("document.pool.templates"); String templates = translator.translate("document.pool.templates");
TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(taxonomy, identity, null, TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(taxonomy, identity, null,
isTaxonomyAdmin, documentPoolModule.isTemplatesDirectoryEnabled(), templates); isTaxonomyAdmin, documentPoolModule.isTemplatesDirectoryEnabled(), templates, locale);
TreeModel model = builder.buildTreeModel(); TreeModel model = builder.buildTreeModel();
si = new SubscriptionInfo(subscriber.getKey(), p.getType(), getTitleItemForPublisher(), null); si = new SubscriptionInfo(subscriber.getKey(), p.getType(), getTitleItemForPublisher(), null);
......
...@@ -92,8 +92,9 @@ public class DocumentPoolMainController extends MainLayoutBasicController implem ...@@ -92,8 +92,9 @@ public class DocumentPoolMainController extends MainLayoutBasicController implem
taxonomy = taxonomyService.getTaxonomy(taxonomyRef); taxonomy = taxonomyService.getTaxonomy(taxonomyRef);
} }
TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(taxonomy, getIdentity(), getLocale(), String rootTitle = translate("admin.menu.title");//same as site title
isTaxonomyAdmin, docPoolModule.isTemplatesDirectoryEnabled(), translate("document.pool.templates")); TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(taxonomy, getIdentity(), rootTitle,
isTaxonomyAdmin, docPoolModule.isTemplatesDirectoryEnabled(), translate("document.pool.templates"), getLocale());
taxonomyTree = new MenuTree(null, "taxonomy-menu", this); taxonomyTree = new MenuTree(null, "taxonomy-menu", this);
taxonomyTree.setExpandSelectedNode(false); taxonomyTree.setExpandSelectedNode(false);
...@@ -114,7 +115,7 @@ public class DocumentPoolMainController extends MainLayoutBasicController implem ...@@ -114,7 +115,7 @@ public class DocumentPoolMainController extends MainLayoutBasicController implem
listenTo(columnLayoutCtr); // auto dispose later listenTo(columnLayoutCtr); // auto dispose later
putInitialPanel(columnLayoutCtr.getInitialComponent()); putInitialPanel(columnLayoutCtr.getInitialComponent());
DocumentPoolTaxonomyController rootCtrl = new DocumentPoolTaxonomyController(ureq, getWindowControl(), taxonomy); DocumentPoolTaxonomyController rootCtrl = new DocumentPoolTaxonomyController(ureq, getWindowControl());
listenTo(rootCtrl); listenTo(rootCtrl);
String displayName = taxonomy == null ? "ROOT" : taxonomy.getDisplayName(); String displayName = taxonomy == null ? "ROOT" : taxonomy.getDisplayName();
content.rootController(displayName, rootCtrl); content.rootController(displayName, rootCtrl);
......
...@@ -29,11 +29,9 @@ import org.olat.core.gui.components.velocity.VelocityContainer; ...@@ -29,11 +29,9 @@ import org.olat.core.gui.components.velocity.VelocityContainer;
import org.olat.core.gui.control.Event; import org.olat.core.gui.control.Event;
import org.olat.core.gui.control.WindowControl; import org.olat.core.gui.control.WindowControl;
import org.olat.core.gui.control.controller.BasicController; import org.olat.core.gui.control.controller.BasicController;
import org.olat.core.util.StringHelper;
import org.olat.core.util.vfs.VFSContainer; import org.olat.core.util.vfs.VFSContainer;
import org.olat.modules.docpool.DocumentPoolModule; import org.olat.modules.docpool.DocumentPoolModule;
import org.olat.modules.docpool.manager.DocumentPoolNotificationsHandler; import org.olat.modules.docpool.manager.DocumentPoolNotificationsHandler;
import org.olat.modules.taxonomy.Taxonomy;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
/** /**
...@@ -53,12 +51,10 @@ public class DocumentPoolTaxonomyController extends BasicController { ...@@ -53,12 +51,10 @@ public class DocumentPoolTaxonomyController extends BasicController {
@Autowired @Autowired
private DocumentPoolNotificationsHandler notificationsHandler; private DocumentPoolNotificationsHandler notificationsHandler;
public DocumentPoolTaxonomyController(UserRequest ureq, WindowControl wControl, Taxonomy taxonomy) { public DocumentPoolTaxonomyController(UserRequest ureq, WindowControl wControl) {
super(ureq, wControl); super(ureq, wControl);
mainVC = createVelocityContainer("document_pool"); mainVC = createVelocityContainer("document_pool");
mainVC.contextPut("displayName", StringHelper.escapeHtml(taxonomy.getDisplayName()));
mainVC.contextPut("identifier", StringHelper.escapeHtml(taxonomy.getIdentifier()));
//add subscription //add subscription
SubscriptionContext subsContext = notificationsHandler.getTaxonomyDocumentsLibrarySubscriptionContext(); SubscriptionContext subsContext = notificationsHandler.getTaxonomyDocumentsLibrarySubscriptionContext();
......
<h1><i class="o_icon $o_icon_taxonomy"> </i> $displayName#if($r.isNotEmpty($identifier)) <small>${identifier}</small>#end</h1> <div class="clearfix">$r.render("subscription")</div>
$r.render("subscription")
#if($r.available("index")) #if($r.available("index"))
$r.render("index") $r.render("index")
#else
<div class="o_warning">$r.translate("warning.taxonomy.index.emtpy")</div>
#end #end
...@@ -34,3 +34,4 @@ teach.can.read.parent.levels.explain.1=Lesender Zugriff zus\u00E4tzlich auch auf ...@@ -34,3 +34,4 @@ teach.can.read.parent.levels.explain.1=Lesender Zugriff zus\u00E4tzlich auch auf
teach.can.read.parent.levels.explain.2=\u00FCbergeordnete Ebene/n gestatten teach.can.read.parent.levels.explain.2=\u00FCbergeordnete Ebene/n gestatten
teach.can.write=Schreibender Zugriff gestatten teach.can.write=Schreibender Zugriff gestatten
teach.competence=Dozier-Kompetenz teach.competence=Dozier-Kompetenz
warning.taxonomy.index.emtpy=Die Dokumentpool-Infoseite wurde nicht richtig konfiguriert. Bitte fragen Sie den Systemadministrator, eine Infoseite in der Dokumentenpoolverwaltung hinzuzufügen.
...@@ -34,3 +34,4 @@ teach.can.read.parent.levels.explain.1=Allow read access to ...@@ -34,3 +34,4 @@ teach.can.read.parent.levels.explain.1=Allow read access to
teach.can.read.parent.levels.explain.2=levels above teach.can.read.parent.levels.explain.2=levels above
teach.can.write=Allow write access teach.can.write=Allow write access
teach.competence=Teacher competence teach.competence=Teacher competence
warning.taxonomy.index.emtpy=The document pool info page has not been configured properly. Please ask the system administrator to add an info page in the <strong>document pool administration</strong>.
...@@ -81,7 +81,7 @@ class DocumentPoolWebDAVMergeSource extends WebDAVMergeSource { ...@@ -81,7 +81,7 @@ class DocumentPoolWebDAVMergeSource extends WebDAVMergeSource {
.translate("document.pool.templates"); .translate("document.pool.templates");
TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(taxonomy, identityEnv.getIdentity(), null, TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(taxonomy, identityEnv.getIdentity(), null,
identityEnv.getRoles().isOLATAdmin(), docPoolModule.isTemplatesDirectoryEnabled(), templatesDir); identityEnv.getRoles().isOLATAdmin(), docPoolModule.isTemplatesDirectoryEnabled(), templatesDir, null);
TreeModel model = builder.buildTreeModel(); TreeModel model = builder.buildTreeModel();
TreeNode rootNode = model.getRootNode(); TreeNode rootNode = model.getRootNode();
for(int i=0; i<rootNode.getChildCount(); i++) { for(int i=0; i<rootNode.getChildCount(); i++) {
......
...@@ -56,6 +56,7 @@ public class TaxonomyTreeBuilder { ...@@ -56,6 +56,7 @@ public class TaxonomyTreeBuilder {
private Locale locale; private Locale locale;
private Taxonomy taxonomy; private Taxonomy taxonomy;
private final String rootTitle;
private final Identity identity; private final Identity identity;
private final String templateDirectory; private final String templateDirectory;
private final boolean isTaxonomyAdmin; private final boolean isTaxonomyAdmin;
...@@ -63,12 +64,13 @@ public class TaxonomyTreeBuilder { ...@@ -63,12 +64,13 @@ public class TaxonomyTreeBuilder {
private final TaxonomyService taxonomyService; private final TaxonomyService taxonomyService;
public TaxonomyTreeBuilder(Taxonomy taxonomy, Identity identity, Locale locale, public TaxonomyTreeBuilder(Taxonomy taxonomy, Identity identity, String rootTitle,
boolean isTaxonomyAdmin, boolean enableTemplates, String templateDirectory) { boolean isTaxonomyAdmin, boolean enableTemplates, String templateDirectory, Locale locale) {
taxonomyService = CoreSpringFactory.getImpl(TaxonomyService.class); taxonomyService = CoreSpringFactory.getImpl(TaxonomyService.class);
this.locale = locale; this.locale = locale;
this.taxonomy = taxonomy; this.taxonomy = taxonomy;
this.identity = identity; this.identity = identity;
this.rootTitle = rootTitle;
this.enableTemplates = enableTemplates; this.enableTemplates = enableTemplates;
this.templateDirectory = templateDirectory; this.templateDirectory = templateDirectory;
this.isTaxonomyAdmin = isTaxonomyAdmin; this.isTaxonomyAdmin = isTaxonomyAdmin;
...@@ -82,7 +84,11 @@ public class TaxonomyTreeBuilder { ...@@ -82,7 +84,11 @@ public class TaxonomyTreeBuilder {
if(taxonomy != null) { if(taxonomy != null) {
taxonomy = taxonomyService.getTaxonomy(taxonomy); taxonomy = taxonomyService.getTaxonomy(taxonomy);
root.setTitle(taxonomy.getDisplayName()); if(StringHelper.containsNonWhitespace(rootTitle)) {
root.setTitle(rootTitle);
} else {
root.setTitle(taxonomy.getDisplayName());
}
root.setUserObject(taxonomy); root.setUserObject(taxonomy);
//taxonomy directory //taxonomy directory
......
...@@ -94,7 +94,7 @@ public class TaxonomyLevelLibraryIndexer extends DefaultIndexer { ...@@ -94,7 +94,7 @@ public class TaxonomyLevelLibraryIndexer extends DefaultIndexer {
if("TaxonomyLevel".equals(contextEntry.getOLATResourceable().getResourceableTypeName())) { if("TaxonomyLevel".equals(contextEntry.getOLATResourceable().getResourceableTypeName())) {
Long levelKey = contextEntry.getOLATResourceable().getResourceableId(); Long levelKey = contextEntry.getOLATResourceable().getResourceableId();
TaxonomyLevel level = taxonomyService.getTaxonomyLevel(new TaxonomyLevelRefImpl(levelKey)); TaxonomyLevel level = taxonomyService.getTaxonomyLevel(new TaxonomyLevelRefImpl(levelKey));
TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(level.getTaxonomy(), identity, null, false, true, "Templates"); TaxonomyTreeBuilder builder = new TaxonomyTreeBuilder(level.getTaxonomy(), identity, null, false, true, "Templates", null);
TreeModel model = builder.buildTreeModel(); TreeModel model = builder.buildTreeModel();
List<TreeNode> flat = new ArrayList<>(); List<TreeNode> flat = new ArrayList<>();
TreeHelper.makeTreeFlat(model.getRootNode(), flat); TreeHelper.makeTreeFlat(model.getRootNode(), flat);
......
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