Mohamed ABDELLANI
c921250d68
implement Spree::Order#invoiceable?
...
This will be used to filter the orders when running bulk print
2023-08-03 14:52:45 +01:00
Filipe
c0a4bccb3e
Merge pull request #11156 from Matt-Yorkley/product-tax-category
...
[Product Refactor] Tax category
2023-08-03 10:29:40 +01:00
Konrad
44d25dbb6a
Merge pull request #11299 from cillian/order-name-sorting
...
Sort orders by last name, then first name i.e. the same way bulk order management works
2023-08-02 11:30:25 +02:00
Matt-Yorkley
91fc4b51b4
Rescue ImageMagick errors
2023-07-31 17:21:49 +01:00
Matt-Yorkley
a84f9ebd2e
Allow passing tax_category to new variant when creating a new product
2023-07-31 09:23:20 +10:00
Matt-Yorkley
4934d09a4c
Update delegation and method chaining between product and tax_category
2023-07-31 09:23:20 +10:00
Matt-Yorkley
d33e780411
Move tax_category association from product to variant
2023-07-31 09:23:19 +10:00
Neal Chambers
2a76b1972f
Safely autocorrect Lint/SafeNavigationChain
...
Inspecting 1480 files
........................................................................................................................................................................................................................................................................................................................................W............................W..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Offenses:
app/models/spree/line_item.rb:283:55: W: [Corrected] Lint/SafeNavigationChain: Do not chain ordinary method call after safe navigation operator.
self.final_weight_volume = variant&.unit_value * quantity
^^^^^^^^^^^
app/models/spree/line_item.rb:283:57: C: [Corrected] Layout/SpaceAroundMethodCallOperator: Avoid using spaces around a method call operator.
self.final_weight_volume = variant&.unit_value&. * quantity
^
app/models/spree/stock/availability_validator.rb:31:77: W: [Corrected] Lint/SafeNavigationChain: Do not chain ordinary method call after safe navigation operator.
return line_item.order.shipments.first if line_item.order&.shipments.any?
^^^^^
1480 files inspected, 3 offenses detected, 3 offenses corrected
2023-07-30 21:29:19 +09:00
Neal Chambers
e9f448fad9
Safely autocorrect Lint/AmbiguousOperatorPrecedence
...
Inspecting 1480 files
...................................................................................................................................................................................................................................W..........................W........................................................W................W..............W................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Offenses:
app/models/calculator/flexi_rate.rb:38:7: W: [Corrected] Lint/AmbiguousOperatorPrecedence: Wrap expressions with varying precedence with parentheses to avoid ambiguity.
count * preferred_additional_item.to_f + preferred_first_item.to_f
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/enterprise.rb:362:12: W: [Corrected] Lint/AmbiguousOperatorPrecedence: Wrap expressions with varying precedence with parentheses to avoid ambiguity.
cat << "sells_" + sells
^^^^^^^^^^^^^^^^
app/models/enterprise.rb:496:21: W: [Corrected] Lint/AmbiguousOperatorPrecedence: Wrap expressions with varying precedence with parentheses to avoid ambiguity.
phone_number && "https://wa.me/ " + phone_number.tr('+ ', '')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/ability.rb:27:33: W: [Corrected] Lint/AmbiguousOperatorPrecedence: Wrap expressions with varying precedence with parentheses to avoid ambiguity.
order.user == user || order.token && token == order.token
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/ability.rb:30:33: W: [Corrected] Lint/AmbiguousOperatorPrecedence: Wrap expressions with varying precedence with parentheses to avoid ambiguity.
order.user == user || order.token && token == order.token
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/line_item.rb:205:16: W: [Corrected] Lint/AmbiguousOperatorPrecedence: Wrap expressions with varying precedence with parentheses to avoid ambiguity.
(price + fees / quantity).round(2)
^^^^^^^^^^^^^^^
app/models/spree/preferences/store.rb:28:11: W: [Corrected] Lint/AmbiguousOperatorPrecedence: Wrap expressions with varying precedence with parentheses to avoid ambiguity.
should_persist? && Spree::Preference.where(key: key).exists?
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1480 files inspected, 7 offenses detected, 7 offenses corrected
2023-07-30 21:29:19 +09:00
Cillian O'Ruanaidh
276b94de5b
Sort orders by last name, then first name i.e. the same way bulk order management works
2023-07-28 14:20:29 +01:00
jibees
605cb730f7
Merge pull request #11163 from jibees/productsV3-searching-filtering-pagination
...
🚧 Products v3: viewing, searching, filtering & pagination
2023-07-25 15:22:42 +02:00
Jean-Baptiste Bellet
2a81a9acfb
Add ability for non super-admin user to see products_v3 page
2023-07-25 09:20:25 +02:00
David Cook
6fa9165cc2
Safely autocorrect Layout/EmptyLines
...
Inspecting 1478 files
..............................................................................................................................................................................................................................................................................................................................................C.......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Offenses:
app/models/spree/payment.rb:100:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
1478 files inspected, 1 offense detected, 1 offense corrected
2023-07-20 13:58:00 +10:00
Jean-Baptiste Bellet
3fab9714f5
Use a constant as the search_key
2023-07-19 14:58:40 +02:00
Filipe
15282f9738
Merge pull request #11115 from abdellani/fix-enterprise-users-should-have-access-to-invoices
...
authorize enterprise users to access invoices page
2023-07-18 16:42:00 +01:00
Filipe
448d5ea017
Merge pull request #11135 from Matt-Yorkley/vouchers
...
Vouchers part 2
2023-07-13 12:50:32 +01:00
Mohamed ABDELLANI
f68064480a
authorize distributor manager to generate invoices
2023-07-06 17:36:13 +01:00
Mohamed ABDELLANI
3a9a023dea
authorize enterprise users to access invoices page
2023-07-06 17:36:13 +01:00
Matt-Yorkley
42a3087cdb
Remove :available_on attribute from Product class
2023-07-06 14:36:35 +01:00
Matt-Yorkley
652beac73f
Drop valid? check from zero_priced_order? method
2023-07-05 15:31:05 +01:00
Matt-Yorkley
671dfc7082
Don't flush errors when checking zero priced order validity
2023-07-04 14:42:31 +01:00
Matt-Yorkley
bd29a9acde
Introduce "zero priced orders" to checkout UI and order state flow
2023-07-04 13:13:05 +01:00
Matt-Yorkley
3d44f4bc98
Introduce "zero priced order" concept with no required payment
...
This applies to cases where an order contains items with zero price or where applied vouchers have reduced the order's total to zero.
2023-07-03 11:03:05 +01:00
Matt-Yorkley
fefa9288a4
Remove :permalink attribute from Product
2023-06-30 11:37:57 +01:00
Filipe
da226ea021
Merge pull request #11109 from mkllnk/image-urls
...
Gracefully deal with missing S3 config
2023-06-29 12:50:36 +01:00
Matt-Yorkley
a0a1f8f910
Merge pull request #11002 from openfoodfoundation/voucher-prep
...
Vouchers part 1
2023-06-28 11:30:12 +01:00
Maikel
014fb69d4b
Merge pull request #10964 from macanudo527/fix_linelength_bundle1
...
Fix Layout/LineLength - Bundle 1
2023-06-26 12:10:39 +10:00
Maikel
e065910d2d
Merge pull request #10939 from Matt-Yorkley/master-variants
...
Remove master variants
2023-06-23 13:42:58 +10:00
Maikel Linke
33d212d274
Gracefully deal with missing S3 config
...
I could have split this into several commits:
* DRY direct linking to images.
* Check S3 config before direct linking.
* Just check if service is public instead of relying on name.
Developers may copy a staging or production database or experiment with
S3 storage. But when the S3 config is missing then calling `service`
raises an ArgumentError due to a missing name.
Now we only try to call `service` if the S3 config is present.
2023-06-23 12:41:36 +10:00
David Cook
3bff7a9f13
Fix query
...
With deep nesting syntax.
I chose the longer alias 'left_outer_joins' because it's more explicit, and matches the use up on line 121.
2023-06-23 09:11:03 +09:00
Neal Chambers
1e4034534c
Fix Layout/LineLength
2023-06-23 09:08:04 +09:00
Matt-Yorkley
776eac9f52
Add image error Bugsnag notifications
2023-06-20 14:14:19 +01:00
Matt-Yorkley
c6ec13443e
Drop next_invoice_number method from Spree::Order
2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
0ed7599267
extract methods related to invoices from the order model to the OrderInvoiceComparator
2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
61d58df56f
fix linter issues
2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
d86173c509
add feature toggle
...
seperate the invoice templates that rely on presenters from the old ones.
2023-06-18 21:03:13 +02:00
Mohamed ABDELLANI
0fbf88190e
Generate invoice model
...
There are three main components:
1. The invoice model
2. order serializers: serialize the order for the invoice
3. data presenters: the object that will be use to access the order's serialize data
2023-06-18 21:03:13 +02:00
Matt-Yorkley
ae24b2d688
Update ScopeVariantsForSearch logic to match both product and variant SKUs
2023-06-16 21:26:28 +01:00
Matt-Yorkley
733dd3c428
Disable variant is_master column
2023-06-16 21:23:44 +01:00
Matt-Yorkley
1daab8994d
Remove is_master and not_master scopes
2023-06-16 21:23:44 +01:00
Matt-Yorkley
85059bfb26
Remove master variant validation conditionals
2023-06-16 21:23:44 +01:00
Matt-Yorkley
1922598d2d
Reorganise associations, validations, scopes and callbacks for clarity
2023-06-16 21:23:44 +01:00
Matt-Yorkley
3ef7d2c9ff
Remove master variant from product
2023-06-16 21:23:44 +01:00
Matt-Yorkley
7dc1091bc2
Migrate product image from master variant to product
2023-06-16 21:23:44 +01:00
Matt-Yorkley
d8649fc9fb
Migrate master variant :sku to product
2023-06-16 21:21:40 +01:00
Matt-Yorkley
6b9b5ea347
Stop storing unit_value and unit_description on master variant
2023-06-16 21:21:40 +01:00
Matt-Yorkley
8c0b8dad85
Stop using master variant for storing :display_as value
2023-06-16 21:21:40 +01:00
Matt-Yorkley
1b06c20197
Stop using master variant as a potential store for prices
2023-06-16 21:21:40 +01:00
Matt-Yorkley
d4188da7c1
Simplify product images delegation mess
2023-06-16 21:21:40 +01:00
Matt-Yorkley
42a5a48816
Remove dead code
2023-06-16 21:21:40 +01:00