Gaetan Craig-Riou
7e1af9e04b
Merge pull request #12723 from johansenja/optimise-shops-page
...
Preload enterprise logos and promo images for /shops page
2024-08-05 13:54:20 +10:00
Joseph Johansen
ffe4603f2f
Preload enterprise logos and promo images for shops page
2024-08-01 14:10:53 +01:00
cyrillefr
05ed4639b2
Fixes 422 error due to bad sql building
...
- first part of query use supplier_properties parameter, but not
second part, that can leads to mismatch between the 2 parts.
Remove supplier_properties parameter + modify SQL to get it right.
- spec tests category filtering & sorting + producer properties
2024-07-24 21:49:11 +02:00
David Cook
918d4401ff
Gracefully handle empty string
2024-07-18 12:05:56 +10:00
David Cook
bba59c1ffd
Force significant: false for NumberHelper
...
Although it defaults to false, somehow it seems to be evaluated as true on hu_prod...??!?!!1! (https://github.com/openfoodfoundation/openfoodnetwork/issues/12682 )
Maybe this will help.
2024-07-18 11:06:45 +10:00
Gaetan Craig-Riou
686fe8c028
Per review, remove flag argument from products_relation
...
products_relation is now split in two, products_relation and
products_relation_incl_supplier_properties.
It avoids using a flag argument which is not a a good practice see:
https://martinfowler.com/bliki/FlagArgument.html
2024-07-10 13:19:08 +10:00
Gaetan Craig-Riou
5c3acbbcaf
Per review, remove instance variable @query
2024-07-10 11:45:39 +10:00
Gaetan Craig-Riou
c372bf746a
Refactor ProductRenderer
...
The sorting logic has been moved to
OrderCycles::DistributedProductsService#product_relations
Plus hopefully fix the spec flackiness
2024-07-08 10:35:57 +10:00
Gaetan Craig-Riou
79a22aefc3
Refactor #products_relation
...
Due to primary_taxon and supplier having moved to the variant, filtering
by_producer and by_category with a custom order involves some
complicated sql queries. So we moved the sorting logic from
ProductsRenderer to OrderCycles::DistributedProductsService so we can
keep the complicated SQL logic contained in one place
2024-07-08 10:35:57 +10:00
Gaetan Craig-Riou
260211cf15
Fix Ruboxop issue
2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
84197aca19
Fix the filtering by properties/supplier properties
...
- Apply OR when filtering by both product properties and supplier
properties
- Apply AND when filtering by supplier properties and taxon
Filtering by product properties and taxon is handled by ransack, so
no change there
2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
feb7e173b1
Fix order cycle controller spec, product properties filtering
...
And fix the underlying product renderer
2024-07-03 11:21:28 +10:00
Gaetan Craig-Riou
63807f198b
Fix product set, to handle updating supplier on the variant
2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
25371ee9d0
Fix admin pages
...
- move supplier to variant row on Bulk Edit product page
- add supplier dropdow on add/update variant page
2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
2e129eab8f
Fix API V0 variants controller
2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
0c9223809b
Fix with_properties scope to accept any number of arguments
2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
a873fa692b
Fix exchange products renderer and specs
2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
3d82309c5f
Fix order permission and specs
2024-07-03 10:17:49 +10:00
Ahmed Ejaz
98e0b0e703
12346 - fix rubocop rails/pluck errors
2024-06-22 01:45:58 +05:00
zanetagebka
e06df7d658
- Refactor method to fix StringConcatenation cop
2024-06-11 15:17:45 +10:00
zanetagebka
a2a670c848
Fix cops StringConcatenation
2024-06-11 15:17:32 +10:00
Filipe
5872515a35
Merge pull request #12515 from isidzukuri/12503_skip_saving_of_unchanged_products
...
Do not commit to db unchanged products in bulk save
2024-06-05 18:01:59 +02:00
David Cook
5a8eea398e
Add comment
2024-06-04 10:24:40 +10:00
Ana Nunes da Silva
205c7dafd2
Add div to sanitizer supported tags
2024-06-03 11:45:50 +01:00
Ana Nunes da Silva
5f54ea3877
Add safe trix tags to html sanitizer;
...
Use custom html sanitizer in product description.
2024-06-03 11:45:50 +01:00
David Cook
c71eb2d6b5
Remove duplicate assign
2024-05-27 10:34:35 +10:00
isidzukuri
7565825b61
Do not commit to db unchanged products is bulk save
2024-05-27 10:22:58 +10:00
Maikel Linke
f089c0eff3
Keep HTML line breaks
...
They do appear in long_description on au_prod.
2024-05-14 12:40:58 +10:00
Maikel Linke
7b4a85f7ef
Sanitise HTML in long description of enterprise
...
This happens only on assignment. We still need to migrate existing data.
2024-05-14 12:25:47 +10:00
Matt-Yorkley
a55931c081
Reinstate sorting by arbitrary list of product categories
2024-04-02 09:42:43 +11:00
Matt-Yorkley
2743a8183d
Disable sorting by user-defined product category order
2024-04-02 09:33:34 +11:00
Matt-Yorkley
02abe5cc06
Remove dead code related to multiple product taxons
2024-04-02 09:27:37 +11:00
Matt-Yorkley
b30944471d
Update admin forms
2024-04-02 09:27:36 +11:00
Matt-Yorkley
c01bab5f27
Wrap commonly-repeated calls to Spree::Config to reduce unnecessary cache reads
...
These config values are relatively static but in some cases they can be called many times in the same request (like rendering a report or a large list of line_items in BOM). These values will now only get fetched from Redis/Postgres once at most per request/job.
2024-03-26 13:39:16 +00:00
Anthony Musyoki
25e3f30f97
Fix Rubocop Rails issue: Rails/FindEach
2024-03-20 15:34:30 +03:00
Feruz Oripov
9d919938f3
Group Order && OrderCycle related services and specs
2024-03-16 19:07:08 +05:00
David Cook
4b2406c9c2
Add unit scale dropdown
2024-03-06 13:41:17 +11:00
David Cook
2ef9e34f28
Re-arrange imperial units
...
Who would have guessed it was this complicated.
Fingers crossed this doesn't break any other functionality...
2024-03-06 13:01:43 +11:00
David Cook
ea0067946d
Generate variant unit options in Ruby
...
This re-implements Angular JS function VariantUnitManager.variantUnitOptions()
Well.. almost. See next commit.
2024-03-06 13:01:43 +11:00
David Cook
fbbaf51522
Safely autocorrect Lint/SymbolConversion
...
Inspecting 1530 files
.....................................................................................................................................................................................................................................................................................................................................................W.................................................................................................................................................................................................................................................W..........................................................................................................................................................................................................................................................W.......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Offenses:
app/models/spree/preferences/preferable_class_methods.rb:73:9: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"preferred_#{name}" instead.
"preferred_#{name}".to_sym
^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/preferences/preferable_class_methods.rb:77:9: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"preferred_#{name}=" instead.
"preferred_#{name}=".to_sym
^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/preferences/preferable_class_methods.rb:81:9: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"prefers_#{name}?" instead.
"prefers_#{name}?".to_sym
^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/preferences/preferable_class_methods.rb:85:9: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"prefers_#{name}=" instead.
"prefers_#{name}=".to_sym
^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/preferences/preferable_class_methods.rb:89:9: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"preferred_#{name}_default" instead.
"preferred_#{name}_default".to_sym
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/preferences/preferable_class_methods.rb:93:9: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"preferred_#{name}_type" instead.
"preferred_#{name}_type".to_sym
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/models/spree/preferences/preferable_class_methods.rb:97:9: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"preferred_#{name}_description" instead.
"preferred_#{name}_description".to_sym
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app/services/sets/product_set.rb:121:28: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"variant_#{error.attribute}" instead.
product.errors.add("variant_#{error.attribute}".to_sym, error.message)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
lib/spree/core/environment_extension.rb:11:24: W: [Corrected] Lint/SymbolConversion: Unnecessary symbol conversion; use :"#{name}=" instead.
create_method( "#{name}=".to_sym ) { |val|
^^^^^^^^^^^^^^^^^
1530 files inspected, 9 offenses detected, 9 offenses corrected
2024-01-10 09:21:43 +11:00
Gaetan Craig-Riou
b0541b0a34
Merge pull request #12004 from mkllnk/default-country
...
Cache default country simply in memory
2024-01-05 14:10:35 +11:00
Maikel Linke
cb3cd3e7ea
Cache default country simply in memory
...
This simplifies the code, avoids a method naming collision with Rails
and should be faster as well.
2024-01-04 13:45:36 +11:00
Mohamed ABDELLANI
1ffdca3fc2
require tag_rule_applicator as it's not loaded automatically on OrderAvailableShippingMethods & OrderAvailablePaymentMethods
2024-01-03 12:08:26 +01:00
Mohamed ABDELLANI
3fab2c350e
require tag_rule_applicator on Shop::OrderCyclesList
2024-01-03 11:59:21 +01:00
Mohamed ABDELLANI
d239beb226
remove unnecessary require instructions
2024-01-03 11:34:57 +01:00
Mohamed ABDELLANI
41d5ca7861
update the invoice number calculation
2023-12-08 13:33:36 +01:00
Cillian O'Ruanaidh
b78258c505
Replace references to :split_checkout translation keys with :checkout in views, controllers, etc.
2023-12-01 12:37:13 +00:00
Mohamed ABDELLANI
847c3af4da
update WeightsAndMeasures#scales_for_variant_unit to ignore available untis when needed
2023-11-13 09:59:14 +01:00
David Cook
91cb3df215
Use named config method
...
And mock the preference value, rather than setting it. Before, the set preference could have leaked to other tests.
(I noticed that it was already like this in product_import_spec.rb)
2023-11-13 09:29:31 +01:00
Mohamed ABDELLANI
a9d85fd08f
fix existing tests
2023-11-13 09:29:31 +01:00