001    /**
002     * Copyright (c) 2000-2012 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.taglib.ui;
016    
017    import com.liferay.portal.kernel.util.StringPool;
018    import com.liferay.taglib.util.IncludeTag;
019    
020    import java.util.Calendar;
021    
022    import javax.servlet.http.HttpServletRequest;
023    
024    /**
025     * @author Brian Wing Shun Chan
026     */
027    public class InputDateTag extends IncludeTag {
028    
029            public void setCssClass(String cssClass) {
030                    _cssClass = cssClass;
031            }
032    
033            public void setDayNullable(boolean dayNullable) {
034                    _dayNullable = dayNullable;
035            }
036    
037            public void setDayParam(String dayParam) {
038                    _dayParam = dayParam;
039            }
040    
041            public void setDayValue(int dayValue) {
042                    _dayValue = dayValue;
043            }
044    
045            public void setDisabled(boolean disabled) {
046                    _disabled = disabled;
047            }
048    
049            public void setDisableNamespace(boolean disableNamespace) {
050                    _disableNamespace = disableNamespace;
051            }
052    
053            public void setFirstDayOfWeek(int firstDayOfWeek) {
054                    _firstDayOfWeek = firstDayOfWeek;
055            }
056    
057            public void setFormName(String formName) {
058                    _formName = formName;
059            }
060    
061            public void setImageInputId(String imageInputId) {
062                    _imageInputId = imageInputId;
063            }
064    
065            public void setMonthAndYearNullable(boolean monthAndYearNullable) {
066                    _monthAndYearNullable = monthAndYearNullable;
067            }
068    
069            public void setMonthAndYearParam(String monthAndYearParam) {
070                    _monthAndYearParam = monthAndYearParam;
071            }
072    
073            public void setMonthNullable(boolean monthNullable) {
074                    _monthNullable = monthNullable;
075            }
076    
077            public void setMonthParam(String monthParam) {
078                    _monthParam = monthParam;
079            }
080    
081            public void setMonthValue(int monthValue) {
082                    _monthValue = monthValue;
083            }
084    
085            public void setName(String name) {
086                    _name = name;
087            }
088    
089            public void setYearNullable(boolean yearNullable) {
090                    _yearNullable = yearNullable;
091            }
092    
093            public void setYearParam(String yearParam) {
094                    _yearParam = yearParam;
095            }
096    
097            public void setYearRangeEnd(int yearRangeEnd) {
098                    _yearRangeEnd = yearRangeEnd;
099            }
100    
101            public void setYearRangeStart(int yearRangeStart) {
102                    _yearRangeStart = yearRangeStart;
103            }
104    
105            public void setYearValue(int yearValue) {
106                    _yearValue = yearValue;
107            }
108    
109            @Override
110            protected void cleanUp() {
111                    _cssClass = null;
112                    _dayNullable = false;
113                    _dayParam = null;
114                    _dayValue = 0;
115                    _disabled = false;
116                    _disableNamespace = false;
117                    _firstDayOfWeek = Calendar.SUNDAY - 1;
118                    _formName = "fm";
119                    _imageInputId = null;
120                    _monthAndYearNullable = false;
121                    _monthAndYearParam = StringPool.BLANK;
122                    _monthNullable = false;
123                    _monthParam = null;
124                    _monthValue = -1;
125                    _yearNullable = false;
126                    _yearParam = null;
127                    _yearRangeEnd = 0;
128                    _yearRangeStart = 0;
129                    _yearValue = 0;
130            }
131    
132            @Override
133            protected String getPage() {
134                    return _PAGE;
135            }
136    
137            @Override
138            protected void setAttributes(HttpServletRequest request) {
139                    request.setAttribute("liferay-ui:input-date:cssClass",_cssClass);
140                    request.setAttribute(
141                            "liferay-ui:input-date:dayNullable", String.valueOf(_dayNullable));
142                    request.setAttribute("liferay-ui:input-date:dayParam", _dayParam);
143                    request.setAttribute(
144                            "liferay-ui:input-date:dayValue", String.valueOf(_dayValue));
145                    request.setAttribute(
146                            "liferay-ui:input-date:disabled", String.valueOf(_disabled));
147                    request.setAttribute(
148                            "liferay-ui:input-date:disableNamespace",
149                            String.valueOf(_disableNamespace));
150                    request.setAttribute(
151                            "liferay-ui:input-date:firstDayOfWeek",
152                            String.valueOf(_firstDayOfWeek));
153                    request.setAttribute("liferay-ui:input-date:formName", _formName);
154                    request.setAttribute(
155                            "liferay-ui:input-date:imageInputId", _imageInputId);
156                    request.setAttribute(
157                            "liferay-ui:input-date:monthAndYearNullable",
158                            String.valueOf(_monthAndYearNullable));
159                    request.setAttribute(
160                            "liferay-ui:input-date:monthAndYearParam", _monthAndYearParam);
161                    request.setAttribute(
162                            "liferay-ui:input-date:monthNullable",
163                            String.valueOf(_monthNullable));
164                    request.setAttribute("liferay-ui:input-date:monthParam", _monthParam);
165                    request.setAttribute(
166                            "liferay-ui:input-date:monthValue", String.valueOf(_monthValue));
167                    request.setAttribute("liferay-ui:input-date:name", _name);
168                    request.setAttribute(
169                            "liferay-ui:input-date:yearNullable",
170                            String.valueOf(_yearNullable));
171                    request.setAttribute("liferay-ui:input-date:yearParam", _yearParam);
172                    request.setAttribute(
173                            "liferay-ui:input-date:yearRangeEnd",
174                            String.valueOf(_yearRangeEnd));
175                    request.setAttribute(
176                            "liferay-ui:input-date:yearRangeStart",
177                            String.valueOf(_yearRangeStart));
178                    request.setAttribute(
179                            "liferay-ui:input-date:yearValue", String.valueOf(_yearValue));
180            }
181    
182            private static final String _PAGE = "/html/taglib/ui/input_date/page.jsp";
183    
184            private String _cssClass;
185            private boolean _dayNullable;
186            private String _dayParam;
187            private int _dayValue;
188            private boolean _disabled;
189            private boolean _disableNamespace;
190            private int _firstDayOfWeek = Calendar.SUNDAY - 1;
191            private String _formName = "fm";
192            private String _imageInputId;
193            private boolean _monthAndYearNullable;
194            private String _monthAndYearParam = StringPool.BLANK;
195            private boolean _monthNullable;
196            private String _monthParam;
197            private int _monthValue = -1;
198            private String _name;
199            private boolean _yearNullable;
200            private String _yearParam;
201            private int _yearRangeEnd;
202            private int _yearRangeStart;
203            private int _yearValue;
204    
205    }