diff --git a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_de.properties index 6c967d9c14102943d112d1bc56e076e59a466f88..cd0ac90d5e166eea942b1094b61977c439e51649 100644 --- a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_de.properties @@ -15,7 +15,6 @@ up=Hoch down=Runter PortalSiteDef=Portal GroupsSiteDef=Gruppe -HomeSiteDef=Home CatalogSiteDef=Katalog CourseSiteDef=Infoseite n°1 RepositorySiteDef=Lernressourcen diff --git a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_en.properties index a9210c55ae80a4f54c814caa34701e23d0d2e7bc..91d0f74da1c23447a7d134d283a9c78f55e69c1c 100644 --- a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_en.properties @@ -14,7 +14,6 @@ site.alternative.none=No alt. up=Up down=Down GroupsSiteDef=Groups -HomeSiteDef=Home CatalogSiteDef=Katalog CourseSiteDef=Infopage n°1 RepositorySiteDef=Lernressourcen diff --git a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_fr.properties index 1e0fc06ac0e869175add4c62b476f86ba545dc67..37e0f613c845241965174add6903ff363e36f66f 100644 --- a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_fr.properties @@ -5,7 +5,6 @@ CourseSiteDef=Page d'infos n\u00B01 CourseSiteDef2=Page d'infos n\u00B02 GUIDemoSiteDef=D\u00E9mo GUI GroupsSiteDef=Groupes -HomeSiteDef=Accueil QuestionPoolSiteDef=Banque des questions RepositorySiteDef=Ressources didactiques UserAdminSiteDef=Gestion des utilisateurs diff --git a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_pt_BR.properties b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_pt_BR.properties index ec3cc0b86d174ccd0121e85a57b0841e152a0019..d5453f2eea9742c75952ee5562813fe15ab4f8d0 100644 --- a/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_pt_BR.properties +++ b/src/main/java/org/olat/admin/site/ui/_i18n/LocalStrings_pt_BR.properties @@ -5,7 +5,6 @@ CourseSiteDef=P\u00E1gina de informa\u00E7\u00E3o n\u00BA1 CourseSiteDef2=P\u00E1gina de informa\u00E7\u00E3o n\u00BA2 GUIDemoSiteDef=GUI Demo GroupsSiteDef=Grupos -HomeSiteDef=Home QuestionPoolSiteDef=Reservat\u00F3rio de perguntas RepositorySiteDef=Recursos did\u00E1ticos UserAdminSiteDef=Administra\u00E7\u00E3o de usu\u00E1rios diff --git a/src/main/java/org/olat/core/gui/components/AbstractComponent.java b/src/main/java/org/olat/core/gui/components/AbstractComponent.java index 77eaf2d7fe504a49eef05d35f668a6d1dc9dd9c0..c574fef0658e80822d97d2b2e8cfcea9ffa1816c 100644 --- a/src/main/java/org/olat/core/gui/components/AbstractComponent.java +++ b/src/main/java/org/olat/core/gui/components/AbstractComponent.java @@ -48,7 +48,7 @@ import org.olat.core.util.CodeHelper; */ public abstract class AbstractComponent implements Component { - private static final OLog log_ = Tracing.createLoggerFor(Component.class); + private static final OLog log_ = Tracing.createLoggerFor(AbstractComponent.class); private boolean spanReplaceable = false; diff --git a/src/main/java/org/olat/core/gui/components/stack/BreadcrumbedStackedPanel.java b/src/main/java/org/olat/core/gui/components/stack/BreadcrumbedStackedPanel.java index ab6159defc4aa9888947a5433930f5c017daf6d2..b75151b34128f92a3a6105e84118c8cd6c077ec1 100644 --- a/src/main/java/org/olat/core/gui/components/stack/BreadcrumbedStackedPanel.java +++ b/src/main/java/org/olat/core/gui/components/stack/BreadcrumbedStackedPanel.java @@ -34,6 +34,9 @@ import org.olat.core.gui.components.velocity.VelocityContainer; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.Event; import org.olat.core.gui.translator.Translator; +import org.olat.core.logging.AssertException; +import org.olat.core.logging.OLog; +import org.olat.core.logging.Tracing; import org.olat.core.util.StringHelper; import org.olat.core.util.Util; @@ -44,7 +47,7 @@ import org.olat.core.util.Util; * */ public class BreadcrumbedStackedPanel extends Panel implements StackedPanel, BreadcrumbPanel, ComponentEventListener { - + private static final OLog log = Tracing.createLoggerFor(BreadcrumbedStackedPanel.class); private static final ComponentRenderer RENDERER = new BreadcrumbedStackedPanelRenderer(); protected final List<Link> stack = new ArrayList<>(3); @@ -123,7 +126,10 @@ public class BreadcrumbedStackedPanel extends Panel implements StackedPanel, Bre List<Component> cmps = new ArrayList<>(3 + stack.size()); cmps.add(backLink); cmps.add(closeLink); - cmps.add(getContent()); + Component content = getContent(); + if(content != null && content != this) { + cmps.add(getContent()); + } for(Link crumb:stack) { cmps.add(crumb); } @@ -241,7 +247,12 @@ public class BreadcrumbedStackedPanel extends Panel implements StackedPanel, Bre } private void setContent(Controller ctrl) { - super.setContent(ctrl.getInitialComponent()); + Component cmp = ctrl.getInitialComponent(); + if(cmp == this) { + log.error("Set itself as content is forbidden"); + throw new AssertException("Set itself as content is forbidden"); + } + super.setContent(cmp); } /** diff --git a/src/main/java/org/olat/core/gui/control/_spring/sitedefContext.xml b/src/main/java/org/olat/core/gui/control/_spring/sitedefContext.xml index 1c3379ab8f69a62c409955df3bd4e05297f34b81..e134eb6643ef18b1c1e1ada5e1bee56a5e2f6766 100644 --- a/src/main/java/org/olat/core/gui/control/_spring/sitedefContext.xml +++ b/src/main/java/org/olat/core/gui/control/_spring/sitedefContext.xml @@ -72,11 +72,6 @@ <property name="enabled" value="${guidemo.enabled}"/> </bean> - <bean id="olatsites_home" class="org.olat.home.HomeSiteDef"> - <property name="order" value="25" /> - <property name="enabled" value="true"/> - </bean> - <!-- security callback --> <bean id="adminSiteSecurityCallback" class="org.olat.core.gui.control.navigation.callback.AdminSecurityCallback"/> diff --git a/src/main/java/org/olat/home/HomeMainController.java b/src/main/java/org/olat/home/HomeMainController.java index 41935dddde258c51ff34bc7a6405fbe3bb1c75c6..35b85ddc752a7429dcde951cf2c8c8958583475d 100644 --- a/src/main/java/org/olat/home/HomeMainController.java +++ b/src/main/java/org/olat/home/HomeMainController.java @@ -26,11 +26,13 @@ import org.olat.core.extensions.ExtManager; import org.olat.core.extensions.action.GenericActionExtension; import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.Component; +import org.olat.core.gui.components.panel.Panel; import org.olat.core.gui.components.stack.BreadcrumbPanelAware; import org.olat.core.gui.components.stack.BreadcrumbedStackedPanel; import org.olat.core.gui.control.Controller; import org.olat.core.gui.control.Event; import org.olat.core.gui.control.WindowControl; +import org.olat.core.gui.control.controller.BasicController; import org.olat.core.gui.control.controller.MainLayoutBasicController; import org.olat.core.gui.control.generic.dtabs.Activateable2; import org.olat.core.id.OLATResourceable; @@ -57,7 +59,10 @@ public class HomeMainController extends MainLayoutBasicController implements Act stackPanel = new BreadcrumbedStackedPanel("homeStackPanel", getTranslator(), this); stackPanel.setInvisibleCrumb(2); putInitialPanel(stackPanel); - stackPanel.pushController("main", this); + + RootController root = new RootController(ureq, wControl); + listenTo(root); + stackPanel.pushController("main", root); } @Override @@ -116,4 +121,22 @@ public class HomeMainController extends MainLayoutBasicController implements Act } return ctrl; } + + public static class RootController extends BasicController { + + public RootController(UserRequest ureq, WindowControl wControl) { + super(ureq, wControl); + putInitialPanel(new Panel("empty")); + } + + @Override + protected void event(UserRequest ureq, Component source, Event event) { + // + } + + @Override + protected void doDispose() { + // + } + } } diff --git a/src/main/java/org/olat/home/HomeSiteDef.java b/src/main/java/org/olat/home/HomeSiteDef.java deleted file mode 100644 index a54a2585e9530191de8b090dd7ac287be3eca440..0000000000000000000000000000000000000000 --- a/src/main/java/org/olat/home/HomeSiteDef.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * <a href="http://www.openolat.org"> - * OpenOLAT - Online Learning and Training</a><br> - * <p> - * Licensed under the Apache License, Version 2.0 (the "License"); <br> - * you may not use this file except in compliance with the License.<br> - * You may obtain a copy of the License at the - * <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache homepage</a> - * <p> - * Unless required by applicable law or agreed to in writing,<br> - * software distributed under the License is distributed on an "AS IS" BASIS, <br> - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. <br> - * See the License for the specific language governing permissions and <br> - * limitations under the License. - * <p> - * Initial code contributed and copyrighted by<br> - * frentix GmbH, http://www.frentix.com - * <p> - */ -package org.olat.home; - -import org.olat.core.gui.UserRequest; -import org.olat.core.gui.control.WindowControl; -import org.olat.core.gui.control.navigation.AbstractSiteDefinition; -import org.olat.core.gui.control.navigation.SiteConfiguration; -import org.olat.core.gui.control.navigation.SiteDefinition; -import org.olat.core.gui.control.navigation.SiteInstance; - -/** - * <h3>Description:</h3> - * <p> - * Site Def. for a minimal Home Initial Date: 10.05.2010 <br> - * - * @author Roman Haag, roman.haag@frentix.com, www.frentix.com - */ -public class HomeSiteDef extends AbstractSiteDefinition implements SiteDefinition { - - @Override - public SiteInstance createSite(UserRequest ureq, WindowControl wControl, SiteConfiguration config) { - if(ureq.getUserSession().getRoles().isInvitee()) { - return null; - } - return new HomeSite(this); - } -}