Commit Graph

9302 Commits

Author SHA1 Message Date
Luis Ramos
8532fa16cd Merge pull request #5202 from luisramos0/improve_checkout_js
Improve Checkout error handling in JS
2020-04-15 22:25:05 +01:00
Luis Ramos
cedf1b26f2 If no flash is sent from the server, show the generic error 2020-04-14 14:31:34 +01:00
Luis Ramos
47a93568dc Make code simpler by extracting methods 2020-04-14 13:55:20 +01:00
Luis Ramos
62471bf2ab Clear Loading spinner when exception is caught 2020-04-14 13:50:38 +01:00
Luis Ramos
cdf5bcb7eb Improve unexpected error handling and add test cases for it 2020-04-14 13:44:58 +01:00
Luis Ramos
7414047b92 Switch from old success/error to modern then/catch structure
Catch() will get a few more errors then errors()

Also, add try/catch inside catch to detect any errors parsing the
response error payload
2020-04-14 13:04:28 +01:00
Luis Ramos
357a88fa22 Merge pull request #4786 from luisramos0/stripe_sca_extra_subs_fix
Make StripeSCA (with new authorize/purchase workflow) work with Subscriptions again
2020-04-13 17:21:53 +01:00
Matt-Yorkley
b92e858448 Merge pull request #5197 from Matt-Yorkley/cart-populate-performance
Cart populate performance
2020-04-10 11:41:56 +02:00
Luis Ramos
b5ba2acb21 Merge pull request #5169 from jeduardo824/enhancement/5102-make-shop-names-links
make shop name a link on /account
2020-04-09 22:01:34 +01:00
Matt-Yorkley
57d87a8042 Eager-load variant stock items
Avoids another N+1
2020-04-09 19:55:08 +02:00
Matt-Yorkley
0ca87580e8 Load variants in cart in one query
Avoids an N+1
2020-04-09 19:55:06 +02:00
Luis Ramos
59e0f3d9f4 Merge pull request #5175 from Matt-Yorkley/memoize-scoper
Memoize ScopeProductToHub in product list
2020-04-09 14:45:57 +01:00
Luis Ramos
fc5aff8c79 Merge pull request #5145 from luisramos0/inv_perf
Performance improvements to Inventory page
2020-04-09 13:56:33 +01:00
Luis Ramos
dd717fe8ac Merge pull request #5184 from Matt-Yorkley/inventory-loading
Inventory loading
2020-04-09 13:26:12 +01:00
Luis Ramos
6341c5fd80 Merge pull request #4964 from luisramos0/po_fix
Fix proxy orders controller in rails 4 by removing the use of responders
2020-04-09 10:12:33 +01:00
Matt-Yorkley
47ac6c1491 Remove unused methods from ProductSimpleSerializer 2020-04-09 09:51:32 +02:00
Matt-Yorkley
6afda141a1 Remove track_inventory_levels conditional
This value is always true in OFN
2020-04-09 09:19:37 +02:00
Matt-Yorkley
5bb2614f9d Refactor PagedFetcher so it makes one request at a time 2020-04-09 09:19:37 +02:00
Matt-Yorkley
b3c968856b Fix some rubocop issues 2020-04-09 09:19:37 +02:00
Matt-Yorkley
b0a7497f2a Remove another N+1 in product serialization 2020-04-09 09:19:37 +02:00
Matt-Yorkley
f959e632ea Modify Spree::Stock::Quantifier to not re-fetch stock items if they are already eager-loaded
This helps to remove a big N+1 here, and will also be very helpful elsewhere in the app
2020-04-09 09:19:37 +02:00
Matt-Yorkley
f9cf826f1c Bring Spree::Stock::Quantifier in to OFN
This is the original unmodified Class from Spree. Modifications added in subsequent commits.
2020-04-09 09:19:36 +02:00
Matt-Yorkley
ececbce596 Only select id in producers query 2020-04-09 09:16:44 +02:00
Matt-Yorkley
1b7ac1a252 Don't re-use fat serializers when thin ones are needed.
This cuts the pageload and query count in half, again.
2020-04-09 09:10:41 +02:00
Matt-Yorkley
3aff7f62e3 Don't query distributed properties on enterprises that aren't active distributors
Cuts page load on /shops by ~75% (with production data) and removes ~300 expensive and superfluous queries.
2020-04-08 20:08:12 +02:00
Matt-Yorkley
fc5e346a06 Merge pull request #5156 from Matt-Yorkley/closed-shops
Load closed shops in a separate request on /shops page
2020-04-08 20:05:26 +02:00
Matt-Yorkley
64c66ddedc Eager-load variant data for overridable products
Cuts query count and page load time in half for this endpoint.
2020-04-07 15:16:32 +02:00
Matt-Yorkley
003341ef7a Add loading indicator when showing closed shops 2020-04-07 10:40:49 +02:00
Matt-Yorkley
94f8ea2f93 Fix flicker effect showing 3 buttons when clicking "Show Closed Shops" button 2020-04-07 10:31:56 +02:00
Luis Ramos
d18a06a0f7 Merge pull request #4783 from luisramos0/stripe_sca_extra_subs
Move all subscriptions services to the OrderManagement engine
2020-04-06 20:20:02 +01:00
Matt-Yorkley
2cb4c6bec2 Memoize OpenFoodNetwork::ScopeProductToHub
This means we avoid fetching all of the hub's variants every time we scope a product. Applies to every product loaded when displaying a shops's product list.
2020-04-06 19:41:05 +02:00
Eduardo
e7b780f963 make shop name a link on /account 2020-04-06 08:34:24 -03:00
Luis Ramos
53d901b41b Merge pull request #5064 from luisramos0/fix_sample_data
Fix sample data and custom paper_trail config on order_cycles and schedules on rails 4
2020-04-04 18:29:26 +01:00
Matt-Yorkley
bc859cf9f7 Add api/shops_controller and refactor 2020-04-04 17:02:27 +02:00
Matt-Yorkley
af48cac140 Load closed shops in a separate request on /shops page 2020-04-04 14:06:10 +02:00
Luis Ramos
452ab3a842 Add comment to better explain variant_override_set.collection_to_delete 2020-04-03 15:36:19 +01:00
Luis Ramos
a049e7a433 Add product to includes to avoid N+1 queries to fetch products when VO authorization is done right after this 2020-04-03 14:48:06 +01:00
Luis Ramos
e64d573337 Revert accidental push of a byebug statement with the direct translations push to master 🙈 2020-04-03 12:06:39 +01:00
Luis Ramos
7858a26e5e Update all locales with the latest Transifex translations 2020-04-03 12:03:40 +01:00
Luis Ramos
da7b0966be Merge pull request #5133 from Matt-Yorkley/cache-in-hand
Cache counts used in homepage for 24 hours
2020-04-03 08:34:58 +01:00
Luis Ramos
445eb9f287 Merge pull request #5121 from Matt-Yorkley/flaky-maps-js
Update vendor/assets/angular-google-maps.min.js
2020-04-02 22:13:51 +01:00
Matt-Yorkley
adb61e48c5 Cache counts used in homepage for 24 hours 2020-04-02 19:09:03 +02:00
Matt-Yorkley
838ffdbf00 Add code comment for dependency 2020-04-02 17:33:10 +02:00
Pau Pérez Fabregat
fe8beb5448 Merge pull request #5099 from Matt-Yorkley/ticking-time-bom
Improve BOM
2020-04-02 16:01:48 +02:00
Matt-Yorkley
18ee5254f9 Make Geo service calls more resilient in /shops page
The Geo service is used heavily in the /shops page and especially in the search function. If the google maps js library has failed to load it was throwing a lot of fatal errors, so this change ensures the /shops page can at least: a) load, b) show some shops, and c) search for shops by name (but not location)
2020-04-02 13:56:25 +02:00
Matt-Yorkley
40f8cf660c Update vendor/assets/angular-google-maps.min.js
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`.
2020-04-02 13:32:55 +02:00
Luis Ramos
0e268a171f Switch to console.error so we get a bugsnag alert everytime a user has a problem with their card
Add paymentMethodsAPI specific mapping function, we had some errors in production with mastercards probably caused by ActiveMerchant not handling the card type correctly
2020-04-01 18:58:43 +01:00
Luis Ramos
73c4eedd06 Translate credit card brand so that active merchant code handles the payment correctly
Adds a simple console.log statement in case there is an error adding the
card
2020-04-01 18:58:10 +01:00
Luis Ramos
8a220742f5 Merge pull request #5103 from jeduardo824/bug/5092-remove-blue-setence-in-payment-method-setting
remove blue sentence in payment method setting
2020-04-01 18:56:09 +01:00
Luis Ramos
9fa604db0d Merge pull request #5076 from luisramos0/rails_f_helper
Remove Rails Foundation Helper and improve error display and logging in checkout controller
2020-04-01 18:54:45 +01:00