1 | <!-- Projet Ether - $Id: jeu_imgL.jsp,v 1.4 2003/05/26 14:04:13 pn Exp $ --> |
---|
2 | <html> |
---|
3 | <META HTTP-EQUIV="Cache-Control" content="no-cache"> |
---|
4 | <META HTTP-EQUIV="Pragma" content="no-cache"> |
---|
5 | <META HTTP-EQUIV="Expires" content="Mon, 01 Jan 1990 12:00:00 GMT"> |
---|
6 | |
---|
7 | <%@ page import="fr.alcatel.ether.tools.*" %> |
---|
8 | <%@ page import="fr.alcatel.ether.app.common.*" %> |
---|
9 | <%@ page import="org.apache.ecs.html.*" %> |
---|
10 | <%@ page import="fr.alcatel.ether.app.data.EtherFile" %> |
---|
11 | <%@ page import="fr.alcatel.ether.app.data.DataSet"%> |
---|
12 | <%@ page import="java.util.Locale" %> |
---|
13 | |
---|
14 | <head> |
---|
15 | <% MultiLanguage ml = MultiLanguage.instance((Locale) JSPUtils.getSessionParameter(request, "langue")); %> |
---|
16 | |
---|
17 | <jsp:useBean scope="request" id="dataSetImageBean" class = "fr.alcatel.ether.bean.ImageBean"> |
---|
18 | </jsp:useBean> |
---|
19 | |
---|
20 | <title><%= ml.get("dataSetImage.titre")%></title> |
---|
21 | |
---|
22 | <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
---|
23 | <link rel="stylesheet" href="/ether/ether.css"></head> |
---|
24 | |
---|
25 | <SCRIPT language="JavaScript"> |
---|
26 | function help(url) |
---|
27 | { |
---|
28 | newWindow = window.open(url,'Help',' <%=Config.winParam %> '); |
---|
29 | newWindow.focus(); |
---|
30 | } |
---|
31 | |
---|
32 | <% |
---|
33 | String toAddPosY = ""; |
---|
34 | if (request.getParameter("posY") != null) |
---|
35 | { |
---|
36 | toAddPosY = "&posY="+ request.getParameter("posY") ; |
---|
37 | } |
---|
38 | %> |
---|
39 | |
---|
40 | function nextPageList() |
---|
41 | { |
---|
42 | self.window.location= '/etherP/servlet/SearchDataSetServletL?action=<%= Constants.SEARCH_DATASET_IMG_NEXT_PAGE_LIST %><%= toAddPosY %>'; |
---|
43 | } |
---|
44 | |
---|
45 | function previousPageList() |
---|
46 | { |
---|
47 | self.window.location= '/etherP/servlet/SearchDataSetServletL?action=<%= Constants.SEARCH_DATASET_IMG_PREV_PAGE_LIST %><%= toAddPosY %>'; |
---|
48 | } |
---|
49 | |
---|
50 | function goToPage(index) |
---|
51 | { |
---|
52 | self.window.location= '/etherP/servlet/SearchDataSetServletL?action=<%= Constants.SEARCH_DATASET_IMG_GOTO_PAGE %><%= toAddPosY %>&index=' + index; |
---|
53 | } |
---|
54 | |
---|
55 | function changeView() |
---|
56 | { |
---|
57 | self.window.location= '/etherP/servlet/SearchDataSetServletL?action=<%= Constants.SEARCH_DATASET_IMG_SWAP_VIEW %><%= toAddPosY %>'; |
---|
58 | } |
---|
59 | |
---|
60 | function showImage(img) |
---|
61 | { |
---|
62 | newWindow = window.open(img,'Image','menubar=1,scrollbars=yes,resizable=yes,width=700,height=500'); |
---|
63 | newWindow.focus(); |
---|
64 | } |
---|
65 | |
---|
66 | function backToDataSet() |
---|
67 | { |
---|
68 | <% if (session.getAttribute(Constants.ACCES_RAPIDE) != null ) |
---|
69 | {%> |
---|
70 | self.window.location='/etherP/servlet/SearchDataSetServletL?action=<%= Constants.SEARCH_DATASET_DISPLAY_CURRENT %><%= toAddPosY %>&<%= Constants.ACCES_RAPIDE %>=on'; |
---|
71 | <%} |
---|
72 | else |
---|
73 | { %> |
---|
74 | self.window.location='/etherP/servlet/SearchDataSetServletL?action=<%= Constants.SEARCH_DATASET_DISPLAY_CURRENT %><%= toAddPosY %>'; |
---|
75 | <% } %> |
---|
76 | } |
---|
77 | |
---|
78 | </SCRIPT> |
---|
79 | |
---|
80 | <body> |
---|
81 | <%Config.getConfig();%> |
---|
82 | <FORM NAME="imgform" METHOD="POST" ACTION=""> |
---|
83 | <table width="100%" border="0" cellspacing="0" cellpadding="4" align="center"> |
---|
84 | <tr> |
---|
85 | <td colspan="3" height="45"> |
---|
86 | <h1><%= ml.get("dataSetImage.titre")%></h1></td> |
---|
87 | </tr> |
---|
88 | <tr> |
---|
89 | <td height="16" class="tdLien" > |
---|
90 | <span class="lien"><a href="javascript:changeView();" class="aHaut"> |
---|
91 | <% |
---|
92 | if (dataSetImageBean.isMaxView()) |
---|
93 | out.println(ml.get("gestionImage.VueAvecCarac")); |
---|
94 | else |
---|
95 | out.println(ml.get("gestionImage.VueSansCarac")); |
---|
96 | %></a></span> |
---|
97 | </td> |
---|
98 | <td height="16" class="tdLien" > |
---|
99 | <span class="lien"><a href="javascript:backToDataSet();" class="aHaut"><%= ml.get("dataSetImage.backToDataSet")%></a></span> |
---|
100 | </td> |
---|
101 | <td height="16" class="tdLien" > |
---|
102 | <span class="info"><%= ml.get("dataSetImage.nbFiles")%> : <span class="number"><%= dataSetImageBean.size() %></span> |
---|
103 | </span> |
---|
104 | </td> |
---|
105 | </tr> |
---|
106 | </table> |
---|
107 | <span class="titrePage" align="left"><b><%= Config.tag_image_ligne %></b></span> |
---|
108 | <br> |
---|
109 | <% |
---|
110 | try { |
---|
111 | EtherImageTable table; |
---|
112 | String separator = "; "; |
---|
113 | |
---|
114 | if ( dataSetImageBean.isMaxView() ) |
---|
115 | { |
---|
116 | int nbTitles = 2; |
---|
117 | int nbRows = dataSetImageBean.getNbRowsToDisplay(); |
---|
118 | int nbTitleLines = ((dataSetImageBean.getLastIndex() - dataSetImageBean.getFirstIndex()) / nbRows) + 1 ; |
---|
119 | if ( (dataSetImageBean.getLastIndex() - dataSetImageBean.getFirstIndex() + 1) < nbRows ) |
---|
120 | { |
---|
121 | nbRows = dataSetImageBean.getLastIndex() - dataSetImageBean.getFirstIndex() + 1; |
---|
122 | } |
---|
123 | table = new EtherImageTable(nbTitles * nbTitleLines,nbRows); |
---|
124 | table.setAlign( "center" );table.setWidth( "100%" );table.setCellPadding("2"); |
---|
125 | String[] titles = new String[2 * nbTitleLines]; |
---|
126 | for ( int i = 0 ; i < nbTitleLines; i++ ) |
---|
127 | { |
---|
128 | titles[i * nbTitles] = " "; |
---|
129 | titles[(i * nbTitles) +1] = ml.get("Image.Fichier"); |
---|
130 | } |
---|
131 | table.setTitles(titles); |
---|
132 | table.setNbTitlesByLine(nbTitles); |
---|
133 | |
---|
134 | int nbDataLine = 0; |
---|
135 | int rowNumber = 0; |
---|
136 | |
---|
137 | for ( int i = dataSetImageBean.getFirstIndex() ; i <= dataSetImageBean.getLastIndex(); i++ ) |
---|
138 | { |
---|
139 | EtherFile file = dataSetImageBean.elementAt(i); |
---|
140 | IMG img = new IMG(dataSetImageBean.getThumbnailUrl(i), "img_" + i,0 ); |
---|
141 | // description preparation |
---|
142 | StringBuffer description = new StringBuffer(); |
---|
143 | if ( file.getFirstDate() != null) |
---|
144 | { |
---|
145 | description.append(ml.get("commun.DateDeb")+ ": ").append(file.getFirstObservationUTCDate()).append(separator); |
---|
146 | } |
---|
147 | if ( file.getLastDate() != null) |
---|
148 | { |
---|
149 | description.append(ml.get("commun.DateFin")+ ": ").append(file.getLastObservationUTCDate()).append(separator); |
---|
150 | } |
---|
151 | if ( file.getMinLongitude() != Constants.NO_DOUBLE ) |
---|
152 | { |
---|
153 | description.append(ml.get("commun.LonMin")+ ": ").append(file.getMinLongitude()).append(separator); |
---|
154 | } |
---|
155 | if ( file.getMaxLongitude() != Constants.NO_DOUBLE ) |
---|
156 | { |
---|
157 | description.append(ml.get("commun.LonMax")+ ": ").append(file.getMaxLongitude()).append(separator); |
---|
158 | } |
---|
159 | if ( file.getMinLatitude() != Constants.NO_DOUBLE ) |
---|
160 | { |
---|
161 | description.append(ml.get("commun.LatMin")+ ": ").append(file.getMinLatitude()).append(separator); |
---|
162 | } |
---|
163 | if ( file.getMaxLatitude() != Constants.NO_DOUBLE ) |
---|
164 | { |
---|
165 | description.append(ml.get("commun.LatMax")+ ": ").append(file.getMaxLatitude()).append(separator); |
---|
166 | } |
---|
167 | description.append(ml.get("commun.Experience")+ ": ").append(file.getExperimentName()).append(separator); |
---|
168 | description.append(ml.get("commun.Composant")+ ": ").append(file.getParameter()).append(separator); |
---|
169 | description.append(ml.get("commun.SubParameter")+ ": ").append(file.getSubParameter()).append(separator); |
---|
170 | img.setAlt(description.toString()); |
---|
171 | |
---|
172 | table.setCellContent(nbDataLine,rowNumber,"<a href=\"javascript:showImage('" + dataSetImageBean.getFileUrl(i) + "');\">" + img.toString() + "</a>"); |
---|
173 | table.setCellContent(nbDataLine + 1,rowNumber,"<font class=moyen>" + "<a href=\"javascript:showImage('" + dataSetImageBean.getFileUrl(i) + "');\">" + dataSetImageBean.getFileName(i) + " (" + (file.getSize() / 1024) + ml.get("KO") + ")</a></font>"); |
---|
174 | rowNumber++; |
---|
175 | if ( rowNumber == nbRows ) |
---|
176 | { |
---|
177 | rowNumber = 0; |
---|
178 | nbDataLine = nbDataLine + nbTitles; |
---|
179 | } |
---|
180 | } |
---|
181 | out.println( table.generate() ); |
---|
182 | } |
---|
183 | else |
---|
184 | { |
---|
185 | int nbRows = dataSetImageBean.getLastIndex() - dataSetImageBean.getFirstIndex() + 1; |
---|
186 | table = new EtherImageTable(15,nbRows); |
---|
187 | table.setAlign( "center" );table.setWidth( "100%" );table.setCellPadding("2"); |
---|
188 | table.setTitles(new String[]{ " ",ml.get("Image.Fichier"), |
---|
189 | ml.get("commun.Experience"),ml.get("commun.Composant"),ml.get("commun.SubParameter"), |
---|
190 | ml.get("commun.DateDeb"),ml.get("commun.DateFin"), |
---|
191 | ml.get("commun.LonMin"), ml.get("commun.LonMax"), ml.get("commun.LatMin"), ml.get("commun.LatMax"), ml.get("commun.Version"),ml.get("commun.Format"), |
---|
192 | ml.get("commun.Level"),ml.get("commun.SubLevel")}); |
---|
193 | |
---|
194 | int rowNumber = 0; |
---|
195 | for ( int i = dataSetImageBean.getFirstIndex() ; i <= dataSetImageBean.getLastIndex(); i++ ) |
---|
196 | { |
---|
197 | EtherFile file = dataSetImageBean.elementAt(i); |
---|
198 | IMG img = new IMG(dataSetImageBean.getThumbnailUrl(i), "img_" + i,0 ); |
---|
199 | // description preparation |
---|
200 | StringBuffer description = new StringBuffer(); |
---|
201 | if ( file.getFirstDate() != null) |
---|
202 | { |
---|
203 | description.append(ml.get("commun.DateDeb")+ ": ").append(file.getFirstObservationUTCDate()).append(separator); |
---|
204 | } |
---|
205 | if ( file.getLastDate() != null) |
---|
206 | { |
---|
207 | description.append(ml.get("commun.DateFin")+ ": ").append(file.getLastObservationUTCDate()).append(separator); |
---|
208 | } |
---|
209 | if ( file.getMinLongitude() != Constants.NO_DOUBLE ) |
---|
210 | { |
---|
211 | description.append(ml.get("commun.LonMin")+ ": ").append(file.getMinLongitude()).append(separator); |
---|
212 | } |
---|
213 | if ( file.getMaxLongitude() != Constants.NO_DOUBLE ) |
---|
214 | { |
---|
215 | description.append(ml.get("commun.LonMax")+ ": ").append(file.getMaxLongitude()).append(separator); |
---|
216 | } |
---|
217 | if ( file.getMinLatitude() != Constants.NO_DOUBLE ) |
---|
218 | { |
---|
219 | description.append(ml.get("commun.LatMin")+ ": ").append(file.getMinLatitude()).append(separator); |
---|
220 | } |
---|
221 | if ( file.getMaxLatitude() != Constants.NO_DOUBLE ) |
---|
222 | { |
---|
223 | description.append(ml.get("commun.LatMax")+ ": ").append(file.getMaxLatitude()).append(separator); |
---|
224 | } |
---|
225 | description.append(ml.get("commun.Experience")+ ": ").append(file.getExperimentName()).append(separator); |
---|
226 | description.append(ml.get("commun.Composant")+ ": ").append(file.getParameter()).append(separator); |
---|
227 | description.append(ml.get("commun.SubParameter")+ ": ").append(file.getSubParameter()).append(separator); |
---|
228 | img.setAlt(description.toString()); |
---|
229 | |
---|
230 | table.setCellContent(0,rowNumber,"<a href=\"javascript:showImage('" + dataSetImageBean.getFileUrl(i) + "');\">" + img.toString() + "</a>"); |
---|
231 | table.setCellContent(1,rowNumber,"<font class=moyen>" + "<a href=\"javascript:showImage('" + dataSetImageBean.getFileUrl(i) + "');\">" + dataSetImageBean.getFileName(i) + " (" + (file.getSize() / 1024) + ml.get("KO") + ")</a></font>"); |
---|
232 | table.setCellContent(2,rowNumber,file.getExperimentName()); |
---|
233 | table.setCellContent(3,rowNumber,file.getParameter()); |
---|
234 | table.setCellContent(4,rowNumber,file.getSubParameter()); |
---|
235 | if ( file.getFirstDate() != null ) |
---|
236 | { |
---|
237 | table.setCellContent(5,rowNumber,file.getFirstObservationUTCDate()); |
---|
238 | } |
---|
239 | else |
---|
240 | { |
---|
241 | table.setCellContent(5,rowNumber," "); |
---|
242 | } |
---|
243 | if ( file.getLastDate() != null ) |
---|
244 | { |
---|
245 | table.setCellContent(6,rowNumber,file.getLastObservationUTCDate()); |
---|
246 | } |
---|
247 | else |
---|
248 | { |
---|
249 | table.setCellContent(6,rowNumber," "); |
---|
250 | } |
---|
251 | if ( file.getMinLongitude() != Constants.NO_DOUBLE ) |
---|
252 | { |
---|
253 | table.setCellContent(7,rowNumber,Double.toString(file.getMinLongitude())); |
---|
254 | } |
---|
255 | else |
---|
256 | { |
---|
257 | table.setCellContent(7,rowNumber," "); |
---|
258 | } |
---|
259 | if ( file.getMaxLongitude() != Constants.NO_DOUBLE ) |
---|
260 | { |
---|
261 | table.setCellContent(8,rowNumber,Double.toString(file.getMaxLongitude())); |
---|
262 | } |
---|
263 | else |
---|
264 | { |
---|
265 | table.setCellContent(8,rowNumber," "); |
---|
266 | } |
---|
267 | if ( file.getMinLatitude() != Constants.NO_DOUBLE ) |
---|
268 | { |
---|
269 | table.setCellContent(9,rowNumber,Double.toString(file.getMinLatitude())); |
---|
270 | } |
---|
271 | else |
---|
272 | { |
---|
273 | table.setCellContent(9,rowNumber," "); |
---|
274 | } |
---|
275 | if ( file.getMaxLatitude() != Constants.NO_DOUBLE ) |
---|
276 | { |
---|
277 | table.setCellContent(10,rowNumber,Double.toString(file.getMaxLatitude())); |
---|
278 | } |
---|
279 | else |
---|
280 | { |
---|
281 | table.setCellContent(10,rowNumber," "); |
---|
282 | } |
---|
283 | table.setCellContent(11,rowNumber,file.getDataSetVersion()); |
---|
284 | table.setCellContent(12,rowNumber,file.getFormat()); |
---|
285 | table.setCellContent(13,rowNumber,file.getCeosLevel()); |
---|
286 | table.setCellContent(14,rowNumber,file.getCeosSublevel()); |
---|
287 | rowNumber++; |
---|
288 | } |
---|
289 | out.println( table.generate() ); |
---|
290 | } |
---|
291 | |
---|
292 | } |
---|
293 | catch( java.lang.Exception e ) |
---|
294 | { |
---|
295 | out.println("<p class=\"titrePage\" align=\"center\">Ether - Erreur interne</p>"); |
---|
296 | e.printStackTrace(); |
---|
297 | } |
---|
298 | |
---|
299 | %> |
---|
300 | <br> |
---|
301 | <table width="100%" border="0" cellspacing="0" cellpadding="0" align="center"> |
---|
302 | <tr valign="baseline"> |
---|
303 | <td width="15%" align="left" > |
---|
304 | <% |
---|
305 | if ( dataSetImageBean.size() > 0 ) |
---|
306 | { |
---|
307 | out.println("<p class=\"petit\" align=\"left\" ><b>" + ml.get("pageNumber") + " : </b><font color=\"#FF0033\">" + dataSetImageBean.getPageToDisplay() + "/" + dataSetImageBean.getNumberOfPages() + "</font></p>"); |
---|
308 | } |
---|
309 | else |
---|
310 | { |
---|
311 | out.println(" "); |
---|
312 | } |
---|
313 | %> |
---|
314 | </td> |
---|
315 | <td width="85%" align="center" > |
---|
316 | <% |
---|
317 | if ( dataSetImageBean.getNumberOfPages() > 1 ) |
---|
318 | { |
---|
319 | out.println("<p class=\"petit\"><b><font color=\"#FF0033\">"); |
---|
320 | if ( dataSetImageBean.hasPreviousListOfPage() ) |
---|
321 | { |
---|
322 | out.println("<a href=\"javascript:previousPageList();\">" + ml.get("pagePrevious") + "</a>"); |
---|
323 | } |
---|
324 | int first = dataSetImageBean.getFirstPageIndex(); |
---|
325 | int last = dataSetImageBean.getLastPageIndex(); |
---|
326 | int selectedPage = dataSetImageBean.getPageToDisplay(); |
---|
327 | |
---|
328 | if ( first != -1 ) |
---|
329 | { |
---|
330 | int indexPage = first; |
---|
331 | while ( indexPage <= last ) |
---|
332 | { |
---|
333 | if ( indexPage == selectedPage ) |
---|
334 | { |
---|
335 | out.println(indexPage); |
---|
336 | } |
---|
337 | else |
---|
338 | { |
---|
339 | out.println("<a href=\"javascript:goToPage('" + indexPage + "');\">" + indexPage + "</a>"); |
---|
340 | } |
---|
341 | |
---|
342 | if ( indexPage < last ) |
---|
343 | { |
---|
344 | out.println(","); |
---|
345 | } |
---|
346 | indexPage++; |
---|
347 | } |
---|
348 | } |
---|
349 | |
---|
350 | if ( dataSetImageBean.hasNextListOfPage() ) |
---|
351 | { |
---|
352 | out.println("<a href=\"javascript:nextPageList();\">" + ml.get("pageNext") + "</a>"); |
---|
353 | } |
---|
354 | out.println("</font></p>"); |
---|
355 | } |
---|
356 | %> |
---|
357 | </td></tr></table> |
---|
358 | <INPUT TYPE="hidden" name="hidden" value="hidden"> |
---|
359 | </FORM> |
---|
360 | <span class="petit"><b><%= Config.tag_image_ligne %></b></span> |
---|
361 | </body> |
---|
362 | </html> |
---|