Commit Graph

17290 Commits

Author SHA1 Message Date
Gaetan Craig-Riou
8829f6ad03 Only scope variant when inventory is enabled 2025-07-09 11:35:26 +10:00
Gaetan Craig-Riou
6212cd4d07 Only add variant override permission if inventory enabled
The permission shoul not be needed if inventory is disabled, but it will
prevent importing into the inventory if somehow we try to import into
inventory with inventory disabled.
2025-07-09 11:35:26 +10:00
Gaetan Craig-Riou
29a24b7305 Scope variant to hub only when inventory enabled 2025-07-09 11:35:26 +10:00
Gaetan Craig-Riou
b19b987ed0 Remove variant rule type when inventory disabled 2025-07-09 11:35:26 +10:00
Gaetan Craig-Riou
dc84d32028 Disable link to inventory related settings for enterprise
Metrics/CyclomaticComplexity is disabled on `enterprise_side_menu_items`
because even though there is a lot of branching it's still readable
2025-07-09 11:35:26 +10:00
Gaetan Craig-Riou
82c99891eb Only scope with variant override when inventory enabled 2025-07-09 11:35:26 +10:00
Gaetan Craig-Riou
f30b899569 Disable inventory option for product import 2025-07-09 11:35:26 +10:00
Gaetan Craig-Riou
cd8b7cd239 First step disable inventory 2025-07-09 11:35:26 +10:00
Filipe
affb5d7281 Merge pull request #13338 from chahmedejaz/task/13287-add-producer-seller-ability-to-edit-orders
Allow producer who are also seller to edit their products on hubs' orders
2025-07-04 14:26:39 +01:00
Ahmed Ejaz
5a13aa1c8a Add phone and email fields to customer order summary in ProducerMailer 2025-06-30 09:19:38 +02:00
Ahmed Ejaz
838e88a502 Refactor display_value_for_producer method to use Spree::Ability for supplier edit permissions 2025-06-29 19:41:41 +05:00
Ahmed Ejaz
7725fae992 Refactor order cycle and order management abilities to improve producer edit permissions 2025-06-29 19:13:31 +05:00
Ahmed Ejaz
765ce68c11 Add order_id to order controller, variant autocomplete, and search parameters for improved order management 2025-06-21 16:19:31 +05:00
Ahmed Ejaz
020d90b957 Enhance line item management abilities by consolidating permissions for Spree::Order 2025-06-21 16:19:31 +05:00
Ahmed Ejaz
ade35f2fa2 Fixes specs and update code respectively 2025-06-21 16:19:31 +05:00
Ahmed Ejaz
cd01a27bdd Add distributor_name_alias to searchable attributes and implement ransacker for filtering line items 2025-06-21 16:19:31 +05:00
Ahmed Ejaz
2f9c856645 Refactors order and line item permissions logic
Simplifies permission checking by:
- Extracting common managed/coordinated orders logic into separate method
- Combining producer-editable and managed/coordinated order clauses
- Merging producer and admin line item permission checks into single query
2025-06-21 16:19:31 +05:00
Ahmed Ejaz
8e8878e43a Add search_variants_as parameter to variant search functionality 2025-06-21 16:19:31 +05:00
Ahmed Ejaz
a37e08c2fd Refactor order management permissions for producers
Introduces granular permissions control for producers editing orders:

- Adds new :edit_as_producer_only permission for suppliers
- Refactors ability checks to clearly separate producer vs admin/distributor access
- Updates order views to properly restrict actions based on user role
- Prevents admins from being restricted by producer-only edit mode
2025-06-21 16:16:58 +05:00
Filipe
6ccc588113 Merge pull request #13342 from chitty/cch/refactor-unit-price
refactor: move unit price formatting logic out of model into helper
2025-06-19 16:19:03 +01:00
Carlos Chitty
37bf3f495f Refactor preference access to use define_method instead of method_missing
Replaces dynamic method handling with explicit getters and setters to
avoid recursion issues and improve clarity.
2025-06-18 13:59:46 -04:00
Carlos Chitty
f909bb2c30 Add respond_to_missing? to classes defining method_missing to improve respond_to? behavior 2025-06-18 13:59:42 -04:00
Carlos Chitty
3dcc4428fa Fix escaped HTML in unit price by marking output as html_safe 2025-06-16 12:53:41 +01:00
Carlos Chitty
2fe49b2070 Instantiate UnitPrice only once in app/models/spree/line_item.rb
Co-authored-by: Maikel <maikel@email.org.au>
2025-06-16 12:53:41 +01:00
Carlos Chitty
85e4f749f9 refactor: move unit price formatting logic out of model into helper
Solves Psych::DisallowedClass errors
Example: https://github.com/openfoodfoundation/openfoodnetwork/actions/runs/14739687958/job/41374343627?pr=13232

unit_price returns object with amount and unit, as mentioned in https://github.com/openfoodfoundation/openfoodnetwork/pull/6905\#discussion_r578401368
2025-06-16 12:53:41 +01:00
Jari Huttunen
287cd74b33 Merge branch 'openfoodfoundation:master' into Add-Finnish-to-Flatpickr 2025-06-07 23:44:11 +03:00
Jari Huttunen
d217a1394b Add Finnish to flatpickr controller 2025-06-07 23:34:09 +03:00
Filipe
f1138b7a9d Merge pull request #13349 from mkllnk/vine-error-message
Clarify voucher code not found can mean fully redeemed
2025-06-06 12:46:11 +01:00
Carlos Chitty
00aa60c8a3 Correct Style/ReturnNilInPredicateMethodDefinition rubocop offenses
Explicitly return false instead of nil
2025-06-04 10:25:50 -04:00
Maikel Linke
ef22269324 Clarify voucher code not found can mean fully redeemed 2025-05-29 14:18:32 +10:00
cyrillefr
400f431f88 Importer goal is to dl a file over https instead of local file 2025-05-27 17:10:48 +02:00
cyrillefr
0ac5da33b0 Fixes Rubocop SecurityOpen offense 2025-05-26 08:17:00 +02:00
Konrad
d7c39fcab7 Merge pull request #13297 from filipefurtad0/fix_#13264_BOM
Fixes bad display from Producer name on BOM page
2025-05-23 18:56:36 +02:00
Konrad
60914ac8cc Merge pull request #13326 from mcmpp/instance_configuration_options_inline
Change the layout for instance configuration options
2025-05-19 15:28:40 +02:00
Filipe
93ac10bb75 Merge pull request #13262 from cillian/remove-angular-on-enterprise-images-and-white-label-sections
Remove Angular from the Settings > Images section
2025-05-16 20:03:55 +01:00
Filipe
d6785b2f5a Merge pull request #13312 from mkllnk/stock-movement
Stop creating stock movements
2025-05-16 19:30:31 +01:00
Konrad
c657e31d07 Merge pull request #13318 from dacook/fix-13315
Prevent error on inventory page when logged out
2025-05-16 20:23:17 +02:00
Konrad
6432eceee5 Merge pull request #13313 from cyrillefr/FilterSelectionListNotDisplayingFullNames
Fixes dotted shipping method names bad display in select (filters)
2025-05-16 19:58:13 +02:00
Filipe
97ceed6cbe Merge pull request #13263 from chahmedejaz/bugfix/13180-oc-search-on-bom
Fix Order Cycle search on BOM page is not working for more than 5 OCs
2025-05-16 10:59:55 +01:00
Filipe
3efa2832de Merge pull request #13257 from ashishp91/13221-make-shipped-orders-uneditable
13221 - Don't allow shipped orders to be editable
2025-05-15 19:23:33 +01:00
Mikel Cordovilla
f767437f5a Display instance config checkboxes inline 2025-05-15 11:46:04 +02:00
Mikel Cordovilla
559a85e4f2 In the instance configuration some of the options displayed as block instead of inline 2025-05-14 15:36:55 +02:00
Filipe
371d0fbf79 Merge pull request #13281 from rioug/13172-search-by-tags
[Variant tags] Search products by tags
2025-05-14 07:38:59 +01:00
David Cook
71b65b4b98 Merge pull request #13306 from cyrillefr/FixRubocopNamingVariableNumber
Fixes Rubocop naming variable number
2025-05-14 09:39:32 +10:00
Maikel Linke
d650d06049 Delete StockMovement model
I'm not dropping the database table just yet. Let's keep this change
reversible without data loss. And dropping the table would break the
currently running app code during deploy. We can do that another time.
2025-05-13 15:24:26 +10:00
Maikel Linke
be312246ec Stop referring to stock movements 2025-05-13 15:24:26 +10:00
Maikel Linke
729e62d7db Remove unused stock move originator parameter 2025-05-13 15:24:26 +10:00
David Cook
82f94e3969 Ensure user is loaded before loading data 2025-05-13 15:12:16 +10:00
Maikel Linke
2197656606 Stop creating stock movements
Spree added stock movements to track the movements between stock
locations. But we got rid of stock locations and the only stock
movements we have now are just records of stock level changes.

These records were not created in all cases though and there were also
not created for variant overrides (inventory items). And since these
records aren't visible anywhere, I think it's best we remove them
altogether.

I do think that some kind of log would be useful but I don't think that
AR records like this are the best solution for that. And the
StockMovement model just added complexity to our already complex stock
level storage. The actual adjustment of the count_on_hand attribute of
the StockItem was performed in an after_create hook of the
StockMovement. Now we call it explicitely.
2025-05-13 14:56:29 +10:00
cyrillefr
e61d951dcf Requested changes - translation useless
- also useless in specs
2025-05-12 14:46:27 +02:00