1   /**
2    * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved.
3    *
4    * The contents of this file are subject to the terms of the Liferay Enterprise
5    * Subscription License ("License"). You may not use this file except in
6    * compliance with the License. You can obtain a copy of the License by
7    * contacting Liferay, Inc. See the License for the specific language governing
8    * permissions and limitations under the License, including but not limited to
9    * distribution rights of the Software.
10   *
11   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12   * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13   * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14   * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15   * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
17   * SOFTWARE.
18   */
19  
20  package com.liferay.taglib.ui;
21  
22  import com.liferay.taglib.util.IncludeTag;
23  
24  import java.text.DateFormat;
25  
26  import java.util.Set;
27  
28  import javax.servlet.http.HttpServletRequest;
29  
30  /**
31   * <a href="CalendarTag.java.html"><b><i>View Source</i></b></a>
32   *
33   * @author Brian Wing Shun Chan
34   *
35   */
36  public class CalendarTag extends IncludeTag {
37  
38      public int doStartTag() {
39          HttpServletRequest request =
40              (HttpServletRequest)pageContext.getRequest();
41  
42          request.setAttribute(
43              "liferay-ui:calendar:month", String.valueOf(_month));
44          request.setAttribute("liferay-ui:calendar:day", String.valueOf(_day));
45          request.setAttribute("liferay-ui:calendar:year", String.valueOf(_year));
46          request.setAttribute(
47              "liferay-ui:calendar:headerPattern", _headerPattern);
48          request.setAttribute("liferay-ui:calendar:headerFormat", _headerFormat);
49          request.setAttribute("liferay-ui:calendar:data", _data);
50          request.setAttribute(
51              "liferay-ui:calendar:showAllPotentialWeeks",
52              String.valueOf(_showAllPotentialWeeks));
53  
54          return EVAL_BODY_BUFFERED;
55      }
56  
57      public void setMonth(int month) {
58          _month = month;
59      }
60  
61      public void setDay(int day) {
62          _day = day;
63      }
64  
65      public void setYear(int year) {
66          _year = year;
67      }
68  
69      public void setHeaderPattern(String headerPattern) {
70          _headerPattern = headerPattern;
71      }
72  
73      public void setHeaderFormat(DateFormat headerFormat) {
74          _headerFormat = headerFormat;
75      }
76  
77      public void setData(Set<Integer> data) {
78          _data = data;
79      }
80  
81      public void setShowAllPotentialWeeks(boolean showAllPotentialWeeks) {
82          _showAllPotentialWeeks = showAllPotentialWeeks;
83      }
84  
85      protected String getDefaultPage() {
86          return _PAGE;
87      }
88  
89      private static final String _PAGE = "/html/taglib/ui/calendar/page.jsp";
90  
91      private int _month;
92      private int _day;
93      private int _year;
94      private String _headerPattern;
95      private DateFormat _headerFormat;
96      private Set<Integer> _data;
97      private boolean _showAllPotentialWeeks;
98  
99  }