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
35 package fr.paris.lutece.plugins.transparency.web;
36
37 import fr.paris.lutece.plugins.transparency.business.Lobby;
38 import fr.paris.lutece.plugins.transparency.business.LobbyHome;
39 import fr.paris.lutece.portal.web.xpages.XPage;
40 import fr.paris.lutece.portal.util.mvc.xpage.MVCApplication;
41 import fr.paris.lutece.portal.util.mvc.commons.annotations.View;
42 import fr.paris.lutece.portal.util.mvc.xpage.annotations.Controller;
43 import fr.paris.lutece.portal.service.util.AppPropertiesService;
44
45 import java.util.Map;
46 import javax.servlet.http.HttpServletRequest;
47
48
49
50
51 @Controller( xpageName = "lobby", pageTitleI18nKey = "transparency.xpage.lobby.pageTitle", pagePathI18nKey = "transparency.xpage.lobby.pagePathLabel" )
52 public class LobbyXPage extends MVCApplication
53 {
54
55 private static final String TEMPLATE_MANAGE_LOBBIES = "/skin/plugins/transparency/manage_lobbies.html";
56 private static final String TEMPLATE_DETAIL_LOBBY = "/skin/plugins/transparency/detail_lobby.html";
57
58
59 private static final String PARAMETER_ID_LOBBY = "id";
60
61
62 private static final String MARK_LOBBY_LIST = "lobby_list";
63 private static final String MARK_LOBBY = "lobby";
64 private static final String MARK_LOBBY_REFERENCE_START_URL = "lobbyReferenceStartUrl";
65
66
67 private static final String VIEW_MANAGE_LOBBIES = "manageLobbies";
68 private static final String VIEW_DETAIL_LOBBY = "detailLobby";
69
70
71 private static final String PROPERTY_LOBBY_REFERENCE_START_URL_KEY = "lobby.json.detail.startUrl";
72
73
74 private Lobby _lobby;
75
76
77
78
79
80
81
82
83 @View( value = VIEW_MANAGE_LOBBIES, defaultView = true )
84 public XPage getManageLobbies( HttpServletRequest request )
85 {
86 _lobby = null;
87 Map<String, Object> model = getModel( );
88 model.put( MARK_LOBBY_LIST, LobbyHome.getLobbiesList( ) );
89
90 return getXPage( TEMPLATE_MANAGE_LOBBIES, request.getLocale( ), model );
91 }
92
93
94
95
96
97
98
99
100 @View( VIEW_DETAIL_LOBBY )
101 public XPage getDetailLobby( HttpServletRequest request )
102 {
103 int nId = Integer.parseInt( request.getParameter( PARAMETER_ID_LOBBY ) );
104
105 if ( _lobby == null || ( _lobby.getId( ) != nId ) )
106 {
107 _lobby = LobbyHome.findByPrimaryKey( nId );
108 }
109
110 Map<String, Object> model = getModel( );
111 model.put( MARK_LOBBY, _lobby );
112
113 model.put( MARK_LOBBY_REFERENCE_START_URL, AppPropertiesService.getProperty( PROPERTY_LOBBY_REFERENCE_START_URL_KEY ) );
114
115 return getXPage( TEMPLATE_DETAIL_LOBBY, request.getLocale( ), model );
116 }
117
118 }