1 package org.jahia.deprecated.taglibs.field.page; 2 3 import java.io.IOException ; 4 import java.util.Enumeration ; 5 6 import javax.servlet.ServletRequest ; 7 import javax.servlet.jsp.tagext.BodyTagSupport ; 8 9 import org.jahia.data.JahiaData; 10 import org.jahia.exceptions.JahiaException; 11 import org.jahia.services.pages.JahiaPage; 12 import org.jahia.utils.JahiaConsole; 13 14 15 22 public class IfPageInPathTag extends BodyTagSupport { 23 24 public int doStartTag() { 25 26 PageFieldTag parent = (PageFieldTag) findAncestorWithClass(this, PageFieldTag.class); 28 if (parent == null) { 29 return SKIP_BODY; 30 } 31 JahiaPage thePage = parent.getPage(); 32 if (thePage != null) { 33 34 ServletRequest request = pageContext.getRequest(); 35 JahiaData jData = (JahiaData) request.getAttribute("org.jahia.data.JahiaData"); 36 try { 38 Enumeration thePath = jData.page().getPagePath(jData.params().getOperationMode(), jData.params().getUser()); 39 while (thePath.hasMoreElements()) { 40 JahiaPage aPage = (JahiaPage) thePath.nextElement(); 41 if (aPage.getID() == thePage.getID()) { 42 return EVAL_BODY_BUFFERED; 43 } 44 } 45 } catch (JahiaException je) { 46 JahiaConsole.println("IfPageInPathTag: doStartTag ",je.toString()); 47 } 48 } 49 return SKIP_BODY; 50 } 51 52 53 public int doAfterBody() { 54 try { 55 bodyContent.writeOut(bodyContent.getEnclosingWriter()); 56 } catch (IOException ioe) { 57 JahiaConsole.println("IfPageInPathTag: doAfterBody ",ioe.toString()); 58 } 59 return SKIP_BODY; 60 } 61 62 } 63 | Popular Tags |