ofbiz主题优化

来源:互联网 发布:淘宝成功的原因 编辑:程序博客网 时间:2024/05/16 05:14

当用户只有一个应用权限,并不需要切换应用时,希望能下面那一栏隐藏掉。


解决办法:

打开apache-ofbiz-16.11.02\themes\flatgrey\template\AppBar.ftl文件

<#if (requestAttributes.externalLoginKey)??><#assign externalKeyParam = "?externalLoginKey=" + requestAttributes.externalLoginKey!></#if><#if (externalLoginKey)??><#assign externalKeyParam = "?externalLoginKey=" + requestAttributes.externalLoginKey!></#if><#assign ofbizServerName = application.getAttribute("_serverId")?default("default-server")><#assign test123 = Static["org.apache.ofbiz.base.util.Debug"].logInfo(ofbizServerName, "appbarFTL")><#assign contextPath = request.getContextPath()><#assign displayApps = Static["org.apache.ofbiz.webapp.control.LoginWorker"].getAppBarWebInfos(security, userLogin, ofbizServerName, "main")><#assign displaySecondaryApps = Static["org.apache.ofbiz.webapp.control.LoginWorker"].getAppBarWebInfos(security, userLogin, ofbizServerName, "secondary")><#if userLogin?has_content>  <div id="main-navigation" test="${ofbizServerName}">    <ul>      <#assign appCount = 0>      <#assign firstApp = true>      <#list displayApps as display>        <#assign thisApp = display.getContextRoot()>        <#assign selected = false>        <#if thisApp == contextPath || contextPath + "/" == thisApp>          <#assign selected = true>        </#if>        <#assign servletPath = Static["org.apache.ofbiz.webapp.WebAppUtil"].getControlServletPath(display)>        <#assign thisURL = StringUtil.wrapString(servletPath)>        <#if thisApp != "/">          <#assign thisURL = thisURL + "main">        </#if>        <#if layoutSettings.suppressTab?? && display.name == layoutSettings.suppressTab>          <#-- do not display this component-->        <#else>          <#if appCount % 4 == 0>            <#if firstApp>              <li class="first">              <#assign firstApp = false>            <#else>              </li>              <li>            </#if>          </#if>          <a tests1="displayApps"  href="${thisURL}${StringUtil.wrapString(externalKeyParam)}"<#if selected> class="selected"</#if><#if uiLabelMap??> title="${uiLabelMap[display.description]}">${uiLabelMap[display.title]}<#else> title="${display.description}">${display.title}</#if></a>          <#assign appCount = appCount + 1>        </#if>      </#list>      <#list displaySecondaryApps as display>        <#assign thisApp = display.getContextRoot()>        <#assign selected = false>        <#if thisApp == contextPath || contextPath + "/" == thisApp>          <#assign selected = true>        </#if>          <#assign servletPath = Static["org.apache.ofbiz.webapp.WebAppUtil"].getControlServletPath(display)>          <#assign thisURL = StringUtil.wrapString(servletPath)>          <#if thisApp != "/">            <#assign thisURL = thisURL + "main">          </#if>        <#if appCount % 4 == 0>          <#if firstApp>            <li class="first">            <#assign firstApp = false>          <#else>            </li>            <li>          </#if>        </#if>        <a tests1="displaySecondaryApps"  href="${thisURL}${StringUtil.wrapString(externalKeyParam)}"<#if selected> class="selected"</#if><#if uiLabelMap??> title="${uiLabelMap[display.description]}">${uiLabelMap[display.title]}<#else> title="${display.description}">${display.title}</#if></a>        <#assign appCount = appCount + 1>      </#list>      <#if appCount != 0>        </li>        <li class="last"></li>      </#if>    </ul>  </div></#if><#if appCount <= 1>  <script type="text/javascript">//${appCount}jQuery("#main-navigation").hide()  </script></#if>

修改后的文件如上,主要是在最后加了个if判断,满足if条件则加上一个js脚本进去隐藏div。