1   /**
2    * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
3    *
4    * This library is free software; you can redistribute it and/or modify it under
5    * the terms of the GNU Lesser General Public License as published by the Free
6    * Software Foundation; either version 2.1 of the License, or (at your option)
7    * any later version.
8    *
9    * This library is distributed in the hope that it will be useful, but WITHOUT
10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11   * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12   * details.
13   */
14  
15  package com.liferay.taglib.ui;
16  
17  import com.liferay.portal.kernel.util.Validator;
18  import com.liferay.taglib.util.IncludeTag;
19  
20  import javax.servlet.http.HttpServletRequest;
21  
22  /**
23   * <a href="DiscussionTag.java.html"><b><i>View Source</i></b></a>
24   *
25   * @author Charles May
26   */
27  public class DiscussionTag extends IncludeTag {
28  
29      public void setClassName(String className) {
30          _className = className;
31      }
32  
33      public void setClassPK(long classPK) {
34          _classPK = classPK;
35      }
36  
37      public void setFormAction(String formAction) {
38          _formAction = formAction;
39      }
40  
41      public void setFormName(String formName) {
42          _formName = formName;
43      }
44  
45      public void setPermissionClassName(String permissionClassName) {
46          _permissionClassName = permissionClassName;
47      }
48  
49      public void setPermissionClassPK(long permissionClassPK) {
50          _permissionClassPK = permissionClassPK;
51      }
52  
53      public void setRatingsEnabled(boolean ratingsEnabled) {
54          _ratingsEnabled = ratingsEnabled;
55      }
56  
57      public void setRedirect(String redirect) {
58          _redirect = redirect;
59      }
60  
61      public void setSubject(String subject) {
62          _subject = subject;
63      }
64  
65      public void setUserId(long userId) {
66          _userId = userId;
67      }
68  
69      protected void cleanUp() {
70          _className = null;
71          _classPK = 0;
72          _formAction = null;
73          _formName = "fm";
74          _permissionClassName = null;
75          _permissionClassPK = 0;
76          _ratingsEnabled = true;
77          _redirect = null;
78          _subject = null;
79          _userId = 0;
80      }
81  
82      protected String getPage() {
83          return _PAGE;
84      }
85  
86      protected void setAttributes(HttpServletRequest request) {
87          String permissionClassName = _permissionClassName;
88  
89          if (Validator.isNull(permissionClassName)) {
90              permissionClassName = _className;
91          }
92  
93          long permissionClassPK = _permissionClassPK;
94  
95          if (permissionClassPK == 0) {
96              permissionClassPK = _classPK;
97          }
98  
99          request.setAttribute("liferay-ui:discussion:className", _className);
100         request.setAttribute(
101             "liferay-ui:discussion:classPK", String.valueOf(_classPK));
102         request.setAttribute("liferay-ui:discussion:formAction", _formAction);
103         request.setAttribute("liferay-ui:discussion:formName", _formName);
104         request.setAttribute(
105             "liferay-ui:discussion:permissionClassName", permissionClassName);
106         request.setAttribute(
107             "liferay-ui:discussion:permissionClassPK",
108             String.valueOf(permissionClassPK));
109         request.setAttribute(
110             "liferay-ui:discussion:ratingsEnabled",
111             String.valueOf(_ratingsEnabled));
112         request.setAttribute("liferay-ui:discussion:redirect", _redirect);
113         request.setAttribute("liferay-ui:discussion:subject", _subject);
114         request.setAttribute(
115             "liferay-ui:discussion:userId", String.valueOf(_userId));
116     }
117 
118     private static final String _PAGE = "/html/taglib/ui/discussion/page.jsp";
119 
120     private String _className;
121     private long _classPK;
122     private String _formAction;
123     private String _formName = "fm";
124     private String _permissionClassName;
125     private long _permissionClassPK;
126     private boolean _ratingsEnabled = true;
127     private String _redirect;
128     private String _subject;
129     private long _userId;
130 
131 }