Opened 13 years ago
Closed 13 years ago
#388 closed task (fixed)
ApplyFilter new widget using WFS SLD and WFS
Reported by: | adube | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 1.2.0 |
Component: | widgets | Version: | trunk |
Keywords: | bis-1.2.0 | Cc: |
Description (last modified by )
Description
We need a widget that receives filters from a third party JavaScript library and apply it to the WMS Layers on the map AND display the features attributes in a grid using WFS.
Requirements and Technical Details
- use a new generic GeoPrisma API to receive the requests.
- there can be more than one filters. Each filter is applied to a single layer/resource.
- the filter is applied on the original resource WMS layer using SLD
- the filter result is also displayed in a grid (one grid per resource using tabs).
- the grid must support paging
- each element of the current page are highlighted on the map using vector features (stroke styling only)
- selecting a row changes the color of the vector feature on the map
- selecting a row could also zoom to the feature's location OR we could have a row action button for that.
- sorting on a column should do a "server-side" sorting using WFS filter
Change History (21)
comment:1 by , 13 years ago
Description: | modified (diff) |
---|
comment:2 by , 13 years ago
Description: | modified (diff) |
---|---|
Summary: | New Filter widget using WFS SLD and WFS → ApplyFilter new widget using WFS SLD and WFS |
comment:3 by , 13 years ago
comment:4 by , 13 years ago
Keywords: | bis-1.2.0 added |
---|
comment:5 by , 13 years ago
r1257, featuring :
- new applyFilter and applyFilters methods in the API widget. Used by the ApplyFilter widget.
- new getLayers method in the API widget. Serves as a replacement of the Map.getLayersByResource method defined in Map.js of both Map and MapPanel widgets.
Documentation about these added as well.
comment:6 by , 13 years ago
r1259, featuring the new ApplyFilter widget with documentation and sample.
To do
- add SLD filtering
- column title and size customization using resource fields
- complete javascript comments
- first column of grid should be a "zoomto" action column
- use resource "ignoreAttributes" option to skip some unwanted fields such as "geometry"
- set all vector layer visibility to off. Turn them on only when tab is active.
- XMLWorkspaceConfig : test
- PGSQLMapContextConfig : add support and test
- maxFeatures/pageSize : should be configurable
- disable column sorting
Proposals
- zoomToPageExtent (automatically and/or using button)
Known issues
- sometimes, the paging toolbar doesn't appear in the buttom of the panel, but rather at the bottom of the scrollable content.
comment:7 by , 13 years ago
r1262 includes :
- SLD filtering added
- WMS Service can now do WMS GetStyles requests. The according methods were added to the service and the resource.
- samples updated to show more filtering examples
comment:9 by , 13 years ago
r1264, including :
- a server fix in the Field.php file to include the options tag inside the config_secur.xml
- resource field title and width option now used in grid columns
comment:13 by , 13 years ago
r1268, featuring :
- new zoomToFeatureExtent API method (util)
- actioncolumn added in result grid to allow zooming on feature
- new widget "maxZoomScale" option to control the maximum scale allowed to zoom in to.
comment:14 by , 13 years ago
r1269, when the zoomToFeatureExtent button is clicked, the row is automatically selected, thus selecting the feature on the map as well.
comment:15 by , 13 years ago
r1271 :
- new widget options : ignoredField and ignoredFields
- the same options can also be read from the resource instead
- documentation about this added (in .rst)
- sample updated
- org.GeoPrisma.ApplyFilter.Resource object now has "options" property (taken directly from the config options tag)
comment:16 by , 13 years ago
Tests made with XMLWorkspaceConfig -> resource fields and options are not included in config_secur by the driver, from neither the resources and workspace resources.
This will require a fix.
comment:18 by , 13 years ago
comment:21 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
r1276, javascript comments in classes now completed.
This completes all the work required for this widget and is ready to be tested. Any issue found should be reported in a new ticket.
Done.
Known issue and workaround
There can be graphic issues due to dom manipulation whild the tabs are being populated on each queries, causing the bottom toolbar to sometimes appear inside the scrollable elements instead of outside of it.
To avoid this issue, setting "animCollapse" to false in the widget container (oSouthPanel in the samples.xslt) appears to solves the issue, but may also appear when the user expand the panel himself.
If this becomes a real issue, we'll open a ticket for this.
A new API widget is now available and ready to be updated with a "applyFilters" method that will be used by the ApplyFilter widget, see #389.