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 setYearNullable(boolean yearNullable) {
086                    _yearNullable = yearNullable;
087            }
088    
089            public void setYearParam(String yearParam) {
090                    _yearParam = yearParam;
091            }
092    
093            public void setYearRangeEnd(int yearRangeEnd) {
094                    _yearRangeEnd = yearRangeEnd;
095            }
096    
097            public void setYearRangeStart(int yearRangeStart) {
098                    _yearRangeStart = yearRangeStart;
099            }
100    
101            public void setYearValue(int yearValue) {
102                    _yearValue = yearValue;
103            }
104    
105            @Override
106            protected void cleanUp() {
107                    _cssClass = null;
108                    _dayNullable = false;
109                    _dayParam = null;
110                    _dayValue = 0;
111                    _disabled = false;
112                    _disableNamespace = false;
113                    _firstDayOfWeek = Calendar.SUNDAY - 1;
114                    _formName = "fm";
115                    _imageInputId = null;
116                    _monthAndYearNullable = false;
117                    _monthAndYearParam = StringPool.BLANK;
118                    _monthNullable = false;
119                    _monthParam = null;
120                    _monthValue = -1;
121                    _yearNullable = false;
122                    _yearParam = null;
123                    _yearRangeEnd = 0;
124                    _yearRangeStart = 0;
125                    _yearValue = 0;
126            }
127    
128            @Override
129            protected String getPage() {
130                    return _PAGE;
131            }
132    
133            @Override
134            protected void setAttributes(HttpServletRequest request) {
135                    request.setAttribute("liferay-ui:input-date:cssClass",_cssClass);
136                    request.setAttribute(
137                            "liferay-ui:input-date:dayNullable", String.valueOf(_dayNullable));
138                    request.setAttribute("liferay-ui:input-date:dayParam", _dayParam);
139                    request.setAttribute(
140                            "liferay-ui:input-date:dayValue", String.valueOf(_dayValue));
141                    request.setAttribute(
142                            "liferay-ui:input-date:disabled", String.valueOf(_disabled));
143                    request.setAttribute(
144                            "liferay-ui:input-date:disableNamespace",
145                            String.valueOf(_disableNamespace));
146                    request.setAttribute(
147                            "liferay-ui:input-date:firstDayOfWeek",
148                            String.valueOf(_firstDayOfWeek));
149                    request.setAttribute("liferay-ui:input-date:formName", _formName);
150                    request.setAttribute(
151                            "liferay-ui:input-date:imageInputId", _imageInputId);
152                    request.setAttribute(
153                            "liferay-ui:input-date:monthAndYearNullable",
154                            String.valueOf(_monthAndYearNullable));
155                    request.setAttribute(
156                            "liferay-ui:input-date:monthAndYearParam", _monthAndYearParam);
157                    request.setAttribute(
158                            "liferay-ui:input-date:monthNullable",
159                            String.valueOf(_monthNullable));
160                    request.setAttribute("liferay-ui:input-date:monthParam", _monthParam);
161                    request.setAttribute(
162                            "liferay-ui:input-date:monthValue", String.valueOf(_monthValue));
163                    request.setAttribute(
164                            "liferay-ui:input-date:yearNullable",
165                            String.valueOf(_yearNullable));
166                    request.setAttribute("liferay-ui:input-date:yearParam", _yearParam);
167                    request.setAttribute(
168                            "liferay-ui:input-date:yearRangeEnd",
169                            String.valueOf(_yearRangeEnd));
170                    request.setAttribute(
171                            "liferay-ui:input-date:yearRangeStart",
172                            String.valueOf(_yearRangeStart));
173                    request.setAttribute(
174                            "liferay-ui:input-date:yearValue", String.valueOf(_yearValue));
175            }
176    
177            private static final String _PAGE = "/html/taglib/ui/input_date/page.jsp";
178    
179            private String _cssClass;
180            private boolean _dayNullable;
181            private String _dayParam;
182            private int _dayValue;
183            private boolean _disabled;
184            private boolean _disableNamespace;
185            private int _firstDayOfWeek = Calendar.SUNDAY - 1;
186            private String _formName = "fm";
187            private String _imageInputId;
188            private boolean _monthAndYearNullable;
189            private String _monthAndYearParam = StringPool.BLANK;
190            private boolean _monthNullable;
191            private String _monthParam;
192            private int _monthValue = -1;
193            private boolean _yearNullable;
194            private String _yearParam;
195            private int _yearRangeEnd;
196            private int _yearRangeStart;
197            private int _yearValue;
198    
199    }