<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="org.deegree.framework.util.CharsetUtils" %> <%@ page import="org.deegree.enterprise.WebUtils" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <% int width = Integer.parseInt( request.getParameter( "mapWidth" ) ); int height = Integer.parseInt( request.getParameter( "mapHeight" ) ); String geomTypes = request.getParameter( "geomTypes" ); String defaultGeomType = geomTypes.split( ";" )[0]; boolean validateGeom = Boolean.valueOf( request.getParameter( "validateGeometry" ) ) ; %> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Digitizer</title> <script language="JavaScript1.2" type="text/javascript" src="digitizer.js"></script> <script language="JavaScript1.2" type="text/javascript" src="geometries.js"></script> <script language="JavaScript1.2" type="text/javascript" src="digitizer_utils.js"></script> <script language="JavaScript1.2" type="text/javascript" src="../../mapmodel.js"></script> <script language="JavaScript1.2" type="text/javascript" src="../../wmsrequestfactory.js"></script> <script language="JavaScript1.2" type="text/javascript" src="../../geotransform.js"></script> <script language="JavaScript1.2" type="text/javascript" src="../../envelope.js"></script> <script language="JavaScript1.2" type="text/javascript" src="../../geotransform.js"></script> <script language="JavaScript1.2" type="text/javascript" src="../../wz_jsgraphics.js"></script> <script language="JavaScript1.2" type="text/javascript" src="../../rpc.js"></script> <script type="text/javascript"> <!-- // var templateDoc = null; var geomCheckerProxy = null; var geomType = '<%= defaultGeomType %>'; var digitizer; var geoTrans; var mapDocument; var isNav = true; var geometry = null; var mapLeft = <%= request.getParameter( "mapLeft" ) %>; var mapTop = 0; <!-- don't do this request.getParameter( "mapTop" ) --> var isFirstPoint = true; function swapTemplate( list ) { var template = list.value; var im = document.getElementById( "templateWindow" ); im.src = template; } function init(){ var col = document.getElementById( 'leftCol' ); col.setAttribute( 'width', mapLeft + 'px'); initMap(); paintMap(); initDigitizer(); initEventHandling(); } function sendRequest(){ if( geometry == null ){ alert('Please digititze a geometry.'); return; } var params = '<param><value><struct>'; params+= createMember( 'GEOMETRY', geometry, 'string' ); if ( templateDoc != null ){ params+= templateDoc.getRPCFragment(); } params+= '</struct></value></param>'; var rpc = createMethodCall('dig:digitizeGeometry', params, '<%= CharsetUtils.getSystemCharset() %>' ); document.forms[0].action = "<%= WebUtils.getAbsoluteContextPath(request)%>/control?rpc=" + rpc; //document.forms[0].submit(); alert( 'digizing still under construction; WFS-T request will be aborted ' ); window.close(); } function initDigitizer(){ var lineColor = "<%= request.getParameter("lineColor") %>"; digitizer = new Digitizer( <%= width %> + mapLeft, <%= height %>, 0, 0, lineColor); digitizer.setDocument(document); digitizer.init(); } function paintMap() { var mm = opener.parent.controller.mapModel; var env = ensureAspectRatio( mm.getBoundingBox(), <%= width %>, <%= height %> ); var llist = mm.getLayerList(); var lGroups = mm.getLayerList().getLayerGroups(); var localMapModel = new MapModel( llist, mm.getSrs(), env, <%=width %>, <%=height %>); var factory = new WMSRequestFactory(); var sid = null; if( opener.parent.controller.vSessionKeeper != null ){ sid = opener.parent.controller.vSessionKeeper.id; } for(var i = 0; i < lGroups.length; ++i){ var src = factory.createGetMapRequest( lGroups[i], localMapModel, null ); document.getElementById( "image" + i ).src = src; } //UT deviating from normal FIX IT: +mapLeft and top, if you will geoTrans = new GeoTransform( env.minx, env.miny, env.maxx, env.maxy, 0 + mapLeft, 0, <%= width %> + mapLeft, <%= height %> ); } function doCheckGeometry(){ <% if( validateGeom ){ %> updateMesgField( 'Checking geometry...', 'background-color:#77FF77'); geomCheckerProxy.checkGeometry( geometry ); <% } else { out.println("//Nothing to validate"); } %> } // --> </script> </head> <body onload="init();" onunload="digitizer.clear();" marginheight="0" marginwidth="0"> <% if( validateGeom ){ %> <iframe src="geom_checker_proxy.jsp" id="geomCheckerProxy" height="0" width="0" frameborder="0" ></iframe> <% } %> <form action="" id="form" method="post"> <input name="rpc" type="hidden" /> </form> <table border="0" width="100%"> <tr> <td width="150px" id="leftCol" > <% //TODO check parameter availability String[] formLabels = request.getParameter( "formLabels" ).split( ";" ); String[] formTemplates = request.getParameter( "formTemplates" ).split( ";" ); if( formLabels.length > 1 ){ %> <select id="templateChooser" onchange="swapTemplate( this )"> <% for( int i = 0; i < formLabels.length;i++){ %> <option value="<%= WebUtils.getAbsoluteContextPath(request) + "/" +formTemplates[i] %>"> <%= formLabels[i] %></option> <% } %> </select> <% } else { %> <p><%=formLabels[0] %></p> <% } %> </td> </tr> <tr> <td > <!-- --> <iframe id="templateWindow" src="<%= WebUtils.getAbsoluteContextPath(request) + "/" + formTemplates[0] %>" frameborder="0" ></iframe> </td> </tr> <tr> <td> <jsp:include flush="true" page="geom_control.jsp?geomTypes=<%= geomTypes %>"></jsp:include> </td> </tr> </table> </body> </html>