📄 ifnotcontainerlistpropertiesrightstag.java
字号:
package org.jahia.taglibs.url;import org.jahia.data.JahiaData;import org.jahia.data.containers.JahiaContainerList;import org.jahia.exceptions.JahiaException;import org.jahia.services.usermanager.JahiaUser;import org.jahia.taglibs.container.ContainerListTag;import org.jahia.utils.JahiaConsole;import java.io.*;import java.util.*;import javax.servlet.*;import javax.servlet.jsp.*;import javax.servlet.jsp.tagext.*;/** * Class IfNotContainerListPropertiesRightsTag : displays the body only when the user * can not access the properties window of the enclosing container list * * @author Jerome Tamiotti */public class IfNotContainerListPropertiesRightsTag extends BodyTagSupport { public int doAfterBody() { ServletRequest request = pageContext.getRequest(); BodyContent body = getBodyContent(); try { JahiaData jData = (JahiaData) request.getAttribute("org.jahia.data.JahiaData"); if (jData == null) { HashMap tempEngineMap = (HashMap) request.getAttribute("org.jahia.engines.EngineHashMap"); jData = (JahiaData) tempEngineMap.get("jData"); } // tests if the 'page properties' button must be displayed JahiaUser user = jData.params().getUser(); // retrieves the current container list JahiaContainerList containerList = null; ContainerListTag parent = (ContainerListTag) findAncestorWithClass(this,ContainerListTag.class); if (parent != null) { containerList = parent.getContainerList(); } if (containerList != null) { Enumeration containers = containerList.getContainers(); if ( !containers.hasMoreElements() || !containerList.checkWriteAccess(user,jData.params().getSiteID()) || !jData.gui().isEditMode() ) { JspWriter out = body.getEnclosingWriter(); out.print(body.getString()); } } return SKIP_BODY; } catch (IOException ioe) { JahiaConsole.println("IfContainerListPropertiesRightsTag: doAfterBody ", ioe.toString()); } catch (JahiaException je) { JahiaConsole.println("IfContainerListPropertiesRightsTag: doAfterBody ", je.toString()); } return SKIP_BODY; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -