Commit Graph

60 Commits

Author SHA1 Message Date
Filipe
afcdfce37d Merge pull request #8967 from mkllnk/api-customers-final
Serve customers data via first API v1 endpoint in JSON:API format behind feature toggle
2022-04-07 21:03:06 +01:00
Filipe
e2b1c0d93f Merge pull request #9004 from jibees/8999-filter-shipping-methods-with-tag
SplitCheckout: filter shipping method with tag
2022-03-31 12:09:06 +01:00
Maikel Linke
41746459fa Restrict allow_charges attribute to read-only
We want people to use the UI to change this attribute.
2022-03-28 10:55:57 +11:00
Maikel
877002afd8 Merge pull request #8891 from mkllnk/api-customers
Create API v1 with customers endpoint
2022-03-22 19:37:23 +11:00
Jean-Baptiste Bellet
0948ce47ed Use EnterprisesHelper to retrieve shipping methods
that apply tag filtering on shipping methods
2022-03-16 11:10:46 +01:00
Jean-Baptiste Bellet
e3a529be5d Display only shipping method that are set as front end available
and update the tests as well
2022-03-10 16:15:50 +01:00
Maikel Linke
b89715149c Sanitise pagination input for new API 2022-03-02 11:59:35 +11:00
Matt-Yorkley
3dbf00f302 Add pagination with Pagy using structure from JSON:API specification
https://jsonapi.org/examples/#pagination

Update schema for collections rendered with pagination data
2022-03-02 11:58:04 +11:00
Filipe
c4751d7056 Merge pull request #8813 from Matt-Yorkley/split-checkout-address-state
Split checkout: fix loading of saved addresses
2022-02-03 19:06:35 +00:00
Matt-Yorkley
5b434ca7c4 Replace conditional with a guard clause 2022-01-31 15:55:35 +00:00
Matt-Yorkley
5e6dd1e6e1 Move #check_order_cycle_expiry method to OrderStockCheck and don't call it from BaseController :before_action callback 2022-01-31 15:55:35 +00:00
Matt-Yorkley
370ec17818 Improve countries and states loading 2022-01-30 11:33:31 +00:00
Filipe
75395f6f29 Merge pull request #8648 from Matt-Yorkley/csp
Configure CSP
2022-01-26 19:55:11 +00:00
Matt-Yorkley
02590014ab Improve split checkout feature toggle 2022-01-24 20:28:59 +00:00
Matt-Yorkley
dfbd384c95 Refactor embedding to a Concern 2022-01-18 12:22:06 +00:00
Matt-Yorkley
410485fbf4 Use #order_failed_route in #process_order_completion! 2022-01-14 19:41:08 +00:00
Matt-Yorkley
789c29f678 Extract #load_checkout_order 2022-01-14 19:41:08 +00:00
Matt-Yorkley
daee5b49b5 Extract #process_payment_completion! 2022-01-14 19:41:08 +00:00
Matt-Yorkley
28d89103eb Extract #gateway_error 2022-01-14 19:41:08 +00:00
Matt-Yorkley
7633255bea Extract #order_failed_route 2022-01-14 19:41:08 +00:00
Matt-Yorkley
6385d9a782 Simplify interface of #order_completion_route 2022-01-14 19:41:08 +00:00
Matt-Yorkley
1b459b2491 Extract #processing_failed 2022-01-14 19:41:08 +00:00
Matt-Yorkley
c1defdb1ff Extract #order_processing_error 2022-01-14 19:41:08 +00:00
Matt-Yorkley
5c44614a8d Extract and standardise payment/checkout #processing_succeeded 2022-01-14 19:41:08 +00:00
Matt-Yorkley
96f30133a7 Don't reset order for split checkout
The various places where we "reset" an order to cart state if a checkout submission does not succeed are an artifact of the process-all-the-steps-at-once approach of the current checkout.
2022-01-14 19:41:08 +00:00
Matt-Yorkley
1e21a6a32f Extract and standardise use of #handle_insufficient_stock 2022-01-14 19:41:08 +00:00
Matt-Yorkley
b6cf6483f2 Extract and standardise use of order loading around checkout processing 2022-01-14 19:41:08 +00:00
Matt-Yorkley
77d89ec7d0 Extract and standardise use of #order_completion_route 2022-01-14 19:41:08 +00:00
Matt-Yorkley
9b6d4da8d5 Pull related lines into OrderCompletion#order_completion_reset 2022-01-14 19:41:08 +00:00
Matt-Yorkley
02995530e2 Pull apart OrderCompletionReset service 2022-01-14 19:41:08 +00:00
Matt-Yorkley
06eb98bdf4 Extract #valid_order_line_items? 2022-01-14 19:41:08 +00:00
Jean-Baptiste Bellet
a80818d2b6 Fix rubocop warning
Extra empty line detected at module body end.
2021-12-09 11:30:57 +01:00
jibees
53e12fb5e5 Get rid of conditional branches with & operator
Co-authored-by: Maikel <maikel@email.org.au>
2021-12-09 11:12:23 +01:00
Jean-Baptiste Bellet
68e4d55f80 Avoid ternary operator 2021-12-07 16:27:22 +00:00
Jean-Baptiste Bellet
e89caf7a0d Add stripe as payment method 2021-12-07 16:27:22 +00:00
Matt-Yorkley
924f6568d6 Replace data loading with new Reports::QueryInterface 2021-11-04 14:55:23 +00:00
Matt-Yorkley
817f0942dd Pull in reports POC work replacing Packing reports 2021-11-04 14:55:23 +00:00
Luis Azcuaga
e8fd89a6d2 Run rubocop over existing todo 2021-10-25 21:28:28 -05:00
Matt-Yorkley
8bf3f72ad3 Extract CableCar responses code to a concern 2021-09-08 10:34:34 +01:00
Matt-Yorkley
71412f8d4b Update validations 2021-09-06 14:22:28 +01:00
Matt-Yorkley
9d6e5e9420 Remove currently unused code 2021-09-01 15:04:53 +01:00
Matt-Yorkley
3dd8ed85b4 Implement manual shipping method selection 2021-09-01 14:16:32 +01:00
Andy Brett
759c5d6bdd don't override existing addresses on order with AddressFinder 2021-08-25 13:11:48 -07:00
Matt-Yorkley
1d074c2151 Extract callbacks to a concern 2021-08-12 13:06:50 +01:00
Matt-Yorkley
1b112961d1 Handle request timeouts explicitly with rack-timeout
Puma doesn't terminate execution of long-running requests by default.
2021-07-31 13:11:10 +01:00
Matt-Yorkley
41f9f07a80 Simplify cases where pagination is conditional and pagination data may or may not be used 2021-07-14 13:17:33 +01:00
Nihal Mohammed
e5bdaa603a Setup pagy 2021-07-14 13:17:33 +01:00
Cillian O'Ruanaidh
f20cea7e4f Allow people to set enterprise latitude/longitude manually or automatically.
This for new changes to the enterprise registration/signup flow where a map will be displayed when people are filling in their address. On this map people can check the geocoder has geocoded their address correctly and if not they can manually adjust their latitude/longitude on the map.

But currently every time someone changes their address in the Admin > Enterprise > Address section the address would automatically be geocoded so this could overwrite the latitude/longitude that was set during sign up. To prevent the latitude/longitude from being overwritten this add's a checkbox which people need to explicity click if they want their address to be automatically geocoded, otherwise it will just use the manually configured latitude/longitude.

Note this new feature which allows people to select their location on a map during registration only works with Google maps so far. So if an instance is using Open Street Map this change also adds support for passing a :use_geocoder parameter to the Api::EnterprisesController during registration so that the address will be geocoded on the backend without the use of a map.
2021-03-19 21:43:29 +00:00
Matt-Yorkley
7230d2767c Add concern for accessing raw params hash 2021-02-18 11:02:22 +00:00
Matt-Yorkley
eec9f27353 Move controller concern to correct directory
This is a controller concern, it should live in app/controllers/concerns/
2021-01-08 17:47:09 +00:00