1<%-- $HeadURL: svn+ssh://jwilden@svn.wald.intevation.org/deegree/apps/igeoportal-standard/branches/2.5_testing/download.jsp $ --%> 2<%-- 3 This file is part of deegree, http://deegree.org/ 4 Copyright (C) 2001-2009 by: 5 - Department of Geography, University of Bonn - 6 and 7 - lat/lon GmbH - 8 9 This library is free software; you can redistribute it and/or modify it under 10 the terms of the GNU Lesser General Public License as published by the Free 11 Software Foundation; either version 2.1 of the License, or (at your option) 12 any later version. 13 This library is distributed in the hope that it will be useful, but WITHOUT 14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 15 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more 16 details. 17 You should have received a copy of the GNU Lesser General Public License 18 along with this library; if not, write to the Free Software Foundation, Inc., 19 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 20 21 Contact information: 22 23 lat/lon GmbH 24 Aennchenstr. 19, 53177 Bonn 25 Germany 26 http://lat-lon.de/ 27 28 Department of Geography, University of Bonn 29 Prof. Dr. Klaus Greve 30 Postfach 1147, 53001 Bonn 31 Germany 32 http://www.geographie.uni-bonn.de/deegree/ 33 34 e-mail: info@deegree.org 35--%> 36<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> 37<%@ page import="org.deegree.i18n.Messages" %> 38<%@ page import="java.util.Locale" %> 39<% 40 Locale loc = request.getLocale(); 41%> 42<html> 43 <head> 44 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 45 <meta name="author" content="lat/lon GmbH" /> 46 <meta name="KeyWords" content="deegree iGeoPortal lat/lon" /> 47 <title>deegree iGeoPortal - download</title> 48 <link href="css/deegree.css" rel="stylesheet" type="text/css" /> 49 <script language="JavaScript1.2" type="text/javascript" src="javascript/rpc.js"></script> 50 <script language="JavaScript1.2" type="text/javascript"> 51 52 function getBBox(){ 53 return opener.parent.controller.mapModel.getBoundingBox(); 54 } 55 56 function _getLayerList(){ 57 var layerlist = ''; 58 var b = opener.parent.controller.mapModel.getLayerList(); 59 var lgroup = b.getLayerGroups(); 60 for(var i = 0; i < lgroup.length;i++){ 61 var g = lgroup[i].getLayers(); 62 for(var j = 0; j < g.length;j++){ 63 if( g[j].isVisible() ){ 64 var layern = g[j].getName(); 65 layerlist += ',' + layern; 66 } 67 } 68 } 69 layerlist = layerlist.substring(1,layerlist.length); 70 return layerlist; 71 } 72 73 function getLayerList(){ 74 var layerlist = ''; 75 var b = opener.parent.controller.mapModel.getLayerList(); 76 var lgroup = b.getLayerGroups(); 77 for(var i = 0; i < lgroup.length;i++){ 78 var g = lgroup[i].getLayers(); 79 for(var j = 0; j < g.length;j++){ 80 if( g[j].isVisible() ){ 81 var v = g[j].isVisible() + "|" lgroup[i].getServiceURL(); 82 layerlist += createMember( g[j].getName(), v, "string" ); 83 } 84 } 85 } 86 return layerlist; 87 } 88 89 function download() { 90 91 var list = 'nil';//document.getElementById('users'); 92 var ix = list.selectedIndex; 93 if( ix < 1 ){ 94 alert('Please choose a user.'); 95 return; 96 } 97 var user = 'nil';//document.forms[0].users[ix].value; 98 99 // best thing to do is restrict this 100 // user shouldn't be allowed to choose a name... 101 var filename = 'nil';//document.forms[0].filename.value; 102 if( filename.length < 1 ){ 103 alert('Please insert a valid file name.'); 104 document.forms[0].filename.focus(); 105 return; 106 } 107 108 var req= "<?xml version='1.0' encoding='UTF-8'?><methodCall>" + 109 "<methodName>mapView:downloadFeatures</methodName><params><param><value><struct>"+ 110<% 111 String baseContext = (String)session.getAttribute("CURRENT_CONTEXT"); 112%> 113 "<member><name>baseContext</name><value><string><%= baseContext%></string></value></member>"+ 114 "<member><name>layerList</name><value><struct>"+ getLayerList() +"</struct></value></member>"; 115 116 var b = getBBox(); 117 req = req + "<member><name>boundingBox</name><value><struct>"+ 118 "<member><name>minx</name><value><double>"+ b.minx +"</double></value></member>" + 119 "<member><name>miny</name><value><double>"+ b.miny +"</double></value></member>" + 120 "<member><name>maxx</name><value><double>"+ b.maxx +"</double></value></member>" + 121 "<member><name>maxy</name><value><double>"+ b.maxy +"</double></value></member>" + 122 "</struct></value></member>"; 123 req = req + "</struct></value></param></params></methodCall>"; 124 125 document.forms[0].method = "post"; 126 document.forms[0].action = "control?rpc=" + req; 127 document.forms[0].submit(); 128 } 129 </script> 130 </head> 131 <body background="./images/background.jpg" class="navi10b"> 132 <form action="javascript:download();"> 133 <table> 134 <tr> 135 <td width="30"> </td> 136 <td> 137 <p class="navi10b"><%=Messages.get( loc, "IGEO_STD_DWNLD_HEADER" ) %></p> 138 <br/> 139 <a href="javascript:download()" class="buttonArea"><%=Messages.get( loc, "IGEO_STD_BTN_OK" ) %></a> 140 </td> 141 </tr> 142 </table> 143 </form> 144 </body> 145</html> 146