Commit Graph

1042 Commits

Author SHA1 Message Date
Filipe
ed8fd41bec Merge pull request #11290 from cyrillefr/Orders_in_confirmation_state_cannot_be_completed_by_hub_or_shop
Fix Orders in confirmation state cannot be completed by hub or shop
2023-11-16 19:50:14 +00:00
Neal Chambers
0663f04535 Remove Simple References to Bogus Gateway 2023-11-07 11:19:26 +09:00
Maikel
6a236a8678 Revert "replace hiredis gem with hiredis-client" 2023-11-01 15:16:57 +11:00
cyrillefr
e1374d5837 Add Order completion after capturing event
- A new processing method
- Payment means that link to it
- Altering methods that handle next status choice
2023-10-29 21:58:03 +01:00
cyrillefr
cd6c3c45e6 Allow an order in confirmation state to transition to payment 2023-10-29 21:58:03 +01:00
Mohamed ABDELLANI
d6890e9828 check key class before call Rails.cache.delete 2023-10-26 10:27:00 +01:00
Mohamed ABDELLANI
f047deaf12 load the latest invoice when user tries to print an order 2023-10-08 21:47:17 +02:00
Mohamed ABDELLANI
3f4eab2a0a update the invoice renderer to check if the feature is enable for individual user 2023-10-08 21:47:17 +02:00
Mohamed ABDELLANI
614c8a5060 update order mailer to check if invoices feature is enabled for the current user 2023-10-08 21:47:17 +02:00
Mohamed ABDELLANI
bd2a1b3e22 check if invoices feature is enabled for the current user before printing a single invoice 2023-10-08 21:47:17 +02:00
David Cook
e844d71abc Redirect to edit path on success
Simply rendering the edit form on the posted path is problematic. For example if you refresh the path you get a 404.
But if there's errors, we want to render the form with unsaved values so you can see the errors and try again.
2023-09-28 09:41:44 +10:00
Neal Chambers
416d6e538a Fix Style/HashSyntax 2023-09-09 09:00:38 +09:00
Pedro Carmona
51050036d4 Use instance default locale as the default locale for a new user 2023-09-05 01:00:35 +01:00
Pedro Carmona
c4830e3baa Send localized email when creating users via admin interface
Based on the current user locale
2023-09-05 01:00:35 +01:00
Neal Chambers
06e217c527 Safely autocorrect Rails/WhereNot
Inspecting 1483 files
........................................................................................................................C..................................................................................................................C...........CC.C..........................................C......C..........C.........................C......................CC..........C........................................................................................................................C.......................................................................................................C........................................................C...........................................................................................................................................C......................................C.........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

Offenses:

app/controllers/spree/admin/products_controller.rb:183:11: C: [Corrected] Rails/WhereNot: Use where.not(spree_variants: { import_date: nil }) instead of manually constructing negated SQL in where.
          where('spree_variants.import_date IS NOT NULL').
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/concerns/permalink_generator.rb:37:26: C: [Corrected] Rails/WhereNot: Use where.not(id: id) instead of manually constructing negated SQL in where.
      scope_with_deleted.where('id != ?', id)
                         ^^^^^^^^^^^^^^^^^^^^
app/models/concerns/permalink_generator.rb:37:40: C: [Corrected] Style/HashSyntax: Omit the hash value.
      scope_with_deleted.where.not(id: id)
                                       ^^
app/models/enterprise.rb:152:7: C: [Corrected] Rails/WhereNot: Use where.not(enterprises: { id: ready_enterprises }) instead of manually constructing negated SQL in where.
      where("enterprises.id NOT IN (?)", ready_enterprises)
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/enterprise.rb:158:31: C: [Corrected] Rails/WhereNot: Use where.not(sells: 'none') instead of manually constructing negated SQL in where.
  scope :is_distributor, -> { where('sells != ?', 'none') }
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/enterprise.rb:479:17: C: [Corrected] Rails/WhereNot: Use where.not(id: id) instead of manually constructing negated SQL in where.
    dups = dups.where('id != ?', id) unless new_record?
                ^^^^^^^^^^^^^^^^^^^^
app/models/enterprise.rb:534:43: C: [Corrected] Rails/WhereNot: Use where.not(enterprises: { id: self }) instead of manually constructing negated SQL in where.
    enterprises = owner.owned_enterprises.where('enterprises.id != ?', self)
                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/enterprise.rb:583:7: C: [Corrected] Rails/WhereNot: Use where.not(enterprises: { id: id }) instead of manually constructing negated SQL in where.
      where('enterprises.id != ?', id).
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/enterprise_fee.rb:40:24: C: [Corrected] Rails/WhereNot: Use where.not(spree_calculators: { type: PER_ORDER_CALCULATORS }) instead of manually constructing negated SQL in where.
    joins(:calculator).where('spree_calculators.type NOT IN (?)', PER_ORDER_CALCULATORS)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/enterprise_relationship.rb:78:19: C: [Corrected] Rails/WhereNot: Use where.not(name: perms) instead of manually constructing negated SQL in where.
      permissions.where('name NOT IN (?)', perms).destroy_all
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/product_import/inventory_reset_strategy.rb:27:16: C: [Corrected] Rails/WhereNot: Use where.not(id: excluded_items_ids) instead of manually constructing negated SQL in where.
      relation.where('id NOT IN (?)', excluded_items_ids)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/proxy_order.rb:19:25: C: [Corrected] Rails/WhereNot: Use where.not(proxy_orders: { canceled_at: nil }) instead of manually constructing negated SQL in where.
  scope :canceled, -> { where('proxy_orders.canceled_at IS NOT NULL') }
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/credit_card.rb:26:39: C: [Corrected] Rails/WhereNot: Use where.not(gateway_customer_profile_id: nil) instead of manually constructing negated SQL in where.
    scope :with_payment_profile, -> { where('gateway_customer_profile_id IS NOT NULL') }
                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/product.rb:166:9: C: [Corrected] Rails/WhereNot: Use where.not(order_cycles: { id: nil }) instead of manually constructing negated SQL in where.
        where('order_cycles.id IS NOT NULL')
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/variant.rb:94:30: C: [Corrected] Rails/WhereNot: Use where.not(deleted_at: nil) instead of manually constructing negated SQL in where.
    scope :deleted, lambda { where('deleted_at IS NOT NULL') }
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/variant.rb:165:43: C: [Corrected] Rails/WhereNot: Use where.not(spree_prices: { amount: nil }) instead of manually constructing negated SQL in where.
                                          where('spree_prices.amount IS NOT NULL').
                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/zone.rb:141:19: C: [Corrected] Rails/WhereNot: Use where.not(id: id) instead of manually constructing negated SQL in where.
      Spree::Zone.where('id != ?', id).update_all(default_tax: false) if default_tax
                  ^^^^^^^^^^^^^^^^^^^^
app/models/spree/zone.rb:141:33: C: [Corrected] Style/HashSyntax: Omit the hash value.
      Spree::Zone.where.not(id: id).update_all(default_tax: false) if default_tax
                                ^^
app/models/variant_override.rb:32:7: C: [Corrected] Rails/WhereNot: Use where.not(variant_overrides: { import_date: nil }) instead of manually constructing negated SQL in where.
      where('variant_overrides.import_date IS NOT NULL').
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/services/cap_quantity.rb:45:22: C: [Corrected] Rails/WhereNot: Use where.not(variant_id: available_variants_for.select(&:id)) instead of manually constructing negated SQL in where.
    order.line_items.where('variant_id NOT IN (?)', available_variants_for.select(&:id))
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
engines/catalog/app/services/catalog/product_import/products_reset_strategy.rb:32:18: C: [Corrected] Rails/WhereNot: Use where.not(spree_variants: { id: excluded_items_ids }) instead of manually constructing negated SQL in where.
        relation.where('spree_variants.id NOT IN (?)', excluded_items_ids)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
engines/order_management/app/services/order_management/subscriptions/proxy_order_syncer.rb:78:18: C: [Corrected] Rails/WhereNot: Use where.not(order_cycle_id: order_cycle_ids) instead of manually constructing negated SQL in where.
        orphaned.where('order_cycle_id NOT IN (?)', order_cycle_ids)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
lib/reporting/reports/users_and_enterprises/base.rb:27:14: C: [Corrected] Rails/WhereNot: Use where.not(enterprises: { id: nil }) instead of manually constructing negated SQL in where.
            .where("enterprises.id IS NOT NULL")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
lib/reporting/reports/users_and_enterprises/base.rb:39:14: C: [Corrected] Rails/WhereNot: Use where.not(enterprise_id: nil) instead of manually constructing negated SQL in where.
            .where("enterprise_id IS NOT NULL")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
lib/reporting/reports/users_and_enterprises/base.rb:40:14: C: [Corrected] Rails/WhereNot: Use where.not(user_id: nil) instead of manually constructing negated SQL in where.
            .where("user_id IS NOT NULL")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
lib/tasks/data/anonymize_data.rake:50:16: C: [Corrected] Rails/WhereNot: Use where.not(user_id: nil) instead of manually constructing negated SQL in where.
      Customer.where("user_id IS NOT NULL")
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

1483 files inspected, 26 offenses detected, 26 offenses corrected
2023-08-20 12:33:43 +09:00
Konrad
df7d42a420 Merge pull request #11352 from abdellani/remove-dead-code-bulk-invoice
Remove dead code related to bulk invoice printing
2023-08-18 18:14:01 +02:00
Neal Chambers
3c9afcf360 Fix Rails/CompactBlank 2023-08-17 16:43:13 +09:00
Matt-Yorkley
75f246109f Fix assignment of default shipping category in variant new/edit pages 2023-08-14 21:02:48 +01:00
Matt-Yorkley
eefc356472 Update shipping_category usage in admin pages 2023-08-14 21:02:47 +01:00
Mohamed ABDELLANI
70b61eb481 remove bulk invoice service 2023-08-08 08:41:33 +01:00
Mohamed ABDELLANI
fc01ffc509 remove InvoicesController#create 2023-08-08 08:38:32 +01:00
Rachel Arnould
1b1279aa56 Merge pull request #11192 from abdellani/bulk-invoice-printing
fix Bulk invoice printing/sending
2023-08-04 12:02:43 +02:00
David Cook
42230c07b2 Merge pull request #11312 from macanudo527/fix_rubocop_5
Fix autocorrect Rails Cops
2023-08-04 11:13:52 +10:00
Mohamed ABDELLANI
4f6ab69add implement OrderInvoiceGenerator service 2023-08-03 14:52:45 +01:00
Neal Chambers
a1560263a1 Safely autocorrect Rails/ActionOrder
Inspecting 1481 files
.........................................C.................C.........................................................CC........C..........C.C.........C..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

Offenses:

app/controllers/admin/resource_controller.rb:39:5: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
    def update
    ^^^^^^^^^^
app/controllers/admin/resource_controller.rb:39:5: C: [Corrected] Rails/ActionOrder: Action create should appear before update.
    def create ...
    ^^^^^^^^^^
app/controllers/admin/resource_controller.rb:51:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/admin/resource_controller.rb:52:5: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
    def update_positions
    ^^^^^^^^^^^^^^^^^^^^
app/controllers/api/v0/orders_controller.rb:13:7: C: [Corrected] Rails/ActionOrder: Action index should appear before show.
      def index ...
      ^^^^^^^^^
app/controllers/api/v0/orders_controller.rb:23:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def show
      ^^^^^^^^
app/controllers/api/v0/orders_controller.rb:28:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/api/v0/orders_controller.rb:29:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def update
      ^^^^^^^^^^
app/controllers/spree/admin/images_controller.rb:26:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/images_controller.rb:37:7: C: [Corrected] Rails/ActionOrder: Action edit should appear before create.
      def edit ...
      ^^^^^^^^
app/controllers/spree/admin/images_controller.rb:40:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/images_controller.rb:41:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def update
      ^^^^^^^^^^
app/controllers/spree/admin/invoices_controller.rb:19:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/invoices_controller.rb:43:7: C: [Corrected] Rails/ActionOrder: Action show should appear before create.
      def show ...
      ^^^^^^^^
app/controllers/spree/admin/invoices_controller.rb:49:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/invoices_controller.rb:50:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def poll
      ^^^^^^^^
app/controllers/spree/admin/products_controller.rb:23:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def new
      ^^^^^^^
app/controllers/spree/admin/products_controller.rb:23:7: C: [Corrected] Rails/ActionOrder: Action show should appear before new.
      def show ...
      ^^^^^^^^
app/controllers/spree/admin/products_controller.rb:24:7: C: [Corrected] Rails/ActionOrder: Action index should appear before show.
      def index ...
      ^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:27:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/products_controller.rb:27:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:28:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/products_controller.rb:28:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def new
      ^^^^^^^
app/controllers/spree/admin/products_controller.rb:28:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def index
      ^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:28:7: C: [Corrected] Rails/ActionOrder: Action index should appear before new.
      def index ...
      ^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:29:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def new
      ^^^^^^^
app/controllers/spree/admin/products_controller.rb:32:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/products_controller.rb:32:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:33:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def edit
      ^^^^^^^^
app/controllers/spree/admin/products_controller.rb:36:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:38:7: C: [Corrected] Rails/ActionOrder: Action show should appear before create.
      def show ...
      ^^^^^^^^
app/controllers/spree/admin/products_controller.rb:42:7: C: [Corrected] Rails/ActionOrder: Action index should appear before create.
      def index ...
      ^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:43:7: C: [Corrected] Rails/ActionOrder: Action index should appear before create.
      def index ...
      ^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:43:7: C: [Corrected] Rails/ActionOrder: Action index should appear before show.
      def index ...
      ^^^^^^^^^
app/controllers/spree/admin/products_controller.rb:47:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/products_controller.rb:48:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def edit
      ^^^^^^^^
app/controllers/spree/admin/products_controller.rb:48:7: C: [Corrected] Rails/ActionOrder: Action edit should appear before create.
      def edit ...
      ^^^^^^^^
app/controllers/spree/admin/products_controller.rb:51:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/products_controller.rb:52:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def update
      ^^^^^^^^^^
app/controllers/spree/admin/taxons_controller.rb:13:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/taxons_controller.rb:29:7: C: [Corrected] Rails/ActionOrder: Action edit should appear before create.
      def edit ...
      ^^^^^^^^
app/controllers/spree/admin/taxons_controller.rb:34:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/taxons_controller.rb:35:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def update
      ^^^^^^^^^^
app/controllers/spree/admin/variants_controller.rb:17:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def edit
      ^^^^^^^^
app/controllers/spree/admin/variants_controller.rb:18:7: C: [Corrected] Rails/ActionOrder: Action new should appear before edit.
      def new ...
      ^^^^^^^
app/controllers/spree/admin/variants_controller.rb:21:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/variants_controller.rb:21:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def update
      ^^^^^^^^^^
app/controllers/spree/admin/variants_controller.rb:22:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/variants_controller.rb:31:7: C: [Corrected] Rails/ActionOrder: Action new should appear before update.
      def new ...
      ^^^^^^^
app/controllers/spree/admin/variants_controller.rb:34:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/variants_controller.rb:35:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def create
      ^^^^^^^^^^
app/controllers/spree/admin/variants_controller.rb:35:7: C: [Corrected] Rails/ActionOrder: Action create should appear before update.
      def create ...
      ^^^^^^^^^^
app/controllers/spree/admin/variants_controller.rb:42:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
      def update
      ^^^^^^^^^^
app/controllers/spree/admin/variants_controller.rb:55:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/spree/admin/variants_controller.rb:56:7: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
      def search
      ^^^^^^^^^^
app/controllers/user_confirmations_controller.rb:14:3: C: [Corrected] Rails/ActionOrder: Action show should appear before new.
  def show ...
  ^^^^^^^^
app/controllers/user_confirmations_controller.rb:15:3: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
  def new
  ^^^^^^^
app/controllers/user_confirmations_controller.rb:19:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/user_confirmations_controller.rb:20:3: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 0.
  def create
  ^^^^^^^^^^
app/controllers/user_confirmations_controller.rb:21:3: C: [Corrected] Layout/EmptyLineBetweenDefs: Expected 1 empty line between method definitions; found 2.
  def create
  ^^^^^^^^^^
app/controllers/user_confirmations_controller.rb:37:3: C: [Corrected] Rails/ActionOrder: Action show should appear before create.
  def show ...
  ^^^^^^^^
app/controllers/user_confirmations_controller.rb:42:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.
app/controllers/user_confirmations_controller.rb:43:1: C: [Corrected] Layout/EmptyLines: Extra blank line detected.

1481 files inspected, 63 offenses detected, 63 offenses corrected
2023-08-01 22:50:21 +09:00
Matt-Yorkley
a52516bcbf Move tax_category dropdown in edit pages 2023-07-31 09:23:20 +10:00
Maikel Linke
11a4cd8613 Protect invoicing against unauthorized use
This could be optimised for performance but this was the simplest way
and we can work on it if performance becomes a problem.
2023-07-06 17:36:13 +01:00
Maikel Linke
15c30246a5 Allow to see only invoices of managed enterprises 2023-07-06 17:36:13 +01:00
Matt-Yorkley
fefa9288a4 Remove :permalink attribute from Product 2023-06-30 11:37:57 +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
e065910d2d Merge pull request #10939 from Matt-Yorkley/master-variants
Remove master variants
2023-06-23 13:42:58 +10:00
Matt-Yorkley
c6ec13443e Drop next_invoice_number method from Spree::Order 2023-06-18 21:03:13 +02:00
Matt-Yorkley
d3a31bd0bd Rename @invoice_presenter instance variable to @order in invoice templates 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
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
ced60d4382 Remove superfluous method from products controller 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
8247dce2dc Improve validation feedback on new variant page and add test coverage 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
1b06c20197 Stop using master variant as a potential store for prices 2023-06-16 21:21:40 +01:00
Matt-Yorkley
c5dfecbb69 Reapply taxes at model level if order address changes
This should be done at the model level
2023-06-14 10:19:30 +01:00
Matt-Yorkley
13a22c56f4 Move taxing of admin adjustments out of customer details controller 2023-06-14 10:19:30 +01:00
Matt-Yorkley
f4261b85b8 Merge pull request #10940 from Matt-Yorkley/order-tidyup
Order class tidyup
2023-06-08 15:06:59 +01:00
Matt-Yorkley
983353e078 Remove dead code
I'm pretty sure this was here because advancing the order was adding order errors in some cases
2023-06-07 13:01:37 +01:00
Matt-Yorkley
f3ee10dd5a Simplify by moving conditional to guard clause 2023-06-07 13:01:37 +01:00
Matt-Yorkley
acc34d1deb Update advance to payment logic 2023-06-07 00:58:43 +01:00
Matt-Yorkley
c7bb24e2a0 Remove dead code and clarify update logic 2023-06-07 00:58:43 +01:00
Matt-Yorkley
67c3e09dba Use RESTful routes for orders controller actions 2023-06-07 00:35:47 +01:00