Commit Graph

634 Commits

Author SHA1 Message Date
Maikel Linke
6317fe1b71 Disable RSpec monkey patching 2024-05-09 12:24:41 +10:00
Maikel Linke
2acda6af74 Ignore empty string websites on DFC API 2024-04-24 09:19:11 +10:00
Maikel Linke
5a9b9a065b DRY website fix 2024-04-23 16:49:45 +10:00
Maikel Linke
64d633c64e Publish enterprise website with https:// 2024-04-23 13:50:46 +10:00
Gaetan Craig-Riou
6d1249e7f9 Update DFC supplied product 2024-04-02 09:57:36 +11:00
Matt-Yorkley
6e7b97879b Update DFC product importer 2024-04-02 09:27:36 +11:00
Maikel
4c1268b3ce Merge pull request #12274 from mkllnk/dfc-product-import
Import products from DFC catalog
2024-03-22 09:25:02 +11:00
Maikel Linke
220e459da2 Publish full URLs of social media links on DFC API
We have a quirky way of storing social media links in our database. The
saved format results from the UI, validations and overridden getter
methods.
2024-03-21 12:16:10 +11:00
Maikel Linke
526069dbb3 Limit enterprise image sizes on DFC API
Uploaded images can be several MB in size. While offering the big size
would enable other apps to resize it and store the image size they need,
we have only one app using it in practice and it's using the image
directly. It's much simpler and if a default size will work for others
in the future then why not just serve that.

We can revise this in the future. There is a DFC discussion about
publishing several sizes which I started:
https://github.com/datafoodconsortium/ontology/discussions/77#discussioncomment-8228094
2024-03-19 12:26:23 +11:00
David Cook
acb53a6ddc Merge pull request #12273 from mkllnk/rubocop
Rubocop
2024-03-19 10:14:01 +11:00
Feruz Oripov
9d919938f3 Group Order && OrderCycle related services and specs 2024-03-16 19:07:08 +05:00
Maikel Linke
d2d2db8489 Assign random product category on import if missing
Failing in this case may be desired in some circumstances but most of
the time we want compatibility and easy interoperability even when not
all data matches.
2024-03-15 16:46:41 +11:00
Maikel Linke
b5c47b099e Store semantic link when importing DFC products 2024-03-15 16:46:41 +11:00
Maikel Linke
2e101c5fe6 Refresh OIDC token and try again
Access tokens are only valid for half an hour. So if requesting a DFC
API fails, it's likely due to an expired token and we refresh it.
2024-03-15 16:46:41 +11:00
Maikel Linke
1c09b5d16c Move DFC API request logic to service object
I'm planning to add more to it.
2024-03-15 16:46:41 +11:00
Maikel Linke
30e8f9eb28 Importing products from DFC catalog
Technical demonstration of a complete product export-import roundtrip
which we could now do between OFN instances.
2024-03-15 16:46:41 +11:00
Maikel Linke
477336c660 Style RSpec/NotToNot 2024-03-15 12:17:48 +11:00
Maikel
d253effc29 Fix typo in spec description
Co-authored-by: Gaetan Craig-Riou <40413322+rioug@users.noreply.github.com>
2024-03-12 16:32:01 +11:00
Maikel Linke
1674d8ab5c Simplify DFC product controller 2024-03-12 13:11:31 +11:00
Maikel Linke
85a47e61fd Create variants only for own products 2024-03-12 13:11:31 +11:00
Gaetan Craig-Riou
a4b7a8f95d Spec creating variant via DFC API 2024-03-12 12:43:10 +11:00
Gaetan Craig-Riou
462c763cd1 Add spree_product_uri to SuppliedProduct
Also update SuppliedProductBuilder and specs
2024-03-12 12:43:10 +11:00
Filipe
de9446f5f3 Merge pull request #12167 from mkllnk/haml-up
Update Haml syntax and gem to version 6
2024-03-07 15:36:29 +00:00
David Cook
2107aeded1 Un-safely autocorrect RSpec/ExpectChange 2024-02-23 12:17:09 +11:00
Maikel Linke
ba51641271 Symbolise hash keys in HAML files
This was done by the haml-up script.
2024-02-22 15:01:14 +11:00
Maikel Linke
c097f2b622 Upgrade HAML syntax with script 2024-02-22 15:01:13 +11:00
Maikel Linke
07a8617143 Store OIDC account data in new model 2024-02-22 10:15:07 +11:00
David Cook
fbbc47a8d8 Merge pull request #12153 from rioug/12150-dfc-add-state-to-address
[DFC] Add state to address
2024-02-16 10:30:28 +11:00
Gaetan Craig-Riou
a5bc1d5c48 Add region to address via DfcProvider::Address
Plus spec and documentation
2024-02-14 16:05:57 +11:00
Gaetan Craig-Riou
17b13e75a8 Add DfcProvider::Address
Add our own address to include `region`, currently not supported
by the DFC connector.
`region` is already included in the next branch of data-model-uml:
729eba31a5
To me removed once the DFC connector is updated
2024-02-14 16:05:48 +11:00
Gaetan Craig-Riou
c11d30eb13 Refactor order updater spec
Re organise the specs based on the method we are testing, it makes
the spec file more readable.

Best viewed with whitespace hidden
2024-02-07 14:46:26 +11:00
Gaetan Craig-Riou
7da516b637 Update pending payment for completed order
Update pending payment for cash order, so we can take into account any
changes affecting order toral (shipments, line item quantity etc...).
This is to allow payment capture to cover the order total, not just
the amount due at checkout.
2024-02-07 14:46:19 +11:00
Gaetan Craig-Riou
e6fba74a87 Make update_pending_payment private
It's not used anywhere in the code, there is no reason for it to be
public
2024-02-07 14:44:59 +11:00
Gaetan Craig-Riou
75355b0359 Add test to cover updating pending payments 2024-02-06 16:47:18 +11:00
Maikel Linke
939687a592 Bump DFC taxonomies from v1.0.2 to v1.2.0 2024-02-05 14:19:29 +11:00
Maikel Linke
e3c6629f62 Remove DFC importer monkey patches
The Connector gem contains our code now.
2024-02-05 14:19:29 +11:00
David Cook
97ab41b47e Merge pull request #12068 from mkllnk/dfc-enterprise-promo-image
Add promo image to DFC Enterprise API
2024-01-31 13:35:47 +11:00
Maikel Linke
59e3592c6e Remove duplicate code from spec 2024-01-30 11:08:20 +11:00
Konrad
773131741b Merge pull request #11817 from rioug/10809-match-taxons-to-DFC-product-types
[DFC] match taxons to dfc product types
2024-01-25 00:05:31 +01:00
Konrad
ec4bbe6241 Merge pull request #12038 from mkllnk/dfc-tax-category
Spec requiring tax category when creating products
2024-01-24 16:26:57 +01:00
Maikel Linke
8bb6bef0fa Comment on ABC style 2024-01-22 16:32:45 +11:00
Maikel Linke
fc75ea97a2 Add promo image to DFC Enterprise API
We want to use this image in the Discover Regenerative portal in
Australia. The property is read-only and the API doesn't support the
upload of a new file.

The enterprise factory needed fixing as well. This trait hadn't been
used anywhere else.
2024-01-22 16:21:10 +11:00
Gaetan Craig-Riou
36b3b3c989 Switch to comparing product type semanticId
Currently it's not possibel to compare two
`DataFoodConsortium::Connector::SKOSConcept` or
two `VirtualAssembly::Semantizer::SemanticObject with` `==`.

Related to : https://github.com/assemblee-virtuelle/semantizer-ruby/pull/2/files
2024-01-22 11:40:50 +11:00
Maikel Linke
28e17aff68 Fix DFC context in spec to resolve product types
The `dfc-b:hasType` value can only be parsed as object id if the context
contains:

```
    "dfc-b:hasType":{
      "@type":"@id"
    },
```

The standard context includes this and it's easier to use. Now that the
URIs of product types are correctly resolved, we don't need to
substitute the URI manually.

Also dropped an old unneeded spec for backwards compatibility.
2024-01-22 10:12:39 +11:00
Gaetan Craig-Riou
35da321e15 Fix skos parser to not replace Product type URI by dfc-pt
The given productType.rdf file doesn't give us any context for `dfc-pt`,
so there was no reason to do that.
We still need to do some substitution in the importer, as some times
we are given `dfc-pt` as input data.
2024-01-22 10:12:39 +11:00
Gaetan Craig-Riou
2aa0ab15b9 Simplify traversing of Product Types 2024-01-22 10:12:39 +11:00
Gaetan Craig-Riou
9607739e16 Per review, store product type instead of path 2024-01-22 10:12:39 +11:00
Gaetan Craig-Riou
c1e7aa6daa Small improvment for Importer
Doesn't try to load skos concept if we are not dealing with an object
that doesn't refers to a skos concept
2024-01-22 10:12:39 +11:00
Gaetan Craig-Riou
c40ccb8e86 Refactor, move product type matching to DfcProductTypeFactory
It keeps SuppliedProductBuilder and move all the matching logic to its
own class
2024-01-22 10:12:39 +11:00
Gaetan Craig-Riou
d8b56d5c16 Per review, match on the product type URI instead of name part 2
For import this time
2024-01-22 10:12:39 +11:00