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.address.modules.autocomplete.web;
35
36 import java.util.HashMap;
37 import java.util.Map;
38 import java.util.logging.Logger;
39
40 import javax.servlet.http.HttpServletRequest;
41
42 import fr.paris.lutece.portal.service.template.AppTemplateService;
43 import fr.paris.lutece.portal.service.util.AppPathService;
44 import fr.paris.lutece.portal.service.util.AppPropertiesService;
45 import fr.paris.lutece.portal.web.admin.PluginAdminPageJspBean;
46
47 public class SuggestPOIJSPBean extends PluginAdminPageJspBean
48 {
49
50
51
52
53 private static final long serialVersionUID = 4190973800934420917L;
54
55 @SuppressWarnings( "unused" )
56 private static final Logger logger = Logger.getLogger( SuggestPOIJSPBean.class.getName( ) );
57
58
59
60 private static final String _PROP_PREFIX = "address-autocomplete.suggestPOI.";
61
62 private static final String SUBPROP_WS_URL = "ws.url";
63 private static final String SUBPROP_WS_DATATYPE = "ws.datatype";
64 private static final String SUBPROP_WS_APIINPUT = "ws.apiinput";
65 private static final String SUBPROP_UI_DELAY = "ui.delay";
66 private static final String SUBPROP_PARAM_QUERY_MIN_LENGTH = "param.query.minLength";
67 private static final String SUBPROP_PARAM_ONSELECTUPDATEDOM = "param.onSelectUpdateDom";
68 private static final String SUBPROP_PARAM_TYPES_DEFAULT = "param.types.default";
69 private static final String SUBPROP_PARAM_BANTYPE_DEFAULT = "param.bantype.default";
70 private static final String SUBPROP_PARAM_BANLAT_DEFAULT = "param.banlat.default";
71 private static final String SUBPROP_PARAM_BANLON_DEFAULT = "param.banlon.default";
72 private static final String SUBPROP_PARAM_BANPOSTCODE_DEFAULT = "param.banpostcode.default";
73 private static final String SUBPROP_PARAM_BANCITYCODE_DEFAULT = "param.bancitycode.default";
74 private static final String SUBPROP_PARAM_NB_RESULTS_DEFAULT = "param.nbResults.default";
75 private static final String SUBPROP_PARAM_CLIENT_ID = "param.clientId";
76 private static final String SUBPROP_PARAM_STOREADRFILTER_DEFAULT = "param.storeadrfilter.default";
77
78 private static final String PROP_WS_URL = _PROP_PREFIX + SUBPROP_WS_URL;
79 private static final String PROP_WS_DATATYPE = _PROP_PREFIX + SUBPROP_WS_DATATYPE;
80 private static final String PROP_WS_APIINPUT = _PROP_PREFIX + SUBPROP_WS_APIINPUT;
81 private static final String PROP_UI_DELAY = _PROP_PREFIX + SUBPROP_UI_DELAY;
82 private static final String PROP_PARAM_QUERY_MIN_LENGTH = _PROP_PREFIX + SUBPROP_PARAM_QUERY_MIN_LENGTH;
83 private static final String PROP_PARAM_ONSELECTUPDATEDOM = _PROP_PREFIX + SUBPROP_PARAM_ONSELECTUPDATEDOM;
84 private static final String PROP_PARAM_TYPES_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_TYPES_DEFAULT;
85 private static final String PROP_PARAM_BANTYPE_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_BANTYPE_DEFAULT;
86 private static final String PROP_PARAM_BANLAT_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_BANLAT_DEFAULT;
87 private static final String PROP_PARAM_BANLON_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_BANLON_DEFAULT;
88 private static final String PROP_PARAM_BANPOSTCODE_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_BANPOSTCODE_DEFAULT;
89 private static final String PROP_PARAM_BANCITYCODE_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_BANCITYCODE_DEFAULT;
90 private static final String PROP_PARAM_NB_RESULTS_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_NB_RESULTS_DEFAULT;
91 private static final String PROP_PARAM_CLIENT_ID = _PROP_PREFIX + SUBPROP_PARAM_CLIENT_ID;
92 private static final String PROP_PARAM_STOREADRFILTER_DEFAULT = _PROP_PREFIX + SUBPROP_PARAM_STOREADRFILTER_DEFAULT;
93
94
95
96 private static final String KEY_BASE_URL = "base_url";
97
98 private static final String KEY_WS_URL = SUBPROP_WS_URL.replace( '.', '_' );
99 private static final String KEY_WS_DATATYPE = SUBPROP_WS_DATATYPE.replace( '.', '_' );
100 private static final String KEY_WS_APIINPUT = SUBPROP_WS_APIINPUT.replace( '.', '_' );
101 private static final String KEY_UI_DELAY = SUBPROP_UI_DELAY.replace( '.', '_' );
102 private static final String KEY_PARAM_QUERY_MIN_LENGTH = SUBPROP_PARAM_QUERY_MIN_LENGTH.replace( '.', '_' );
103 private static final String KEY_PARAM_ONSELECTUPDATEDOM = SUBPROP_PARAM_ONSELECTUPDATEDOM.replace( '.', '_' );
104 private static final String KEY_PARAM_TYPES_DEFAULT = SUBPROP_PARAM_TYPES_DEFAULT.replace( '.', '_' );
105 private static final String KEY_PARAM_BANTYPE_DEFAULT = SUBPROP_PARAM_BANTYPE_DEFAULT.replace( '.', '_' );
106 private static final String KEY_PARAM_BANLAT_DEFAULT = SUBPROP_PARAM_BANLAT_DEFAULT.replace( '.', '_' );
107 private static final String KEY_PARAM_BANLON_DEFAULT = SUBPROP_PARAM_BANLON_DEFAULT.replace( '.', '_' );
108 private static final String KEY_PARAM_BANPOSTCODE_DEFAULT = SUBPROP_PARAM_BANPOSTCODE_DEFAULT.replace( '.', '_' );
109 private static final String KEY_PARAM_BANCITYCODE_DEFAULT = SUBPROP_PARAM_BANCITYCODE_DEFAULT.replace( '.', '_' );
110 private static final String KEY_PARAM_NB_RESULTS_DEFAULT = SUBPROP_PARAM_NB_RESULTS_DEFAULT.replace( '.', '_' );
111 private static final String KEY_PARAM_CLIENT_ID = SUBPROP_PARAM_CLIENT_ID.replace( '.', '_' );
112 private static final String KEY_PARAM_STOREADRFILTER_DEFAULT = SUBPROP_PARAM_STOREADRFILTER_DEFAULT.replace( '.', '_' );
113
114
115
116
117 private static final String TPL_PORTAL = "skin/plugins/address/modules/autocomplete/setupSuggestPOI.js";
118 private static final String TPL_ADMIN = "admin/plugins/address/modules/autocomplete/setupSuggestPOI.js";
119
120
121
122
123
124
125
126
127 private Map<String, String> getInitSuggestPOIModel( HttpServletRequest request )
128 {
129
130 Map<String, String> model = new HashMap<String, String>( );
131
132 model.put( KEY_BASE_URL, AppPathService.getBaseUrl( request ) );
133
134 model.put( KEY_WS_URL, AppPropertiesService.getProperty( PROP_WS_URL ) );
135 model.put( KEY_WS_DATATYPE, AppPropertiesService.getProperty( PROP_WS_DATATYPE ) );
136 model.put( KEY_WS_APIINPUT, AppPropertiesService.getProperty( PROP_WS_APIINPUT ) );
137 model.put( KEY_UI_DELAY, AppPropertiesService.getProperty( PROP_UI_DELAY ) );
138 model.put( KEY_PARAM_QUERY_MIN_LENGTH, AppPropertiesService.getProperty( PROP_PARAM_QUERY_MIN_LENGTH ) );
139 model.put( KEY_PARAM_ONSELECTUPDATEDOM, AppPropertiesService.getProperty( PROP_PARAM_ONSELECTUPDATEDOM ) );
140 model.put( KEY_PARAM_TYPES_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_TYPES_DEFAULT ) );
141 model.put( KEY_PARAM_BANTYPE_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_BANTYPE_DEFAULT ) );
142 model.put( KEY_PARAM_BANLAT_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_BANLAT_DEFAULT ) );
143 model.put( KEY_PARAM_BANLON_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_BANLON_DEFAULT ) );
144 model.put( KEY_PARAM_BANPOSTCODE_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_BANPOSTCODE_DEFAULT ) );
145 model.put( KEY_PARAM_BANCITYCODE_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_BANCITYCODE_DEFAULT ) );
146 model.put( KEY_PARAM_NB_RESULTS_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_NB_RESULTS_DEFAULT ) );
147 model.put( KEY_PARAM_CLIENT_ID, AppPropertiesService.getProperty( PROP_PARAM_CLIENT_ID ) );
148 model.put( KEY_PARAM_STOREADRFILTER_DEFAULT, AppPropertiesService.getProperty( PROP_PARAM_STOREADRFILTER_DEFAULT ) );
149
150 return model;
151 }
152
153
154
155
156
157
158
159
160
161
162
163
164 public String getSetupSuggestPOIJavaScriptPortal( HttpServletRequest request )
165 {
166
167 Map<String, String> model = this.getInitSuggestPOIModel( request );
168 return AppTemplateService.getTemplate( TPL_PORTAL, this.getLocale( ), model ).getHtml( );
169 }
170
171
172
173
174
175
176
177
178 public String getSetupSuggestPOIJavaScriptAdmin( HttpServletRequest request )
179 {
180
181 Map<String, String> model = this.getInitSuggestPOIModel( request );
182 return AppTemplateService.getTemplate( TPL_ADMIN, this.getLocale( ), model ).getHtml( );
183 }
184 }