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.directory.web;
35
36 import fr.paris.lutece.plugins.directory.business.Directory;
37 import fr.paris.lutece.plugins.directory.service.DirectoryResourceIdService;
38 import fr.paris.lutece.plugins.directory.service.DirectoryService;
39 import fr.paris.lutece.portal.business.rbac.RBAC;
40 import fr.paris.lutece.portal.business.user.AdminUser;
41 import fr.paris.lutece.portal.service.dashboard.admin.AdminDashboardComponent;
42 import fr.paris.lutece.portal.service.rbac.RBACService;
43 import fr.paris.lutece.portal.service.template.AppTemplateService;
44 import fr.paris.lutece.portal.service.util.AppPathService;
45 import fr.paris.lutece.util.html.HtmlTemplate;
46
47 import java.util.Map;
48
49 import javax.servlet.http.HttpServletRequest;
50
51
52
53
54
55
56 public class DirectoryAdminDashboardComponent extends AdminDashboardComponent
57 {
58
59 private static final String EMPTY_STRING = "";
60
61
62 private static final String MARK_LOCALE = "locale";
63 private static final String MARK_WEBAPP_URL = "webapp_url";
64
65
66 private static final String TEMPLATE_ADMIN_DASHBOARD = "admin/plugins/directory/directory_admindashboard.html";
67
68
69
70
71
72 @Override
73 public String getDashboardData( AdminUser user, HttpServletRequest request )
74 {
75 if ( RBACService.isAuthorized( Directory.RESOURCE_TYPE, RBAC.WILDCARD_RESOURCES_ID, DirectoryResourceIdService.PERMISSION_MANAGE_ADVANCED_PARAMETERS,
76 user ) )
77 {
78 Map<String, Object> model = DirectoryService.getInstance( ).getManageAdvancedParameters( user );
79 model.put( MARK_WEBAPP_URL, AppPathService.getBaseUrl( request ) );
80 model.put( MARK_LOCALE, user.getLocale( ) );
81
82 HtmlTemplate template = AppTemplateService.getTemplate( TEMPLATE_ADMIN_DASHBOARD, user.getLocale( ), model );
83
84 return template.getHtml( );
85 }
86
87 return EMPTY_STRING;
88 }
89 }