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.myportal.modules.myfavorites.services;
35
36 import fr.paris.lutece.plugins.myportal.business.Widget;
37 import fr.paris.lutece.plugins.myportal.modules.myfavorites.business.MyFavorites;
38 import fr.paris.lutece.plugins.myportal.modules.myfavorites.business.MyFavoritesHome;
39 import fr.paris.lutece.plugins.myportal.service.handler.WidgetHandler;
40 import fr.paris.lutece.portal.service.security.LuteceUser;
41 import fr.paris.lutece.portal.service.template.AppTemplateService;
42 import fr.paris.lutece.portal.service.util.AppPropertiesService;
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
57 public class MyFavoritesWidgetHandler implements WidgetHandler
58 {
59 private static final String NAME = "myfavorites";
60 private static final String DESCRIPTION = "MyFavorites Widget";
61
62
63 private static final String TEMPLATE_WIDGET_MYTASKS = "skin/plugins/myportal/modules/myfavorites/widget_myfavorites.html";
64
65
66 private static final String MARK_FAVORITES_LIST = "myfavorites_list";
67 private static final String MARK_FAVORITES_URL_RETURN = "myfavorites_url_return";
68 private static final String MARK_MYPORTAL_URL_RETURN = "myportal_url_return";
69 private static final String MARK_ID_WIDGET = "id_widget";
70
71
72 private static final String PROPERTY_FAVORITEs_URL_RETURN = "myportal-myfavorites.urlReturn.myfavorites";
73 private static final String PROPERTY_MYPORTAL_URL_RETURN = "myportal-myfavorites.urlReturn.myportal";
74
75
76
77
78 public String renderWidget( Widget widget, LuteceUser user, HttpServletRequest request )
79 {
80 List<MyFavorites> listMyFavorites = MyFavoritesHome.getMyFavoritessList( user.getName( ) );
81 Locale locale = request.getLocale( );
82
83 Map<String, Object> model = new HashMap<String, Object>( );
84 model.put( MARK_FAVORITES_LIST, listMyFavorites );
85 model.put( MARK_FAVORITES_URL_RETURN, AppPropertiesService.getProperty( PROPERTY_FAVORITEs_URL_RETURN ) );
86 model.put( MARK_MYPORTAL_URL_RETURN, AppPropertiesService.getProperty( PROPERTY_MYPORTAL_URL_RETURN ) );
87 model.put( MARK_ID_WIDGET, widget.getIdWidget( ) );
88
89 HtmlTemplate template = AppTemplateService.getTemplate( TEMPLATE_WIDGET_MYTASKS, locale, model );
90
91 return template.getHtml( );
92 }
93
94
95
96
97 public String getName( )
98 {
99 return NAME;
100 }
101
102
103
104
105 public String getDescription( )
106 {
107 return DESCRIPTION;
108 }
109
110
111
112
113 public boolean isCustomizable( )
114 {
115 return true;
116 }
117 }