Luis Ramos
9bbef16804
Converting all calls to ActiveRelation#sum to use a symbol with &
...
This is only applicable to database columns, if we are summing using a method in the model than the & is required!
2020-11-27 13:59:46 +00:00
Matt-Yorkley
0b18b0dc0a
Include Calculator attributes in PaymentMethod nested attributes and DRY repeated code
2020-11-17 19:04:26 +00:00
Matt-Yorkley
d225294b6b
Extract to PermittedAttributes::Calculator
2020-11-17 18:51:48 +00:00
Matt-Yorkley
36f4f40e84
Refactor and fix PaymentMethod strong params
2020-11-17 18:51:48 +00:00
Matt-Yorkley
787f29105c
Fix ForbiddenAttribute errors for bulk update of enterprise fees and order cycles
...
Example error:
As an administrator
I want to manage simple order cycles
updating many order cycle opening/closing times at once
Failure/Error: raise ActiveModel::ForbiddenAttributesError, params.to_s
ActiveModel::ForbiddenAttributesError:
{"order_cycle_set"=>{"collection_attributes"=>{"0"=>{"id"=>62, "name"=>"Updated Order Cycle 1", "orders_open_at"=>"2040-12-01 12:00:00", "orders_close_at"=>"2040-12-01 12:00:01"}, "1"=>{"id"=>63, "name"=>"Updated Order Cycle 2", "orders_open_at"=>"2040-12-01 12:00:02", "orders_close_at"=>"2040-12-01 12:00:03"}, "2"=>{"id"=>64, "name"=>"Updated Order Cycle 3", "orders_open_at"=>"2040-12-01 12:00:04", "orders_close_at"=>"2040-12-01 12:00:05"}}}, "controller"=>"admin/order_cycles", "action"=>"bulk_update", "format"=>"json", "order_cycle"=>{}}
# ./app/controllers/application_controller.rb:20:in `print_params'
# ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
# ------------------
# --- Caused by: ---
# ActiveModel::ForbiddenAttributesError:
# ActiveModel::ForbiddenAttributesError
# ./app/models/model_set.rb:29:in `block in collection_attributes='
2020-11-17 18:51:48 +00:00
Maikel
d96216b8d7
Merge pull request #6268 from yihyang/master-yy-added-product-sorting
...
Sort products alphabetically in OC edit/create page
2020-11-13 13:29:54 +11:00
Luis Ramos
26946ec102
Fix edge case and some specs in post checkout actions
2020-10-30 15:09:13 +00:00
Luis Ramos
57a9d6e1e2
Make customer terms_and_conditions_accepted_at be set to current time
...
after a successful checkout
2020-10-30 15:09:13 +00:00
Yih Yang
e3d1f5256b
added product sorting
2020-10-29 22:06:35 +08:00
Matt-Yorkley
25a8c44c22
Merge pull request #6018 from Matt-Yorkley/tax-display
...
Tax display
2020-09-22 17:53:04 +02:00
Matt-Yorkley
77eaebc2a7
Merge pull request #5888 from andrewpbrett/imperial-auto-units
...
Allow US units on products/variants
2020-09-17 15:04:15 +02:00
Luis Ramos
212820b3da
Merge pull request #5912 from luisramos0/tcs
...
Terms and Conditions - upload PDF in the Enterprise Business Details and read them on Checkout
2020-09-17 12:01:45 +01:00
Luis Ramos
f1358dfa9a
Merge pull request #5722 from rioug/4206-back-from-Edit-Product-removed-filters-products-page
...
4206 back from edit product removed filters products page
2020-09-17 11:51:58 +01:00
Matt-Yorkley
9481876595
Fix line_item tax sum in OrderTaxAdjustmentsFetcher
2020-09-12 15:41:29 +01:00
Luis Ramos
e413920335
Move both OptionValueNamer and VariantAndLineItemNaming to app/services/variant_units
2020-09-03 09:11:00 -07:00
Luis Ramos
1a734aacf8
Allow user to upload terms and conditions PDF file to an enterprise
2020-08-31 17:40:34 +01:00
Pau Pérez Fabregat
2fa8cd54fd
Merge pull request #5769 from Matt-Yorkley/customer-names
...
Customer names in reports
2020-08-27 15:39:47 +02:00
Gaetan Riou
9b26ff2fa4
move product filter helper to a service
2020-08-21 10:29:07 +10:00
Matt-Yorkley
3badaa07d2
Fix adjustment calculations; only "eligible" adjustments should be regarded as applied to an order.
...
When an order is submitted and the payment fails, the failed payment's adjustments (payment fees) are set to `eligible: false` to indicate they do not apply. These should not be counted as being included in an order's adjustments.
2020-08-19 22:50:37 +01:00
Matt-Yorkley
102df28e97
Extract data masking to service
2020-08-14 20:48:33 +01:00
Matt-Yorkley
23bb72faa6
Add Enterprise shop preference to allow customer names in reports
2020-08-14 20:48:32 +01:00
Luis Ramos
0359d103b2
Improve code comments on dodgy and/but critical checkout process method
2020-07-30 17:18:34 +01:00
Luis Ramos
2136eecd09
Avoid reloading the payment every time, so that in-memory data is not wiped out
...
When checkout fails and the payment states dont match (inside the if), in-memory data of the failed payment can be lost but updating the payment state is the fundamental part here so that further checkout attempts work. We may improve this update statement so that all the data of the failed payment is persisted
2020-07-29 22:50:30 +01:00
Luis Ramos
07005594ff
Move payments persistence code to order workflow service
2020-07-28 23:56:43 +01:00
Luis Ramos
ac5882e3e6
Refactor OrderWorkflow
2020-07-28 23:55:36 +01:00
Luis Ramos
9cbcf14485
Move shipping method id setting code to OrderWorkflow service
2020-07-28 23:50:47 +01:00
Luis Ramos
c3f99050fd
Move advance_order_state from checkout_controller to OrderWorkflow service
2020-07-28 23:43:07 +01:00
Luis Ramos
26eee4631f
Rename AdvanceOrderService to OrderWorkflow
2020-07-28 23:40:49 +01:00
Luis Ramos
7ba8c5ace1
Make OC advanced settings work by permitting the extra parameter
2020-07-21 19:44:41 +01:00
Pau Perez
4e00c45782
Doc defensive coding needed by pin payments
...
[skip ci]
2020-07-15 16:46:09 +02:00
Luis Ramos
31e072179b
Make method a little simple by extracting method
2020-07-15 15:23:16 +01:00
Maikel Linke
25155cab18
Provide credit card brand to Pin Payments
...
Spree replaced the Ruby code providing the credit card brand with a
jquery plugin providing it on the checkout screen.
I re-added Ruby code because it's easier and more robust than updating
the user interface with new Javascript.
2020-07-15 17:13:46 +10:00
Matt-Yorkley
d78db16abe
Merge pull request #5718 from Matt-Yorkley/available-locales-bug
...
Available locales bug
2020-07-08 12:30:18 +02:00
Matt-Yorkley
96138e9129
Refactor UserLocaleSetter public methods
2020-07-04 10:15:35 +02:00
Matt-Yorkley
f08a530877
Make #valid_locale_for_user an instance method
2020-07-04 09:51:00 +02:00
Matt-Yorkley
05c1f093b2
Delete dead code
...
There's nothing done in this bit of code that isn't already done somewhere else, and more effectively.
2020-07-03 16:44:37 +02:00
Matt-Yorkley
0c2fd4bfd2
Fix ensure_valid_locale_persisted and change public interface of service
2020-07-03 16:39:24 +02:00
Matt-Yorkley
ab63d2234c
Guard against nils in conditions
2020-07-03 14:22:32 +02:00
Matt-Yorkley
078726dcca
Add explanatory comment on saving selected locale in cookies
2020-07-03 14:21:45 +02:00
Matt-Yorkley
dab0add492
Make conditional more concise
2020-07-03 14:20:51 +02:00
Matt-Yorkley
ebffa381c6
Update cookies[:locale] logic
2020-07-03 14:06:05 +02:00
Matt-Yorkley
faa7c0a7c5
Extract save_cookies_from_locale comment-method
2020-07-03 14:03:52 +02:00
Matt-Yorkley
02549d1b0f
Extract all locale-setting logic to a service
2020-07-03 13:44:13 +02:00
Pau Pérez Fabregat
4ced16c206
Merge pull request #5709 from luisramos0/empty
...
Replace empty? with blank? and replace unless empty? with if present?
2020-07-02 11:36:37 +02:00
Luis Ramos
2d4326ded3
Replace empty? with blank? which is equivalent but a bit more resilient, returns false for nil
...
Present is not blank, so unless blank? becomes if present?
2020-07-01 14:08:07 +01:00
Matt-Yorkley
87cd936c94
Blacklist timestamp attributes when assigning for update
...
Doing #clone or #dup of an object's attributes then passing it to an #update/#update_attributes call means we are manually passing values for created_at and updated_at, which can cause problems, especially if the object being duped hasn't been persisted yet: in this case we would be manually attempting to save timestamps with nil values, which is not a good idea. Here they are blacklisted from the attributes hash.
2020-06-30 11:30:16 +02:00
Matt-Yorkley
ce8908f53b
Use #dup when copying attributes hash
...
In Rails 4, #clone behaves differently. The attributes hash of the cloned object is shared with the original, it's not a separate object! https://github.com/rails/rails/blob/4-0-stable/activerecord/lib/active_record/core.rb#L217-L220
2020-06-30 11:30:16 +02:00
Luis Ramos
ed5fc29c44
Fix hash alignment issue
2020-06-22 17:39:20 +01:00
Luis Ramos
f848a89a00
Rename update_attributes to update #rails4
2020-06-22 16:51:43 +01:00
Luis Ramos
5d710f1e24
Use ruboccop autocorrect to fix issues
2020-06-22 12:46:07 +01:00