1 package org.jahia.deprecated.taglibs.field.file; 2 3 import java.io.IOException ; 4 5 import javax.servlet.ServletRequest ; 6 import javax.servlet.jsp.JspWriter ; 7 import javax.servlet.jsp.tagext.BodyContent ; 8 import javax.servlet.jsp.tagext.BodyTagSupport ; 9 10 import org.jahia.data.JahiaData; 11 import org.jahia.data.files.JahiaFileField; 12 import org.jahia.utils.JahiaConsole; 13 14 15 16 21 public class IfImageTag extends BodyTagSupport { 22 23 24 public int doAfterBody() { 25 26 ServletRequest request = pageContext.getRequest(); 27 BodyContent body = getBodyContent(); 28 try { 29 JahiaData jData = (JahiaData) request.getAttribute("org.jahia.data.JahiaData"); 30 31 FileFieldTag fileTag = (FileFieldTag) findAncestorWithClass(this, FileFieldTag.class); 33 if (fileTag != null) { 34 JahiaFileField fileField = fileTag.getFile(); 35 if (isImage(fileField)) { 36 JspWriter out = body.getEnclosingWriter(); 37 out.print(body.getString()); 38 } 39 } 40 } catch (IOException ioe) { 41 JahiaConsole.println("IfImageTag: doAfterBody ", ioe.toString()); 42 } 43 return SKIP_BODY; 44 } 45 46 47 private boolean isImage( JahiaFileField theFile ) { 48 if (theFile != null) { 49 if (theFile.getType().equals("")) { 50 String name = theFile.getDownloadUrl(); 52 if (name != null) { 53 name = name.toUpperCase(); 54 return ((name.indexOf("JPG") != -1) || 55 (name.indexOf("PNG") != -1) || 56 (name.indexOf("GIF") != -1) || 57 (name.indexOf("JPEG") != -1)); 58 } 59 } else { 60 return theFile.getType().startsWith("image"); 63 } 64 } 65 return false; 66 } 67 68 } 69 | Popular Tags |