1 package org.jahia.deprecated.taglibs.resourcebundle; 2 3 import java.security.Principal ; 4 import java.util.Locale ; 5 import java.util.ResourceBundle ; 6 7 import javax.servlet.http.HttpServletRequest ; 8 import javax.servlet.jsp.JspException ; 9 import javax.servlet.jsp.tagext.TagSupport ; 10 11 import org.jahia.data.JahiaData; 12 import org.jahia.registries.ServicesRegistry; 13 import org.jahia.resourcebundle.GrpUsrEngineResourceBundle; 14 import org.jahia.services.usermanager.JahiaGroup; 15 16 17 25 public class SetGrpEngineResourceBundleTag extends TagSupport { 26 27 private static final String CLASS_NAME = 28 SetGrpEngineResourceBundleTag.class.getName(); 29 30 private String resourceBundle = ""; 31 private String localeLangage = ""; 32 private String localeCountry = ""; 33 private String localeVariant = ""; 34 private Locale locale = null; 35 private String groupName = null; 36 37 public void setResourceBundle(String resourceBundle) { 38 if ( resourceBundle == null ) 39 resourceBundle = ""; 40 this.resourceBundle = resourceBundle.trim(); 41 } 42 43 public void setLocaleLangage(String localeLangage) { 44 if ( localeLangage != null ) 45 this.localeLangage = localeLangage.trim(); 46 } 47 48 public void setLocaleCountry(String localeCountry) { 49 if ( localeCountry != null ) 50 this.localeCountry = localeCountry.trim(); 51 } 52 53 public void setLocaleVariant(String localeCountry) { 54 if ( localeVariant != null ) 55 this.localeVariant = localeVariant.trim(); 56 } 57 58 public void setGroupName(String groupName) { 59 if ( groupName != null ) 60 this.groupName = groupName.trim(); 61 } 62 63 public int doStartTag() { 64 65 66 HttpServletRequest request = (HttpServletRequest )pageContext.getRequest(); 67 JahiaData jData = (JahiaData) request.getAttribute("org.jahia.data.JahiaData"); 68 69 ResourceBundle res = null; 70 String resValue = null; 71 72 if ( localeLangage.equals("") ){ 73 locale = jData.params().getLocale(); 74 } else { 75 locale = new Locale (localeLangage,localeCountry,localeVariant); 76 } 77 78 res = ResourceBundle.getBundle(resourceBundle,locale); 79 80 if (res != null) { 81 try { 82 JahiaGroup grp = ServicesRegistry.getInstance().getJahiaGroupManagerService().lookupGroup(jData.params().getSiteID(),this.groupName); 83 if ( grp == null ){ 84 grp = ServicesRegistry.getInstance().getJahiaGroupManagerService().lookupGroup(0,this.groupName); 86 } 87 88 if ( grp != null ){ 89 GrpUsrEngineResourceBundle.getInstance().addResourceBundle( jData.params().getContentPage(), (Principal )grp, res ); 90 } 91 } catch (Throwable t){ 92 } 93 } 94 95 return SKIP_BODY; 96 97 } 98 99 public int doEndTag() throws JspException { 100 resourceBundle = ""; 103 localeLangage = ""; 104 localeCountry = ""; 105 localeVariant = ""; 106 locale = null; 107 groupName = null; 108 return EVAL_PAGE; 109 } 110 111 } 112 | Popular Tags |