package org.alfresco.web.bean.wcm; import javax.faces.context.FacesContext; import org.alfresco.web.app.Application; import org.alfresco.web.ui.common.Utils; import org.apache.commons.lang.StringUtils; /** * Helper class to build a HTML description attribute for the tag. * * @author Arseny Kovalchuk * * @see org.alfresco.web.bean.wcm.CreateWebsiteWizard * @see org.alfresco.web.bean.wcm.CreateFormWizard */ public class DescriptionAttributeHelper { static final String BLANK = ""; static final String TABLE_BEGIN = ""; static final String TABLE_END = "
"; static final String TRTD_BEGIN = ""; static final String TD_TD = ":"; static final String TDTR_END = ""; static final String SPAN_ITALIC_BEGIN = ""; static final String SPAN_END = ""; /** * * @return Returns beginning tags of the HTML table * @see org.alfresco.web.bean.wcm.DescriptionAttributeConstants */ public static String getTableBegin() { return TABLE_BEGIN; } /** * * @param fc Current FacesContext * @param fieldName Field name * @param fieldValue Field value * @return Returns a table line Localised field name:Field value */ public static String getTableLine(FacesContext fc, String fieldName, String fieldValue) { return getTableLine(fc, fieldName, fieldValue, true); } /** * * @param fc Current FacesContext * @param fieldName Field name * @param fieldValue Field value * @param encode Whether to encode the given value or not * @return Returns a table line Localised field name:Field value */ public static String getTableLine(FacesContext fc, String fieldName, String fieldValue, boolean encode) { StringBuilder line = new StringBuilder(128); line.append(TRTD_BEGIN).append(Application.getMessage(fc, fieldName)).append(TD_TD); if (encode) { line.append(Utils.encode(fieldValue)); } else { line.append(fieldValue); } line.append(TDTR_END); return line.toString(); } /** * * @return Returns an ending HTML table tags */ public static String getTableEnd() { return TABLE_END; } /** * * @param fc Current FacesContext * @param fieldValue Field value * @return Returns localised "description_not_set" message if fieldValue is empty. */ public static String getDescriptionNotEmpty(FacesContext fc, String fieldValue) { return StringUtils.isEmpty(fieldValue) ? SPAN_ITALIC_BEGIN + Application.getMessage(fc, "description_not_set") + SPAN_END : Utils.encode(fieldValue); } }