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.rss.web;
35
36 import fr.paris.lutece.plugins.rss.business.RssFeed;
37 import fr.paris.lutece.plugins.rss.business.RssFeedHome;
38 import fr.paris.lutece.portal.service.i18n.I18nService;
39 import fr.paris.lutece.portal.service.plugin.Plugin;
40 import fr.paris.lutece.portal.service.template.AppTemplateService;
41 import fr.paris.lutece.portal.web.xpages.XPage;
42 import fr.paris.lutece.portal.web.xpages.XPageApplication;
43 import fr.paris.lutece.util.html.HtmlTemplate;
44
45 import java.util.HashMap;
46 import java.util.List;
47 import java.util.Locale;
48 import java.util.Map;
49
50 import javax.servlet.http.HttpServletRequest;
51
52
53
54
55
56 public class RssListApp implements XPageApplication
57 {
58 private static final String TEMPLATE_RSS_LIST = "skin/plugins/rss/rss_list.html";
59 private static final String PROPERTY_PAGE_TITLE = "rssList.pageTitle";
60 private static final String PROPERTY_PAGE_PATH_LABEL = "rssList.pagePathLabel";
61 private static final String MARK_RSS_FEEDS_LIST = "rss_feeds_list";
62
63
64
65
66 public XPage getPage( HttpServletRequest request, int nMode, Plugin plugin )
67 {
68 XPage page = new XPage( );
69
70 Locale locale = request.getLocale( );
71
72 Map<String, Object> model = new HashMap<String, Object>( );
73
74
75 List<RssFeed> listRssFeedList = RssFeedHome.getRssFeeds( );
76 model.put( MARK_RSS_FEEDS_LIST, listRssFeedList );
77
78 HtmlTemplate template = AppTemplateService.getTemplate( TEMPLATE_RSS_LIST, locale, model );
79 String strPageTitle = I18nService.getLocalizedString( PROPERTY_PAGE_TITLE, locale );
80 String strPagePathLabel = I18nService.getLocalizedString( PROPERTY_PAGE_PATH_LABEL, locale );
81
82 page.setContent( template.getHtml( ) );
83 page.setTitle( strPageTitle );
84 page.setPathLabel( strPagePathLabel );
85
86 return page;
87 }
88 }