|
|
@@ -129,6 +129,10 @@ class OWS:
|
|
|
else:
|
|
|
mapobj = self.makeMap(request.getValueByName("map"))
|
|
|
|
|
|
+ # WFS Filter encoding, if available
|
|
|
+ if request.getValueByName("fes"):
|
|
|
+ self.setFilter(mapobj,request)
|
|
|
+
|
|
|
mapobj.OWSDispatch(request)
|
|
|
|
|
|
def getMapObj(self,mapfilename=None):
|
|
|
@@ -256,6 +260,13 @@ class OWS:
|
|
|
(layer.id,bbox))
|
|
|
return bbox
|
|
|
|
|
|
+ def setFilter(self,mapobj,request):
|
|
|
+ """ Set WFS filter encoding
|
|
|
+ """
|
|
|
+ logging.debug("Setting filter for layer %s to %s" % (request.getValueByName("layers"),request.getValueByName("fes")))
|
|
|
+ layerobj = mapobj.getLayerByName(request["layers"])
|
|
|
+ layerobj.setMetaData("wfs_filter",request.getValueByName("fes"))
|
|
|
+
|
|
|
def getService():
|
|
|
|
|
|
qstring = os.environ["QUERY_STRING"]
|