Giter VIP home page Giter VIP logo

cvth-groups-map's People

Contributors

jpixdev avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Forkers

jpixdev

cvth-groups-map's Issues

add information about local neighbourhood policing teams to pins

Information about the local policing neighbourhood team for most pins on the map is available through the source data sheet in columns:

  • Force
  • Force URL
  • Neighbourhood
  • Neighbourhood URL
  • Neighbourhood email

Let's add these to the InfoWindow where they are available (see maptools.js:124).

Suggested UX:

  • If Force or Neighbourhood are available, display a heading "Safety" - then:
  • Force -> if available, display a label with: "Your local force:" and the value
  • Force URL -> if available, wrap the force label with a link to the URL
  • Neighbourhood -> if available, display a label with: "Your neighbourhood policing team: " and the value
  • Neighbourhood URL -> if available, wrap the neighbourhood label with a link to the URL
  • Neighbourhood email -> if available, add an extra entry with a mailto: link for the email, and the email address itself visible to the user

NB. The columns are mapped to properties on the community object. I've not yet checked what happens to spaces in column names.

add council community hubs as another source

We have access to a crowdsourced open data set of council community hubs. You can get this in CSV format at a reliable URL by publishing the google sheet. (I can do that if needed, or show you how it's done.)

Let's either add them as a new source on the map, or allow the map to select between sources through the querystring to display either the council hubs or volunteer communities.

This is slightly more complex than some of the other enhancements to the map, so please let me know if you're looking at it - I'd be glad to help plan it with you.

add a simple location and community search control

Add a control to the map that allows the user to type a location, part of a location, or the partial name of a community - geocode the address provided (or use the location of a named community) and then zoom/pan to that location on the map.

NB. Google offer autocomplete as a part of their APIs - and this might make a good addition to the control. There are plenty of examples of this used with their geocoding APIs to help users select a real location to geocode.

NNB. If it's not trivial to combine addresses and communities in the same autocomplete, just do one or the other, and we can compose a control that allows the user to select between the two options.

set some defaults from the querystring

It would be helpful to be able to embed the map with some default parameters, and provide those parameters through the querystring.

  • We could set the initial community source filters, eg. ?sources=facebook,whatsapp
  • We could set the default centre and zoom for the map, eg. ?centre=nn.nnnn,nn.nnnn&zoom=n

We should fall back on the defaults we already have if the querystring parameters aren't provided.

NB. our current default centre is set to: lat: 55.3781, lng: -3.436 and default zoom is 6.

improve the filtering options

Let's add a few more filtering options to help users:

  • By a single item only - or by some preset groups, eg. "halo communities", "all the others"
  • Select all / select none options

However we choose to do it, the UX should be simple and easy to change.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.