1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package fr.paris.lutece.plugins.jasper.web.portlet;
35
36 import fr.paris.lutece.plugins.jasper.business.portlet.JasperPortlet;
37 import fr.paris.lutece.plugins.jasper.business.portlet.JasperPortletHome;
38 import fr.paris.lutece.portal.business.portlet.PortletHome;
39 import fr.paris.lutece.portal.service.template.AppTemplateService;
40 import fr.paris.lutece.portal.web.portlet.PortletJspBean;
41 import fr.paris.lutece.util.ReferenceList;
42 import fr.paris.lutece.util.html.HtmlTemplate;
43
44 import java.util.*;
45
46 import javax.servlet.http.HttpServletRequest;
47
48
49
50
51 public class JasperPortletJspBean extends PortletJspBean
52 {
53
54
55
56
57
58
59 public static final String RIGHT_MANAGE_ADMIN_SITE = "CORE_ADMIN_SITE";
60
61
62 private static final String PARAMETER_PAGE_ID = "page_id";
63 private static final String PARAMETER_PORTLET_ID = "portlet_id";
64 private static final String PARAMETER_PORTLET_TYPE_ID = "portlet_type_id";
65 private static final String PARAMETER_FEED_ID = "feed_id";
66 private static final String COMBO_FEED_LIST = "@combo_feeds@";
67 private static final String MARK_FEED_LIST = "feed_list";
68 private static final String MARK_FEED_ID = "default_feed_id";
69
70
71
72 private static final String TEMPLATE_COMBO_FEEDS = "admin/plugins/jasper/portlet/combo_feed_jasper.html";
73
74
75
76
77
78
79 public String getPropertiesPrefix( )
80 {
81 return "portlet.jasper";
82 }
83
84
85
86
87
88
89
90
91 public String getCreate( HttpServletRequest request )
92 {
93 String strPageId = request.getParameter( PARAMETER_PAGE_ID );
94 String strPortletTypeId = request.getParameter( PARAMETER_PORTLET_TYPE_ID );
95 HtmlTemplate template = getCreateTemplate( strPageId, strPortletTypeId );
96 ReferenceList listFeeds = getDummyList( );
97 String strHtmlCombo = getFeedIndexCombo( listFeeds, "" );
98 template.substitute( COMBO_FEED_LIST, strHtmlCombo );
99
100 return template.getHtml( );
101 }
102
103
104
105
106
107
108
109
110 public String getModify( HttpServletRequest request )
111 {
112 String strPortletId = request.getParameter( PARAMETER_PORTLET_ID );
113 int nPortletId = Integer.parseInt( strPortletId );
114 JasperPortlet/../../../../fr/paris/lutece/plugins/jasper/business/portlet/JasperPortlet.html#JasperPortlet">JasperPortlet portlet = (JasperPortlet) PortletHome.findByPrimaryKey( nPortletId );
115 HtmlTemplate template = getModifyTemplate( portlet );
116
117
118 ReferenceList listFeeds = getDummyList( );
119 String strHtmlCombo = getFeedIndexCombo( listFeeds, portlet.getJasperFeedId( ) );
120 template.substitute( COMBO_FEED_LIST, strHtmlCombo );
121
122 return template.getHtml( );
123 }
124
125
126
127
128
129
130
131
132 public String doCreate( HttpServletRequest request )
133 {
134 JasperPortletper/business/portlet/JasperPortlet.html#JasperPortlet">JasperPortlet portlet = new JasperPortlet( );
135
136
137 String strPageId = request.getParameter( PARAMETER_PAGE_ID );
138 int nPageId = Integer.parseInt( strPageId );
139 String strFeedId = request.getParameter( PARAMETER_FEED_ID );
140
141
142 String strErrorUrl = setPortletCommonData( request, portlet );
143
144 if ( strErrorUrl != null )
145 {
146 return strErrorUrl;
147 }
148
149 portlet.setPageId( nPageId );
150 portlet.setJasperFeedId( strFeedId );
151
152
153 JasperPortletHome.getInstance( ).create( portlet );
154
155
156 return getPageUrl( nPageId );
157 }
158
159
160
161
162
163
164
165
166 public String doModify( HttpServletRequest request )
167 {
168
169 String strPortletId = request.getParameter( PARAMETER_PORTLET_ID );
170 int nPortletId = Integer.parseInt( strPortletId );
171 JasperPortlet/../../../../fr/paris/lutece/plugins/jasper/business/portlet/JasperPortlet.html#JasperPortlet">JasperPortlet portlet = (JasperPortlet) PortletHome.findByPrimaryKey( nPortletId );
172
173
174 String strErrorUrl = setPortletCommonData( request, portlet );
175
176 if ( strErrorUrl != null )
177 {
178 return strErrorUrl;
179 }
180
181
182 String strFeedId = request.getParameter( PARAMETER_FEED_ID );
183 portlet.setJasperFeedId( strFeedId );
184
185
186 portlet.update( );
187
188
189 return getPageUrl( portlet.getPageId( ) );
190 }
191
192
193
194
195
196
197
198
199
200
201 String getFeedIndexCombo( ReferenceList listFeeds, String strDefaultFeedId )
202 {
203 Map<String, Object> model = new HashMap<String, Object>( );
204 model.put( MARK_FEED_LIST, listFeeds );
205 model.put( MARK_FEED_ID, strDefaultFeedId );
206
207 HtmlTemplate templateCombo = AppTemplateService.getTemplate( TEMPLATE_COMBO_FEEDS, getLocale( ), model );
208
209 return templateCombo.getHtml( );
210 }
211
212
213 ReferenceList getDummyList( )
214 {
215 ReferenceList list = new ReferenceList( );
216
217 list.addItem( "1", "Jasper" );
218 list.addItem( "2", "Two" );
219
220 return list;
221 }
222 }