Commit Graph

107 Commits

Author SHA1 Message Date
Matt-Yorkley
07a9da901f Switch queue adapter to Sidekiq 2021-05-29 13:11:59 +01:00
Andy Brett
45ad4bbcf1 remove setting of Spree::Config country code 2021-05-19 09:33:02 -07:00
Andy Brett
fe67c01e57 guard against no database, but not against .connected?
Similar to b22ce43efe
2021-05-14 12:56:24 -07:00
Matt-Yorkley
943c00c924 WIP - Update loading of helpers in controllers
Rails has changed the way helpers are loaded. It's a bit weird. It was throwing lots of errors, and recommended using this setting, but now requires that all helpers are loaded explicitly. I'm not sure about this.
2021-05-03 14:17:54 +01:00
Jean-Baptiste Bellet
e25cb1b65e Add view_components to manage our components
- Documentation : https://viewcomponent.org/
 - Our template engine generator is haml
2021-04-22 15:08:54 +02:00
Maikel Linke
125374c488 Confine Preferences patch to our app 2021-04-15 15:59:03 +10:00
Matt-Yorkley
39fa315ecc Guard against calls to the database during db:create
Rails 5.2 has changed the way initializers are called during certain rake tasks including `db:create`. Initializers that were previously not loaded are now loaded (basically the whole app is loaded). This means any calls to #table_exists? that appear in the app will throw fatal errors as the database doesn't exist yet during that task, but those calls are made before `db:create` has even started, which means the database can't be created.

There are also a few other places in Spree code where #table_exists? is called, and they already call #connected? first to guard against this issue.
2021-04-13 16:55:19 -07:00
Matt-Yorkley
6c19baeab3 Remove transactional callback config 2021-03-17 15:15:20 +00:00
Luis Ramos
c0ddeceb1e Remove Pin Payments 2021-02-06 11:15:48 +00:00
Luis Ramos
e69eefdc0f Remove Migs payment gateway 2021-02-03 21:41:40 +00:00
Matt-Yorkley
478f761188 Add Spree::Gateway::PayPalExpress to spree payment_methods list 2021-01-09 13:22:09 +00:00
Matt-Yorkley
56f2d38714 Use "raise_in_transactional_callbacks"
https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#error-handling-in-transaction-callbacks
2020-11-27 14:00:29 +00:00
Matt-Yorkley
58350ed338 Set ActiveJob configs and convert WelcomeEnterpriseJob to new format
This needs to be done for all jobs.

Docs: https://guides.rubyonrails.org/v4.2/active_job_basics.html
2020-11-27 14:00:28 +00:00
Luis Ramos
c2591104ee Fix typo in application setup
This was forcing env test in all environments breaking payment methods that are activated by environment
2020-11-04 12:15:45 +00:00
Luis Ramos
8f2d52b9e3 Revert "Do not reload routes and make spree routes append instead of draw in"
This reverts commit cdf4c795c7c7ae18006eb24af9336941361b6b81.
2020-11-04 12:15:45 +00:00
Luis Ramos
f6f4faf146 Move test setup to application.rb
Without spree_core, the test environment file loads before the Spree engine is loaded
2020-11-04 12:15:45 +00:00
Luis Ramos
66fb3a9cf3 Remove code related to spree promotions 2020-11-04 12:15:45 +00:00
Luis Ramos
0ca71ce0a9 Do not reload routes and make spree routes append instead of draw in
case thee routes are already defined elsewhere, for example, by the
paypal express gem
2020-11-04 12:15:45 +00:00
Luis Ramos
4b21667974 Move initializers from Spree engine to the OFN application 2020-11-04 12:15:45 +00:00
Pau Perez
4499bc7313 Do not require view overrides
View overrides were removed long ago, so no need to require an empty
list.

The next step will be class decorators.
2020-09-04 13:27:38 +02:00
Luis Ramos
f62546254f Define DefaultTax calculator outside of spree namespace the tax_rate to be used by the app and make spree specs use calculators outside the spree namespace 2020-07-07 17:26:24 +01:00
Luis Ramos
5e8438c446 Move all calculators outside the spree namespace 2020-07-07 17:26:23 +01:00
Luis Ramos
1b28592f58 Now that the stock code is on out side we can clean up!
Remove everything related to splitters (including bringing environment.rb so we remove the splitters variable from it
2020-07-02 21:24:14 +01:00
Luis Ramos
d18fec7125 Move Base splitter from main app models to order management engine services 2020-07-02 21:24:14 +01:00
Matt-Yorkley
c370ab04d7 Ensure images in /assets/images** are precompiled and moved correctly to /public/assets folder 2020-06-16 17:01:58 +02:00
Luis Ramos
0815068050 Merge branch 'master' into 3-0-stable-mar6 2020-03-06 09:20:03 +00:00
Matt-Yorkley
5cc223e8f4 Update routes loading for Rails 4 2020-02-22 11:06:51 +00:00
Matt-Yorkley
a12ec8c5d9 Move filter parameters to initializer for Rails 4 2020-02-22 11:06:51 +00:00
Matt-Yorkley
53645517af Update deprecated #find_by_* methods 2020-02-22 11:06:51 +00:00
luisramos0
f691d1aafd Add new payment method StripeSCA that will use the Stripe Payment Intents API instead of the Stripe Charges API that the current StripeConnect gatreway uses 2020-02-21 10:52:29 +00:00
Pau Perez
ab8c7bad76 Remove Skylight
Since we adopted Skylight to get response times across endpoints and
instances, we failed to get accurate numbers. Our Rails version is not
supported and thus Skylight fails to provide data for the slowest
endpoints, the ones we care about the most. Even with a supported one we
could potentially hit any limits on tracing and have the same problem.

Recently, we started paying for Datadog's APM and the experience,
although it's still early, has been better. It makes it possible to
correlate between services and other metrics which helps spotting the
underlying issues.

Therefore, having two agents running on the server consumes system
resources so we better get rid of Skylight's one.
2019-09-06 16:25:33 +02:00
luisramos0
7346a49982 Move routes in ofn api namespace to separate routes file 2019-07-31 09:34:20 +01:00
luisramos0
beb19cdc8a Override default spree splitters config (was Shipping Category and Backordered) to use only Base splitter, this splitter does not split the orders into multiple shipments
In OFN we cannot split the orders because one order can only have one shipment

Additionally, add spec to validate that the order workflow now works with products with different shipping categories
2019-03-26 15:37:35 +00:00
luisramos0
8a86c0473d Change app config to keep using the same v1 shipping method calculators and not the ones spree v2 introduces, these are copy pasted versions that work with packages
See this commit for more details: 18e5b98f5c (diff-b0846898827183f530c113ad7b83b8ea)

Also:
- remove shipping method restriction on calculators to inherit from Spree::Shipping::ShippingCalculator so that OFN customized calculators keep working
- add shipping method serializer spec to test serialization of all shipping methods configured
2019-01-27 21:03:32 +00:00
Kristina Lim
1bfdb708c1 Add app/models/concerns to autoload path 2018-12-09 23:29:36 +08:00
luisramos0
9490da329a Move Calculator::Weight from models/open_food_network/calculator to models/calculator 2018-11-07 09:54:30 +00:00
Pau Pérez Fabregat
fe149967e4 Merge pull request #2521 from luisramos0/cookies_in_engine
[OFN Domains] Breaking OFN into domains - POC cookies inside an engine
2018-10-15 10:03:30 +02:00
luisramos0
b1c7e6c091 Fix assets precompilation by including web/all.js and web/all.css in the assets precompilation list in application.rb 2018-09-26 12:30:45 +01:00
Pau Pérez Fabregat
0520f2187c Merge pull request #2540 from luisramos0/delete_dead_store
removed assets related to spree store: dead code
2018-09-17 11:33:56 +02:00
VadLusk
8efbe0e6d2 Delete _split2.css from application.rb assets precompile array. 2018-09-03 11:08:38 -06:00
luisramos0
14d526efc2 removed assets related to spree store: dead code 2018-09-03 09:50:42 +01:00
Kristina Lim
b67c8cc9f1 Improve requiring of additional routes
This is more appropriate, and allows changes the separate route files to
be loaded automatically in the development environment.
2018-08-06 17:04:03 +08:00
Maikel Linke
3743cf1bc3 Use I18nConfig for application defaults 2018-03-09 17:45:03 +11:00
Pau Perez
a7dcaf15fa Enable Skylight in staging
This is a follow-up of
https://github.com/openfoodfoundation/openfoodnetwork/pull/2070.

When running the production API key in staging, the `log/skylight.log`
showed:

```
[SKYLIGHT] [1.5.0] You are running in the staging environment but
haven't added it to config.skylight.environments, so no data will be
sent to skylight.io.
```

According to
https://www.skylight.io/support/advanced-setup#setting-up-multiple-environments
it turns out we need to create a new app for staging and use its API
key.
2018-02-14 14:46:10 +01:00
Saimon Moore
05d757e7c4 Ensure we have min i18n fallbacks
This setting defines which locales will be exported to the frontend.
In general, ofn currently functions under a single locale
(which is also the default locale) but all translations are made from
the `en` locale.

The current process of ensuring translations are translated and make
their way into code is manual and prone to issues so occasionally
translations for keys in the default locale of a particular instance
are not deployed and the UI displays `missing translation` messages.

In these cases, it is far friendlier for the user to see fallbacks to
`en` rather than these errors so this commit ensure that at the very
least apart from the current default locale, `en` is also made available
and as such will be exported to the frontend so that it's translations
are available as a fallback in JS land.

I18n fallback config was already enabled in both frontend and backend.
Until now, available locales may not have been set (determined by the
`AVAILABLE_LOCALES` env var) and the translations for `en` not therefore
be present in the frontend for fallback to actually work.

This commit will ensure that a fallback to `en` is always possible in the
case of missing translations.
2017-11-10 12:30:24 +11:00
Rob Harrington
d500c20d3f Adding new StripeConnect payment gateway 2017-09-23 14:57:02 +10:00
Enrico Stano
5a2c3f5c5c Set Spree configuration related to locales before the promo environment gets initialized 2017-09-08 23:55:50 +10:00
enricostano
23585e6ea8 Initialize custom calculators using Spree API
Freely inspired by https://github.com/coopdevs/spree/blob/2-0-stable/core/lib/spree/core/engine.rb#L78
2017-09-08 23:55:49 +10:00
Maikel Linke
686a8f3af9 Add legacy and default values for LOCALE
This makes sure there is a value in `config.i18n.available_locales` so
that i18n-js doesn't crash.
2017-08-02 10:44:55 +10:00
Julius Pabrinkis
5166a3d958 Add available_locales config feature 2017-08-02 09:57:33 +10:00