KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > opencms > frontend > templateone > form > CmsTextField


1 /*
2  * File : $Source: /usr/local/cvs/opencms/src-modules/org/opencms/frontend/templateone/form/CmsTextField.java,v $
3  * Date : $Date: 2006/03/27 14:52:20 $
4  * Version: $Revision: 1.5 $
5  *
6  * This library is part of OpenCms -
7  * the Open Source Content Mananagement System
8  *
9  * Copyright (C) 2002 - 2004 Alkacon Software (http://www.alkacon.com)
10  *
11  * This library is free software; you can redistribute it and/or
12  * modify it under the terms of the GNU Lesser General Public
13  * License as published by the Free Software Foundation; either
14  * version 2.1 of the License, or (at your option) any later version.
15  *
16  * This library is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19  * Lesser General Public License for more details.
20  *
21  * For further information about Alkacon Software, please see the
22  * company website: http://www.alkacon.com
23  *
24  * For further information about OpenCms, please see the
25  * project website: http://www.opencms.org
26  *
27  * You should have received a copy of the GNU Lesser General Public
28  * License along with this library; if not, write to the Free Software
29  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
30  */

31  
32 package org.opencms.frontend.templateone.form;
33
34 import org.opencms.i18n.CmsMessages;
35 import org.opencms.util.CmsStringUtil;
36
37 /**
38  * Represents a text input field.<p>
39  *
40  * @author Thomas Weckert (t.weckert@alkacon.com)
41  * @version $Revision: 1.5 $
42  */

43 public class CmsTextField extends A_CmsField {
44
45     /** HTML field type: text input. */
46     private static final String JavaDoc TYPE = "text";
47     
48     /**
49      * @see org.opencms.frontend.templateone.form.I_CmsField#getType()
50      */

51     public String JavaDoc getType() {
52
53         return TYPE;
54     }
55     
56     /**
57      * Returns the type of the input field, e.g. "text" or "select".<p>
58      *
59      * @return the type of the input field
60      */

61     public static String JavaDoc getStaticType() {
62         
63         return TYPE;
64     }
65     
66     /**
67      * @see org.opencms.frontend.templateone.form.I_CmsField#buildHtml(CmsFormHandler, org.opencms.i18n.CmsMessages, String)
68      */

69     public String JavaDoc buildHtml(CmsFormHandler formHandler, CmsMessages messages, String JavaDoc errorKey) {
70         
71         StringBuffer JavaDoc buf = new StringBuffer JavaDoc();
72         String JavaDoc fieldLabel = getLabel();
73         String JavaDoc errorMessage = "";
74         String JavaDoc mandatory = "";
75         
76         if (CmsStringUtil.isNotEmpty(errorKey)) {
77             
78             if (CmsFormHandler.ERROR_MANDATORY.equals(errorKey)) {
79                 errorMessage = messages.key("form.error.mandatory");
80             } else if (CmsStringUtil.isNotEmpty(getErrorMessage())) {
81                 errorMessage = getErrorMessage();
82             } else {
83                 errorMessage = messages.key("form.error.validation");
84             }
85             
86             errorMessage = messages.key("form.html.error.start") + errorMessage + messages.key("form.html.error.end");
87             fieldLabel = messages.key("form.html.label.error.start") + fieldLabel + messages.key("form.html.label.error.end");
88         }
89         
90         if (isMandatory()) {
91             mandatory = messages.key("form.html.mandatory");
92         }
93         
94         // line #1
95
buf.append(messages.key("form.html.row.start")).append("\n");
96         
97         // line #2
98
buf.append(messages.key("form.html.label.start"))
99             .append(fieldLabel)
100             .append(mandatory)
101             .append(messages.key("form.html.label.end")).append("\n");
102         
103         // line #3
104
buf.append(messages.key("form.html.field.start"))
105             .append("<input type=\"text\" name=\"").append(getName()).append("\" value=\"").append(CmsStringUtil.escapeHtml(getValue())).append("\"")
106             .append(formHandler.getFormConfiguration().getFormFieldAttributes())
107             .append(">")
108             .append(errorMessage)
109             .append(messages.key("form.html.field.end")).append("\n");
110         
111         // line #4
112
buf.append(messages.key("form.html.row.end")).append("\n");
113         
114         return buf.toString();
115     }
116
117 }
118
Popular Tags