| Commit message (Collapse) | Author | Age | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit allows asset layers to be added to the map that have more
complex behaviours than simply 'click a marker'.
- Layers can be non-interactive and/or always visible
Previously an asset layer would only be shown when its associated
category was chosen from the dropdown. You can now add layers which
are always visible, as well as ignoring user input. Useful for, e.g.
showing an LLPG overlay on the map.
- Stylemaps can be provided for individual layers
This means you can, for example, have custom rules for styling
features based on their attributes or other complex rules.
- Functions can be used for the feature/report field mapping
Instead of a one-to-one mapping between feature attributes and
fields on the new report form, you can provide a callback function
which can provide a calculated value to the report form.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit makes it easier to customise the way asset layers are loaded
over WFS, including:
- Adds support for WFS layers via GET method
The standard HTTP method for WFS GetFeature requests is POST, but
some WFS services only support GET. OpenLayers.Protocol.WFS is
hardcoded to use POST, but we can use OpenLayers.Protocol.HTTP
instead to use GET.
The options passed to fixmystreet.add_assets should include a
'http_options' object which configures the HTTP protocol.
- Allows HTTP asset layers to provide their own format
This makes it simpler to use GeoJSON, for example, instead of the
default of GML.
- Asset layers can provide their own loading strategy
The default strategy can be overridden if, for example, you want to
use a BBOX strategy with a smaller ratio in order to load fewer
features at a time.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seems that the projectInverse/projectForward methods in
OpenLayers.Layer.SphericalMercator have been renamed which was causing
problems.
Additionally this gem was buried in the OpenLayers.Projection.transform
docs:
Returns point - [...] The original point is modified.
The previous code didn't seem to modify the original point which was
confusing OpenLayers.
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
A top banner (for e.g. offline, or just custom display) could be used
by any cobrand, so remove the need to add an extra line of CSS.
|
| | |
|
| | |
|
| |
| |
| |
| | |
The photo JavaScript needs including in case a report is pulled in.
|
| | |
|
|/
|
|
|
| |
This also fixes an inconsistency between what you can see on the map and the
list of reports underneath.
|
|
|
|
| |
The /my page uses a Fixed strategy which cannot do this.
|
| |
|
|
|
|
| |
This prevents e.g. the all reports graph dipping down.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| | |
This uses an IntersectionObserver, which currently works in Chrome, Edge, and
Firefox.
|
| | |
|
| |
| |
| |
| | |
It is never visible, being behind header/ map/ sidebar.
|
|/
|
|
|
| |
They would all use the settings of the first, leading to e.g.
potentially incorrect all/none messages.
|
|
|
|
|
| |
As colours.length increased as colours were added,
it would always return the first entry.
|
|
|
|
| |
Fixes part of mysociety/fixmystreet-commercial#965.
|
| |
|
|
|
|
|
| |
No need for any jQuery UI any longer (only base use was already gone
when admin stats was moved to dashboard).
|
| |
|
|
|
|
| |
This will also be used by /reports/[body]/summary in a bit.
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Bromley uses jQuery for its A-Z on all pages; only load Bristol map
JavaScript on map pages (same as Angus); drop Oxfordshire JS use of
jQuery; fix Zurich load order; and improve jQuery checking in other
JavaScript.
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
| |
This commit splits the category dropdown into two fields: a top-level
"category" field populated with the category groups, and a "subcategory"
field for the options in each <optgroup> in the original HTML.
It does some short-circuiting, e.g. for optgroups that only have a
single option the subcategory field won't be shown.
|
| |
|
|
|
|
| |
Fixes #1589.
|
|\
| |
| |
| | |
'origin/1920-back-once-again-for-the-renegade-master'
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The popstate event for a filter change assumed that the list was already
being displayed, but it was not if you were going back from a report.
The reports_list function to display the list page is idempotent (though
this commit makes it more so), so can happily be called whether the list
page is currently displayed or not.
|
|/
|
|
|
|
|
|
| |
Display a list of the email addresses used to contact the council on the
council dashboard. Does not display emails if the council has an
integration, rejects FMS reports or is currently turned off.
Fixes mysociety/fixmystreetforcouncils#941
|
|
|
|
| |
An experiment towards fixing #525.
|
|
|
|
|
|
| |
The location disambiguation page uses the frontpage JavaScript and has
lots of links pointing to /around, so the code should make sure those
links include the `js` parameter.
|
|
|
|
|
|
|
| |
Modern browsers disable geolocation on non-HTTPS pages, but
sadly still report it as available with the `navigator.geolocation`
object. This commit adds a check for HTTPS and hides the link
if it won’t work.
|
|
|
|
|
|
|
|
|
|
| |
The `fixmystreet.update_pin` function removes the 'body' option from the
'report as' dropdown, which was leaving the UI in an inconsistent state
if the 'body' option had previously been selected. This commit ensures
the change handler is called when the content of the dropdown is
modified.
Fixes #1913.
|
|
|
|
| |
And fix reference to it in the front page prefetch list.
|
|
|
|
|
| |
The multi-select plugin is a separate project, and should be treated as
a vendor file.
|
|
|
|
|
|
|
| |
In particular, this lets us ensure only one multiselect can be open at
a time – for example in the "Show [X] reports about [Y]" list filters.
Fixes mysociety/fixmystreetforcouncils#247.
|
|
|
|
|
|
|
| |
On mobile, if you e.g. selected one report and then another, you'd get
another "Expand map" appearing. Check that one is needed before adding
it, and also make sure the handler is only attached once to prevent it
conflicting with itself (and so cancelling itself out).
|