1 31 32 package org.opencms.workplace.editors.directedit; 33 34 import org.opencms.i18n.CmsEncoder; 35 import org.opencms.util.CmsStringUtil; 36 import org.opencms.workplace.editors.Messages; 37 38 49 public class CmsDirectEditTextButtonProvider extends CmsDirectEditDefaultProvider { 50 51 52 private String m_endHtml; 53 54 57 public String endDirectEditDisabled() { 58 59 return ""; 60 } 61 62 65 public String endDirectEditEnabled() { 66 67 String result = ""; 68 if (CmsStringUtil.isNotEmpty(m_endHtml)) { 69 result = m_endHtml; 70 m_endHtml = null; 71 } 72 return result; 73 } 74 75 78 public boolean isManual(CmsDirectEditMode mode) { 79 80 return (mode == CmsDirectEditMode.MANUAL) 81 || ((m_mode == CmsDirectEditMode.MANUAL) && (mode == CmsDirectEditMode.TRUE)); 82 } 83 84 87 public I_CmsDirectEditProvider newInstance() { 88 89 CmsDirectEditTextButtonProvider result = new CmsDirectEditTextButtonProvider(); 90 result.m_configurationParameters = m_configurationParameters; 91 return result; 92 } 93 94 97 public String startDirectEditDisabled(CmsDirectEditParams params, CmsDirectEditResourceInfo resourceInfo) { 98 99 StringBuffer result = new StringBuffer (256); 100 101 result.append("<span class=\"ocms_txt_dis\">"); 102 result.append(m_messages.key(Messages.GUI_DIRECTEDIT_TEXT_EDIT_0)); 103 result.append("</span>"); 104 105 return result.toString(); 106 } 107 108 111 public String startDirectEditEnabled(CmsDirectEditParams params, CmsDirectEditResourceInfo resourceInfo) { 112 113 String editId = getNextDirectEditId(); 114 StringBuffer result = new StringBuffer (256); 115 String linkForNew = CmsEncoder.encode(params.getLinkForNew()); 116 117 result.append("<span class=\"ocms_txt_en\">"); 118 if (params.getButtonSelection().isShowEdit()) { 119 result.append("[<a HREF=\"#\" class=\"ocms_txt\" onclick=\"javascript:submitOcms(\'").append(editId).append( 120 "\', \'").append(CmsDirectEditButtonSelection.VALUE_EDIT).append("\');\">"); 121 result.append(m_messages.key(Messages.GUI_DIRECTEDIT_TEXT_EDIT_0)); 122 result.append("</a>]"); 123 } 124 if (params.getButtonSelection().isShowDelete()) { 125 result.append("\n[<a HREF=\"#\" class=\"ocms_txt\" onclick=\"javascript:submitOcms(\'").append(editId).append( 126 "\', \'").append(CmsDirectEditButtonSelection.VALUE_DELETE).append("\');\">"); 127 result.append(m_messages.key(Messages.GUI_DIRECTEDIT_TEXT_DELETE_0)); 128 result.append("</a>]"); 129 } 130 if (params.getButtonSelection().isShowNew()) { 131 result.append("\n[<a HREF=\"#\" class=\"ocms_txt\" onclick=\"javascript:submitOcms(\'").append(editId).append( 132 "\', \'").append(CmsDirectEditButtonSelection.VALUE_NEW).append("\', \'").append(linkForNew).append( 133 "\');\">"); 134 result.append(m_messages.key(Messages.GUI_DIRECTEDIT_TEXT_NEW_0)); 135 result.append("</a>]"); 136 } 137 result.append("</span>"); 138 139 StringBuffer endHtml = new StringBuffer (256); 140 String editLocale = m_cms.getRequestContext().getLocale().toString(); 141 String uri = m_cms.getRequestContext().getUri(); 142 String linkForEdit = getLink(params.getLinkForEdit()); 143 endHtml.append("<form class=\"ocms_nomargin\" name=\"form_").append(editId).append("\" id=\"form_").append( 144 editId).append("\" method=\"post\" action=\"").append(linkForEdit).append("\" target=\"_top\">\n"); 145 endHtml.append("<input type=\"hidden\" name=\"resource\" value=\"").append(params.getResourceName()).append( 146 "\">\n"); 147 endHtml.append("<input type=\"hidden\" name=\"directedit\" value=\"true\">\n"); 148 endHtml.append("<input type=\"hidden\" name=\"elementlanguage\" value=\"").append(editLocale).append("\">\n"); 149 endHtml.append("<input type=\"hidden\" name=\"elementname\" value=\"").append(params.getElement()).append( 150 "\">\n"); 151 endHtml.append("<input type=\"hidden\" name=\"backlink\" value=\"").append(uri).append("\">\n"); 152 endHtml.append("<input type=\"hidden\" name=\"newlink\">\n"); 153 endHtml.append("<input type=\"hidden\" name=\"closelink\">\n"); 154 endHtml.append("<input type=\"hidden\" name=\"redirect\" value=\"true\">\n"); 155 endHtml.append("<input type=\"hidden\" name=\"editortitle\">\n"); 156 endHtml.append("</form>"); 157 m_endHtml = endHtml.toString(); 158 159 return result.toString(); 160 } 161 } | Popular Tags |