We're passing the `id` key twice, and with different value, resulting in
warnings like:
> /path/to/app/views/producers/index.html.haml:27: warning: key :id is duplicated and overwritten on line 31
Use only the latest value passed to remove the warning.
##### Before
```
$ bundle exec rspec -e "displays in an iframe" -e "logging in with a redirect set"
(...)
Run options: include {:full_description=>/(?-mix:displays\ in\ an\ iframe)|(?-mix:logging\ in\ with\ a\ redirect\ set)/}
Capybara starting Puma...
* Version 6.5.0, codename: Sky's Version
* Min threads: 0, max threads: 4
* Listening on http://127.0.0.1:50292
/path/to/app/views/producers/index.html.haml:27: warning: key :id is duplicated and overwritten on line 31
./path/to/app/views/groups/show.html.haml:68: warning: key :id is duplicated and overwritten on line 72
Modal window with text `Unable to load map. Please check your browser settings and allow 3rd party cookies for this website.` has been opened, but you didn't wrap your code into (`accept_prompt` | `dismiss_prompt` | `accept_confirm` | `dismiss_confirm` | `accept_alert`), accepting by default
.
Finished in 4.54 seconds (files took 4.04 seconds to load)
2 examples, 0 failures
```
##### After
```
$ bundle exec rspec -e "displays in an iframe" -e "logging in with a redirect set"
(...)
Run options: include {:full_description=>/(?-mix:displays\ in\ an\ iframe)|(?-mix:logging\ in\ with\ a\ redirect\ set)/}
Capybara starting Puma...
* Version 6.5.0, codename: Sky's Version
* Min threads: 0, max threads: 4
* Listening on http://127.0.0.1:50256
.Modal window with text `Unable to load map. Please check your browser settings and allow 3rd party cookies for this website.` has been opened, but you didn't wrap your code into (`accept_prompt` | `dismiss_prompt` | `accept_confirm` | `dismiss_confirm` | `accept_alert`), accepting by default
.
Finished in 4.17 seconds (files took 4.1 seconds to load)
2 examples, 0 failures
```
Australian production had one JPG image which was not recognised as
such. The `content_type` was missing and trying to generate a URL for a
variant raised an error and crashed the page.
Testing for `variable?` includes testing for `attached?` and is more
defensive.
Issue:
https://github.com/openfoodfoundation/openfoodnetwork/issues/5106
Hubs on group page for consumers are displayed unconditionally.
But they should only appear under the following conditions: Visible.
In addition, those that are active should only be filled with red color
when they have open order cycles.
This commit apply these rules and changes the visibility of each hub on
"Our Hubs" tab of group page for consumers accordingly.
The map is displayed using https://leafletjs.com/
To enable Open Street Map go to the Admin -> Configuration -> Content section and click 'Open Street Map Enabled'.
The 'Open Street Map Provider Name' setting can be used to configure different tile providers thanks to the Leaflet-providers extension (https://github.com/leaflet-extras/leaflet-providers)
Some tile providers require an API key, this can provided in JSON format e.g. '{ apiKey: 123 }' in the 'Open Street Map Provider Options' setting.
Each tile provider has their own usage policy so this should be checked before enabling Open Street Map.
The search field for the Open Street Map works differently than searching on Google Maps. It matches producers by their name or address because it was easier to implement instead of matching place names all over the world.
Fixes an issue where if the js library from maps.googleapis.com failed to load in the <head>, all of our subsequent Angular would completely break.
See: https://github.com/angular-ui/angular-google-maps
Note: `bluebird.js` is a new dependency of `angular-google-maps.js`.
The FilterSelectorsService is now able to create multiple independent
lists of selectors. These lists are explicitly given to the
filter-selector directive.
For example a group's page has one set for the group's producers and one
set for the group's shops.