Commit Graph

72 Commits

Author SHA1 Message Date
Luis Ramos
88896b7730 Merge branch 'master' into 3-0-stable-jun-2 2020-06-08 19:17:11 +01:00
Cillian O'Ruanaidh
deafe32354 Add support for using Open Street Map on the Map and Group pages.
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.
2020-05-31 18:42:55 +02:00
Luis Ramos
be4104d6f3 Merge branch 'master' into 3-0-stable-may-5 2020-05-05 19:11:20 +01:00
Matt-Yorkley
53183b8598 Eager-load properties in inject_enterprise_and_relatives 2020-04-21 11:13:20 +02:00
Luis Ramos
384ca310a3 Merge branch 'master' into 3-0-stable-apr3 2020-04-03 18:26:26 +01:00
Luis Ramos
ac0a62e962 Merge pull request #5050 from Matt-Yorkley/bullet_tweaks
Performance tweaks 2
2020-03-25 18:32:49 +00:00
Matt-Yorkley
d847560d7c Fix rubocop issues 2020-03-25 10:15:03 +01:00
Matt-Yorkley
7110f9e6ee Eager-load data used in EnterpriseGroupsController
Cuts page load time by ~75%
2020-03-23 19:33:13 +01:00
Matt-Yorkley
3de887e1d8 Remove some N+1s relating to address (found with bullet gem) 2020-03-19 23:41:47 +01:00
Matt-Yorkley
5b8552f541 Fix ActiveRecord::Relation issue
Rails 4 now returns an Activerecord::Relation when using `SomeModel.all`. To get all the objects (as in Rails 3) we need to use `SomeModel.all.to_a`. See: https://stackoverflow.com/a/22417170
2020-02-22 11:05:24 +00:00
Pau Pérez Fabregat
92b05c76a3 Merge pull request #4068 from luisramos0/replace_oc_rabl
Convert order_cycle.rabl to Api::OrderCycleSerializer
2019-08-08 12:23:09 +02:00
luisramos0
3c0e6eeee2 Make inject_current_order_cycle render {} instad of null if current_order_cycle is null 2019-07-29 18:13:29 +01:00
luisramos0
ca5a5bf301 Convert oc.rabl to oc serializer and use it in both haml file and controller 2019-07-29 18:13:29 +01:00
luisramos0
9b567a6710 Remove injection_json that renders json partials, we only use ams serializers now, not rabl partials 2019-07-21 23:55:59 +01:00
luisramos0
a8ce31fa90 Replace views/json/_flash.rabl with an ams injector with serializer 2019-07-21 22:56:15 +01:00
luisramos0
4c964fea0d Replace views/json/_current_user.rabl with an ams injector with serializer 2019-07-21 22:48:36 +01:00
Matt-Yorkley
785595a951 Reduce initial queries on shop page by ~95% 2019-06-12 09:47:01 +01:00
Matt-Yorkley
a91ae8947b Only query visible enterprises 2019-06-12 09:47:01 +01:00
Matt-Yorkley
9703d848ef Improve syntax in injection_helper 2019-06-12 09:47:01 +01:00
Matt-Yorkley
d5bd058754 Fix groups show page
It can definitely be cleaned up more in the future, but this should get us around a 90% reduction in page load times.
2019-06-12 09:47:01 +01:00
Matt-Yorkley
4ec46c2db6 Fix groups index page 2019-06-12 09:47:01 +01:00
Matt-Yorkley
e329b4bfb0 Improve queries for serializers 2019-06-12 09:47:01 +01:00
luisramos0
86b0d71c7e Result of rubocop auto-correct and rebuilding rubocop_manual_todo 2019-05-28 12:57:29 +01:00
Matt-Yorkley
6bdc5d4438 Fix maps performance 2019-05-07 00:36:08 +01:00
luisramos0
36e2786a1e Delete Accounts and Billing dead feature code 2019-02-25 14:37:16 +00:00
Pau Perez
cca15e75a6 Refactor to reveal how we load enterprises in shop
By sticking to Rails conventions we make it more obvious how (badly) we
are loading enterprises in EnterprisesController#shop and shed some
light on the obscure InjectionHelper.

This will also make it easier to improve its performance in the future as
it's among the top offenders. See https://www.skylight.io/app/applications/ibo3NOqCYMnq/1545851520/1d/endpoints/EnterprisesController%23shop?responseType=html
2019-01-03 11:17:10 +01:00
Pau Perez
41d988176c Pass enterprises to inject method from controller 2018-11-28 13:54:42 +01:00
Rob Harrington
ddb9ae1140 Load all shops that a user is associated with as a customer
Regardless of the presence of an order
2018-06-24 16:28:47 +10:00
Rob Harrington
18c211e97c Ensure that savedCreditCards always exists 2018-06-08 15:30:08 +10:00
Pau Perez
6a830a3843 Isolate ArraySerializer case in injection helper
This makes this special case with the ArraySerializer stand out so that
the reader notices it.
2017-11-09 10:22:30 +01:00
stveep
f065cbe251 Fix specs for saved credit cards: Add payment profile ID to fixture (now denotes that a card has been saved), check for current user to avoid error attempting to inject saved cards as a guest 2017-09-23 14:58:33 +10:00
Rob Harrington
41b7be900c Restrict the meaning of 'Saved Cards' to mean those with a payment profile 2017-09-23 14:58:33 +10:00
Rob Harrington
b9d72ce4cf Refactoring logic for displaying orders on the front-end account page 2017-09-23 14:58:32 +10:00
Rob Harrington
f4c3fbf8bc Refactoring credit cards interface, and backend logic 2017-09-23 14:58:32 +10:00
stveep
300dc3084c Add default card, disable inputs when a card is selected 2017-09-23 14:58:31 +10:00
stveep
298fd057f5 Check for current user before injecting credit cards 2017-09-23 14:58:31 +10:00
stveep
33b570b117 Inject cards for current user into checkout and add selector dropdown to gateway partial. 2017-09-23 14:58:31 +10:00
Rohan Mitchell
f4f38b4183 Re-apply shop property filters - including performance regression
This reverts commit 7d149ed198.
2016-11-25 14:14:42 +11:00
Maikel Linke
f733c7f207 Include shop enterprise on shop front 2016-07-06 12:45:12 +10:00
Maikel Linke
f984871b23 Inject only needed enterprises into cart and checkout 2016-07-06 11:14:13 +10:00
Maikel Linke
08fdc8a5bd Load producers of all or selected order cycles into shop 2016-06-29 12:57:09 +10:00
Maikel Linke
e284ad62b2 Inject only relative enterprises into shopfront
Other shops displayed in producer modals are lazy loaded when opening
their modal.
2016-06-17 17:15:16 +10:00
Rob Harrington
7028fbe288 Find current_customer via current_distributor and current_user rather than current_order
Moving available_payment_methods to enterprises_helper, as per available_shipping_methods
2016-05-28 00:31:59 +10:00
Maikel Linke
a624a57bfb Pass current order to PaymentMethodSerializer 2016-05-25 17:12:47 +10:00
Steve Pettitt
fe3c0b8d29 Move data processing to model, add payment method preload 2016-03-10 21:42:42 +00:00
Steve Pettitt
b84f49a1c3 Satisfy style police 2016-02-24 20:39:26 +00:00
Steve Pettitt
ec3e158781 Merge current master 2016-02-20 17:24:57 +00:00
Maikel Linke
fbdeb557ca Loading only visible enterprises for group 2016-01-20 13:32:08 +11:00
stveep
698d36180d Move query from injector to User instance method 2016-01-07 13:25:15 +00:00
stveep
59adf88cad Feature spec 2015-12-22 22:59:07 +00:00