KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openbravo > wad > controls > WADDateTime


1 /*
2  *************************************************************************
3  * The contents of this file are subject to the Openbravo Public License
4  * Version 1.0 (the "License"), being the Mozilla Public License
5  * Version 1.1 with a permitted attribution clause; you may not use this
6  * file except in compliance with the License. You may obtain a copy of
7  * the License at http://www.openbravo.com/legal/license.html
8  * Software distributed under the License is distributed on an "AS IS"
9  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
10  * License for the specific language governing rights and limitations
11  * under the License.
12  * The Original Code is Openbravo ERP.
13  * The Initial Developer of the Original Code is Openbravo SL
14  * All portions are Copyright (C) 2001-2006 Openbravo SL
15  * All Rights Reserved.
16  * Contributor(s): ______________________________________.
17  ************************************************************************
18 */

19 package org.openbravo.wad.controls;
20
21 import java.util.*;
22 import org.openbravo.xmlEngine.XmlDocument;
23
24 public class WADDateTime extends WADControl {
25   private WADControl button;
26
27   public WADDateTime() {
28   }
29
30   public WADDateTime(Properties prop) {
31     setInfo(prop);
32     initialize();
33   }
34
35   public void initialize() {
36     generateJSCode();
37     this.button = new WADFieldButton("Calendar", getData("ColumnName"), getData("ColumnNameInp"), getData("Name"), "showCalendar('frmMain.inp" + getData("ColumnNameInp") + "', document.frmMain.inp" + getData("ColumnNameInp") + ".value, false);");
38   }
39
40   private void generateJSCode() {
41     addImport("DateTextBox", "../../../../../web/js/default/DateTextBox.js");
42     addImport("calendar", "../../../../../web/js/jscalendar/calendar.js");
43     if (!getData("AD_Language").equals(""))
44       addImport("calendarLang", "../../../../../web/js/jscalendar/lang/calendar-" + getData("AD_Language").substring(0, 2) + ".js");
45     else addImport("calendarLang", "../../../../../web/js/jscalendar/lang/calendar-en.js");
46     generateMessages();
47     generateValidation();
48     setCalloutJS();
49   }
50
51   private void generateValidation() {
52     String JavaDoc[] discard = {"","","",""};
53     String JavaDoc join = "";
54     if (!getData("IsMandatory").equals("Y")) discard[0] = "isMandatory";
55     if (getData("ValueMin").trim().equals("") && getData("ValueMax").trim().equals("")) discard[1] = "isValueCheck";
56     else {
57       boolean valmin=false;
58       if (getData("ValueMin").equals("")) discard[2] = "isValueMin";
59       else valmin = true;
60       if (getData("ValueMax").equals("")) discard[3] = "isValueMax";
61       else if (valmin) join = " || ";
62     }
63
64     XmlDocument xmlDocument = getReportEngine().readXmlTemplate("org/openbravo/wad/controls/WADDateJSValidation", discard).createXmlDocument();
65     xmlDocument.setParameter("columnNameInp", getData("ColumnNameInp"));
66     xmlDocument.setParameter("valueMin", getData("ValueMin"));
67     xmlDocument.setParameter("valueMax", getData("ValueMax"));
68     xmlDocument.setParameter("join", join);
69     setValidation(replaceHTML(xmlDocument.print()));
70   }
71
72   public String JavaDoc getType() {
73     return "TextBox_btn";
74   }
75
76   public String JavaDoc editMode() {
77     String JavaDoc textButton = "";
78     String JavaDoc buttonClass = "";
79     if (getData("IsReadOnly").equals("N") && getData("IsReadOnlyTab").equals("N") && getData("IsUpdateable").equals("Y")) {
80       this.button.setReportEngine(getReportEngine());
81       textButton = this.button.toString();
82       buttonClass = this.button.getType();
83     }
84     
85     XmlDocument xmlDocument = getReportEngine().readXmlTemplate("org/openbravo/wad/controls/WADDateTime").createXmlDocument();
86
87     xmlDocument.setParameter("columnName", getData("ColumnName"));
88     xmlDocument.setParameter("columnNameInp", getData("ColumnNameInp"));
89     xmlDocument.setParameter("size", (textButton.equals("")?"":"btn_") + getData("CssSize"));
90     xmlDocument.setParameter("hasButton", (textButton.equals("")?"TextButton_ContentCell":""));
91     xmlDocument.setParameter("maxlength", getData("FieldLength"));
92     xmlDocument.setParameter("buttonClass", buttonClass + "_ContentCell");
93     xmlDocument.setParameter("invalid", this.invalid);
94     xmlDocument.setParameter("missing", this.missing);
95     xmlDocument.setParameter("range", this.range);
96     xmlDocument.setParameter("button", textButton);
97
98     boolean isDisabled = (getData("IsReadOnly").equals("Y") || getData("IsReadOnlyTab").equals("Y") || getData("IsUpdateable").equals("N"));
99     xmlDocument.setParameter("disabled", (isDisabled?"Y":"N"));
100     if (!isDisabled && getData("IsMandatory").equals("Y")) {
101       xmlDocument.setParameter("required", "true");
102       xmlDocument.setParameter("requiredClass", " required");
103     } else {
104       xmlDocument.setParameter("required", "false");
105       xmlDocument.setParameter("requiredClass", (isDisabled?" readonly":""));
106     }
107     xmlDocument.setParameter("textBoxCSS", (isDisabled?"_ReadOnly":""));
108
109     xmlDocument.setParameter("callout", getOnChangeCode());
110
111     return replaceHTML(xmlDocument.print());
112   }
113
114   public String JavaDoc newMode() {
115     String JavaDoc textButton = "";
116     String JavaDoc buttonClass = "";
117     if (getData("IsReadOnly").equals("N") && getData("IsReadOnlyTab").equals("N")) {
118       this.button.setReportEngine(getReportEngine());
119       textButton = this.button.toString();
120       buttonClass = this.button.getType();
121     }
122     XmlDocument xmlDocument = getReportEngine().readXmlTemplate("org/openbravo/wad/controls/WADDateTime").createXmlDocument();
123
124     xmlDocument.setParameter("columnName", getData("ColumnName"));
125     xmlDocument.setParameter("columnNameInp", getData("ColumnNameInp"));
126     xmlDocument.setParameter("size", (textButton.equals("")?"":"btn_") + getData("CssSize"));
127     xmlDocument.setParameter("hasButton", (textButton.equals("")?"TextButton_ContentCell":""));
128     xmlDocument.setParameter("maxlength", getData("FieldLength"));
129     xmlDocument.setParameter("buttonClass", buttonClass + "_ContentCell");
130     xmlDocument.setParameter("invalid", this.invalid);
131     xmlDocument.setParameter("missing", this.missing);
132     xmlDocument.setParameter("range", this.range);
133     xmlDocument.setParameter("button", textButton);
134
135     boolean isDisabled = (getData("IsReadOnly").equals("Y") || getData("IsReadOnlyTab").equals("Y"));
136     xmlDocument.setParameter("disabled", (isDisabled?"Y":"N"));
137     if (!isDisabled && getData("IsMandatory").equals("Y")) {
138       xmlDocument.setParameter("required", "true");
139       xmlDocument.setParameter("requiredClass", " required");
140     } else {
141       xmlDocument.setParameter("required", "false");
142       xmlDocument.setParameter("requiredClass", (isDisabled?" readonly":""));
143     }
144     xmlDocument.setParameter("textBoxCSS", (isDisabled?"_ReadOnly":""));
145
146     xmlDocument.setParameter("callout", getOnChangeCode());
147
148     return replaceHTML(xmlDocument.print());
149   }
150
151   public String JavaDoc toXml() {
152     String JavaDoc[] discard = {"xx_PARAM"};
153     if (getData("IsParameter").equals("Y")) discard[0] = new String JavaDoc("xx");
154     XmlDocument xmlDocument = getReportEngine().readXmlTemplate("org/openbravo/wad/controls/WADDateTimeXML", discard).createXmlDocument();
155     xmlDocument.setParameter("columnName", getData("ColumnName"));
156     return replaceHTML(xmlDocument.print());
157   }
158
159   public String JavaDoc toJava() {
160     StringBuffer JavaDoc text = new StringBuffer JavaDoc();
161     text.append("xmlDocument.setParameter(\"").append(getData("ColumnName")).append("_Format\", vars.getSessionValue(\"#AD_SqlDateFormat\"));");
162     return text.toString();
163   }
164 }
165
Popular Tags