Compare commits

...

4000 Commits

Author SHA1 Message Date
Matt-Yorkley
3ea9dcc719 Set :execute_threed option to explicitly handle 3DS responses 2021-06-08 10:26:59 +01:00
Matt-Yorkley
b0eb0f4a24 Remove Stripe Decorator
The method being overridden here is the same in the upstream
2021-06-08 10:26:56 +01:00
Andy Brett
5d39155519 Merge pull request #7739 from openfoodfoundation/dependabot/bundler/rails-6.0.3.7
Bump rails from 6.0.3.6 to 6.0.3.7
2021-06-04 07:18:59 -07:00
dependabot[bot]
b6c9d4d6a9 Bump rails from 6.0.3.6 to 6.0.3.7
Bumps [rails](https://github.com/rails/rails) from 6.0.3.6 to 6.0.3.7.
- [Release notes](https://github.com/rails/rails/releases)
- [Commits](https://github.com/rails/rails/compare/v6.0.3.6...v6.0.3.7)

---
updated-dependencies:
- dependency-name: rails
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-04 05:30:32 +00:00
Maikel
0c92a594f4 Merge pull request #7717 from coopdevs/fix-docker-jemalloc-sidekiq
Fix docker Jemalloc + Sidekiq setup
2021-06-04 13:16:53 +10:00
Maikel
4dacdb180f Merge pull request #7617 from luisramos0/layout61
[Rails 6.1] Make admin layout path relative
2021-06-04 12:26:40 +10:00
Andy Brett
c1ad4243bb Update all locales with the latest Transifex translations 2021-06-03 18:21:21 -07:00
Andy Brett
9f3ddfc88b Merge pull request #7735 from Matt-Yorkley/bootsnap-reloaded
Add bootsnap gem (again)
2021-06-03 12:54:22 -07:00
Matt-Yorkley
67d7d225cc Add bootsnap gem 2021-06-03 19:03:18 +01:00
Andy Brett
24edad15ae Merge pull request #7727 from openfoodfoundation/dependabot/bundler/view_component-2.33.0
Bump view_component from 2.32.0 to 2.33.0
2021-06-03 09:57:36 -07:00
Andy Brett
6d56a0791f Merge pull request #7728 from Matt-Yorkley/papertrail-deprecation
Remove papertrail initializer
2021-06-03 09:52:56 -07:00
dependabot[bot]
cd1d77c572 Bump view_component from 2.32.0 to 2.33.0
Bumps [view_component](https://github.com/github/view_component) from 2.32.0 to 2.33.0.
- [Release notes](https://github.com/github/view_component/releases)
- [Changelog](https://github.com/github/view_component/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/view_component/compare/v2.32.0...v2.33.0)

---
updated-dependencies:
- dependency-name: view_component
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-03 16:43:45 +00:00
Andy Brett
2dddd625a1 Merge pull request #7554 from luisramos0/rails6
[Rails 6.0] Upgrade to rails 6.0
2021-06-03 09:42:33 -07:00
Matt-Yorkley
5b676e8f93 Remove papertrail initializer
This setting is now deprecated and triggers this message:

Association Tracking for PaperTrail has been extracted to a separate gem. To use it, please add `paper_trail-association_tracking` to your Gemfile. If you don't use it (most people don't, that's the default) and you set `track_associations = false` somewhere (probably a rails initializer) you can remove that line now.
2021-06-03 11:33:33 +01:00
Pau Perez
5d91f5f398 Document Redis as a requirement 2021-06-03 10:11:05 +02:00
Pau Pérez Fabregat
62959cc883 Merge pull request #7724 from openfoodfoundation/transifex
Transifex
2021-06-03 09:34:51 +02:00
Andy Brett
bab4b404f4 Merge pull request #7722 from openfoodfoundation/dependabot/npm_and_yarn/karma-6.3.3
Bump karma from 6.3.2 to 6.3.3
2021-06-02 15:01:46 -07:00
Andy Brett
5ecd24d66a Merge pull request #7721 from openfoodfoundation/dependabot/bundler/rubocop-1.16.0
Bump rubocop from 1.15.0 to 1.16.0
2021-06-02 15:00:55 -07:00
Transifex-Openfoodnetwork
db373a826b Updating translations for config/locales/en_IE.yml 2021-06-03 02:38:20 +10:00
dependabot[bot]
1ddfd2a4f7 Bump karma from 6.3.2 to 6.3.3
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.2 to 6.3.3.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.2...v6.3.3)

---
updated-dependencies:
- dependency-name: karma
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-02 05:32:51 +00:00
dependabot[bot]
d972f6e041 Bump rubocop from 1.15.0 to 1.16.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.15.0 to 1.16.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.15.0...v1.16.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-02 05:12:04 +00:00
Luis Ramos
cf756c5774 Added action cable to gemfile by running bundle install
After rebase Action cable was missing from Gemfile.lock
2021-06-01 22:34:04 +01:00
Luis Ramos
4252bd0bb1 For some reason report helper is not available on this view now, so we call Spree::Money directly 2021-06-01 22:34:04 +01:00
Luis Ramos
cb6e626193 Remove require rails/all, this is already done in application.rb where we are loading only the rails modules we need 2021-06-01 22:34:04 +01:00
Andy Brett
77c384633b specify payment intent ID in stripe stub 2021-06-01 22:34:04 +01:00
Luis Ramos
64de303b59 Move compass-rails back to 4.0
This must have been a mistake when managing initial conflicts in rails6 branch
2021-06-01 22:34:04 +01:00
Matt-Yorkley
88cae21ab4 Disable currently unused modules and add notes
We should migrate to ActiveStorage soon, but we're not using it yet. ActionText is cool but we also don't currently use it. ActionMailbox is not something we need at all.
2021-06-01 22:34:04 +01:00
Matt-Yorkley
66e4986944 Bring modules list from rails/all to application.rb
This is the default list in Rails 6.0
2021-06-01 22:34:04 +01:00
Andy Brett
b3e08b47b9 set Stripe api key directly instead of using allow 2021-06-01 22:33:12 +01:00
Luis Ramos
85508f45b4 Replace be_success on test_reponse with status 200
In rails 6 response.success? is not supported.
2021-06-01 22:33:12 +01:00
Luis Ramos
f07cc32be0 Remove authorization token from stripe stubs 2021-06-01 22:33:12 +01:00
Luis Ramos
2c43522bf9 change devise config to use secret_key_Base instead of secret_token as pepper 2021-06-01 22:33:12 +01:00
Luis Ramos
adf35f8e18 Fix sass-rails compass-rails compatibility problem 2021-06-01 22:33:12 +01:00
Luis Ramos
04ff4fa47c Update to rails 6.0 and resolve Gemfile conflicts 2021-06-01 22:33:12 +01:00
Matt-Yorkley
0d30e3359f Merge pull request #7081 from openfoodfoundation/dependabot/bundler/database_cleaner-2.0.1
Bump database_cleaner from 1.99.0 to 2.0.1
2021-06-01 21:59:27 +02:00
Matt-Yorkley
b1bfac5144 Update all locales with the latest Transifex translations 2021-06-01 19:10:58 +01:00
Matt-Yorkley
30e2be13f0 Update spec/lib/open_food_network/i18n_config_spec.rb 2021-06-01 18:50:04 +01:00
Luis Ramos
dc1cdf4254 Add required DB cleaner setup code 2021-06-01 18:50:04 +01:00
dependabot[bot]
c4bd9208ce Bump database_cleaner from 1.99.0 to 2.0.1
Bumps [database_cleaner](https://github.com/DatabaseCleaner/database_cleaner) from 1.99.0 to 2.0.1.
- [Release notes](https://github.com/DatabaseCleaner/database_cleaner/releases)
- [Changelog](https://github.com/DatabaseCleaner/database_cleaner/blob/main/History.rdoc)
- [Commits](https://github.com/DatabaseCleaner/database_cleaner/compare/v1.99.0...v2.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 18:50:04 +01:00
Pau Pérez Fabregat
01f8aff3e0 Merge pull request #7716 from coopdevs/pick-up-site-name-from-env
Allow :site_name to be picked up from ENV vars
2021-06-01 13:50:36 +02:00
Pau Perez
07fd5cb29c Configure Sidekiq in development also 2021-05-31 17:04:14 +02:00
Pau Perez
ee7da14019 Provide Redis docker container 2021-05-31 17:04:14 +02:00
Pau Perez
e5adbf1f08 Fix jemalloc installation 2021-05-31 16:54:35 +02:00
Matt-Yorkley
7f9179193e Merge pull request #7713 from openfoodfoundation/dependabot/npm_and_yarn/ws-7.4.6
Bump ws from 7.4.4 to 7.4.6
2021-05-31 16:07:05 +02:00
Pau Perez
3be0e1c13a Allow :site_name to be picked up from ENV vars
This mimics what we did in 6377736f4. This way provisioning an instance
from scratch doesn't require configuring things from the backoffice,
which will simplify the roll out of
https://github.com/openfoodfoundation/ofn-install/pull/734.
2021-05-31 15:50:54 +02:00
Pau Pérez Fabregat
18c020535a Merge pull request #7711 from Matt-Yorkley/sidekiq
Sidekiq!
2021-05-31 15:11:45 +02:00
Matt-Yorkley
8d1fcc06fd Remove logfile config
This setting was removed in Sidekiq 6.0, logs are handled a bit differently now. The logging works though 👍
2021-05-31 10:46:43 +01:00
Matt-Yorkley
2b6a72ffb4 Remove DelayedJob web UI 2021-05-31 10:10:36 +01:00
Pau Pérez Fabregat
157d86c94f Merge pull request #7714 from openfoodfoundation/dependabot/bundler/test-unit-3.4.2
Bump test-unit from 3.4.1 to 3.4.2
2021-05-31 11:04:42 +02:00
Pau Pérez Fabregat
d41de06809 Merge pull request #7707 from openfoodfoundation/transifex
Transifex
2021-05-31 10:59:04 +02:00
Transifex-Openfoodnetwork
d730f21dc7 Updating translations for config/locales/en_GB.yml 2021-05-31 17:54:39 +10:00
dependabot[bot]
49dfaa20ab Bump test-unit from 3.4.1 to 3.4.2
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.4.1...3.4.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-31 05:38:26 +00:00
dependabot[bot]
bfeb892cab Bump ws from 7.4.4 to 7.4.6
Bumps [ws](https://github.com/websockets/ws) from 7.4.4 to 7.4.6.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/7.4.4...7.4.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-30 21:28:21 +00:00
Matt-Yorkley
4b56422abd Add network timeouts
In rare cases where Redis is being updated/restarted while a job is running, this should add some flexibility.
2021-05-29 21:07:36 +01:00
Matt-Yorkley
53e3e2b66d Remove outdated Job test helpers
This logic around testing jobs is already handled by integrations with ActiveJob since Rails 4.2
2021-05-29 16:37:06 +01:00
Matt-Yorkley
834140f0a2 Don't dump massive binary PDF data into the job queue
Here we were rendering an entire PDF, then passing that PDF into the job queue as an *argument* containing the entire binary of the PDF in a massive string. This means the job object itself would contain that entire PDF. That's bad queueing!

We now create the PDF *during* the job (not before it), and pass simple arguments.
2021-05-29 16:06:29 +01:00
Matt-Yorkley
0d95d83ef9 Add sidekiq-scheduler to web UI 2021-05-29 13:12:33 +01:00
Matt-Yorkley
54d373c963 Enqueue scheduled jobs with sidekick-scheduler 2021-05-29 13:12:33 +01:00
Matt-Yorkley
1dfd68c691 Add sidekiq-scheduler 2021-05-29 13:12:33 +01:00
Matt-Yorkley
df9213e812 Bump port for new caching instance 2021-05-29 13:12:33 +01:00
Matt-Yorkley
03a078a3a0 Remove namespacing in cache config 2021-05-29 13:11:59 +01:00
Matt-Yorkley
11da025247 Add Sidekiq web interface 2021-05-29 13:11:59 +01:00
Matt-Yorkley
07a9da901f Switch queue adapter to Sidekiq 2021-05-29 13:11:59 +01:00
Matt-Yorkley
4ac3853be9 Configure Sidekiq 2021-05-29 13:11:59 +01:00
Transifex-Openfoodnetwork
eae7a9978c Updating translations for config/locales/de_DE.yml 2021-05-29 18:47:49 +10:00
Transifex-Openfoodnetwork
bdd8572fbf Updating translations for config/locales/en_US.yml 2021-05-29 02:59:45 +10:00
Matt-Yorkley
07422dac29 Add sidekiq gem 2021-05-28 16:58:26 +01:00
jibees
088ae496cc Merge pull request #7664 from shen-sat/7626-fix-unknown-currency-error
7626 fix unknown currency error
2021-05-28 16:18:04 +02:00
Pau Pérez Fabregat
c83a619082 Merge pull request #7705 from openfoodfoundation/transifex
Transifex
2021-05-28 15:45:58 +02:00
Transifex-Openfoodnetwork
ca7d1b111a Updating translations for config/locales/ru.yml 2021-05-28 21:35:53 +10:00
Pau Pérez Fabregat
3c507c1727 Merge pull request #7696 from openfoodfoundation/transifex
Transifex
2021-05-28 13:28:39 +02:00
Jean-Baptiste Bellet
b111d24488 Update all locales with the latest Transifex translations 2021-05-28 09:12:42 +02:00
Andy Brett
4dc8b44e81 Merge pull request #7695 from coopdevs/fix-ruby-installation-dockerfile
Fix Rbenv and ruby-build installation to get Ruby 2.5.9
2021-05-27 11:30:31 -07:00
Andy Brett
27a9ad7bcb Merge pull request #7698 from Matt-Yorkley/remove-eventmachine
Remove eventmachine gem
2021-05-27 11:30:14 -07:00
Pau Perez
fbd4d512d5 Add libssl as required by Ruby 2.5.9
This is a more recent libssl version in Ubuntu 20. Not related to the
libssl1.0 hack required by older Ruby versions.
2021-05-27 17:50:22 +02:00
Pau Perez
0f85db6d36 Fix Rbenv and ruby-build installation to get 2.5.9
This newer Ruby version can't be found on that ruby-build's branch that
we were installing. The `docker-compose build` command works again.
2021-05-27 17:50:22 +02:00
Pau Pérez Fabregat
0f78b5b315 Merge pull request #7616 from jibees/7602-unit-price-not-displaying-when-comma-is-the-decimal-separator
Backoffice: Unit price not displaying when comma is the decimal separator
2021-05-27 17:45:19 +02:00
Matt-Yorkley
78e3bb1acd Remove eventmachine gem
This was a dependency of a dependency a long time ago...
2021-05-27 15:57:17 +01:00
Transifex-Openfoodnetwork
c5e1c057ae Updating translations for config/locales/es.yml 2021-05-28 00:17:47 +10:00
Transifex-Openfoodnetwork
f34a3c3c02 Updating translations for config/locales/ca.yml 2021-05-28 00:17:29 +10:00
Transifex-Openfoodnetwork
546a32e97a Updating translations for config/locales/en_FR.yml 2021-05-27 22:47:27 +10:00
Transifex-Openfoodnetwork
abd269949d Updating translations for config/locales/fr.yml 2021-05-27 22:47:09 +10:00
Pau Pérez Fabregat
0d5f76b19e Merge pull request #7621 from jibees/7534-upload-logo-and-promo-image-for-enterprise
Upload enterprise image (logo and promo): force content type to "text/plain"
2021-05-27 11:33:56 +02:00
Pau Pérez Fabregat
bfa77baae1 Merge pull request #7542 from jibees/6359-add-payment-method-description-to-invoice
Add payment method description to invoice
2021-05-27 11:01:07 +02:00
Pau Pérez Fabregat
a2a1aac384 Merge pull request #7604 from coopdevs/compile-with-jemalloc
Compile Ruby with jemalloc
2021-05-27 08:30:51 +02:00
Pau Perez
43ede7ba26 Remove libssl1.0 from Dockerfile
We recently removed it from production in
bd9e382fba.
2021-05-27 08:09:51 +02:00
Andy Brett
883e9fdf62 Merge pull request #7690 from Matt-Yorkley/ruby-259
Bump Ruby to 2.5.9
2021-05-26 08:41:15 -07:00
Matt-Yorkley
c625766af1 Bump Ruby to 2.5.9 2021-05-26 09:36:28 +01:00
Andy Brett
23730ab28f Merge pull request #7683 from openfoodfoundation/dependabot/bundler/view_component-2.32.0
Bump view_component from 2.31.1 to 2.32.0
2021-05-25 07:36:25 -07:00
Jean-Baptiste Bellet
0c8bfea2f7 Add feature tests for upload images on enterprise registration
For both logo and promo images
2021-05-25 15:30:35 +02:00
Jean-Baptiste Bellet
0306732a3d Add test for enterprise logo and promo image uploading
- Add a fixture image to do the upload thanks to `fixture_file_upload`
 - Check the response status, the content type and the response body for both logo image and promo image
2021-05-25 15:30:29 +02:00
Jean-Baptiste Bellet
6842cbfda4 Force content type to "text/html"
- Force the content type to be `text/html` (instead of `application/json`)
2021-05-25 15:30:21 +02:00
Matt-Yorkley
ecb4cb31ad Merge pull request #7599 from Matt-Yorkley/cart-rendering
Move line item rendering to a collection in cart page
2021-05-25 13:37:50 +02:00
Jean-Baptiste Bellet
dd47430f19 Improve unlocalizeCurrency filter to handle many cases
- Complete the unit test to handle all these cases.
2021-05-25 13:14:53 +02:00
Matt-Yorkley
74f27544f7 Merge pull request #7647 from andrewpbrett/default-country-codes
Use correct default country code
2021-05-25 11:21:34 +02:00
Matt-Yorkley
5868765087 Merge pull request #7673 from Matt-Yorkley/spree-config-caching
Fix clashing loggers
2021-05-25 11:09:33 +02:00
Maikel
545d64a2e5 Merge pull request #7682 from openfoodfoundation/dependabot/bundler/i18n-js-3.8.3
Bump i18n-js from 3.8.2 to 3.8.3
2021-05-25 14:48:19 +10:00
Matt-Yorkley
c69dee4c96 Merge pull request #7636 from psychoslave/tip/zeus
Remove all material related to Zeus
2021-05-25 00:10:01 +02:00
Andy Brett
b367001b95 Merge pull request #7641 from luisramos0/order_path
[Rails 6.1] Fix view specs
2021-05-24 14:41:32 -07:00
Andy Brett
120fc4ca42 Merge pull request #7605 from filipefurtad0/import_item_products
Products and Inventory import: Items units
2021-05-24 14:17:43 -07:00
Andy Brett
e4756a523a Merge pull request #7678 from mkllnk/schema
Update schema syntax with Rails 5.2
2021-05-24 13:22:18 -07:00
Andy Brett
46843a5efa Merge pull request #7662 from Matt-Yorkley/enterprise-rendering
Render enterprise rows as a collection
2021-05-24 09:37:58 -07:00
Matt-Yorkley
6377736f43 Allow :site_url to be picked up from ENV vars 2021-05-24 14:58:53 +01:00
Jean-Baptiste Bellet
afe97bcc96 Add tests for creating/editing product/variant cases with decimal price 2021-05-24 10:55:05 +02:00
Jean-Baptiste Bellet
8af6fedf8a Factorize js:true as a common configuration around all tests 2021-05-24 10:55:05 +02:00
Jean-Baptiste Bellet
d8042b25e4 Add test for unlocalize currency filter
- Test that comma is well handle in both cases where comma is the default decimal separator or not.
2021-05-24 10:55:05 +02:00
Jean-Baptiste Bellet
f97e71d054 Add test for decimal price separated by point or comma 2021-05-24 10:55:05 +02:00
Jean-Baptiste Bellet
d066f0b94d Enable displayable unit price for price with comma as decimal separator
Retrieve the current decimal separator used to display price (`I18n.toCurrency()`), and check if number is formatted with only if this is `,`. If so, remplace comma by point, to pass the check `!isNaN`, and format unit price
2021-05-24 10:55:05 +02:00
dependabot[bot]
e9d389e4f1 Bump view_component from 2.31.1 to 2.32.0
Bumps [view_component](https://github.com/github/view_component) from 2.31.1 to 2.32.0.
- [Release notes](https://github.com/github/view_component/releases)
- [Changelog](https://github.com/github/view_component/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/view_component/compare/v2.31.1...v2.32.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 05:51:25 +00:00
dependabot[bot]
e90403dbbe Bump i18n-js from 3.8.2 to 3.8.3
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.8.2 to 3.8.3.
- [Release notes](https://github.com/fnando/i18n-js/releases)
- [Changelog](https://github.com/fnando/i18n-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fnando/i18n-js/compare/v3.8.2...v3.8.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 05:49:51 +00:00
Matt-Yorkley
3dc3581e6b Ensure Mail configs are applied when the app starts
Previously we only set these part-way through deployment, so the values could be out of sync between our ENV vars and Spree::Config (which itself is a mix of both cached values and database-persisted values).
2021-05-23 23:05:16 +01:00
Matt-Yorkley
ff82f70e9a Remove custom logger object
This is handled already in Delayed::Command and Delayed::Worker
2021-05-23 23:05:16 +01:00
Andy Brett
560f462f7b Merge pull request #7679 from mkllnk/sample-data
Fix sample_data by filtering params for products
2021-05-22 10:37:30 -07:00
Pau Pérez Fabregat
23b2b5ba56 Merge pull request #7563 from filipefurtad0/import_products_fixture_path
Adds file and fixture path to test product import
2021-05-21 10:12:20 +02:00
Maikel Linke
11cb8cbbdc Fix sample_data by filtering params for products
We were passing too many parameters to the product creation. Rails 5.2
complained that products don't have a distributor. Filtering the
parameters helps.
2021-05-21 12:41:55 +10:00
Maikel Linke
41799b2663 Update schema syntax with Rails 5.2
The style seems to be different. This avoids a modified schema after
running rake db:migrate.
2021-05-21 11:50:34 +10:00
filipefurtad0
2f842bcbdd Adds file and fixture path to test product import
Adds file and fixture path to test product import

Reverts changes on context and it descriptions
2021-05-20 20:08:47 +01:00
Matt-Yorkley
336a8b5825 Merge pull request #7671 from Matt-Yorkley/licence
Add Spree copyright notice
2021-05-20 18:56:16 +02:00
Andy Brett
d2f54f5bd2 Merge pull request #7666 from mkllnk/codecov
Stop Codecov failing good pull requests
2021-05-20 09:18:34 -07:00
Pau Pérez Fabregat
8c81c14c8d Merge pull request #7580 from apricot12/Remove-LineItems-N+1
Removed N+1 queries while counting line_items
2021-05-20 11:42:14 +02:00
Matt-Yorkley
1f6d872fa5 Add Spree copyright notice 2021-05-20 10:25:48 +01:00
Jean-Baptiste Bellet
ae1b9b8dd5 Update all locales with the latest Transifex translations 2021-05-20 10:12:46 +02:00
Maikel
1e1706d371 Merge pull request #7280 from Matt-Yorkley/atomic
Remove atomic gem
2021-05-20 17:53:36 +10:00
Maikel Linke
5ccaa521cf Stop Codecov failing good pull requests
Something doesn't quite work with our Codecov setup. It somehow thinks
that the coverage is decreasing even though it's either not changing or
even increasing.

Until those problems are resolved, let's not mark pull requests as
failed so that we can rely on the pull's overall status report.
2021-05-20 14:18:43 +10:00
Maikel Linke
90bb9870ab Bump Codecov from 1.3.1 to 1.5.0 2021-05-20 14:17:36 +10:00
Andy Brett
70ac719725 Merge pull request #7649 from andrewpbrett/payments-when-out-of-stock
Check stock before doing anything related to admin payments
2021-05-19 14:45:38 -07:00
Andy Brett
08d540a761 Merge pull request #7648 from Matt-Yorkley/redis
Switch cache store from memcached to redis
2021-05-19 10:36:20 -07:00
Andy Brett
304a3804bc Merge pull request #7594 from luisramos0/update_attributes
[Rails 6.1] Replace AR's update_attributes! with update! (and rename order.update! and adjustment.update! in the process)
2021-05-19 10:34:12 -07:00
Luis Ramos
f7726e552a Adapt code coming from master to the new order api with update_order! 2021-05-19 10:09:42 -07:00
Luis Ramos
a1ac4e85ed Replace update_attributes with update 2021-05-19 09:54:25 -07:00
Luis Ramos
f8e5370b0b Replace update_attributes with update 2021-05-19 09:54:25 -07:00
Luis Ramos
fb560089b9 Replace usages of update_attributes! with usage of update! 2021-05-19 09:54:25 -07:00
Luis Ramos
341f6c9f62 Now that adjustment.update! has been renamed to adjustment.update_adjustment! we can use AR's update! on adjustment 2021-05-19 09:54:25 -07:00
Luis Ramos
b2e97fe1d2 Rename order.update! to order.update_order! and adjustment.update! to adjustment.update_adjustment! 2021-05-19 09:54:22 -07:00
Andy Brett
e73584fef7 remove setters from DefaultCountry service 2021-05-19 09:42:52 -07:00
Andy Brett
45ad4bbcf1 remove setting of Spree::Config country code 2021-05-19 09:33:02 -07:00
Matt-Yorkley
096847ea07 Merge pull request #7618 from openfoodfoundation/dependabot/npm_and_yarn/hosted-git-info-2.8.9
Bump hosted-git-info from 2.8.8 to 2.8.9
2021-05-19 13:51:01 +02:00
Pau Pérez Fabregat
faf6a37c9f Merge pull request #7631 from openfoodfoundation/dependabot/bundler/ddtrace-0.49.0
Bump ddtrace from 0.48.0 to 0.49.0
2021-05-19 12:32:52 +02:00
Pau Pérez Fabregat
d4ec1bda54 Merge pull request #7652 from openfoodfoundation/dependabot/bundler/webmock-3.13.0
Bump webmock from 3.12.2 to 3.13.0
2021-05-19 12:32:08 +02:00
Jean-Baptiste Bellet
325b97b683 Add tests around invoice printing in PDF
- use PDF Reader to read pdf and get its content
 - check with we print the payment description information section with the right value
2021-05-19 11:55:46 +02:00
Jean-Baptiste Bellet
7ab065e8cd Add section at the bottom of invoice: Payment Description at Checkout
- If there is any payments, we use the last one to retrieve the payment method description
Use the first completed payment to display payment description
Completed is state = "checkout" or state = "completed"
Squash w/ "Add section at the bottom of invoice: Payment Description at Checkout"

Squash w "Add section at the bottom of invoice: Payment Description a"
2021-05-19 11:55:38 +02:00
Jean-Baptiste Bellet
aea0670268 Add method payment_method to get the payment method from a payment
- Method `payment_method_name` now use `payment_method`
2021-05-19 11:55:38 +02:00
Pau Pérez Fabregat
5560a99423 Merge pull request #7663 from openfoodfoundation/transifex
Transifex
2021-05-19 11:50:02 +02:00
Matt-Yorkley
0c4e191f3b Render enterprise rows as a collection
Note: this is a bit like an N+1 query, but for rendering. If there are 30 enterprises, the partial file would be loaded and parsed 30 times; but if we render it as a collection it'll load the partial once and substantially improve the performance.
2021-05-19 08:48:25 +01:00
Shen Sat
cb914e4729 Change wording in create_admin_user to be more descriptive 2021-05-19 08:45:40 +01:00
Shen Sat
ab027d6af6 Change money initializer to use ENV vars instead of Spree::Config 2021-05-19 08:44:55 +01:00
Shen Sat
6a8ee544e8 Change readme to strong encourage running setup script 2021-05-19 08:44:10 +01:00
Andy Brett
2bb38619ea Merge pull request #7656 from openfoodfoundation/dependabot/bundler/rubocop-1.15.0
Bump rubocop from 1.14.0 to 1.15.0
2021-05-18 13:36:56 -07:00
Andy Brett
4b352da402 Merge pull request #7630 from apricot12/persistent_flash_after_reload
Persistent flash after reload
2021-05-18 12:55:37 -07:00
Transifex-Openfoodnetwork
75243b8e6a Updating translations for config/locales/en_US.yml 2021-05-19 05:54:38 +10:00
Andy Brett
7df2915fbd add DefaultCountry service 2021-05-18 12:44:53 -07:00
Matt-Yorkley
6427a3846b Merge pull request #7651 from openfoodfoundation/dependabot/bundler/activerecord-import-1.1.0
Bump activerecord-import from 1.0.8 to 1.1.0
2021-05-18 20:06:21 +02:00
Andy Brett
5169ee91ea add comment for before_action 2021-05-18 10:42:19 -07:00
Andy Brett
5917accdd2 refactor using Extract Method 2021-05-18 10:38:35 -07:00
Matt-Yorkley
5dd24623f7 Merge pull request #7479 from Matt-Yorkley/payment-callbacks
Update Payment after_save callback
2021-05-18 16:19:29 +02:00
Matt-Yorkley
befb6f632f Merge pull request #7659 from openfoodfoundation/dependabot/bundler/nokogiri-1.11.4
Bump nokogiri from 1.11.3 to 1.11.4
2021-05-18 11:14:32 +02:00
dependabot[bot]
92e0f8349c Bump nokogiri from 1.11.3 to 1.11.4
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.11.3 to 1.11.4.
- [Release notes](https://github.com/sparklemotion/nokogiri/releases)
- [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.11.3...v1.11.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-18 08:37:29 +00:00
dependabot[bot]
ffbba01c41 Bump rubocop from 1.14.0 to 1.15.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.14.0...v1.15.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-18 05:24:48 +00:00
Pau Pérez Fabregat
5f9679655c Merge pull request #7645 from Matt-Yorkley/stripe-payment-processing
Stripe payment processing
2021-05-17 16:17:21 +02:00
dependabot[bot]
6ded80d2c6 Bump webmock from 3.12.2 to 3.13.0
Bumps [webmock](https://github.com/bblimke/webmock) from 3.12.2 to 3.13.0.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.12.2...v3.13.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-17 05:51:55 +00:00
dependabot[bot]
eb3c33b091 Bump activerecord-import from 1.0.8 to 1.1.0
Bumps [activerecord-import](https://github.com/zdennis/activerecord-import) from 1.0.8 to 1.1.0.
- [Release notes](https://github.com/zdennis/activerecord-import/releases)
- [Changelog](https://github.com/zdennis/activerecord-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zdennis/activerecord-import/compare/v1.0.8...v1.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-17 05:51:01 +00:00
Matt-Yorkley
794216713a Ensure payment is processed if order is in completed state 2021-05-16 23:03:07 +01:00
Matt-Yorkley
a2862e604c Find relevant payment that matches the payment intent, not the last payment 2021-05-16 23:00:31 +01:00
Matt-Yorkley
8429da3d2a Remove unused argument from ProcessPaymentIntent 2021-05-16 22:19:01 +01:00
Matt-Yorkley
381b0e78d5 Improve ProcessPaymentIntent specs 2021-05-16 20:14:14 +01:00
Matt-Yorkley
2e63cd8116 Add explanatory comment on payment processing flow 2021-05-16 20:11:45 +01:00
Matt-Yorkley
52e0d84238 Reload in-memory payment before checking it's new state
The state should have changed in the database if the payment was processed successfully, and the memoized version here will not know that without a reload.
2021-05-16 20:11:45 +01:00
Matt-Yorkley
5725535715 Fix payment state checking 2021-05-16 20:11:45 +01:00
Matt-Yorkley
05ed98aa0c Use :order_with_totals in ProcessPaymentIntent
If we just use the :order factory here, it has no line items and no total, which means when we try to push it into complete state, the #requires_payment? check fails because the order total is zero, which means the call to #process_payments is ignored
2021-05-16 20:11:45 +01:00
Matt-Yorkley
fd021d4778 Refactor payment intent status checking and return "ok" if the payment has already been processed successfully in a previous request
If the page is reloaded after the payment has already gone through, we can skip the processing and give a non-error response; the payment is already completed and Stripe's response confirms it was successful.
2021-05-16 20:11:45 +01:00
Matt-Yorkley
2b9f9fce86 Fix flash session memory-effect when showing errors after payment processing
We're not doing a redirect after setting this flash message, so we need to ensure it's discarded after the current page load.
2021-05-16 20:11:45 +01:00
Matt-Yorkley
81aac442f2 Improve conditional in raise_if_not_in_capture_state 2021-05-16 20:11:45 +01:00
Matt-Yorkley
16e3af9b49 Update OrderController spec 2021-05-16 20:11:45 +01:00
Matt-Yorkley
227bdd7d4c Update ProcessPaymentIntent spec 2021-05-16 12:55:48 +01:00
Matt-Yorkley
471a7903f6 Update PaymentIntentValidator spec 2021-05-16 12:19:04 +01:00
Matt-Yorkley
37177e7207 Add test coverage to StripeSCA spec 2021-05-16 12:19:04 +01:00
Matt-Yorkley
5805104d13 Tidy up controller and add explanatory comment 2021-05-16 12:19:04 +01:00
Matt-Yorkley
e686a4f627 Move raising of errors when payment intent state != "requires_capture" out of PaymentIntentValidator service
When we're fetching the payment intent via PaymentIntentValidator in StripeSCA#purhcase (to capture it), we want it to fail loudly if it's not in "requires_capture" state. We're now also re-using the same PaymentIntentValidator service to check if payment processing was *successful*, in which case we need it *not* to fail loudly if the state == "succeeded", eg != "requires_capture".
2021-05-16 12:19:04 +01:00
Andy Brett
c7f80d86a8 Merge pull request #7638 from Matt-Yorkley/dead-code-order-distribution
Delete dead code in OrdersController#update_distribution
2021-05-15 12:40:25 -07:00
Andy Brett
19187583e1 Merge pull request #7643 from openfoodfoundation/dependabot/bundler/test-prof-1.0.5
Bump test-prof from 1.0.3 to 1.0.5
2021-05-15 12:28:22 -07:00
Andy Brett
f2c3b096a0 Merge pull request #7566 from luisramos0/erb
[Rails 6.0] Fix problem in erb template by explicitly setting format to js
2021-05-15 10:45:01 -07:00
Andy Brett
816d752dc8 Merge pull request #7439 from openfoodfoundation/dependabot/bundler/jwt-2.2.3
Bump jwt from 2.2.2 to 2.2.3
2021-05-15 10:36:13 -07:00
Andy Brett
0a880a2bf3 flip conditional order for performance 2021-05-15 07:08:07 -07:00
Matt-Yorkley
d6b3b0a3d3 Ensure a basic level of fault-tolerance on Redis connections
The default for reconnect_attempts is 0, which is not helpful! 1 is generally considered to be enough.
2021-05-15 11:36:19 +01:00
Andy Brett
ca38948e21 check stock before doing anything related to admin payments 2021-05-14 17:42:37 -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
37053239c0 Switch cache store from memcached to redis 2021-05-14 20:46:13 +01:00
dependabot[bot]
2bb5a4b11f Bump test-prof from 1.0.3 to 1.0.5
Bumps [test-prof](https://github.com/test-prof/test-prof) from 1.0.3 to 1.0.5.
- [Release notes](https://github.com/test-prof/test-prof/releases)
- [Changelog](https://github.com/test-prof/test-prof/blob/master/CHANGELOG.md)
- [Commits](https://github.com/test-prof/test-prof/compare/v1.0.3...v1.0.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-14 05:17:23 +00:00
Maikel Linke
cea3ee4ef9 Transifex updates 2021-05-14 10:06:31 +10:00
Luis Ramos
90db52e5f5 Fix route 2021-05-14 00:14:02 +01:00
Luis Ramos
b1896733ca Fix routes 2021-05-14 00:08:20 +01:00
Luis Ramos
a949422ac9 Adapt view spec stubs to rails 6 2021-05-13 23:28:35 +01:00
Luis Ramos
0243e5cbb8 Fix route in order view 2021-05-13 23:08:50 +01:00
Andy Brett
ebdbfe0027 Merge pull request #7639 from drummer83/patch-1
Remove Ruby version from WIKI
2021-05-13 13:26:34 -07:00
Konrad
b680697af6 Remove Ruby version
Let's remove the Ruby version from the text. It changes regularly and have the link where to find it right behind it.
2021-05-13 21:16:02 +02:00
Matt-Yorkley
2e248744c0 Merge pull request #7520 from Matt-Yorkley/shipment-controller
Shipment controller: test coverage and improvements
2021-05-13 20:26:51 +02:00
Matt-Yorkley
82a6befce7 Delete dead code in OrdersController#update_distribution
I can't see any evidence that these params ever get sent to this action...
2021-05-13 15:29:53 +01:00
Mathieu Lovato Stumpf Guntz
ccef65039a Remove all material related to Zeus 2021-05-13 12:21:58 +02:00
dependabot[bot]
e4a670da5a Bump ddtrace from 0.48.0 to 0.49.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.48.0 to 0.49.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.48.0...v0.49.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-13 05:24:45 +00:00
Nihal Mohammed
c930b2ee60 Fix persistet flash after /cart page reload 2021-05-13 05:57:25 +05:30
Matt-Yorkley
4932e1dcb5 Merge pull request #7628 from viktorsmari/remove-distributer-sample-data
Remove distributer from sample_data
2021-05-12 23:53:13 +02:00
Viktor Smari
536281ec80 Remove distributer from sample_data
Closes #7625
2021-05-12 23:01:08 +02:00
Nihal Mohammed
367cee593f Move eager loading line_items to controller 2021-05-13 01:12:13 +05:30
Matt-Yorkley
99cf23df26 Merge pull request #7530 from Matt-Yorkley/email-after-commit
Email after commit
2021-05-12 21:22:55 +02:00
Matt-Yorkley
f49d4592a0 Merge pull request #7506 from guidoDutra/5546-prevent-deleting-only-item-in-confirmed-order
prevent deleting only item in confirmed order
2021-05-12 21:10:09 +02:00
Pau Pérez Fabregat
7f27544acb Merge pull request #7612 from openfoodfoundation/dependabot/bundler/actionpack-action_caching-1.2.2
Bump actionpack-action_caching from 1.2.1 to 1.2.2
2021-05-12 16:24:25 +02:00
Pau Pérez Fabregat
2aac44d95e Merge pull request #7620 from openfoodfoundation/transifex
Transifex
2021-05-12 15:50:25 +02:00
Pau Pérez Fabregat
8f921b8b08 Merge pull request #7593 from viktorsmari/add-bullet-footer
Add bullet footer
2021-05-12 15:47:54 +02:00
Transifex-Openfoodnetwork
dfe485b079 Updating translations for config/locales/ru.yml 2021-05-12 17:49:31 +10:00
dependabot[bot]
ad9096b5a8 Bump hosted-git-info from 2.8.8 to 2.8.9
Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9.
- [Release notes](https://github.com/npm/hosted-git-info/releases)
- [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md)
- [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-11 23:49:14 +00:00
Luis Ramos
b265fbf9a0 Remove initial slash from admin layout, this fixes a problem with layouts cant be loaded from absolute paths 2021-05-11 22:34:15 +01:00
Matt-Yorkley
e60a513c88 Merge pull request #7571 from coopdevs/make-specs-accurate
Properly mock validator and extend tests
2021-05-11 22:24:01 +02:00
Pau Pérez Fabregat
1f8e731594 Merge pull request #7596 from openfoodfoundation/transifex
Transifex
2021-05-11 11:56:35 +02:00
dependabot[bot]
d69ef31bf9 Bump actionpack-action_caching from 1.2.1 to 1.2.2
Bumps [actionpack-action_caching](https://github.com/rails/actionpack-action_caching) from 1.2.1 to 1.2.2.
- [Release notes](https://github.com/rails/actionpack-action_caching/releases)
- [Changelog](https://github.com/rails/actionpack-action_caching/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/actionpack-action_caching/compare/v1.2.1...v1.2.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-11 05:05:32 +00:00
Andy Brett
9ae7c5efbc Merge pull request #7578 from psychoslave/master
Update things related to some package manager influencing setup process
2021-05-10 17:01:46 -07:00
Matt-Yorkley
902bbf7dc4 Merge pull request #7576 from Matt-Yorkley/bulk-line-items
Add test coverage to BulkLineItemsController actions
2021-05-11 01:47:17 +02:00
Andy Brett
d29ef0d7b1 Merge branch 'master' into make-specs-accurate 2021-05-10 16:10:33 -07:00
Andy Brett
d2a3d9049f Merge pull request #7588 from andrewpbrett/enterprise-permalink-spec
[Rails 6.0] Fix enterprise permalink spec
2021-05-10 15:30:45 -07:00
filipefurtad0
0cd6c53e0d Adds test-case on the inventory import for unit Items 2021-05-10 19:12:41 +01:00
filipefurtad0
5475b79cde Adds test-case on the product import unit Items 2021-05-10 19:07:05 +01:00
filipefurtad0
8e24c655b0 Adds verification of inventory import on inventory page 2021-05-10 19:01:41 +01:00
filipefurtad0
bb5452ad26 Adds verification of product import on products page 2021-05-10 18:57:47 +01:00
Pau Perez
ed6b7f1ab4 Split apt packages list into a name per line
This super long line was hard to read.
2021-05-10 19:57:24 +02:00
Matt-Yorkley
85b8e9b51f Merge pull request #7595 from openfoodfoundation/dependabot/bundler/factory_bot_rails-6.2.0
Bump factory_bot_rails from 6.1.0 to 6.2.0
2021-05-10 19:55:54 +02:00
Pau Perez
4453123944 Compile Ruby with jemalloc 2021-05-10 19:31:04 +02:00
Andy Brett
3239c893ba Merge pull request #7590 from viktorsmari/ransack-search-deprecation
Ransack.search is deprecated. Use .ransack instead
2021-05-10 08:43:09 -07:00
Andy Brett
17a0063b40 Merge pull request #7402 from filipefurtad0/products_spec_add_ons
Adds coverage for product deletion and cloning
2021-05-10 06:26:11 -07:00
Matt-Yorkley
122ba385f7 Move line item rendering to collection in cart page
Improvement from upstream Spree commit. Brings a big performance boost to rendering, especially with larger numbers of items in the cart. 50%+ reduction in rendering times reported.
2021-05-10 11:50:31 +01:00
Transifex-Openfoodnetwork
75dc7af0ed Updating translations for config/locales/en_GB.yml 2021-05-10 18:16:04 +10:00
dependabot[bot]
cb15e28cef Bump factory_bot_rails from 6.1.0 to 6.2.0
Bumps [factory_bot_rails](https://github.com/thoughtbot/factory_bot_rails) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/thoughtbot/factory_bot_rails/releases)
- [Changelog](https://github.com/thoughtbot/factory_bot_rails/blob/master/NEWS.md)
- [Commits](https://github.com/thoughtbot/factory_bot_rails/compare/v6.1.0...v6.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-10 05:55:18 +00:00
Andy Brett
cbefa5f882 Merge pull request #7589 from andrewpbrett/order-adjustments-spec
[Rails 6.0] Fix order adjustments spec
2021-05-09 10:38:19 -07:00
Andy Brett
231f01dad2 fix order adjustments spec 2021-05-09 10:09:22 -07:00
Viktor Smari
c14ccdc21c Add bullet footer
Left corner of the page will show the bullet warnings
2021-05-09 16:49:00 +02:00
Nihal Mohammed
fcf70c242e edit item_count method to shorthand for improved readability 2021-05-09 18:31:26 +05:30
Andy Brett
a0476be2c9 Merge pull request #7568 from andrewpbrett/stripe-mock-js
[Rails 6.0] Use raw to render stripe mock js file
2021-05-08 17:46:24 -07:00
Matt-Yorkley
24a5407c8f Merge pull request #7565 from luisramos0/rails6_success
[Rails 6.0] Replace be_success on test_response with status 200
2021-05-09 02:33:49 +02:00
Andy Brett
66da72ccc2 use raw to render stripe mock js 2021-05-08 17:29:38 -07:00
Viktor Smari
6a342ae368 Ransack.search is deprecated. Use .ransack instead
https://github.com/activerecord-hackery/ransack/pull/975
2021-05-09 01:05:37 +02:00
Andy Brett
dd851edbdc fix enterprise permalink spec 2021-05-08 14:21:45 -07:00
Andy Brett
2910cbf15c Merge pull request #7582 from openfoodfoundation/transifex
Transifex
2021-05-08 13:55:11 -07:00
Transifex-Openfoodnetwork
d24d7fce56 Updating translations for config/locales/de_DE.yml 2021-05-09 05:16:39 +10:00
Nihal Mohammed
e485a4a8ef Remove untested change to payments 2021-05-08 23:51:38 +05:30
Nihal Mohammed
026942dd72 Fix item_count to properly count quantity of every item 2021-05-08 23:45:41 +05:30
Nihal Mohammed
237ebd6ec4 Removed N+1 queries while counting line_items 2021-05-08 21:09:06 +05:30
Mathieu Lovato Stumpf Guntz
a4d6e69309 Replace nmp with yarn, remove newrelic 2021-05-07 21:10:55 +02:00
Mathieu Lovato Stumpf Guntz
29e04dd8c8 Merge branch 'master' of https://github.com/openfoodfoundation/openfoodnetwork 2021-05-07 16:00:08 +02:00
Mathieu Lovato Stumpf Guntz
5a8e271037 Update .node-version to last LTS and drop setup tests 2021-05-07 15:54:15 +02:00
Andy Brett
5a16954bf6 Merge pull request #7572 from openfoodfoundation/transifex
Transifex
2021-05-07 06:46:56 -07:00
Matt-Yorkley
43e41f4980 Add more explicit test coverage to BulkLineItemsController acitons
This spec includes taxes on line items, fees on the order and on line items, taxes on fees (inherited and non-inherited), shipping and payment fees and taxes on shipping. It checks all of these things are correctly updated after the order is changed via BOM.
2021-05-07 11:54:04 +01:00
Matt-Yorkley
39156ec988 Merge pull request #7574 from Matt-Yorkley/dfc-routes
Update DFC routes
2021-05-07 11:27:50 +02:00
Matt-Yorkley
c71d4bce6a Update DFC routes 2021-05-07 09:42:35 +01:00
Pau Pérez Fabregat
8d8abed529 Merge pull request #7496 from jibees/4957-flaky-specs
Uncomment flaky spec on variant_overrides_spec.rb
2021-05-07 10:29:36 +02:00
Transifex-Openfoodnetwork
55018260df Updating translations for config/locales/en_FR.yml 2021-05-07 17:53:34 +10:00
Transifex-Openfoodnetwork
cbdeef064a Updating translations for config/locales/fr.yml 2021-05-07 17:53:20 +10:00
Transifex-Openfoodnetwork
ac2c02a983 Updating translations for config/locales/es.yml 2021-05-07 16:40:26 +10:00
Transifex-Openfoodnetwork
c71a4918a0 Updating translations for config/locales/ca.yml 2021-05-07 16:40:03 +10:00
Pau Perez
fd5e0fd60f Properly mock validator and extend tests
Tests were passing but not due to the expected reason. While at it, we
extended the assertions to be more precise.
2021-05-07 08:35:54 +02:00
Andy Brett
dbd0d4a795 Merge pull request #7570 from openfoodfoundation/release/v3.6.10
Update all locales with the latest Transifex translations
2021-05-06 20:41:25 -07:00
Andy Brett
328381b732 Update all locales with the latest Transifex translations 2021-05-06 20:38:41 -07:00
Luis Ramos
de000228cf Fix problem in erb template by explicitly setting format to js while calling it 2021-05-06 23:52:16 +01:00
Luis Ramos
a2de86c23e Replace be_success on test_reponse with status 200
In rails 6 response.success? is not supported.
2021-05-06 23:51:30 +01:00
Andy Brett
415d86bff0 Merge pull request #7562 from coopdevs/fix-failed-sca-auth
Fix failed SCA authentication on subs. order payment not reflected in OFN
2021-05-06 15:25:16 -07:00
Andy Brett
8b9083d28f Merge pull request #7560 from openfoodfoundation/dependabot/bundler/rails-5.2.6
Bump rails from 5.2.5 to 5.2.6
2021-05-06 15:14:06 -07:00
dependabot[bot]
7f5dddffa0 Bump rails from 5.2.5 to 5.2.6
Bumps [rails](https://github.com/rails/rails) from 5.2.5 to 5.2.6.
- [Release notes](https://github.com/rails/rails/releases)
- [Commits](https://github.com/rails/rails/compare/v5.2.5...v5.2.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-06 17:35:58 +00:00
Andy Brett
cfa4bde965 Merge pull request #7559 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.10.1
Bump rubocop-rails from 2.10.0 to 2.10.1
2021-05-06 10:34:20 -07:00
Andy Brett
9e6ede4072 Merge pull request #7561 from openfoodfoundation/dependabot/bundler/rubocop-1.14.0
Bump rubocop from 1.13.0 to 1.14.0
2021-05-06 10:33:40 -07:00
Pau Perez
9a63f38790 I18n-ize error messages. 2021-05-06 16:34:29 +02:00
Pau Perez
69b91ea136 Wait until the end to mark payment as processed
This gives us the opportunity to retry the operation in case the
processing fails.
2021-05-06 16:19:01 +02:00
Pau Perez
dea6a01e61 Handle SCA payments that can't complete 2021-05-06 16:19:01 +02:00
Pau Perez
2147584daf Validate intents against Stripe and display errors
Now the existing validation is redundant. It's Stripe's API who does
that now. It's up to them to decide what's a valid intent.
2021-05-06 16:19:01 +02:00
Pau Perez
b723ed4a98 Skip Stripe logic when no payment data is passed 2021-05-06 16:19:01 +02:00
dependabot[bot]
ccfe352d62 Bump rubocop from 1.13.0 to 1.14.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.13.0 to 1.14.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.13.0...v1.14.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-06 05:22:38 +00:00
dependabot[bot]
76fb157518 Bump rubocop-rails from 2.10.0 to 2.10.1
Bumps [rubocop-rails](https://github.com/rubocop/rubocop-rails) from 2.10.0 to 2.10.1.
- [Release notes](https://github.com/rubocop/rubocop-rails/releases)
- [Changelog](https://github.com/rubocop/rubocop-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop-rails/compare/v2.10.0...v2.10.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-06 05:18:52 +00:00
Andy Brett
a7331efd67 Merge pull request #7477 from luisramos0/require_dependency
Remove require_dependency or use require
2021-05-05 13:24:19 -07:00
Pau Pérez Fabregat
b57755398c Merge pull request #7531 from openfoodfoundation/dependabot/bundler/daemons-1.4.0
Bump daemons from 1.3.1 to 1.4.0
2021-05-05 21:42:25 +02:00
dependabot[bot]
076081929f Bump daemons from 1.3.1 to 1.4.0
Bumps [daemons](https://github.com/thuehlinger/daemons) from 1.3.1 to 1.4.0.
- [Release notes](https://github.com/thuehlinger/daemons/releases)
- [Changelog](https://github.com/thuehlinger/daemons/blob/master/Releases)
- [Commits](https://github.com/thuehlinger/daemons/compare/v1.3.1...v1.4.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-05 18:07:37 +00:00
Andy Brett
4b183bb6c1 Merge pull request #7555 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.10.0
Bump rubocop-rails from 2.9.1 to 2.10.0
2021-05-05 11:06:43 -07:00
Andy Brett
d2f3cdd6b9 Merge pull request #7546 from openfoodfoundation/dependabot/bundler/activerecord-session_store-2.0.0
Bump activerecord-session_store from 1.1.3 to 2.0.0
2021-05-05 11:06:10 -07:00
Andy Brett
baf3d4b2cd Merge pull request #6488 from openfoodfoundation/dependabot/bundler/pg-1.2.3
Bump pg from 0.21.0 to 1.2.3
2021-05-05 11:05:52 -07:00
Andy Brett
f8f3cb78e3 Merge pull request #7549 from openfoodfoundation/dependabot/bundler/roadie-rails-2.2.0
Bump roadie-rails from 1.3.0 to 2.2.0
2021-05-05 11:05:24 -07:00
dependabot[bot]
18373533e6 Bump roadie-rails from 1.3.0 to 2.2.0
Bumps [roadie-rails](https://github.com/Mange/roadie-rails) from 1.3.0 to 2.2.0.
- [Release notes](https://github.com/Mange/roadie-rails/releases)
- [Changelog](https://github.com/Mange/roadie-rails/blob/master/Changelog.md)
- [Commits](https://github.com/Mange/roadie-rails/compare/v1.3.0...v2.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-05 17:40:59 +00:00
dependabot[bot]
679ceaead7 Bump pg from 0.21.0 to 1.2.3
Bumps [pg](https://github.com/ged/ruby-pg) from 0.21.0 to 1.2.3.
- [Release notes](https://github.com/ged/ruby-pg/releases)
- [Changelog](https://github.com/ged/ruby-pg/blob/master/History.rdoc)
- [Commits](https://github.com/ged/ruby-pg/compare/v0.21.0...v1.2.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-05 17:40:49 +00:00
Pau Pérez Fabregat
64baebd791 Merge pull request #7545 from openfoodfoundation/dependabot/bundler/ransack-2.4.1
Bump ransack from 2.3.0 to 2.4.1
2021-05-05 19:39:42 +02:00
dependabot[bot]
31adbdbf7a Bump activerecord-session_store from 1.1.3 to 2.0.0
Bumps [activerecord-session_store](https://github.com/rails/activerecord-session_store) from 1.1.3 to 2.0.0.
- [Release notes](https://github.com/rails/activerecord-session_store/releases)
- [Commits](https://github.com/rails/activerecord-session_store/compare/v1.1.3...v2.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-05 17:15:11 +00:00
Pau Pérez Fabregat
819479f05c Merge pull request #7552 from luisramos0/rails525
Upgrade to rails 5.2.5 with "bundle update rails"
2021-05-05 19:14:04 +02:00
Pau Pérez Fabregat
324999494b Merge pull request #7523 from openfoodfoundation/transifex
Transifex
2021-05-05 18:31:30 +02:00
Andy Brett
82845e1cfc Merge pull request #7528 from Matt-Yorkley/has_many_through
Reorder has_many relationship with :through option
2021-05-05 08:08:15 -07:00
Andy Brett
3e714b1539 Merge pull request #7527 from Matt-Yorkley/dead-code-deleted
Remove #deleted? method from Product and Variant
2021-05-05 08:07:39 -07:00
Andy Brett
002420304d Merge pull request #7526 from Matt-Yorkley/dead-currency
Remove currency from OrderContents
2021-05-05 08:06:53 -07:00
dependabot[bot]
aa90c4f34f Bump rubocop-rails from 2.9.1 to 2.10.0
Bumps [rubocop-rails](https://github.com/rubocop/rubocop-rails) from 2.9.1 to 2.10.0.
- [Release notes](https://github.com/rubocop/rubocop-rails/releases)
- [Changelog](https://github.com/rubocop/rubocop-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop-rails/compare/v2.9.1...v2.10.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-05 05:14:36 +00:00
Luis Ramos
63e2122593 Upgrade to rails 5.2.5 with a bundle update rails 2021-05-04 21:31:09 +01:00
Andy Brett
35671e2464 Merge pull request #7548 from openfoodfoundation/dependabot/bundler/rspec-rails-5.0.1
Bump rspec-rails from 4.1.2 to 5.0.1
2021-05-04 13:22:48 -07:00
Andy Brett
4b9418ebd6 Merge pull request #7547 from openfoodfoundation/dependabot/bundler/coffee-rails-5.0.0
Bump coffee-rails from 4.2.2 to 5.0.0
2021-05-04 13:02:50 -07:00
dependabot[bot]
ec8f42513b Bump rspec-rails from 4.1.2 to 5.0.1
Bumps [rspec-rails](https://github.com/rspec/rspec-rails) from 4.1.2 to 5.0.1.
- [Release notes](https://github.com/rspec/rspec-rails/releases)
- [Changelog](https://github.com/rspec/rspec-rails/blob/main/Changelog.md)
- [Commits](https://github.com/rspec/rspec-rails/compare/v4.1.2...v5.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-04 19:21:11 +00:00
dependabot[bot]
3ba439ec0d Bump coffee-rails from 4.2.2 to 5.0.0
Bumps [coffee-rails](https://github.com/rails/coffee-rails) from 4.2.2 to 5.0.0.
- [Release notes](https://github.com/rails/coffee-rails/releases)
- [Changelog](https://github.com/rails/coffee-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/coffee-rails/compare/v4.2.2...v5.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-04 19:20:07 +00:00
dependabot[bot]
47e79a8d60 Bump ransack from 2.3.0 to 2.4.1
Bumps [ransack](https://github.com/activerecord-hackery/ransack) from 2.3.0 to 2.4.1.
- [Release notes](https://github.com/activerecord-hackery/ransack/releases)
- [Changelog](https://github.com/activerecord-hackery/ransack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/activerecord-hackery/ransack/compare/v2.3.0...2.4.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-04 19:19:33 +00:00
Transifex-Openfoodnetwork
119fdd9e53 Updating translations for config/locales/en_CA.yml 2021-05-05 03:12:14 +10:00
Matt-Yorkley
00c4a28d22 Extract order-updating logic to Order::Updater 2021-05-04 16:40:10 +01:00
Matt-Yorkley
8e10f7af0e Update payments controller test setup
We need to use a completed order in the test setup here or it doesn't behave correctly. `order.completed_at` is nil, for example.
2021-05-04 16:40:10 +01:00
Matt-Yorkley
135a311c05 Update void payments
Backport from Spree 2.4 stable: 4121992398
2021-05-04 16:40:10 +01:00
Matt-Yorkley
13bb5aa8dd Update Payment after_save callback
Backport from Spree 2.4 stable: 4d652a77fd
2021-05-04 16:40:09 +01:00
Matt-Yorkley
2b1becfd47 Merge pull request #7185 from openfoodfoundation/rails-5-2
Rails 5.2 upgrade
2021-05-04 17:21:03 +02:00
Pau Perez
cb1e4caad8 Update all locales with the latest Transifex translations 2021-05-04 08:34:04 +02:00
Andy Brett
edc51d1155 Merge pull request #7532 from openfoodfoundation/dependabot/bundler/test-prof-1.0.3
Bump test-prof from 1.0.2 to 1.0.3
2021-05-03 11:31:50 -07:00
filipefurtad0
a476416dc4 Removes html tr tag; Clarifies it block 2021-05-03 17:03:34 +01:00
Transifex-Openfoodnetwork
55b1b860d1 Updating translations for config/locales/en_US.yml 2021-05-04 02:03:25 +10:00
Matt-Yorkley
e2a411c23c Add map helper to RegistrationController
Fixes 3 errors including:

Registration Terms of Service agreement if accepting Terms of Service is not required allows registration as normal
     Failure/Error: super

     ActionView::Template::Error:
       undefined method `using_google_maps?' for #<#<Class:0x00007fd4949c4558>:0x00007fd499dd0ae8>
     # ./app/helpers/application_helper.rb:20:in `method_missing'
     # ./app/views/registration/steps/_details.html.haml:60:in `_app_views_registration_steps__details_html_haml___1911121144363058234_70275472163280'
     # ./app/views/registration/index.html.haml:12:in `block in _app_views_registration_index_html_haml__993897347679518865_70275545598940'
     # ./app/views/registration/index.html.haml:11:in `each'
     # ./app/views/registration/index.html.haml:11:in `_app_views_registration_index_html_haml__993897347679518865_70275545598940'
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
     # ------------------
     # --- Caused by: ---
     # NoMethodError:
     #   undefined method `using_google_maps?' for #<#<Class:0x00007fd4949c4558>:0x00007fd499dd0ae8>
     #   ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
aa013ef76a Update redirect_back syntax for Rails 5
Introduced in 5.0, the old syntax is removed in 5.2
2021-05-03 14:17:54 +01:00
Matt-Yorkley
a645b8c58f Re-apply previous 5.2 commit: Don't reload payments in after_save callback
This causes issues in master, but is needed in the 5.2 branch.
2021-05-03 14:17:54 +01:00
Matt-Yorkley
4888f1cd06 Stub OrderPaymentFinder to return correct object
OrderPaymentFinder was re-fetching the payment object from the database, so the subsequent line that stubs #authorize! on that payment was not being applied to the correct object.
2021-05-03 14:17:54 +01:00
Matt-Yorkley
31fc6201fc Include payment method helper in ApplicationController 2021-05-03 14:17:54 +01:00
Matt-Yorkley
ab65b01fcf Rename payments helper 2021-05-03 14:17:54 +01:00
Matt-Yorkley
1de68d091a Update guard clause in line item callbacks (take two)
The `changed?` method is more accurately replaced by `saved_changes.present?`

In some cases here (where the object had just been saved for the first time) the guard clause was still stopping execution unexpectedly.
2021-05-03 14:17:54 +01:00
Matt-Yorkley
ac53df37d9 Fix callback in LineItem
#changed? here was not working as before, and the code was never getting past this guard in various places where previously it did. This meant the callback was effectively disabled, and order.update! was not being called when it should be.
2021-05-03 14:17:54 +01:00
Luis Ramos
279c15c306 Adapt spec to rails 5.2 2021-05-03 14:17:54 +01:00
Luis Ramos
47a5809100 Fix rspec syntax 2021-05-03 14:17:54 +01:00
Andy Brett
705666ecd0 fix /spec/models/spree/credit_card_spec.rb:301 2021-05-03 14:17:54 +01:00
Luis Ramos
aaf4710694 Fix cart_service_spec to adapt to the actual usage of it from cart_controller, params are now sent inside a Parameters object, not as a hash 2021-05-03 14:17:54 +01:00
Luis Ramos
f5a7ff0f0a Switch from map, that does not exist in ActionController::Parameters, to each 2021-05-03 14:17:54 +01:00
Andy Brett
203dbb7a8b Revert "Switch from map, that does not exist in ActionController::Parameters, to each"
This reverts commit 69a15d4f04.
2021-05-03 14:17:54 +01:00
Andy Brett
ea5f9c6747 Revert "Fix cart_service_spec to adapt to the actual usage of it from cart_controller, params are now sent inside a Parameters object, not as a hash"
This reverts commit bb465b5715.
2021-05-03 14:17:54 +01:00
Andy Brett
d255ca22f5 use new attribute_changed method for taxons take 2 2021-05-03 14:17:54 +01:00
Andy Brett
be0eb5f5f9 ignore nil in payment report spec expectation 2021-05-03 14:17:54 +01:00
Andy Brett
52525dc437 Fix /spec/models/spree/product_spec.rb:118 2021-05-03 14:17:54 +01:00
Andy Brett
d381b2a544 Use saved_change_to prefix to check for changes 2021-05-03 14:17:54 +01:00
Luis Ramos
c08bc743d3 Replace usage of changed? with saved_change_to_ 2021-05-03 14:17:54 +01:00
Luis Ramos
c1402fe4f2 Upgrade state_machines 2021-05-03 14:17:54 +01:00
Matt-Yorkley
e9b6f89ae0 Update params syntax in engine controller specs 2021-05-03 14:17:54 +01:00
Matt-Yorkley
26688dda36 Add angular_form helper
Fixes:

Failure/Error: super

     ActionView::Template::Error:
       undefined method `ng_options_for_select' for #<#<Class:0x00007fbf8e43e310>:0x000055783fbebec0>
       Did you mean?  options_for_select
     # ./app/helpers/application_helper.rb:20:in `method_missing'
     # ./app/helpers/angular_form_builder.rb:26:in `ng_select'
     # ./app/views/admin/enterprise_fees/index.html.haml:34:in `block (2 levels) in _app_views_admin_enterprise_fees_index_html_haml__800455454875182851_46987476952700'
     # ./app/helpers/angular_form_builder.rb:6:in `ng_fields_for'
     # ./app/views/admin/enterprise_fees/index.html.haml:28:in `block in _app_views_admin_enterprise_fees_index_html_haml__800455454875182851_46987476952700'
     # ./app/helpers/application_helper.rb:11:in `ng_form_for'
     # ./app/views/admin/enterprise_fees/index.html.haml:4:in `_app_views_admin_enterprise_fees_index_html_haml__800455454875182851_46987476952700'
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
     # ------------------
     # --- Caused by: ---
     # NoMethodError:
     #   undefined method `ng_options_for_select' for #<#<Class:0x00007fbf8e43e310>:0x000055783fbebec0>
     #   Did you mean?  options_for_select
     #   ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
b7aeceaf67 Add enterprise_fees helper
Fixes:

Failure/Error: super

     ActionView::Template::Error:
       undefined method `angular_id' for #<#<Class:0x00007f57c7126670>:0x00007f57c55754f8>
     # ./app/helpers/application_helper.rb:20:in `method_missing'
     # ./app/views/admin/enterprise_fees/index.html.haml:32:in `block (2 levels) in _app_views_admin_enterprise_fees_index_html_haml__3854507252304647884_70007474860840'
     # ./app/helpers/angular_form_builder.rb:6:in `ng_fields_for'
     # ./app/views/admin/enterprise_fees/index.html.haml:28:in `block in _app_views_admin_enterprise_fees_index_html_haml__3854507252304647884_70007474860840'
     # ./app/helpers/application_helper.rb:11:in `ng_form_for'
     # ./app/views/admin/enterprise_fees/index.html.haml:4:in `_app_views_admin_enterprise_fees_index_html_haml__3854507252304647884_70007474860840'
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
     # ------------------
     # --- Caused by: ---
     # NoMethodError:
     #   undefined method `angular_id' for #<#<Class:0x00007f57c7126670>:0x00007f57c55754f8>
     #   ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
e6a3041f45 Add admin/enterprises helper
Fixes:

Failure/Error: super

     ActionView::Template::Error:
       undefined method `add_check_if_single' for #<#<Class:0x0000564501a3c838>:0x00007f446cdd68e8>
     # ./app/helpers/application_helper.rb:20:in `method_missing'
     # ./app/views/spree/admin/shared/_hubs_sidebar.html.haml:16:in `block in _app_views_spree_admin_shared__hubs_sidebar_html_haml___1973426344114200431_69965928779540'
     # ./app/views/spree/admin/shared/_hubs_sidebar.html.haml:11:in `each'
     # ./app/views/spree/admin/shared/_hubs_sidebar.html.haml:11:in `_app_views_spree_admin_shared__hubs_sidebar_html_haml___1973426344114200431_69965928779540'
     # ./app/views/spree/admin/payment_methods/edit.html.haml:15:in `block in _app_views_spree_admin_payment_methods_edit_html_haml__571217921761730685_69965930474120'
     # ./app/views/spree/admin/payment_methods/edit.html.haml:11:in `_app_views_spree_admin_payment_methods_edit_html_haml__571217921761730685_69965930474120'
     # ./app/controllers/admin/resource_controller.rb:23:in `block (2 levels) in edit'
     # ./lib/spree/core/controller_helpers/respond_with.rb:24:in `respond_with'
     # ./app/controllers/admin/resource_controller.rb:22:in `edit'
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
     # ------------------
     # --- Caused by: ---
     # NoMethodError:
     #   undefined method `add_check_if_single' for #<#<Class:0x0000564501a3c838>:0x00007f446cdd68e8>
     #   ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Matt-Yorkley
b0787e83b2 Add checkout helper
Fixes:

      Failure/Error: super

      ActionView::Template::Error:
        undefined method `checkout_adjustments_for' for #<#<Class:0x000055f4bd847a30>:0x000055f4bd845c30>
      # ./app/helpers/application_helper.rb:20:in `method_missing'
      # ./app/views/spree/admin/orders/_invoice_table.html.haml:26:in `_app_views_spree_admin_orders__invoice_table_html_haml___3617932924646213210_47254819384740'
      # ./app/views/spree/admin/orders/invoice.html.haml:67:in `_app_views_spree_admin_orders_invoice_html_haml__1476001169744481148_47254819971700'
      # ./app/services/invoice_renderer.rb:8:in `render_to_string'
      # ./app/controllers/spree/admin/orders_controller.rb:81:in `invoice'
      # ./spec/support/controller_requests_helper.rb:49:in `process_action_with_route'
      # ./spec/support/controller_requests_helper.rb:23:in `spree_get'
      # ./spec/controllers/spree/admin/orders/invoices_spec.rb:58:in `block (6 levels) in <top (required)>'
      # ------------------
      # --- Caused by: ---
      # NoMethodError:
      #   undefined method `checkout_adjustments_for' for #<#<Class:0x000055f4bd847a30>:0x000055f4bd845c30>
      #   ./app/helpers/application_helper.rb:20:in `method_missing'
2021-05-03 14:17:54 +01:00
Luis Ramos
1b4930de8f Fix mimemagic 036 yank issue 2021-05-03 14:17:54 +01:00
Matt-Yorkley
f874397115 Fix errors in PermittedAttributes::OrderCycle 2021-05-03 14:17:54 +01:00
Matt-Yorkley
5fc60f53ba Update mimemagic gem!
The package maintainer nuked this gem last night as part of a major licence change for the repo, and chaos ensued. It's a dependency for ActiveStorage which is now part of Rails. Versions *above* 0.3.5 are now available, and work. All versions below 0.3.6 have been removed without warning (currently used by ~576,971 repos on Github!) D:
2021-05-03 14:17:54 +01: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
Matt-Yorkley
138f00876b Update Rails to 5.2 2021-05-03 14:17:54 +01:00
Transifex-Openfoodnetwork
b00dcecd52 Updating translations for config/locales/en_GB.yml 2021-05-03 18:16:39 +10:00
dependabot[bot]
d3b3ed3b9c Bump test-prof from 1.0.2 to 1.0.3
Bumps [test-prof](https://github.com/test-prof/test-prof) from 1.0.2 to 1.0.3.
- [Release notes](https://github.com/test-prof/test-prof/releases)
- [Changelog](https://github.com/test-prof/test-prof/blob/master/CHANGELOG.md)
- [Commits](https://github.com/test-prof/test-prof/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-03 05:47:40 +00:00
filipefurtad0
19768e1398 adds coverage for product deletion and cloning 2021-05-02 18:33:13 +01:00
Matt-Yorkley
7c2d77a3ee Fix assertion in ModelSet test
The mismatched use of hash attributes as strings and hash attributes as symbols here (attrs['name'] and attrs[:name]) meant that the conditional was not returning the expected results in the test.
2021-05-02 13:42:38 +01:00
Matt-Yorkley
2560757ea2 Change Enterprise after_create callback to after_create_commit
As a general rule, if you're triggering an email job as part of an after create/save callback, it should use after commit instead.

Why? The transaction can't finish until after the record is persisted (the data is committed) which includes the logic in all callbacks. So for example if the transaction fails after the email job has been placed it will be rolled back, but the email job will already be in the queue, and it'll be referencing a record that doesn't actually exist (due to the rollback).
2021-05-02 13:23:31 +01:00
Matt-Yorkley
9d23c0d9e2 Reorder has_many relationship with :through option
If it's using :through it should be defined after the relationship it's connected to
2021-05-01 16:20:36 +01:00
Matt-Yorkley
7948c5943d Remove #deleted? method from Product and Variant
This method is already supplied via the paranoia gem, there's no need to re-implement it here.
2021-05-01 12:54:33 +01:00
Matt-Yorkley
2eb17dbbd1 Remove currency from OrderContents
The currency argument here is not actually used anywhere. The related conditional logic is also not covered in any tests.
2021-05-01 11:10:51 +01:00
Transifex-Openfoodnetwork
0a9fc429ac Updating translations for config/locales/de_DE.yml 2021-05-01 08:32:50 +10:00
Andy Brett
8672969798 Merge pull request #7515 from openfoodfoundation/dependabot/bundler/devise-4.8.0
Bump devise from 4.7.3 to 4.8.0
2021-04-30 11:24:20 -07:00
Andy Brett
1be730fcfb Merge pull request #7512 from Matt-Yorkley/package-refactor
Package update
2021-04-30 08:51:51 -07:00
Transifex-Openfoodnetwork
7fd82540ce Updating translations for config/locales/en_IE.yml 2021-05-01 00:27:53 +10:00
Matt-Yorkley
e290c128bf Fix error in Api::ShipmentController#update with :unlock parameter
This is a generic issue caused by a clash between state machines trying to define (or failing to define) the #open method on adjustments as part of their state changes interface. This method is already defined in Object. For more details, see: bb42e33bf7/lib/state_machines/machine.rb (L323-L350)
2021-04-30 14:13:22 +01:00
Matt-Yorkley
95a73704a2 Add more test coverage to Api::ShipmentController#update 2021-04-30 14:09:32 +01:00
Matt-Yorkley
b843b871f6 Ensure order totals and payment/shipment states are correct when changing shipping method on a completed order.
This used to happen via an after_save callback in Shipment, which called `order.update!`. That has recently been removed. After changing a shipment's selected shipping rate (shipping method), we need to ensure the order's totals and states are updated. We don't need to update all of the order's adjustments though (see previous commit).

FYI Spree handled this issue like this: 24388485ed, but there are lots of things about that commit that are clearly awful, like: params handling in a model, duplication of Order::Updater logic across the codebase, the Shipment class having responsiblity for knowing which things need to be updated on the order, etc. The result is ultimately the same as what we're doing here though.
2021-04-30 12:57:01 +01:00
Matt-Yorkley
925676f136 Split Order::Updater#update into two methods
There are two distinct (and very important) operations happening here. The first is to update all adjustments (which can be *incredibly* expensive) and the second is to ensure the order's totals and shipping/payment states are correct. There are lots of places where we currently do both of these things where in fact we only need to do the latter (and skip the really expensive part).
2021-04-30 12:48:53 +01:00
Matt-Yorkley
d3f41f14c7 Add test coverage for Api::ShipmentsController#update 2021-04-30 12:45:49 +01:00
Matt-Yorkley
045ce73c83 Simplify shipment controller params 2021-04-30 12:20:47 +01:00
Matt-Yorkley
932d000c9d Improve shipping method factory
You can now specify an amount for the flat_rate option.
2021-04-30 12:19:43 +01:00
Matt-Yorkley
c7ce10f998 Handle order objects with no distributor 2021-04-30 11:12:41 +01:00
Matt-Yorkley
5b29243847 Delete unused method Stock::Package#currency 2021-04-30 11:10:20 +01:00
Matt-Yorkley
3897c3af68 Refactor Stock::Package#shipping_methods 2021-04-30 11:10:20 +01:00
Matt-Yorkley
c3c396eaea Add soft-deletion test coverage to Package#shipping_methods 2021-04-30 11:10:19 +01:00
Pau Perez
03b2e558b3 Update all locales with the latest Transifex translations 2021-04-30 11:58:13 +02:00
Pau Pérez Fabregat
fca4fde9a6 Merge pull request #7518 from openfoodfoundation/transifex
Transifex
2021-04-30 11:54:01 +02:00
Pau Pérez Fabregat
057bcddee9 Merge pull request #7478 from jibees/7458-get-products-on-order-cycle-change-events
Get the whole list of products on order cycle changes
2021-04-30 11:39:15 +02:00
Transifex-Openfoodnetwork
05b1e598e0 Updating translations for config/locales/es.yml 2021-04-30 19:37:16 +10:00
Transifex-Openfoodnetwork
0faee508b5 Updating translations for config/locales/ca.yml 2021-04-30 19:34:42 +10:00
Pau Pérez Fabregat
3aaa818d00 Merge pull request #7516 from openfoodfoundation/transifex
Transifex
2021-04-30 11:30:07 +02:00
Pau Pérez Fabregat
006cf45f2a Merge pull request #7514 from openfoodfoundation/dependabot/bundler/rack-mini-profiler-2.3.2
Bump rack-mini-profiler from 2.3.1 to 2.3.2
2021-04-30 11:29:28 +02:00
Transifex-Openfoodnetwork
afd17d6cf8 Updating translations for config/locales/ru.yml 2021-04-30 18:45:03 +10:00
Transifex-Openfoodnetwork
f6b6564048 Updating translations for config/locales/fr.yml 2021-04-30 17:48:22 +10:00
Transifex-Openfoodnetwork
9c49040fbb Updating translations for config/locales/en_FR.yml 2021-04-30 17:47:48 +10:00
Transifex-Openfoodnetwork
a8b3d10377 Updating translations for config/locales/fr.yml 2021-04-30 17:45:21 +10:00
dependabot[bot]
c1d246081e Bump devise from 4.7.3 to 4.8.0
Bumps [devise](https://github.com/plataformatec/devise) from 4.7.3 to 4.8.0.
- [Release notes](https://github.com/plataformatec/devise/releases)
- [Changelog](https://github.com/heartcombo/devise/blob/master/CHANGELOG.md)
- [Commits](https://github.com/plataformatec/devise/compare/v4.7.3...v4.8.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-30 05:20:39 +00:00
dependabot[bot]
cf6545e501 Bump rack-mini-profiler from 2.3.1 to 2.3.2
Bumps [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/MiniProfiler/rack-mini-profiler/releases)
- [Changelog](https://github.com/MiniProfiler/rack-mini-profiler/blob/master/CHANGELOG.md)
- [Commits](https://github.com/MiniProfiler/rack-mini-profiler/compare/v2.3.1...v2.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-30 05:17:41 +00:00
Andy Brett
f64d5a9f59 Merge pull request #7438 from jibees/7353-fix-OC-display-issue-text-on-two-lines
Change the position of order_cycle component into a shop front
2021-04-29 14:05:06 -07:00
Andy Brett
c069a23926 Merge pull request #7476 from cillian/admin-stripe-elements-width
Increase the width of Stripe Elements fields in admin so they don't overlap
2021-04-29 14:04:44 -07:00
Andy Brett
8ba139c6fb Merge pull request #6825 from julesemmac/6584-map-location-confirm
6584 map location confirm
2021-04-29 14:04:06 -07:00
Matt-Yorkley
0291a7c471 Merge pull request #7482 from Matt-Yorkley/updater-update
Updater update
2021-04-29 21:12:15 +02:00
Andy Brett
699f1c4f41 Merge pull request #7497 from andrewpbrett/fix-double-stripe-payments
Use capture! if payment is already authorized
2021-04-29 08:35:19 -07:00
Jean-Baptiste Bellet
5a3771fc42 Add special config to avoid a inconsistant LoadError
Error is
```
Failure/Error: @app.call(env)
     LoadError:
       Unable to autoload constant Api::V0::OrderCyclesController, expected /Users/jibees/dev/openfoodnetwork/app/controllers/api/v0/order_cycles_controller.rb to define it
```
2021-04-29 15:31:24 +02:00
Pau Pérez Fabregat
6c5db0f836 Merge pull request #7507 from Matt-Yorkley/shipment-state-update
Shipment callback state update
2021-04-29 12:01:55 +02:00
Matt-Yorkley
2f49d089ea Use Time.zone.now 2021-04-29 08:56:17 +01:00
Matt-Yorkley
290c1d0ebf Bring in shipment state updating from Spree 2.2 2021-04-28 21:43:28 +01:00
Matt-Yorkley
2fda550821 Add test for shipment state after ship action 2021-04-28 21:40:08 +01:00
Guido Oliveira
84285ff985 prevent deleting only item in confirmed order 2021-04-28 17:37:28 -03:00
Andy Brett
4f246da79f add feature spec 2021-04-28 11:25:43 -07:00
Andy Brett
73e5fd3f5b use method to clarify intent on payment intents 2021-04-28 10:43:06 -07:00
Andy Brett
4736013946 update spec 2021-04-28 10:43:06 -07:00
Pau Pérez Fabregat
6ee6e4ed04 Merge pull request #7472 from openfoodfoundation/transifex
Transifex
2021-04-28 19:36:43 +02:00
Pau Pérez Fabregat
ef9720aee7 Merge pull request #7461 from andrewpbrett/fix-blocked-bo-orders
Scope variant to take overrides into account in packer
2021-04-28 19:36:02 +02:00
Matt-Yorkley
4bd2fb8930 Merge pull request #7498 from openfoodfoundation/dependabot/bundler/view_component-2.31.1
Bump view_component from 2.31.0 to 2.31.1
2021-04-28 12:47:55 +02:00
dependabot[bot]
2494ba0def Bump view_component from 2.31.0 to 2.31.1
Bumps [view_component](https://github.com/github/view_component) from 2.31.0 to 2.31.1.
- [Release notes](https://github.com/github/view_component/releases)
- [Changelog](https://github.com/github/view_component/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/view_component/compare/v2.31.0...v2.31.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-28 05:28:59 +00:00
Andy Brett
9906afa1a6 use capture! if payment is already authorized 2021-04-27 17:59:03 -07:00
Matt-Yorkley
1d29e277f2 Merge pull request #7493 from Matt-Yorkley/order-states-bug-redux
Reload order before updating in Payment callback
2021-04-27 17:43:34 +02:00
Matt-Yorkley
c7e65185ee Regression test for new order with variant overrides 2021-04-27 07:44:41 -07:00
Matt-Yorkley
22f79fe540 Reload order before updating in Payment callback 2021-04-27 14:27:35 +01:00
Matt-Yorkley
a5a324fd6f Add failing spec for payment and shipment states bug
The order was being left in an unexpected condition here, it's states are not set and there seem to be some weird issues.
2021-04-27 14:27:35 +01:00
Matt-Yorkley
5934b100e9 Test payment and shipment states in checkout spec
If these aren't behaving correctly we need to know about it...
2021-04-27 14:27:35 +01:00
Jean-Baptiste Bellet
81385b63c7 Uncomment (not so) flaky spec 2021-04-27 15:27:16 +02:00
Matt-Yorkley
574d78403d Merge pull request #7433 from coopdevs/raise-on-failed-customer-creation
Notify Bugsnag if customer fails to be created
2021-04-27 12:42:39 +02:00
Matt-Yorkley
3c1889d719 Merge pull request #7490 from openfoodfoundation/dependabot/bundler/view_component-2.31.0
Bump view_component from 2.30.0 to 2.31.0
2021-04-27 12:08:29 +02:00
Jean-Baptiste Bellet
5085501f89 Add automated tests around pagination in product list for a shop
- with two order cycles and go from one to the other
2021-04-27 11:24:56 +02:00
Jean-Baptiste Bellet
07881ede2d Do not trigger loadMore method immediatly
- This avoid to request unwanted resources, ie. the next 10 products of a shop
2021-04-27 11:24:48 +02:00
Jean-Baptiste Bellet
cdbcbf4214 Reinitialize page params when changing order cycle 2021-04-27 11:24:48 +02:00
Jean-Baptiste Bellet
523b957ba7 Initialize activeTaxons and activeProperties
- so there is no unwanted changes (from `undefined` to `[]`) that  would trigger a loadProducts request
2021-04-27 11:24:48 +02:00
Jean-Baptiste Bellet
71466e643f Instanciate only one ProductsCtrl
- instead of 2: therefore, for each shop display, we only request products one time instead of two times.
2021-04-27 11:24:48 +02:00
Matt-Yorkley
cc85bf791a Merge pull request #7481 from openfoodfoundation/dependabot/bundler/codecov-0.5.2
Bump codecov from 0.5.1 to 0.5.2
2021-04-27 09:24:51 +02:00
dependabot[bot]
fa32aecebf Bump view_component from 2.30.0 to 2.31.0
Bumps [view_component](https://github.com/github/view_component) from 2.30.0 to 2.31.0.
- [Release notes](https://github.com/github/view_component/releases)
- [Changelog](https://github.com/github/view_component/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/view_component/compare/v2.30.0...v2.31.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-27 05:26:40 +00:00
Andy Brett
de02acad64 add feature spec 2021-04-26 15:42:36 -07:00
Matt-Yorkley
f52d03fbf4 Refactor Order::Updater#update so we don't call update_totals twice
Calling this method twice on every update is really expensive and not necessary.
2021-04-26 11:46:05 +01:00
Pau Perez
ee01b0162c Write if as a one-liner and avoid extra queries 2021-04-26 12:39:03 +02:00
Pau Perez
002dabb80c Improve spec 2021-04-26 10:15:13 +02:00
Pau Perez
451e05985f Fix spec 2021-04-26 10:15:13 +02:00
Pau Perez
679de40a41 Move specs to where they belong 2021-04-26 10:15:13 +02:00
Pau Perez
5845ace8e9 Don't persist models to test serializer
Serializers don't care whether or not the objects they go through are
persisted in DB. They just convert them.
2021-04-26 10:15:13 +02:00
Pau Perez
c65d82be01 Notify Bugsnag if customer fails to be created
This will hopefully let us see in Bugsnag when #6038 happens and so
we'll have all the diagnostics data. The fact that the `order.distributor`
is optional but mandatory to create the customer already gives us some
clue.
2021-04-26 10:15:12 +02:00
dependabot[bot]
69dd33383c Bump codecov from 0.5.1 to 0.5.2
Bumps [codecov](https://github.com/codecov/codecov-ruby) from 0.5.1 to 0.5.2.
- [Release notes](https://github.com/codecov/codecov-ruby/releases)
- [Changelog](https://github.com/codecov/codecov-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-ruby/compare/v0.5.1...v0.5.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-26 05:53:44 +00:00
Andy Brett
6153f1c1b4 Merge pull request #7471 from Matt-Yorkley/dead-scopes
Order scopes
2021-04-25 11:51:00 -07:00
Andy Brett
6f20a23d47 Merge pull request #7436 from coopdevs/remove-duplicate-method
Replace duplicate #unauthorized method with module inclusion
2021-04-25 11:26:12 -07:00
Luis Ramos
f357c3ff30 Remove require_dependency or use require
See here https://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#require-dependency
2021-04-23 19:20:25 +01:00
Cillian O'Ruanaidh
8cdc4bc3f4 Increase the width of Stripe Elements fields in admin so they don't overlap
The card number and expiry month/year fields were overlapping on the new payment form in the admin area.
2021-04-23 17:54:22 +01:00
Andy Brett
e42b0bb1ae Merge pull request #7469 from openfoodfoundation/dependabot/bundler/view_component-2.30.0
Bump view_component from 2.28.0 to 2.30.0
2021-04-23 09:48:57 -07:00
Andy Brett
5e21480ae0 add packer spec 2021-04-23 09:35:27 -07:00
Matt-Yorkley
0c08e3cb3a Merge pull request #7466 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-docs-6.2.9
Bump @storybook/addon-docs from 6.2.7 to 6.2.9
2021-04-23 13:53:04 +02:00
dependabot[bot]
3c9b7db763 Bump @storybook/addon-docs from 6.2.7 to 6.2.9
Bumps [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/addons/docs) from 6.2.7 to 6.2.9.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/v6.2.9/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.2.9/addons/docs)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-23 11:49:16 +00:00
Matt-Yorkley
d116d664f5 Merge pull request #7467 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-controls-6.2.9
Bump @storybook/addon-controls from 6.2.7 to 6.2.9
2021-04-23 13:47:14 +02:00
dependabot[bot]
ff36cea0b0 Bump @storybook/addon-controls from 6.2.7 to 6.2.9
Bumps [@storybook/addon-controls](https://github.com/storybookjs/storybook/tree/HEAD/addons/controls) from 6.2.7 to 6.2.9.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/v6.2.9/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.2.9/addons/controls)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-23 11:30:47 +00:00
Matt-Yorkley
0c6f8e978e Merge pull request #7465 from openfoodfoundation/dependabot/npm_and_yarn/storybook/server-6.2.9
Bump @storybook/server from 6.2.7 to 6.2.9
2021-04-23 13:27:50 +02:00
Pau Perez
e5eb68dffc Replace duplicate method with module inclusion
No reason to risk diverging their implementations. They are exact
copies.

Likewise, there's no need to have to I18n keys with almost the same
content.
2021-04-23 12:03:11 +02:00
Transifex-Openfoodnetwork
35658e984b Updating translations for config/locales/en_IE.yml 2021-04-23 19:43:25 +10:00
Transifex-Openfoodnetwork
a019c73166 Updating translations for config/locales/en_IE.yml 2021-04-23 19:40:16 +10:00
Matt-Yorkley
4938285dd7 Move order query methods to chainable scopes 2021-04-23 10:29:48 +01:00
Matt-Yorkley
caee2eb3e9 Remove dead code in order
These aren't used anywhere
2021-04-23 10:23:40 +01:00
dependabot[bot]
54fd2c5f0f Bump view_component from 2.28.0 to 2.30.0
Bumps [view_component](https://github.com/github/view_component) from 2.28.0 to 2.30.0.
- [Release notes](https://github.com/github/view_component/releases)
- [Changelog](https://github.com/github/view_component/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/view_component/compare/v2.28.0...v2.30.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-23 08:18:44 +00:00
dependabot[bot]
8c76752045 Bump @storybook/server from 6.2.7 to 6.2.9
Bumps [@storybook/server](https://github.com/storybookjs/storybook/tree/HEAD/app/server) from 6.2.7 to 6.2.9.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/v6.2.9/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.2.9/app/server)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-23 06:06:24 +00:00
Cillian O'Ruanaidh
af3eb82343 Merge in upstream changes from julesemmac:6584-map-location-confirm and resolve conflicts 2021-04-22 22:34:02 +01:00
Cillian O'Ruanaidh
1e96f92df2 Fix the toggle address confirmed checkbox so the latitude/longitude gets set
Before when you checked and unchecked the checkbox it was toggling the :isConfirmed variable.
2021-04-22 22:16:47 +01:00
Cillian O'Ruanaidh
12704af143 Use after_action calls for geocoding instead of old update.after, create.after calls 2021-04-22 22:13:28 +01:00
Cillian O'Ruanaidh
42d002cee8 Increase the default geocoder timeout to prevent geocoding timeouts in development
The timeout default was 3 before, this changes it to 6. I presume these timeouts could happen in production too.
2021-04-22 22:10:36 +01:00
Cillian O'Ruanaidh
cd97f1a6ef Update angular-google-maps to 2.0.1 instead of 2.4.0 which was breaking /map page.
The master branch uses 2.0.0 but this PR went up to 2.4.0, however that caused the /map page to break and it was difficult to figure out why. We need to update to 2.0.1 because when you drag and drop the location icon during sign up there was an error which is fixed in 2.0.1. Maybe it would be good to upgrade to 2.4.0 at some point but this PR is already quite big.
2021-04-22 22:08:40 +01:00
Andy Brett
56cf43f1c1 scope variant to take overrides into account in packer 2021-04-22 11:45:12 -07:00
Cillian O'Ruanaidh
c41476423b Merge latest master into julesemmac/6584-map-location-confirm and resolve conflict in api/enterprises_controller.rb 2021-04-22 19:43:49 +01:00
Matt-Yorkley
9b52c453db Update all locales with the latest Transifex translations 2021-04-22 19:14:57 +01:00
Pau Pérez Fabregat
cf2e3db645 Merge pull request #7445 from jibees/7403-add-customer-name-into-subscriptions-table
Add customer name into subscriptions list in order to search subscription by customer name
2021-04-22 19:46:49 +02:00
Pau Pérez Fabregat
74968c308c Merge pull request #7448 from openfoodfoundation/dependabot/bundler/knapsack-1.22.0
Bump knapsack from 1.20.0 to 1.22.0
2021-04-22 19:20:30 +02:00
Pau Pérez Fabregat
c1da97527a Merge pull request #7420 from Matt-Yorkley/adjustments-controller
Adjustments controller index
2021-04-22 19:15:28 +02:00
Pau Pérez Fabregat
0194e39bd2 Merge pull request #7437 from jibees/7422-add-flipper-banner
Add banner to Flipper UI to warn the admin users
2021-04-22 18:29:12 +02:00
Matt-Yorkley
123e96eb1e Merge pull request #7284 from jibees/styleguide
Implements our StyleGuide
2021-04-22 18:14:40 +02:00
Matt-Yorkley
bef3f8c51f Merge pull request #7452 from Matt-Yorkley/adjustments-permissions
Update CanCan permissions on adjustments
2021-04-22 18:07:18 +02:00
Andy Brett
cf7efa5589 Merge pull request #7450 from jibees/6205-remove-line-items-empty-error-on-order-creation-in-backoffice
Suppress "Line items can't be blank" message on order creation process
2021-04-22 08:40:51 -07:00
Andy Brett
10834c1d3a Merge pull request #7447 from openfoodfoundation/dependabot/bundler/rubocop-1.13.0
Bump rubocop from 1.12.1 to 1.13.0
2021-04-22 07:22:35 -07:00
Pau Pérez Fabregat
e5610d5424 Merge pull request #7427 from jibees/add-flipper-instrumentation
Instrument Flipper with ActiveSupport
2021-04-22 16:11:30 +02:00
jibees
1c53bbec57 Add banner to Flipper UI to warn the admin users
Add a link (escaped...) to the wiki page

Co-authored-by: Pau Pérez Fabregat <saulopefa@gmail.com>
2021-04-22 15:40:39 +02:00
Jean-Baptiste Bellet
9a670c7821 Print order needs render_with_wicked_pdf
and call WickedPdf::PdfHelper explicitly
2021-04-22 15:18:27 +02:00
Jean-Baptiste Bellet
de592de13a Use the first view component DistributorTitleComponent for a shopfront 2021-04-22 15:08:54 +02:00
Jean-Baptiste Bellet
4781d6cc84 Add new (and first) component: DistributorTitle
- Simple wrapper around `<h3 />` for distributor title, used in the shop front
2021-04-22 15:08:54 +02:00
Jean-Baptiste Bellet
39683bd814 Create first story for ExampleComponent
- Once story has been created, still need to generate the story itself (in json file format). Help with command: `rake view_component_storybook:write_stories_json`
2021-04-22 15:08:54 +02:00
Jean-Baptiste Bellet
57e5214217 Call WickedPdf::PdfHelper#render_to_string_with_wicked_pdf explicitly 2021-04-22 15:08:54 +02:00
Matt-Yorkley
18881180ae Remove WickedPdf monkey-patch on ActionController#render 2021-04-22 15:08:54 +02:00
Matt-Yorkley
453328a97e Configure CORS settings for StoriesController
- Storybook need to access through a GET method on `/rails/stories/**` served by `ViewComponent::Storybook::StoriesController`
 - Configure exact policy with an initialized filter
2021-04-22 15:08:54 +02:00
Maikel Linke
d674490896 Serve assets (css+roboto font) for the preview iframe
- Thus, component can inherit from all CSS rules, rendering is as close as to the truth
 - Still need to import `admin` css file if we want to create components for admin part (and we probably want too). This will probably lead to overlapping problems between all CSS rules...
- This is a bit hacky, but as our CSS files are packed by rails I didn't find any better solution. We could also use any sass loader, but with this solution we can be confident on the fact that the generated CSS is the one used by the server that finally displays the component
2021-04-22 15:08:54 +02:00
Jean-Baptiste Bellet
30bd932ddc Add storybook
- Via `view_component_storybook` : https://github.com/jonspalmer/view_component_storybook
 - Configure both `view_component_storybook` and `storybook`
 - Add two addons: `@storybook/addon-docs` and `@storybook/addon-controls`
Update config comment for clarity
2021-04-22 15:08:54 +02:00
Jean-Baptiste Bellet
390c8a89da Add (very simple) spec for a ViewComponent component
- Add `ViewComponent::TestHelpers` to get the helper method `render_inline`
 - Use Capybara to expect some assertion
2021-04-22 15:08:54 +02:00
Jean-Baptiste Bellet
6c37461c37 Create very first component
- With command: `rails generate component Example title --sidecar`
 - Delete generated spec file
2021-04-22 15:08:54 +02: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
Jean-Baptiste Bellet
05a00a07ef Add test on order creation and correct display of the error
- The error "Line items can't be blank" should not be displayed when we first arrived on this page after creation but only if we update the page
2021-04-22 10:03:43 +02:00
Jean-Baptiste Bellet
259e758d6e When suppress_error_msg is present do no validate order and redirect
- When creating a new order, it's not necessary to display the "Line items can't be blank" as the order has just been created and the user is rightly doing configuration about line items
2021-04-22 10:03:36 +02:00
Matt-Yorkley
6dc23804a1 Merge pull request #7425 from mkllnk/application-record
Add ApplicationRecord for customisations of models
2021-04-21 23:18:03 +02:00
Matt-Yorkley
ecd433b343 Update permissions on adjustments
The previous permissions assumed that an adjustment's "adjustable" could only be only line items or orders, and that's no longer true. It's now commonly a shipment or a payment as well.
2021-04-21 18:17:20 +01:00
Jean-Baptiste Bellet
da5f1b0b38 Update test for subscriptions search by email and name
- We now display the name of the customer so we can search by its name: add specs about search by email/name
2021-04-21 09:44:30 +02:00
dependabot[bot]
519c04f2e4 Bump knapsack from 1.20.0 to 1.22.0
Bumps [knapsack](https://github.com/KnapsackPro/knapsack) from 1.20.0 to 1.22.0.
- [Release notes](https://github.com/KnapsackPro/knapsack/releases)
- [Changelog](https://github.com/KnapsackPro/knapsack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/KnapsackPro/knapsack/compare/v1.20.0...v1.22.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-21 05:17:32 +00:00
dependabot[bot]
99a857cdf9 Bump rubocop from 1.12.1 to 1.13.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.12.1 to 1.13.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.12.1...v1.13.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-21 05:15:48 +00:00
Andy Brett
479897fcbd Merge pull request #7315 from Matt-Yorkley/double-checkout
Double checkout
2021-04-20 10:44:32 -07:00
Andy Brett
883cc6f96f Merge pull request #7428 from jibees/7426-show-unit-price-in-the-bulk-modal
Show unit price in the bulk buy modal
2021-04-20 10:43:28 -07:00
Jean-Baptiste Bellet
ddb63dff8a Add name of the customers into subscriptions table
- Thus, we can filter subscriptions by customer email
2021-04-20 16:09:48 +02:00
Jean-Baptiste Bellet
5e712fa4c0 Add variable for the zIndex of the navigation header 2021-04-20 13:50:39 +02:00
Jean-Baptiste Bellet
6dbe91b199 Positions the order_cycle according to shop-tabs
- Move from `enterprises/shop.html.haml` to `shopping_shared/_tabs.html.haml` to handle its position correctly
 - Remove marginTop and height to order cycle component and display it relative to parent's bottom (ie. the columns in `tab-buttons`)
- Adjust z-index to display the entire component
2021-04-20 13:50:33 +02:00
Matt-Yorkley
a3b90f3a63 Merge pull request #7443 from mkllnk/order-cycle-factory
Spec customer creation during checkout
2021-04-20 10:08:57 +02:00
Pau Pérez Fabregat
7da0dc0053 Merge pull request #7441 from openfoodfoundation/dependabot/bundler/test-unit-3.4.1
Bump test-unit from 3.4.0 to 3.4.1
2021-04-20 09:49:19 +02:00
Pau Pérez Fabregat
ef7c47d8f1 Merge pull request #7440 from openfoodfoundation/dependabot/bundler/acts_as_list-1.0.4
Bump acts_as_list from 1.0.3 to 1.0.4
2021-04-20 09:04:04 +02:00
Pau Pérez Fabregat
9907c678e4 Merge pull request #7442 from openfoodfoundation/dependabot/bundler/ddtrace-0.48.0
Bump ddtrace from 0.47.0 to 0.48.0
2021-04-20 09:01:58 +02:00
Pau Pérez Fabregat
87624f4c9f Merge pull request #7416 from coopdevs/remove-old-balance-implementation
Remove old balance implementation
2021-04-20 08:51:27 +02:00
Maikel Linke
1753156578 Spec customer creation during checkout
Expanding the controller spec with real data instead of mocks to test
the real callback behaviours.
2021-04-20 16:14:41 +10:00
Maikel Linke
db0e681add Open order cycle factory for passing enterprises
The simple order cycle factory was flexible enough already to work with
given suppliers and distributors. We are now re-using that code so that
you can pass these enterprises when creating a normal order cycle, too.
2021-04-20 16:06:45 +10:00
dependabot[bot]
4dc350408b Bump ddtrace from 0.47.0 to 0.48.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.47.0 to 0.48.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.47.0...v0.48.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-20 05:26:52 +00:00
dependabot[bot]
8cb9053115 Bump test-unit from 3.4.0 to 3.4.1
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.4.0...3.4.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-20 05:26:14 +00:00
dependabot[bot]
f354ace186 Bump acts_as_list from 1.0.3 to 1.0.4
Bumps [acts_as_list](https://github.com/brendon/acts_as_list) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/brendon/acts_as_list/releases)
- [Changelog](https://github.com/brendon/acts_as_list/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brendon/acts_as_list/compare/v1.0.3...v1.0.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-20 05:24:53 +00:00
dependabot[bot]
8b06a735ac Bump jwt from 2.2.2 to 2.2.3
Bumps [jwt](https://github.com/jwt/ruby-jwt) from 2.2.2 to 2.2.3.
- [Release notes](https://github.com/jwt/ruby-jwt/releases)
- [Changelog](https://github.com/jwt/ruby-jwt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jwt/ruby-jwt/compare/v2.2.2...v2.2.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-20 05:21:34 +00:00
Andy Brett
aca19edd3b Merge pull request #7421 from andrewpbrett/rails-5-2-prep-2
Prepare for Rails 5.2
2021-04-19 11:32:21 -07:00
Pau Pérez Fabregat
5b0921e6ba Merge pull request #7435 from openfoodfoundation/dependabot/bundler/geocoder-1.6.7
Bump geocoder from 1.6.6 to 1.6.7
2021-04-19 16:55:08 +02:00
Pau Perez
d26c52c2fa Memoize OrderBalance instance
There's no need to create an instance of such class for every call to
one of its methods. The balance is computed each time anyway, so it'll
always be up-to-date.
2021-04-19 11:52:41 +02:00
Pau Perez
5bca7d1f8f Remove the old balance's code branch
This keeps the `OrderBalance` abstraction but removes the old code now
that the feature is enabled for all users in all instances and there are
no bugs reported. It's become dead code.
2021-04-19 11:52:41 +02:00
dependabot[bot]
f999e04020 Bump geocoder from 1.6.6 to 1.6.7
Bumps [geocoder](https://github.com/alexreisner/geocoder) from 1.6.6 to 1.6.7.
- [Release notes](https://github.com/alexreisner/geocoder/releases)
- [Changelog](https://github.com/alexreisner/geocoder/blob/master/CHANGELOG.md)
- [Commits](https://github.com/alexreisner/geocoder/compare/v1.6.6...v1.6.7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-19 06:05:20 +00:00
Andy Brett
9bddf5b00f Merge pull request #7432 from coopdevs/add-tests-to-customers
Add tests to customers
2021-04-17 11:28:24 -07:00
Pau Perez
fd29030bf9 Doc through specs how customer creation works 2021-04-16 13:34:35 +02:00
Pau Perez
5087ca709a Make method stick to Boolean instead of Nil 2021-04-16 13:23:56 +02:00
Pau Perez
e30ddf3f77 Test and simplify #require_customer? 2021-04-16 13:08:42 +02:00
Jean-Baptiste Bellet
8b3a178d97 Increase zIndex of the tooltip as it's now displayed inside modal
specify zIndex by using vars from modal zIndex
2021-04-16 11:09:26 +02:00
Jean-Baptiste Bellet
e0987c52ed Add unit price information into the bulk buy modal
- Pass a parameter to scope: showunitprice and display unit price information if it's true
2021-04-16 11:09:05 +02:00
Jean-Baptiste Bellet
f9aab2ef5f Adjust little cross inside blue circle to close tooltip 2021-04-16 11:08:57 +02:00
Maikel Linke
de6a3fdf2c Update locales 2021-04-16 09:26:45 +10:00
Maikel
19e48cb0cb Merge pull request #7424 from openfoodfoundation/transifex
Transifex
2021-04-16 09:20:25 +10:00
Andy Brett
472b0b5964 Merge pull request #7412 from andrewpbrett/no-zero-unit-values
Add greater-than-zero validation to variant unit_value
2021-04-15 10:05:38 -07:00
Andy Brett
4aa2ce4b58 Merge pull request #7362 from richardc2117/master
Fixes Alphabetical Sorting In Packing Reports
2021-04-15 09:50:02 -07:00
Andy Brett
c0bd8f0248 Merge pull request #7419 from Matt-Yorkley/adjustments-display
Don't show duplicate adjustments in order edit
2021-04-15 09:49:38 -07:00
Andy Brett
a9fe6c787d add database constraint for variant unit_value 2021-04-15 09:43:57 -07:00
Andy Brett
8e14e0e950 add variant spec 2021-04-15 09:43:22 -07:00
Andy Brett
f85ef86b1b update spec with valid variant 2021-04-15 09:43:22 -07:00
Andy Brett
94ca2f3079 add validation to variant unit_value 2021-04-15 09:43:22 -07:00
Pau Pérez Fabregat
5ddccc79ae Merge pull request #7404 from jibees/7180-variant-unit-scale-field-invalid-when-editing-a-product
Fix Variant Unit Scale field initialization in Edit Product form
2021-04-15 18:20:31 +02:00
Matt-Yorkley
d29c0cdcb7 Don't show line item adjustments in Admin::OrdersHelper#order_adjustments_for_display
Line item adjustments are displayed separately, if we don't filter them here they get displayed twice.
2021-04-15 14:23:37 +01:00
Matt-Yorkley
206d9e06ea Reinstate old logic for adjustments controller
Certain types of adjustments (eg enterprise fees) cannot really be changed arbitrarily; when the order is saved and "recalculated" the values will be reset. The adjustments are still shown in the main order edit tab, but are not editable in the adjustments tab.
2021-04-15 14:00:48 +01:00
Matt-Yorkley
50da77c6db Hide tax rate selection when editing non-admin adjustments 2021-04-15 13:59:05 +01:00
Jean-Baptiste Bellet
1e0230aae2 Instrument Flipper with ActiveSupport 2021-04-15 14:05:15 +02:00
Transifex-Openfoodnetwork
468eb6423e Updating translations for config/locales/nb.yml 2021-04-15 21:14:45 +10:00
Maikel Linke
5c0cdce597 Confine Permalinks patch to application
We were also patching ActiveRecord::Relation for the `#find_by_param`
methods but we are not using those any more. They were deprecated a
while ago. We now use `find_by(permalink: ...)`.
2021-04-15 15:59:03 +10:00
Maikel Linke
125374c488 Confine Preferences patch to our app 2021-04-15 15:59:03 +10:00
Maikel Linke
1893313c40 Confine DelegateBelongsTo patch to our app 2021-04-15 15:59:03 +10:00
Maikel Linke
1364b878fe Add ApplicationRecord for customisations
Rails 5 introduced this new class to confine application-specific monkey
patches to our models only, and not leak into other libraries using
ActiveRecord::Base.

https://bigbinary.com/blog/application-record-in-rails-5
2021-04-15 15:59:03 +10:00
Transifex-Openfoodnetwork
b79465ba4f Updating translations for config/locales/en_US.yml 2021-04-15 12:03:24 +10:00
Transifex-Openfoodnetwork
6b60a40b45 Updating translations for config/locales/en_US.yml 2021-04-15 12:00:23 +10:00
Maikel
0c182c4606 Merge pull request #7259 from jibees/7193-implements-feature-toggle-with-flipper
Implements feature toggle with flipper
2021-04-15 11:33:12 +10:00
Matt-Yorkley
a1317be19b Merge pull request #7329 from Matt-Yorkley/adjustments-polymorphic
[Adjustments] Polymorphic reduction
2021-04-14 19:12:16 +02:00
Matt-Yorkley
fa14a80295 Adapt order payment creation in failing specs
In the test setups here order.payments is empty
2021-04-14 09:22:31 -07:00
Matt-Yorkley
a4cb698d6f Don't reload payments in after_save callback 2021-04-14 09:22:18 -07:00
Andy Brett
ebb413bd83 only reload payments after updating order 2021-04-14 09:22:02 -07:00
Luis Ramos
4590db1cc2 Fix view spec by adding mocks to helper methods 2021-04-14 09:20:30 -07:00
Andy Brett
3e14138a3f fix ./spec/features/admin/customers_spec.rb:27 2021-04-14 09:19:13 -07:00
Luis Ramos
6fab8db1b0 Fix cart_service_spec to adapt to the actual usage of it from cart_controller, params are now sent inside a Parameters object, not as a hash 2021-04-14 09:18:29 -07:00
Luis Ramos
0707f3c0cc Switch from map, that does not exist in ActionController::Parameters, to each 2021-04-14 09:17:53 -07:00
Matt-Yorkley
7fc29961e2 Fix handling of other empty params 2021-04-14 09:16:39 -07:00
Matt-Yorkley
72c6935ff8 Fix handling of empty order cycle params
This guard clause was returning an instance of an unpermitted Params object (containing a blank hash) here, which was causing unexpected results in various places. Returning a blank hash explicitly resolved the issue.

Fixes:

4) Admin::OrderCyclesController create as a manager of a shop when creation is successful returns success: true and a valid edit path
     Failure/Error:
       @order_cycle_params ||= PermittedAttributes::OrderCycle.new(params).call.
         to_h.with_indifferent_access

     ActionController::UnfilteredParameters:
       unable to convert unpermitted parameters to hash
     # ./app/controllers/admin/order_cycles_controller.rb:245:in `order_cycle_params'
     # ./app/controllers/admin/order_cycles_controller.rb:44:in `create'
     # ./spec/support/controller_requests_helper.rb:49:in `process_action_with_route'
     # ./spec/support/controller_requests_helper.rb:27:in `spree_post'
     # ./spec/controllers/admin/order_cycles_controller_spec.rb:124:in `block (5 levels) in <module:Admin>'
2021-04-14 09:16:27 -07:00
Matt-Yorkley
6f8ade52eb Persist last_ip_address when loading current_order
Leaving the object with unpersisted changes breaks order locking with this error (in various places):

RuntimeError:
        Locking a record with unpersisted changes is not supported. Use `save` to persist the changes, or `reload` to discard them explicitly.
2021-04-14 09:14:58 -07:00
Jean-Baptiste Bellet
86cba6e904 Remove trailing .0 from variant unit scale
- As VariantUnitManager.variantUnitOptions() returns array formatted like this: `"Weight (g)", "weight_1"` and `product.variant_unit_scale` is formatted like this `weight_1.0` there is no possible match for the <select /> element
 - So, remove the trailing `.0` from `product.variant_unit_scale` to match the options
2021-04-14 16:17:17 +02:00
Jean-Baptiste Bellet
8a3eea7a27 Enable tests
Thanks to @filipefurtad0 you now have tests ready before fixing anything : 👍 🙏
2021-04-14 16:17:17 +02:00
Matt-Yorkley
93affe4e82 Remove previous migration test
It's outdated now.
2021-04-14 12:01:21 +01:00
Matt-Yorkley
83acc3faac Improve test setup where checking ineligible payment fee adjustments 2021-04-14 12:01:21 +01:00
Matt-Yorkley
86977da033 Update enterprise fee test setup 2021-04-14 12:01:21 +01:00
Matt-Yorkley
15edb5b13b Remove more uses of adjustment source association in tests 2021-04-14 12:01:21 +01:00
Matt-Yorkley
e323d016a2 Simplify arguments of #create_adjustment method 2021-04-14 12:01:21 +01:00
Matt-Yorkley
ebce32c57b Update factory and specs 2021-04-14 12:01:21 +01:00
Matt-Yorkley
b6038c01a3 Remove references to Adjustment source 2021-04-14 12:01:21 +01:00
Matt-Yorkley
6474323282 Remove source association from Spree::Adjustment 2021-04-14 12:01:21 +01:00
Matt-Yorkley
76112fcf40 Merge pull request #7413 from andrewpbrett/rails-5-2-prep
Rails 5 2 prep
2021-04-14 12:37:02 +02:00
Matt-Yorkley
94bff6c512 Merge pull request #7414 from openfoodfoundation/dependabot/bundler/unicorn-worker-killer-0.4.5
Bump unicorn-worker-killer from 0.4.4 to 0.4.5
2021-04-14 11:41:14 +02:00
Pau Pérez Fabregat
3d7ac3c965 Merge pull request #7411 from openfoodfoundation/transifex
Transifex
2021-04-14 11:24:22 +02:00
dependabot[bot]
ed8a35df8c Bump unicorn-worker-killer from 0.4.4 to 0.4.5
Bumps [unicorn-worker-killer](https://github.com/kzk/unicorn-worker-killer) from 0.4.4 to 0.4.5.
- [Release notes](https://github.com/kzk/unicorn-worker-killer/releases)
- [Changelog](https://github.com/kzk/unicorn-worker-killer/blob/master/ChangeLog)
- [Commits](https://github.com/kzk/unicorn-worker-killer/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-14 05:31:14 +00:00
Matt-Yorkley
4bd7f964d0 Fix LocalizedNumber issues 2021-04-13 16:56:03 -07:00
Andy Brett
67e41f4548 remove check for connected? 2021-04-13 16:55:49 -07: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
Luis Ramos
e4a6afab81 Add needed helper to BulkInvoiceRenderer spec 2021-04-13 16:54:32 -07:00
Luis Ramos
ae7e1677f7 Add needed helper to BulkInvoiceService spec 2021-04-13 16:54:32 -07:00
Luis Ramos
f61c04e314 Adapt helpers to make view spec green 2021-04-13 16:54:32 -07:00
Luis Ramos
abd6faf686 Adapt routes and helpers to make view spec green 2021-04-13 16:54:32 -07:00
Luis Ramos
2c05478b2f Adapt routes and helpers to make view spec green 2021-04-13 16:54:32 -07:00
Luis Ramos
049c2b59ca Adapt routes and helpers to make view spec green 2021-04-13 16:54:32 -07:00
Matt-Yorkley
ab4660ecd0 Fix callback in Classification and update spec
Fixes:

2) Spree::Classification won't destroy if classification is the primary taxon
(Used from /home/runner/work/openfoodnetwork/openfoodnetwork/spec/models/enterprise_group_spec.rb:43:in `block (3 levels) in <top (required)>')
     Failure/Error: expect(classification.destroy).to be false
2021-04-13 16:54:32 -07:00
Matt-Yorkley
3f6fcf3350 Fix taxon error handling in Api::TaxonsController
Fixes:

Api::V0::TaxonsController as an admin cannot create a new taxon with invalid taxonomy_id
     Failure/Error: expect(json_response["error"]).to eq("Invalid resource. Please fix errors and try again.")

       expected: "Invalid resource. Please fix errors and try again."
            got: nil

       (compared using ==)
     # ./spec/controllers/api/v0/taxons_controller_spec.rb:105:in `block (3 levels) in <top (required)>'
2021-04-13 16:54:31 -07:00
Matt-Yorkley
a891ac1cdf Fix deprecated use of #stub in payment spec
Fixes:

Using `stub` from rspec-mocks' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` instead. Called from /home/runner/work/openfoodnetwork/openfoodnetwork/spec/models/spree/payment_spec.rb:10:in `block (3 levels) in <top (required)>'.
     RuntimeError:

       stubbed models are not allowed to access the database - Spree::Product#touch(updated_at,{:time=>2021-04-10 14:24:50 UTC})
2021-04-13 16:54:31 -07:00
Matt-Yorkley
be6fd23ebc Fix unpersisted changes in checkout controller specs
The test setup left the object with unsaved changes, which doesn't work nicely with the new order locking added recently on the edit action.

Fixes ~5 specs including:

5) CheckoutController redirection to cart and stripe redirects when some items are out of stock
     Failure/Error:
       order.with_lock do
         lock_variants_of(order)
         yield
       end

     RuntimeError:
       Locking a record with unpersisted changes is not supported. Use `save` to persist the changes, or `reload` to discard them explicitly.
     # ./app/services/current_order_locker.rb:22:in `lock_order_and_variants'
     # ./app/services/current_order_locker.rb:11:in `around'
     # ./spec/controllers/checkout_controller_spec.rb:57:in `block (3 levels) in <top (required)>'
2021-04-13 16:54:31 -07:00
Andy Brett
a0b4925943 update migration versions 2021-04-13 15:51:14 -07:00
Matt-Yorkley
fbda3c15ff Fix deprecated use of #stub in payment spec
Fixes:

Using `stub` from rspec-mocks' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` instead. Called from /home/runner/work/openfoodnetwork/openfoodnetwork/spec/models/spree/payment_spec.rb:10:in `block (3 levels) in <top (required)>'.
     RuntimeError:

       stubbed models are not allowed to access the database - Spree::Product#touch(updated_at,{:time=>2021-04-10 14:24:50 UTC})
2021-04-13 15:50:54 -07:00
Matt-Yorkley
3bce1bad62 Add missing Stripe API request stub
The first time the checkout is submitted here it uses the defaults in CheckoutRequestHelper#fill_out_details
2021-04-13 15:41:37 -07:00
Matt-Yorkley
b1416952d0 Fix deprecated syntax for reloading #line_items association 2021-04-13 15:40:12 -07:00
Transifex-Openfoodnetwork
97891dc667 Updating translations for config/locales/en_CA.yml 2021-04-14 06:12:04 +10:00
Transifex-Openfoodnetwork
c730e888e1 Updating translations for config/locales/en_CA.yml 2021-04-14 06:08:56 +10:00
Matt-Yorkley
477dce79df Merge pull request #7407 from Matt-Yorkley/shipping-without-tax
Ensure Shipping Methods can be created with no tax category
2021-04-13 18:45:28 +02:00
Matt-Yorkley
acb593c2f1 Ensure Shipping Methods can be created with no tax category
The option to apply *no* tax category should be present in this dropdown.
2021-04-13 16:40:49 +01:00
Matt-Yorkley
2932b1e39b Merge pull request #7395 from openfoodfoundation/dependabot/bundler/mini_racer-0.4.0
Bump mini_racer from 0.3.1 to 0.4.0
2021-04-13 15:33:41 +02:00
Pau Pérez Fabregat
eab97d6f42 Merge pull request #7400 from openfoodfoundation/transifex
Transifex
2021-04-12 18:29:07 +02:00
Maikel Linke
8a062b05eb Clarify test users in feature toggle spec 2021-04-12 18:26:18 +02:00
Maikel Linke
f242dc8a19 Spec new #flipper_id method 2021-04-12 18:26:18 +02:00
Maikel Linke
5775051e35 Simplify FeatureToggle module
This saves ten lines of code and makes the simplicity of the
FeatureToggle interface clearer.
2021-04-12 18:26:18 +02:00
Jean-Baptiste Bellet
796068439d Enable running Flipper migration
The initializer ran code the needs the database in the migrated state.
The decision is to not initialize anything relative to feature. This has to be done within the FlipperUI by the instance managers.
2021-04-12 18:26:18 +02:00
Maikel Linke
7a0912d5a4 Use Flipper within the OFN FeatureToggle interface
This ensures that we keep the same interface as before and can migrate
to Flipper in a backwards-compatible way.
2021-04-12 18:26:18 +02:00
Maikel Linke
b045a59685 Consider feature toggles without user as well
This is running the same feature toggle logic when a user is given or no
user is given. This allows features to define what to do with guests.
2021-04-12 18:26:18 +02:00
Jean-Baptiste Bellet
a4b53d6ac4 Initialize flipper with default value
- Use the ActiveRecord adapter
 - Use a middle to cache data through memoization (see https://github.com/jnunemaker/flipper/blob/master/docs/Optimization.md)
 - Create the group `admins`: only user which are admins
 - Create `unit_price` feature attached to `admins` group
 - Add method `flipper_id` on User
2021-04-12 18:26:18 +02:00
Jean-Baptiste Bellet
ad71f925be Add gem flipper-active_record to store flipper data
- Creates the migration for flipper: `flipper_features` and `flipper_gates`
2021-04-12 18:26:18 +02:00
Jean-Baptiste Bellet
7cf96d1484 Add flipper to manage our feature toggle
- Also add flipper-ui to have a small UI that can be used by each instance admin to manage feature toggle
- Mount on `/admin/feature-toggle` with same restriction as `/admin`
2021-04-12 18:26:18 +02:00
Pau Pérez Fabregat
a946585029 Merge pull request #7392 from mkllnk/7391-db-connection-pool
Increase DB connection pool size for specs
2021-04-12 18:24:56 +02:00
Matt-Yorkley
0dde8112d2 Add redirect specs for PaypalController#express 2021-04-12 17:23:49 +01:00
Matt-Yorkley
06c01955f5 Rename describe block names to controller actions 2021-04-12 16:44:45 +01:00
Andy Brett
a3ac7a7ffd Merge pull request #7354 from andrewpbrett/uncomment-tag-rule-spec
Uncomment out flaky tag rules spec
2021-04-12 08:17:14 -07:00
Transifex-Openfoodnetwork
07a95b3edf Updating translations for config/locales/ru.yml 2021-04-13 01:08:43 +10:00
Transifex-Openfoodnetwork
addd287e74 Updating translations for config/locales/ru.yml 2021-04-13 01:05:34 +10:00
Pau Pérez Fabregat
bd2484c3e0 Merge pull request #7396 from coopdevs/enable-customer-balance-in-tests
Enable customer_balance toggle in tests
2021-04-12 13:42:49 +02:00
Pau Pérez Fabregat
3f53806ce3 Merge pull request #7397 from openfoodfoundation/transifex
Transifex
2021-04-12 13:16:17 +02:00
Transifex-Openfoodnetwork
a3b88c3279 Updating translations for config/locales/en_GB.yml 2021-04-12 18:39:35 +10:00
Transifex-Openfoodnetwork
e7d652b701 Updating translations for config/locales/en_GB.yml 2021-04-12 18:36:28 +10:00
Transifex-Openfoodnetwork
e1bacad726 Updating translations for config/locales/en_GB.yml 2021-04-12 18:33:15 +10:00
Pau Perez
5cf4aecc26 Enable customer_balance toggle in tests
This makes all tests exercise the new branch that `OrderBalance`
abstracts. It follows up #7363 addressing code review comments.
2021-04-12 09:31:23 +02:00
dependabot[bot]
23c45921de Bump mini_racer from 0.3.1 to 0.4.0
Bumps [mini_racer](https://github.com/discourse/mini_racer) from 0.3.1 to 0.4.0.
- [Release notes](https://github.com/discourse/mini_racer/releases)
- [Changelog](https://github.com/rubyjs/mini_racer/blob/master/CHANGELOG)
- [Commits](https://github.com/discourse/mini_racer/compare/v0.3.1...v0.4.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-12 05:51:04 +00:00
Andy Brett
e90420b581 Merge pull request #7363 from coopdevs/release-balances-to-all-users
Enable customer_balance feature toggle to all users
2021-04-11 21:50:15 -07:00
Andy Brett
14161ba329 Update all locales with the latest Transifex translations 2021-04-11 21:49:37 -07:00
Andy Brett
7283050bc9 Merge pull request #7389 from openfoodfoundation/transifex
Transifex
2021-04-11 21:46:11 -07:00
Maikel Linke
aeaaf8935e Increase DB connection pool size for specs
A spec failed with this message:

  ActiveRecord::ConnectionTimeoutError:
    could not obtain a connection from the pool within 5.000 seconds (waited 5.000 seconds); all pooled connections were in use

The error seems to be raised when trying to authenticate the user
through Devise in a before_action block. Increasing the pool size by one
helped.

I don't know why our app needs more than 5 connections at the same time.
Maybe some gem "forgets" to release connections?
2021-04-12 12:15:59 +10:00
Transifex-Openfoodnetwork
b2d9b4a559 Updating translations for config/locales/de_DE.yml 2021-04-12 01:31:14 +10:00
Transifex-Openfoodnetwork
59754b227c Updating translations for config/locales/de_DE.yml 2021-04-12 01:28:04 +10:00
Andy Brett
d00970e05d Merge pull request #7207 from andrewpbrett/fix-nil-price-subs
Report subscription failures
2021-04-09 12:13:11 -07:00
Andy Brett
190050da17 Merge pull request #7288 from mkllnk/codeclimate
Use the same Rubocop config on Code Climate as locally
2021-04-09 09:32:15 -07:00
Pau Perez
95f29e4252 Remove outdated initializer specs
These no longer make sense since we're enabling customer_balance
unconditionally.
2021-04-09 10:22:21 +02:00
Pau Pérez Fabregat
0900bcadb2 Merge pull request #7330 from Matt-Yorkley/adjustments-deleted-originator
Update unscoping of deleted_at on Adjustment originator association
2021-04-09 09:15:46 +02:00
Pau Pérez Fabregat
92f45badac Merge pull request #7340 from Matt-Yorkley/deleted-enterprise-fees
Add test coverage: deleted enterprise fees
2021-04-09 09:05:11 +02:00
Pau Pérez Fabregat
0e2855ea60 Merge pull request #7328 from Matt-Yorkley/dead-scope
Remove included_tax scope from Adjustment
2021-04-09 09:03:47 +02:00
Pau Perez
bac9f62132 Enable customer_balance to all users
This however makes the tests still pass, which rely on the off-branch
logic of the toggle. We'll work on them next.
2021-04-09 08:20:26 +02:00
Pau Pérez Fabregat
a902230106 Merge pull request #7316 from Matt-Yorkley/dead-code-shipments
DCOTW: #ensure_updated_shipments
2021-04-09 08:03:24 +02:00
ricchen
8c391251b3 added test case for alphabetically sorting 2021-04-08 23:57:33 -04:00
ricchen
61bb1bdcdc fix incorrect last name sorting for packing report 2021-04-08 22:47:04 -04:00
Maikel Linke
1b14755401 Reduce AbcSize for rubocop 2021-04-09 12:15:47 +10:00
Maikel Linke
ce516db20f Replace usage of Spree's action hooks with Rails
We don't need Spree's hooks any more and will remove them. Rails'
version is much simpler.
2021-04-09 12:04:31 +10:00
Cillian O'Ruanaidh
8a4e7d70a9 Pass in owner_id parameter correctly so admin/enterprises#create controller spec doesn't fail 2021-04-09 12:04:31 +10:00
Cillian O'Ruanaidh
a59a340fcd Extract location map from registration form into its own partial, also add missing new lines 2021-04-09 12:04:31 +10:00
Cillian O'Ruanaidh
16b90cfc2e Allow people to set enterprise latitude/longitude manually or automatically.
This for new changes to the enterprise registration/signup flow where a map will be displayed when people are filling in their address. On this map people can check the geocoder has geocoded their address correctly and if not they can manually adjust their latitude/longitude on the map.

But currently every time someone changes their address in the Admin > Enterprise > Address section the address would automatically be geocoded so this could overwrite the latitude/longitude that was set during sign up. To prevent the latitude/longitude from being overwritten this add's a checkbox which people need to explicity click if they want their address to be automatically geocoded, otherwise it will just use the manually configured latitude/longitude.

Note this new feature which allows people to select their location on a map during registration only works with Google maps so far. So if an instance is using Open Street Map this change also adds support for passing a :use_geocoder parameter to the Api::EnterprisesController during registration so that the address will be geocoded on the backend without the use of a map.
2021-04-09 12:03:12 +10:00
julesemmac
5e6ea31ad1 Improving user discover on ofn map
The context for this update is here: https://community.openfoodnetwork.org/t/improving-user-discovery-on-ofn-map/2013

Also with rebasing help from Maikel Linke <mkllnk@web.de>
2021-04-09 12:02:22 +10:00
Andy Brett
199efb1e20 Merge pull request #7351 from Matt-Yorkley/dead-code-discount-order
Dead code: DiscountOrder
2021-04-08 12:48:38 -07:00
Andy Brett
c6be9deb9b Merge pull request #7352 from Matt-Yorkley/dead-code-api-helper
Dead code: Spree::Api::ApiHelpers
2021-04-08 12:48:22 -07:00
jibees
ca36996060 Merge pull request #7314 from Matt-Yorkley/order-payment-amount
Rename #charge_shipping_and_payment_fees! to #set_payment_amount!
2021-04-08 21:22:56 +02:00
Andy Brett
48f2ab7ad7 Revert "comment out flaky spec"
This reverts commit fc4634cd67.
2021-04-08 11:07:30 -07:00
Matt-Yorkley
d1755acac5 Merge pull request #7355 from andrewpbrett/rspec-syntax
Update rspec syntax
2021-04-08 20:01:48 +02:00
Andy Brett
67d49b7486 Merge pull request #7342 from luisramos0/dead_code
[Rails 5.2] Delete dead code in variants list page, this is old spree logic
2021-04-08 10:47:02 -07:00
Andy Brett
b78ed85ad3 Merge pull request #7321 from Matt-Yorkley/remove-bugherd
Remove Bugherd
2021-04-08 10:35:17 -07:00
Luis Ramos
706b854d8c Fix rspec syntax 2021-04-08 10:03:11 -07:00
Matt-Yorkley
99265bb75b Merge pull request #7350 from filipefurtad0/feature_toggle_off_staging
Sets feature toggle off on staging, by default
2021-04-08 18:40:11 +02:00
Matt-Yorkley
d72cf18ec4 Merge pull request #7356 from andrewpbrett/fix-shipment-controller-spec
Fix failing shipments controller spec
2021-04-08 18:30:29 +02:00
Andy Brett
c3c482c0fe fix failing spec
Another PR introduced a before_action to the controller, so we have to stub that out to avoid the double receiving an unexpected message
2021-04-08 08:53:35 -07:00
Andy Brett
9b3628a4dd Merge pull request #7299 from andrewpbrett/line-item-fees
Update fees after changing a line item
2021-04-08 07:26:34 -07:00
Matt-Yorkley
704ed128cf Merge pull request #7338 from gucci-ninja/7306-remove-arrows-from-number-input
Remove arrows on number input when adding items
2021-04-08 16:10:02 +02:00
Pau Pérez Fabregat
478c310d4a Merge pull request #7325 from Matt-Yorkley/wkhtmltopdf
Remove wkhtmltopdf-binary version pin and bump gem
2021-04-08 15:23:59 +02:00
Matt-Yorkley
88df425b78 Remove Spree::Api::ApiHelpers
🔥
2021-04-08 12:53:17 +01:00
Matt-Yorkley
e1a10db410 Remove :tag_rule factory and update tests to use alternate (valid) factories 2021-04-08 12:37:45 +01:00
Matt-Yorkley
9a4bbacbaa Update enterprises controller spec to use different (valid) TagRule class 2021-04-08 12:37:19 +01:00
Matt-Yorkley
80d43c714d Remove TagRule::DiscountOrder
This class was removed from the UI in 2016 and hasn't been used since...
2021-04-08 12:37:17 +01:00
Matt-Yorkley
e61fe86d00 Merge pull request #7300 from andrewpbrett/on-demand-max-quantities
Allow any quantity if variant is set to on demand
2021-04-08 12:33:19 +02:00
Matt-Yorkley
034f452f4f Merge pull request #7313 from jibees/7301-fix-line-breaks-on-cart-page
Add non-breaking space to avoid unwanted line breaks on unit price
2021-04-08 12:31:45 +02:00
filipefurtad0
4920db7f91 sets feature toggle off on staging, by default 2021-04-08 09:41:34 +01:00
Pau Pérez Fabregat
b00828cc46 Merge pull request #7311 from Matt-Yorkley/codecov-whitelisting
Exclude /lib/tasks/sample_data from CodeCov
2021-04-08 09:59:56 +02:00
Pau Pérez Fabregat
682cdc4ece Merge pull request #7349 from andrewpbrett/fix-unit-price-nil-method
Guard against variants that use items but have scales
2021-04-08 09:56:48 +02:00
Pau Pérez Fabregat
953454e2fb Merge pull request #7343 from luisramos0/dead_code_2
[Rails 5.2] Remove dead code
2021-04-08 09:48:25 +02:00
Pau Pérez Fabregat
27ac17f95e Merge pull request #7344 from luisramos0/helpers
[Rails 5.2] Fix base helper spec in rails 52
2021-04-08 09:47:49 +02:00
Pau Pérez Fabregat
cd253c625e Merge pull request #7317 from openfoodfoundation/transifex
Transifex
2021-04-08 09:42:11 +02:00
Transifex-Openfoodnetwork
26cf569f41 Updating translations for config/locales/es.yml 2021-04-08 17:18:54 +10:00
Transifex-Openfoodnetwork
0bd2f09c6f Updating translations for config/locales/es.yml 2021-04-08 17:15:47 +10:00
Transifex-Openfoodnetwork
eb0cb6fe86 Updating translations for config/locales/es.yml 2021-04-08 17:12:38 +10:00
Transifex-Openfoodnetwork
629b289f84 Updating translations for config/locales/ca.yml 2021-04-08 17:07:19 +10:00
Transifex-Openfoodnetwork
20e22de40c Updating translations for config/locales/en_FR.yml 2021-04-08 17:01:50 +10:00
Transifex-Openfoodnetwork
f241620682 Updating translations for config/locales/fr.yml 2021-04-08 17:01:40 +10:00
Andy Brett
2128675e95 Merge pull request #7236 from Matt-Yorkley/exchange-deadlocks
Update Exchange touch on Enterprise to use #touch_later
2021-04-07 20:54:03 -07:00
Andy Brett
a60b4a41c5 guard against variants that use items but have scales 2021-04-07 18:31:15 -07:00
Maikel
b83340ac45 Merge pull request #7287 from mkllnk/7166-cancelled-stock
Disallow changes of canceled order
2021-04-08 11:28:35 +10:00
Maikel Linke
42543bfaf7 Add flash when order cannot be changed 2021-04-08 09:24:39 +10:00
Maikel Linke
cf22a864f3 Fix typo in spec description 2021-04-08 09:24:39 +10:00
Maikel Linke
bfa5d443f1 Don't change canceled orders
We have a PR already that removes the UI for this when the order is
canceled. Implementing it on controller-side makes sure that it doesn't
happen accidentally if the user has multiple tabs open.
2021-04-08 09:24:39 +10:00
Maikel Linke
f0d5bf0ab5 Disallow changes of canceled order 2021-04-08 09:24:39 +10:00
Maikel Linke
f2a2cbd3f9 Spec stock bug when changing canceled orders
We decided to disallow changing canceled orders in a way that would
affect stock or totals.
2021-04-08 09:24:39 +10:00
Maikel Linke
8079fb0315 Add specs for stock changes 2021-04-08 09:24:39 +10:00
Maikel Linke
e1d22aec83 Prepare for more shipment specs with different context
This commit is best viewed ignoring whitespaces.
2021-04-08 09:24:39 +10:00
Maikel Linke
c5e72f8563 Test shipment changes more precisely 2021-04-08 09:24:39 +10:00
Maikel Linke
65b37b249d Prepare spec code for re-use 2021-04-08 09:24:39 +10:00
Maikel Linke
d571bc731b Style spec with rubocop -a 2021-04-08 09:24:39 +10:00
Luis Ramos
026c0640c4 Remove dead code 2021-04-07 23:31:43 +01:00
Luis Ramos
c33cf67ec7 Fix base helper spec in rails 52 2021-04-07 23:25:14 +01:00
Luis Ramos
ec6bb7f9fe Delete dead code, this is old spree logic 2021-04-07 22:55:06 +01:00
gucci-ninja
d70c2b99fd Remove arrows on number input when adding items 2021-04-07 14:32:29 -04:00
Matt-Yorkley
ea6540838a Add test coverage for hard-deleted EnterpriseFee case when editing orders 2021-04-07 18:53:24 +01:00
Matt-Yorkley
d385c1ad4d Soft-delete return authorizations 2021-04-07 18:11:06 +01:00
Matt-Yorkley
4043e19910 Add deleted_at to spree_return_authorizations 2021-04-07 18:10:07 +01:00
Matt-Yorkley
52c7abf1c0 Merge pull request #7334 from Matt-Yorkley/payment-reports-error
Fix outstanding balance sum in payment report
2021-04-07 13:47:45 +02:00
Matt-Yorkley
05b8b8e9db Fix outstanding balance sum in payment report 2021-04-07 10:56:20 +01:00
Matt-Yorkley
2ed1aaf575 Update unscoping of deleted_at on originator association 2021-04-07 00:26:01 +01:00
Transifex-Openfoodnetwork
5e99294f79 Updating translations for config/locales/en_GB.yml 2021-04-07 08:33:57 +10:00
Transifex-Openfoodnetwork
0888658431 Updating translations for config/locales/fr.yml 2021-04-07 08:33:53 +10:00
Transifex-Openfoodnetwork
85cc9be07b Updating translations for config/locales/en_GB.yml 2021-04-07 08:30:57 +10:00
Transifex-Openfoodnetwork
b34c2d3b9f Updating translations for config/locales/ru.yml 2021-04-07 08:30:52 +10:00
Transifex-Openfoodnetwork
837130bebe Updating translations for config/locales/it.yml 2021-04-07 08:30:49 +10:00
Transifex-Openfoodnetwork
480dc3d4b8 Updating translations for config/locales/fr.yml 2021-04-07 08:30:45 +10:00
Matt-Yorkley
1ce3103aa7 Merge pull request #6924 from Matt-Yorkley/adjustments-shipping-tax
[Adjustments] Shipping tax
2021-04-07 00:21:12 +02:00
Transifex-Openfoodnetwork
27ac53aabc Updating translations for config/locales/it.yml 2021-04-07 05:33:40 +10:00
Transifex-Openfoodnetwork
ffc9da9972 Updating translations for config/locales/en_IE.yml 2021-04-07 05:33:35 +10:00
Transifex-Openfoodnetwork
1fa7035c2f Updating translations for config/locales/it.yml 2021-04-07 05:30:33 +10:00
Transifex-Openfoodnetwork
cedbfbc8ea Updating translations for config/locales/en_IE.yml 2021-04-07 05:30:29 +10:00
Transifex-Openfoodnetwork
3e26ccabeb Updating translations for config/locales/ru.yml 2021-04-07 05:30:26 +10:00
Matt-Yorkley
4a65e5817f Add fieldset title to shipping methods edit form 2021-04-06 20:30:07 +01:00
Matt-Yorkley
01e6397e27 Remove Spree::Config[:shipment_inc_vat]
This is now done per ShippingMethod instead of globally
2021-04-06 20:29:58 +01:00
Andy Brett
2c17d12f6e Merge pull request #7303 from drummer83/independent-update-cart-label
Independent 'update cart' label
2021-04-06 10:59:06 -07:00
Andy Brett
2aeed30775 Merge pull request #7265 from andrewpbrett/freeze-adjustments
Don't allow edits to adjustments for canceled orders
2021-04-06 10:56:27 -07:00
Matt-Yorkley
61b41491fe Remove included_tax scope from Adjustment
This scope is no longer used, and it's name is exactly the same as other method names and database columns on multiple objects, which is quite confusing.
2021-04-06 12:42:14 +01:00
Matt-Yorkley
5c0a968c27 Remove wkhtmltopdf-binary version pin and bump gem
Previously we were tied to a lower version that maintained compatibility with Ubuntu 14 (which we used in Semaphore). We can drop this version pin now and upgrade it. PDF tests should now pass locally if using Ubuntu 20 🎉
2021-04-05 16:16:25 +01:00
Andy Brett
271cc26066 Merge pull request #7319 from openfoodfoundation/dependabot/bundler/rubocop-1.12.1
Bump rubocop from 1.12.0 to 1.12.1
2021-04-05 08:14:35 -07:00
Transifex-Openfoodnetwork
3a45d2781a Updating translations for config/locales/de_DE.yml 2021-04-06 01:10:34 +10:00
Matt-Yorkley
4a18ba256d Add test for paypal controller redirect 2021-04-05 14:00:07 +01:00
Matt-Yorkley
03c36dfd7f Remove Bugherd
🔥
2021-04-05 13:31:13 +01:00
Transifex-Openfoodnetwork
96f5adf0be Updating translations for config/locales/en_GB.yml 2021-04-05 22:06:23 +10:00
dependabot[bot]
1320a12a16 Bump rubocop from 1.12.0 to 1.12.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.12.0 to 1.12.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.12.0...v1.12.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-05 05:50:26 +00:00
Andy Brett
c30ced2060 put Time.zone back 2021-04-04 12:27:46 -07:00
Transifex-Openfoodnetwork
788601ea02 Updating translations for config/locales/en_CA.yml 2021-04-05 04:54:25 +10:00
Matt-Yorkley
c702b398d6 Add warning comment on migration test isolation 2021-04-04 19:19:06 +01:00
Matt-Yorkley
3092397346 Isolate migration tests 2021-04-04 19:19:06 +01:00
Matt-Yorkley
a2f6ff7b39 Update deprecated params in checkout spec 2021-04-04 19:19:06 +01:00
Matt-Yorkley
76cf239623 Sort ids in test in case ordering is reversed 2021-04-04 19:19:06 +01:00
Matt-Yorkley
ea3044f47a Bring in more explicit model code now that good_migrations disables all access to models 2021-04-04 19:19:06 +01:00
Matt-Yorkley
595389cbea Update stripe spec
The hard-coded order total here was incorrect. It's now correctly including the $3 shipping fee used with that order factory, and the total is actually $13.
2021-04-04 19:19:06 +01:00
Matt-Yorkley
d00bdbe1b8 Add index on spree_shipping_methods.tax_category_id 2021-04-04 19:19:06 +01:00
Matt-Yorkley
4fbbbbca76 Load relevant tax rates in a single query outside of find_each block 2021-04-04 19:19:06 +01:00
Matt-Yorkley
e442187672 Delete unused private method OrderTaxAdjustmentsFetcher#table 2021-04-04 19:19:06 +01:00
Matt-Yorkley
821be3eef5 Update combined queries to use #or 2021-04-04 19:19:06 +01:00
Matt-Yorkley
96d8de35f2 Delete dead code Adjustment#set_included_tax! 2021-04-04 19:19:06 +01:00
Matt-Yorkley
fcdc627ce3 Add fallbacks in migration for migrating locally with RAILS_ENV=test
Instances have these preference values set, but when running this migration locally with RAILS_ENV=test, the preference does not exist in the database.
2021-04-04 19:19:06 +01:00
Matt-Yorkley
fec2b0b7c1 Define models in migration 2021-04-04 19:19:06 +01:00
Matt-Yorkley
903788903b Remove Spree::Config[:shipping_tax_rate] 2021-04-04 19:19:06 +01:00
Matt-Yorkley
a26880a3a1 Update shipment tax fetching in Xero Invoices report 2021-04-04 19:19:06 +01:00
Matt-Yorkley
3c602cad97 Add unit tests for migration 2021-04-04 19:19:06 +01:00
Matt-Yorkley
eb3c2da740 Migrate shipping taxes to adjustments 2021-04-04 19:19:06 +01:00
Matt-Yorkley
63483818d7 Remove dead code
This spec is doing nothing...
2021-04-04 19:19:06 +01:00
Matt-Yorkley
56a01194cd Update shipping tax adjustments specs 2021-04-04 19:19:06 +01:00
Matt-Yorkley
e81270d0d7 Fix adjustment test setups missing order associations
All adjustments must be associated with an order
2021-04-04 19:19:06 +01:00
Matt-Yorkley
bbd4a33a87 Tax adjustments should be open when created
All adjustments get closed during `order.finalize!`, but before that point they should be open.
2021-04-04 19:19:06 +01:00
Matt-Yorkley
6d48471368 Update shipment totals updating 2021-04-04 19:19:06 +01:00
Matt-Yorkley
ac67f7391e Update tax charging in checkout flow 2021-04-04 19:19:06 +01:00
Matt-Yorkley
2ab9602ad7 Increase tested details in Order spec 2021-04-04 19:19:06 +01:00
Matt-Yorkley
d635d70add Update Order::Updater adjustment handling 2021-04-04 19:19:06 +01:00
Matt-Yorkley
93771aeb94 Update orders spec 2021-04-04 19:19:06 +01:00
Matt-Yorkley
2f19428b40 Update orders controller 2021-04-04 19:19:06 +01:00
Matt-Yorkley
1f897b1e44 Update sales tax report spec 2021-04-04 19:19:06 +01:00
Matt-Yorkley
1d1b842e08 Delete dead code 2021-04-04 19:19:06 +01:00
Matt-Yorkley
889b357408 Update Order#total_tax 2021-04-04 19:19:06 +01:00
Matt-Yorkley
2af0afafe9 Update Order#shipping_tax 2021-04-04 19:19:06 +01:00
Matt-Yorkley
ead85e71de Update shipping tax in checkout spec 2021-04-04 19:19:06 +01:00
Matt-Yorkley
a8366a3a72 Update Order::Updater totals counts 2021-04-04 19:19:06 +01:00
Matt-Yorkley
a060b9fe5a Update LineItemsController and order factory 2021-04-04 19:19:06 +01:00
Matt-Yorkley
8b0a9ddb2f Update OrderTaxAdjustmentsFetcher 2021-04-04 19:19:06 +01:00
Matt-Yorkley
7d3288ca53 Remove #to_package calls on shipment calculations 2021-04-04 19:19:06 +01:00
Matt-Yorkley
db07a73bd7 Ensure Adjustment#update! returns an amount 2021-04-04 19:19:06 +01:00
Matt-Yorkley
232286b0be Add adjustment_total to spree_shipments 2021-04-04 19:19:06 +01:00
Matt-Yorkley
7e0aad7c7e Adapt current tax setup to work with shipment taxes
This is a temporary step...
2021-04-04 19:19:06 +01:00
Matt-Yorkley
7425ad5c4a Include ItemAdjustments handling in Adjustment class
Currently only applies to shipments, but will later include line items, etc
2021-04-04 19:19:06 +01:00
Matt-Yorkley
0d5d4aca11 Update tax_rate_factory
The amount is a decimal, so `0.1` here is actually a 10% tax rate. `100` is ridiculous (10000% tax).

Also, the factory fails without a calculator, and it should explicitly be a DefaultTax calculator or it will not be correct.
2021-04-04 19:19:06 +01:00
Matt-Yorkley
0fea92b63d Add :default_tax_calculator factory 2021-04-04 19:19:06 +01:00
Matt-Yorkley
25a739ea75 Remove Shipment #update_adjustment_included_tax 2021-04-04 19:19:06 +01:00
Matt-Yorkley
385b12d83b Add tax total fields to spree_shipments 2021-04-04 19:19:06 +01:00
Matt-Yorkley
9bbe57afda Extract method 2021-04-04 19:19:06 +01:00
Matt-Yorkley
89889bc280 Record tax totals in ItemAdjustments 2021-04-04 19:19:06 +01:00
Matt-Yorkley
605a94e3c9 Use Spree::ItemAdjustments in Shipment callbacks for updating adjustments 2021-04-04 19:19:06 +01:00
Matt-Yorkley
ac9ecdfcbc Introduce Spree::ItemAdjustments class 2021-04-04 19:19:06 +01:00
Matt-Yorkley
45f0082321 Add tax_category_id to shipping method permitted params 2021-04-04 19:19:06 +01:00
Matt-Yorkley
431706b704 Add tax_category_id to spree_shipping_methods 2021-04-04 19:19:06 +01:00
Matt-Yorkley
8fccdbf92f Introduce TaxCategories to ShippingMethods 2021-04-04 19:19:06 +01:00
Transifex-Openfoodnetwork
180fa0beb0 Updating translations for config/locales/en_IE.yml 2021-04-04 08:34:05 +10:00
Transifex-Openfoodnetwork
953756bf2a Updating translations for config/locales/en_US.yml 2021-04-04 08:34:04 +10:00
Transifex-Openfoodnetwork
875105373a Updating translations for config/locales/it.yml 2021-04-04 08:31:04 +10:00
Transifex-Openfoodnetwork
2aa549fe33 Updating translations for config/locales/en_FR.yml 2021-04-04 08:31:00 +10:00
Transifex-Openfoodnetwork
33875a528f Updating translations for config/locales/en_IE.yml 2021-04-04 08:30:59 +10:00
Transifex-Openfoodnetwork
ee056561eb Updating translations for config/locales/fr.yml 2021-04-04 08:30:58 +10:00
Andy Brett
2ee15838d9 Merge pull request #7213 from Matt-Yorkley/optional-bullet
Make bullet activation optional
2021-04-03 13:48:21 -07:00
Andy Brett
b5846592b1 Merge pull request #7260 from jibees/7069-add-automated-tests-for-unit-price-in-backoffice
Add automated tests for unit price in backoffice
2021-04-03 13:43:32 -07:00
Andy Brett
f2e238d0ea refactor view logic to helper 2021-04-03 13:33:09 -07:00
Matt-Yorkley
c895153b58 Remove dead code: #ensure_updated_shipments 2021-04-03 19:47:34 +01:00
Matt-Yorkley
e2e943e394 Update uses of checkout_state route 2021-04-03 19:13:41 +01:00
Matt-Yorkley
fe507f63fc Move checkout_state route from spree to main_app 2021-04-03 19:13:41 +01:00
Andy Brett
5bfd6fd2ba add spec for fee recalculation 2021-04-03 10:54:57 -07:00
Matt-Yorkley
dd73af8e7a Remove duplicate checkout controller 2021-04-03 18:52:05 +01:00
Matt-Yorkley
cb0644ce47 Merge pull request #7312 from openfoodfoundation/transifex
Transifex
2021-04-03 17:32:13 +02:00
Matt-Yorkley
2d647be8b4 Rename #charge_shipping_and_payment_fees! to #set_payment_amount!
This method sets the order's payment amount during the checkout. It doesn't really have anything to do with shipping or payment fees...
2021-04-03 16:14:38 +01:00
Transifex-Openfoodnetwork
9b2255cb20 Updating translations for config/locales/en_US.yml 2021-04-03 14:03:44 +11:00
Transifex-Openfoodnetwork
1159c425b9 Updating translations for config/locales/en_US.yml 2021-04-03 14:03:09 +11:00
Andy Brett
c0cbd1e688 remove new adjustment button for canceled orders 2021-04-02 12:26:59 -07:00
filipefurtad0
a01493725d Merge pull request #7309 from openfoodfoundation/filipefurtad0-add-QA-info
Update README.md
2021-04-02 16:00:16 +01:00
Jean-Baptiste Bellet
6756ffcf42 Add non-breaking space to avoid unwanted line breaks 2021-04-02 16:59:50 +02:00
Transifex-Openfoodnetwork
d7787261ed Updating translations for config/locales/en_IE.yml 2021-04-03 01:54:41 +11:00
Matt-Yorkley
d68b73dd07 Exclude /lib/tasks/sample_data from CodeCov
We will almost certainly *never* invest the required amount of dev time to cover all this non-critical code with tests, so we may as well drop it from the report.
2021-04-02 15:50:01 +01:00
filipefurtad0
857611d232 Update README.md
Adding a line about our new QAs board.
2021-04-02 15:23:15 +01:00
Jean-Baptiste Bellet
9126901578 Add missing key for unit price in new variant form 2021-04-02 15:22:01 +02:00
Jean-Baptiste Bellet
abd2d3f46f Add tests around unit price in backoffice
3 cases:
 - creating a new product
 - creating a new variant
 - editing an existing variant
2021-04-02 15:22:01 +02:00
Jean-Baptiste Bellet
608a28316c Specify right for attribute for <label /> element
- So, `<label />` is rightly linked to its `<input />`
2021-04-02 15:22:01 +02:00
Jean-Baptiste Bellet
76fbb2be84 Use custom input text (instead of :price one)
- Use `variant_unit_price` for `id` attribute and `variant[unit_price]` for `name` attribute
 - Previously, there was an duplicated `#id` on the page because we used `:price`
2021-04-02 15:22:01 +02:00
Pau Perez
d7cadde0a1 Update all locales with the latest Transifex translations 2021-04-02 11:55:52 +02:00
Konrad
7c47102869 Use new independent label for 'update cart'
orders_form_update_cart
2021-04-01 23:30:00 +02:00
Konrad
221a7ce402 Add independent string for 'update cart'
orders_form_update_cart
2021-04-01 23:29:02 +02:00
Pau Pérez Fabregat
003b45d4b9 Merge pull request #7294 from Matt-Yorkley/balance-missing-methods
OrderBalance missing methods
2021-04-01 19:34:57 +02:00
Andy Brett
1eb5ee9266 Merge pull request #7174 from Matt-Yorkley/dead-code-callbacks
Remove Spree ResourceController callbacks
2021-04-01 07:24:44 -07:00
Andy Brett
a9c7f84bd3 Merge pull request #7197 from guidoDutra/5916-fix-content-moves-when-cart-open
fix content moving when cart is open
2021-04-01 07:23:32 -07:00
Andy Brett
4efcd8457c Merge pull request #7227 from jibees/7215-fix-page-content-up/down-move-when-opening-the-unit-price-tooltip
Add some CSS specification to avoid page content up/down move
2021-04-01 07:21:13 -07:00
Andy Brett
8261a33ae4 Merge pull request #7226 from jibees/7223-fix-display-issue-on-unit-price-tooltip-in-cart-sidebar-
Add 'context' variable: used to specify display of the unit price tooltip inside cart sidebar
2021-04-01 07:20:46 -07:00
Andy Brett
7312341fc4 Merge pull request #7233 from jibees/7224-add-unit-price-to-previously-orders-in-the-cart-page
Add unit price for already bought products in cart page
2021-04-01 07:19:36 -07:00
Matt-Yorkley
f94fe452f0 Merge pull request #7191 from mkllnk/fix-deprecation-gateway-mode
Replace ActiveMerchant's deprecated gateway_mode
2021-04-01 13:29:10 +02:00
Matt-Yorkley
2292deebe6 Merge pull request #7232 from mkllnk/7231-timeout
Keep status bar with message without auto-close
2021-04-01 13:23:12 +02:00
Andy Brett
9f0f88de4e allow any quantity if variant is set to on demand 2021-03-31 22:02:32 -07:00
Maikel
3f4b97d006 Merge pull request #7289 from coopdevs/setup-codecov
Add code coverage reporting to our CI build with Codecov
2021-04-01 12:23:33 +11:00
Andy Brett
38f5bfdca2 update fees after changing a line item 2021-03-31 14:17:10 -07:00
Matt-Yorkley
c40928d805 Merge pull request #7167 from Matt-Yorkley/adjustments-returns
[Adjustments] Update return adjustments
2021-03-31 21:33:45 +02:00
Andy Brett
7b391adbac Merge pull request #7290 from openfoodfoundation/dependabot/bundler/i18n-1.8.10
Bump i18n from 1.8.9 to 1.8.10
2021-03-31 09:25:06 -07:00
Matt-Yorkley
93efd3ab8f Merge pull request #7291 from openfoodfoundation/transifex
Transifex
2021-03-31 18:00:36 +02:00
Transifex-Openfoodnetwork
29d3c61b52 Updating translations for config/locales/en_FR.yml 2021-04-01 01:25:28 +11:00
Transifex-Openfoodnetwork
b6b07328ee Updating translations for config/locales/ru.yml 2021-04-01 01:16:03 +11:00
Transifex-Openfoodnetwork
35f6f8e73d Updating translations for config/locales/fr.yml 2021-04-01 00:32:08 +11:00
Matt-Yorkley
bb0cf65ecc Handle OrderBalance comparison operators
These operators get used on the object returned by order_balance in a few places, and were not working correctly.
2021-03-31 13:23:13 +01:00
Matt-Yorkley
a02c505e62 Delegate #to_f and #to_d to #amount in OrderBalance 2021-03-31 13:23:13 +01:00
Matt-Yorkley
77506caca1 Rename OrderBalance methods for clarity 2021-03-31 13:09:17 +01:00
Transifex-Openfoodnetwork
ff82d37a40 Updating translations for config/locales/it.yml 2021-03-31 21:08:45 +11:00
Pau Pérez Fabregat
958023d6da Merge pull request #7183 from filipefurtad0/variant_unit_scale_spec
Covers unit variant changes; adds test to #7180
2021-03-31 11:21:49 +02:00
Pau Perez
7857487bbb Add coverage badge to README 2021-03-31 10:39:29 +02:00
Pau Perez
8a5762afba Remove minimum coverage
This clashes with Codecov coverage uploading. If the tests fail chances
are that they didn't hit the threshold and thus, won't be uploaded to
Codecov.
2021-03-31 10:02:50 +02:00
Pau Perez
b2840aaebf Enable coverage in CI and use Codecov formatter 2021-03-31 10:02:50 +02:00
dependabot[bot]
e43f98405a Bump i18n from 1.8.9 to 1.8.10
Bumps [i18n](https://github.com/ruby-i18n/i18n) from 1.8.9 to 1.8.10.
- [Release notes](https://github.com/ruby-i18n/i18n/releases)
- [Changelog](https://github.com/ruby-i18n/i18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ruby-i18n/i18n/compare/v1.8.9...v1.8.10)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-31 07:45:51 +00:00
Pau Perez
756b3a6ee5 Upload coverage report after every CI job 2021-03-31 08:56:58 +02:00
Maikel Linke
8f79fe2768 Use the same config on Code Climate as locally
We configured Code Climate to be aware of all open issues instead of
ignoring open issues via the rubocop todo lists. We were hoping that
Code Climate could give us some nice stats like progress if it's aware
of all our open issues. But the graphs don't tell us anything. So it's
better to have one source of truth for our open style issues and that is
our rubocop config in this repository. It contains two todo lists that
document all violations we would like to fix in the future but it's okay
to submit pull requests that don't fix those.

Instead of accepting new style issues in Code Climate, every pull
request with new violations has to add them to the rubocop config. I
hope that this will make rubocop more useful and encourage developers to
reduce code style debt.
2021-03-31 15:25:19 +11:00
Maikel Linke
f8ba256ebf Use bundled version in CodeClimate 2021-03-31 15:22:33 +11:00
Pau Pérez Fabregat
9c468f0557 Merge pull request #7240 from Matt-Yorkley/escalating-paranoia
Escalating paranoia
2021-03-30 22:24:13 +02:00
Matt-Yorkley
f3347229fb Add Variant#default_price test coverage for soft-deletion 2021-03-30 20:25:37 +01:00
Pau Pérez Fabregat
7e255442a5 Merge pull request #7262 from openfoodfoundation/transifex
Transifex
2021-03-30 19:52:45 +02:00
Andy Brett
02009ed48b Merge pull request #7270 from openfoodfoundation/dependabot/bundler/ddtrace-0.47.0
Bump ddtrace from 0.46.0 to 0.47.0
2021-03-30 10:51:22 -07:00
Matt-Yorkley
3f14694b2b Merge pull request #6960 from andrewpbrett/namespace-api
Namespace existing API endpoints to api/v0/*
2021-03-30 19:45:27 +02:00
Pau Pérez Fabregat
d34dd30e51 Merge pull request #7268 from openfoodfoundation/dependabot/bundler/simplecov-0.21.2
Bump simplecov from 0.18.5 to 0.21.2
2021-03-30 19:17:16 +02:00
Andy Brett
0954a13f55 Merge pull request #7273 from openfoodfoundation/dependabot/bundler/angular_rails_csrf-4.5.0
Bump angular_rails_csrf from 4.2.0 to 4.5.0
2021-03-30 10:01:04 -07:00
Andy Brett
38cba66207 Merge pull request #7272 from openfoodfoundation/dependabot/bundler/activemerchant-1.119.0
Bump activemerchant from 1.107.4 to 1.119.0
2021-03-30 09:59:41 -07:00
dependabot[bot]
0d935725e2 Bump angular_rails_csrf from 4.2.0 to 4.5.0
Bumps [angular_rails_csrf](https://github.com/jsanders/angular_rails_csrf) from 4.2.0 to 4.5.0.
- [Release notes](https://github.com/jsanders/angular_rails_csrf/releases)
- [Changelog](https://github.com/jsanders/angular_rails_csrf/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jsanders/angular_rails_csrf/compare/4.2.0...v4.5.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 16:43:35 +00:00
Andy Brett
b799a1777f Merge pull request #7271 from openfoodfoundation/dependabot/bundler/acts_as_list-1.0.3
Bump acts_as_list from 0.9.19 to 1.0.3
2021-03-30 09:42:42 -07:00
Andy Brett
3fb2e503f5 Merge pull request #7275 from openfoodfoundation/dependabot/bundler/factory_bot_rails-6.1.0
Bump factory_bot_rails from 5.2.0 to 6.1.0
2021-03-30 09:39:37 -07:00
Matt-Yorkley
cd6ef9e274 Merge pull request #7269 from openfoodfoundation/dependabot/bundler/bugsnag-6.20.0
Bump bugsnag from 6.19.0 to 6.20.0
2021-03-30 18:13:02 +02:00
dependabot[bot]
ce83be4eac Bump factory_bot_rails from 5.2.0 to 6.1.0
Bumps [factory_bot_rails](https://github.com/thoughtbot/factory_bot_rails) from 5.2.0 to 6.1.0.
- [Release notes](https://github.com/thoughtbot/factory_bot_rails/releases)
- [Changelog](https://github.com/thoughtbot/factory_bot_rails/blob/master/NEWS.md)
- [Commits](https://github.com/thoughtbot/factory_bot_rails/compare/v5.2.0...v6.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 16:04:36 +00:00
Andy Brett
aac4a17c1f Merge pull request #7274 from openfoodfoundation/dependabot/bundler/test-prof-1.0.2
Bump test-prof from 0.11.3 to 1.0.2
2021-03-30 09:01:24 -07:00
dependabot[bot]
0eaa4aeb62 Bump activemerchant from 1.107.4 to 1.119.0
Bumps [activemerchant](https://github.com/activemerchant/active_merchant) from 1.107.4 to 1.119.0.
- [Release notes](https://github.com/activemerchant/active_merchant/releases)
- [Changelog](https://github.com/activemerchant/active_merchant/blob/master/CHANGELOG)
- [Commits](https://github.com/activemerchant/active_merchant/compare/v1.107.4...v1.119.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 16:00:49 +00:00
Andy Brett
880075729d Merge pull request #7267 from openfoodfoundation/dependabot/bundler/capybara-3.35.3
Bump capybara from 3.32.2 to 3.35.3
2021-03-30 08:59:37 -07:00
Andy Brett
dee2004305 Merge pull request #7276 from openfoodfoundation/dependabot/bundler/ffaker-2.18.0
Bump ffaker from 2.16.0 to 2.18.0
2021-03-30 08:58:12 -07:00
Andy Brett
57035ae0cc Merge pull request #7277 from openfoodfoundation/dependabot/npm_and_yarn/karma-6.3.2
Bump karma from 6.3.1 to 6.3.2
2021-03-30 08:57:35 -07:00
Matt-Yorkley
b6b367c378 Add return adjustments test in checkout helper 2021-03-30 16:41:23 +01:00
Matt-Yorkley
d447864b7e Update test description 2021-03-30 16:39:40 +01:00
Matt-Yorkley
08491d9ad4 Use an instance double in #compute_amount test 2021-03-30 16:39:40 +01:00
Matt-Yorkley
7882c427f7 Simplify creation of negative amounts 2021-03-30 16:39:40 +01:00
Matt-Yorkley
dbe227bd41 Use #change in adjustment spec with changing value 2021-03-30 16:39:40 +01:00
Matt-Yorkley
e71f47a2e3 Use underscore in unused arguments 2021-03-30 16:39:40 +01:00
Matt-Yorkley
4b4f29641e Add test for ReturnAuthorization#compute_amount override 2021-03-30 16:39:40 +01:00
Matt-Yorkley
fcb8145a6c Bring in changes to Adjustment#update! and CalculatedAdjustments#update_adjustment 2021-03-30 16:39:40 +01:00
Matt-Yorkley
c480d43bda Override #compute_amount in ReturnAuthorization
In some cases adjustments are updated (recalculated) via their originator. In the case of return adjustments, there's no calculation (and no calculator).
2021-03-30 16:39:40 +01:00
Matt-Yorkley
4c5ecbc2d4 Migrate return adjustments source to originator 2021-03-30 16:39:40 +01:00
Matt-Yorkley
3c1883dac2 Remove use of :source polymorphic association for return adjustments 2021-03-30 16:39:40 +01:00
Matt-Yorkley
8db598bff7 Simplify return adjustment creation 2021-03-30 16:39:40 +01:00
Andy Brett
a67038720c Merge pull request #7255 from mkllnk/fail-on-translations
Raise errors in specs with missing translations
2021-03-30 08:37:15 -07:00
Matt-Yorkley
74ba6e35be Merge pull request #7283 from Matt-Yorkley/unit-price-nils
Defend against nils in variant serializer
2021-03-30 17:00:26 +02:00
Transifex-Openfoodnetwork
42efb6f762 Updating translations for config/locales/fr_CA.yml 2021-03-31 01:10:30 +11:00
Pau Pérez Fabregat
7d5726b6c7 Merge pull request #7150 from coopdevs/use-order-balance-object
Feature-toggle all remaining parts of the app where the order balance is shown
2021-03-30 15:58:12 +02:00
Matt-Yorkley
741dee29c3 Defend against nils in variant serializer
If unit_price.denominator ever returns nil, the serializer won't explode now.
2021-03-30 14:45:33 +01:00
Transifex-Openfoodnetwork
a41852ee7a Updating translations for config/locales/en_CA.yml 2021-03-31 00:41:40 +11:00
Guido Oliveira
877d76cf19 fix display scrollbar only if needed 2021-03-30 10:05:04 -03:00
Matt-Yorkley
153ec268b7 Remove RackRequestBlocker 2021-03-30 13:24:44 +01:00
Matt-Yorkley
92eaf5fbaa Remove atomic gem
Bundler says this when installing gems:
```
Post-install message from atomic:
This gem has been deprecated and merged into Concurrent Ruby (http://concurrent-ruby.com).
```
We already have concurrent-ruby 👍
2021-03-30 12:29:48 +01:00
Maikel Linke
0980b81742 Raise errors in specs with missing translations
The previous mechanism didn't seem to work and newer Rails versions have
an easier config for this now.

Also fixing all i18n errors which were now failing specs.
2021-03-30 17:08:17 +11:00
dependabot[bot]
30df1cc55d Bump karma from 6.3.1 to 6.3.2
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.1 to 6.3.2.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v6.3.1...v6.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:55:35 +00:00
Andy Brett
61a39311b4 improve specs 2021-03-29 22:51:40 -07:00
dependabot[bot]
c05a9cfb40 Bump ffaker from 2.16.0 to 2.18.0
Bumps [ffaker](https://github.com/ffaker/ffaker) from 2.16.0 to 2.18.0.
- [Release notes](https://github.com/ffaker/ffaker/releases)
- [Changelog](https://github.com/ffaker/ffaker/blob/main/Changelog.md)
- [Commits](https://github.com/ffaker/ffaker/compare/v2.16.0...v2.18.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:35:24 +00:00
dependabot[bot]
adff08038a Bump test-prof from 0.11.3 to 1.0.2
Bumps [test-prof](https://github.com/test-prof/test-prof) from 0.11.3 to 1.0.2.
- [Release notes](https://github.com/test-prof/test-prof/releases)
- [Changelog](https://github.com/test-prof/test-prof/blob/master/CHANGELOG.md)
- [Commits](https://github.com/test-prof/test-prof/compare/v0.11.3...v1.0.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:33:19 +00:00
dependabot[bot]
e8bc1f5aca Bump acts_as_list from 0.9.19 to 1.0.3
Bumps [acts_as_list](https://github.com/brendon/acts_as_list) from 0.9.19 to 1.0.3.
- [Release notes](https://github.com/brendon/acts_as_list/releases)
- [Changelog](https://github.com/brendon/acts_as_list/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brendon/acts_as_list/compare/v0.9.19...v1.0.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:24:11 +00:00
dependabot[bot]
ab3b36ac0b Bump ddtrace from 0.46.0 to 0.47.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.46.0 to 0.47.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.46.0...v0.47.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:23:19 +00:00
dependabot[bot]
1a25fb78df Bump bugsnag from 6.19.0 to 6.20.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.19.0 to 6.20.0.
- [Release notes](https://github.com/bugsnag/bugsnag-ruby/releases)
- [Changelog](https://github.com/bugsnag/bugsnag-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bugsnag/bugsnag-ruby/compare/v6.19.0...v6.20.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:21:06 +00:00
dependabot[bot]
e7e337f0aa Bump simplecov from 0.18.5 to 0.21.2
Bumps [simplecov](https://github.com/simplecov-ruby/simplecov) from 0.18.5 to 0.21.2.
- [Release notes](https://github.com/simplecov-ruby/simplecov/releases)
- [Changelog](https://github.com/simplecov-ruby/simplecov/blob/main/CHANGELOG.md)
- [Commits](https://github.com/simplecov-ruby/simplecov/compare/v0.18.5...v0.21.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:19:27 +00:00
dependabot[bot]
65f9454760 Bump capybara from 3.32.2 to 3.35.3
Bumps [capybara](https://github.com/teamcapybara/capybara) from 3.32.2 to 3.35.3.
- [Release notes](https://github.com/teamcapybara/capybara/releases)
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/3.32.2...3.35.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 05:18:12 +00:00
Andy Brett
8867f1ef7a refactor responsibilities and order of operations 2021-03-29 15:37:30 -07:00
Andy Brett
3664b86e03 ignore long module in rubocop 2021-03-29 14:53:13 -07:00
Andy Brett
d0d3b73257 add specs 2021-03-29 14:53:13 -07:00
Andy Brett
9d2fd373ce record subscription issue if no order is generated 2021-03-29 14:53:13 -07:00
Andy Brett
32c0f6777a don't allow edits to adjustments for canceled orders 2021-03-29 14:27:46 -07:00
Transifex-Openfoodnetwork
9094a133d6 Updating translations for config/locales/de_DE.yml 2021-03-30 06:13:32 +11:00
filipefurtad0
9092b60229 turns testcases into shared examples 2021-03-29 20:00:04 +01:00
Matt-Yorkley
4bddc59696 Merge pull request #7247 from luisramos0/ruby25
Upgrade to ruby 2.5.8
2021-03-29 20:21:42 +02:00
Matt-Yorkley
9c2010a43e Update SubscriptionLineItem#variant 2021-03-29 18:41:09 +01:00
Matt-Yorkley
558457993a Update Price#variant 2021-03-29 18:41:09 +01:00
Matt-Yorkley
2c1305b99e Update StockItem#variant 2021-03-29 18:41:09 +01:00
Matt-Yorkley
9f4b825d46 Update InventoryUnit#variant 2021-03-29 18:41:09 +01:00
Matt-Yorkley
eccfcbc396 Update Variant#default_price 2021-03-29 18:41:09 +01:00
Guido Oliveira
dcb5b36859 refactor scroll logic 2021-03-29 14:17:33 -03:00
Guido Oliveira
f004cc5b91 fix content resizing in some browsers 2021-03-29 14:14:39 -03:00
Andy Brett
2be04cc25c Merge pull request #7263 from Matt-Yorkley/mailer-bug
Fix showing soft-deleted products in producer mailer
2021-03-29 09:55:13 -07:00
Pau Pérez Fabregat
e5b1af131f Merge pull request #7261 from coopdevs/remove-semaphore-ci-badge
Remove Semaphore CI badge
2021-03-29 18:40:51 +02:00
Matt-Yorkley
707876820a Fix showing soft-deleted products in producer mailer
The test at `spec/mailers/producer_mailer_spec.rb:115` was failing but we missed it before, as the CI was not reporting failures in some jobs.
2021-03-29 17:31:10 +01:00
Transifex-Openfoodnetwork
5fe8f89e32 Updating translations for config/locales/ca.yml 2021-03-30 03:29:44 +11:00
Transifex-Openfoodnetwork
42803e7a0f Updating translations for config/locales/en_FR.yml 2021-03-30 03:29:41 +11:00
Transifex-Openfoodnetwork
05d38efd8c Updating translations for config/locales/es.yml 2021-03-30 03:29:39 +11:00
Transifex-Openfoodnetwork
e38336693a Updating translations for config/locales/en_FR.yml 2021-03-30 03:06:10 +11:00
Transifex-Openfoodnetwork
f70473677b Updating translations for config/locales/fr.yml 2021-03-30 03:06:05 +11:00
Transifex-Openfoodnetwork
25abf46599 Updating translations for config/locales/es.yml 2021-03-30 02:36:17 +11:00
Transifex-Openfoodnetwork
f0365790d6 Updating translations for config/locales/ca.yml 2021-03-30 02:36:03 +11:00
Pau Perez
2e2e9918a9 Remove Semaphore CI badge
We're now relying on Github Actions as CI build so that's the only
indicator we should check to see if the build is passing in `master`.
2021-03-29 16:28:04 +02:00
Pau Pérez Fabregat
fe3013b0b9 Merge pull request #7250 from drummer83/independent-shopping-tabs
Independent shopping tabs
2021-03-29 16:26:01 +02:00
Pau Pérez Fabregat
6a4c7a462b Merge pull request #7222 from openfoodfoundation/transifex
Transifex
2021-03-29 16:13:02 +02:00
Matt-Yorkley
581217ea2d Merge pull request #7239 from Matt-Yorkley/paranoia-scopes
Update default scopes with acts_as_paranoid
2021-03-29 15:24:44 +02:00
Matt-Yorkley
e8ddbc0449 Merge pull request #7228 from andrewpbrett/freeze-canceled-orders
Remove UI for modifying line items on canceled orders
2021-03-29 15:24:24 +02:00
Pau Pérez Fabregat
325ccdd8d5 Merge pull request #7208 from mkllnk/7130-double-processing-payment
Avoid double processing payment
2021-03-29 13:36:21 +02:00
Transifex-Openfoodnetwork
5fc0b8d724 Updating translations for config/locales/es.yml 2021-03-29 21:26:13 +11:00
Transifex-Openfoodnetwork
56c2caf422 Updating translations for config/locales/ca.yml 2021-03-29 21:25:49 +11:00
Pau Pérez Fabregat
b041b9f537 Merge pull request #7252 from openfoodfoundation/dependabot/bundler/delayed_job_active_record-4.1.6
Bump delayed_job_active_record from 4.1.5 to 4.1.6
2021-03-29 12:24:10 +02:00
Pau Pérez Fabregat
478008ac0d Merge pull request #7249 from Matt-Yorkley/engine-issues
Engine issues
2021-03-29 12:23:03 +02:00
Pau Pérez Fabregat
b8815d2c56 Merge pull request #7159 from Matt-Yorkley/dead-code-adjustment
DCOTW: LineItemBasedAdjustmentHandling
2021-03-29 11:46:23 +02:00
Pau Pérez Fabregat
79dc75d1e4 Merge pull request #7251 from Matt-Yorkley/dead-code-checkout
Remove dead code in Order::Checkout module
2021-03-29 11:45:05 +02:00
Pau Pérez Fabregat
e5ca2e8b27 Merge pull request #7253 from openfoodfoundation/dependabot/bundler/webmock-3.12.2
Bump webmock from 3.12.1 to 3.12.2
2021-03-29 11:36:21 +02:00
Transifex-Openfoodnetwork
fa95334229 Updating translations for config/locales/en_GB.yml 2021-03-29 19:12:58 +11:00
Transifex-Openfoodnetwork
42147e13eb Updating translations for config/locales/en_FR.yml 2021-03-29 18:59:40 +11:00
Transifex-Openfoodnetwork
7be7fb3ddc Updating translations for config/locales/fr.yml 2021-03-29 18:59:29 +11:00
Maikel Linke
ba857cfce4 Move translation for lazy lookup in previous commit 2021-03-29 17:00:11 +11:00
dependabot[bot]
30daab7dc5 Bump webmock from 3.12.1 to 3.12.2
Bumps [webmock](https://github.com/bblimke/webmock) from 3.12.1 to 3.12.2.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.12.1...v3.12.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 05:50:07 +00:00
dependabot[bot]
bc8ca9f316 Bump delayed_job_active_record from 4.1.5 to 4.1.6
Bumps [delayed_job_active_record](https://github.com/collectiveidea/delayed_job_active_record) from 4.1.5 to 4.1.6.
- [Release notes](https://github.com/collectiveidea/delayed_job_active_record/releases)
- [Commits](https://github.com/collectiveidea/delayed_job_active_record/compare/v4.1.5...v4.1.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 05:49:22 +00:00
Transifex-Openfoodnetwork
40e8815b5f Updating translations for config/locales/en_US.yml 2021-03-29 15:46:31 +11:00
Transifex-Openfoodnetwork
13668628c4 Updating translations for config/locales/en_US.yml 2021-03-29 15:45:09 +11:00
Maikel Linke
02703053bc Keep status bar with message without auto-close
The message would disappear after five seconds which can be confusing
for the user (they may miss an important message) and makes our specs
flaky.
2021-03-29 11:12:40 +11:00
Maikel
74b06d16b8 Merge pull request #7209 from openfoodfoundation/dependabot/bundler/rubocop-1.12.0
Bump rubocop from 1.11.0 to 1.12.0
2021-03-29 10:59:38 +11:00
Transifex-Openfoodnetwork
8072aeda9d Updating translations for config/locales/de_DE.yml 2021-03-29 10:28:26 +11:00
Matt-Yorkley
a46a0b609e Remove dead code in Order::Checkout module
🔥
2021-03-28 23:57:16 +01:00
Konrad
a4f9706082 Use independent strings for shopping tabs
shopping_tabs_producers
shopping_tab_groups
2021-03-29 00:34:16 +02:00
Konrad
9f4d2b27bd Add indepentend strings for shopping tabs
shopping_tabs_producers
shopping_tabs_groups
2021-03-29 00:32:32 +02:00
Andy Brett
e85db1468f Merge pull request #7248 from drummer83/patch-1
Updated Ruby version, added link to Debian guide and more…
2021-03-28 11:25:20 -07:00
Matt-Yorkley
110d1ef015 Ensure error code on failing tests 2021-03-28 17:33:55 +01:00
Konrad
b1507f7b2e Updated Ruby version, added link to Debian guide and made requirements more clear. 2021-03-28 00:02:54 +01:00
Luis Ramos
e450fe95a1 Upgrade to ruby 2.5.8 2021-03-27 19:16:32 +00:00
Matt-Yorkley
28ee6a66a0 Update line item adjustments spec
The `adjustable` and `source` associations are basically the same now, and we'll be deleting the latter soon.
2021-03-27 18:59:50 +00:00
Matt-Yorkley
593764851f Remove LineItemBasedAdjustmentHandling 2021-03-27 18:59:49 +00:00
Andy Brett
d92510db56 fix some easy rubocop offenses 2021-03-27 11:21:18 -07:00
Andy Brett
025f1f2725 add routing tests 2021-03-27 11:21:18 -07:00
Andy Brett
51d075166a match any API version 2021-03-27 11:21:18 -07:00
Andy Brett
0b9c62284a only match v0 immediately following api/ in the path 2021-03-27 11:21:18 -07:00
Andy Brett
ef38abed28 preserve GET params in url 2021-03-27 11:21:18 -07:00
Andy Brett
5a19a14042 rename to v0 2021-03-27 11:21:18 -07:00
Andy Brett
718a3be9f4 Merge pull request #7241 from luisramos0/more_rspec
[rails 5-2] More fixes to rspec syntax
2021-03-27 07:44:14 -07:00
Luis Ramos
f6f9159430 Fix rspec syntax 2021-03-26 23:45:12 +00:00
Luis Ramos
d66a78ecce Add magic comment 2021-03-26 23:42:07 +00:00
Luis Ramos
3fe5f04fbc Fix rspec syntax 2021-03-26 23:04:32 +00:00
Luis Ramos
30ca608fb9 Fix rspec syntax 2021-03-26 23:03:27 +00:00
Luis Ramos
8f7025b8c6 Fix rspec syntax 2021-03-26 23:01:23 +00:00
Luis Ramos
396c379f37 Fix rspec syntax 2021-03-26 22:50:48 +00:00
Luis Ramos
60ae3a8a4f Fix rspec syntax 2021-03-26 22:37:54 +00:00
Luis Ramos
34771c89f9 Fix rspec syntax 2021-03-26 22:34:16 +00:00
Luis Ramos
f62f958a4c Fix rspec syntax 2021-03-26 22:29:50 +00:00
Luis Ramos
ad3745f032 Fix rspec syntax 2021-03-26 22:19:16 +00:00
Matt-Yorkley
69cdb85291 Remove #with_unscoped_products_and_variants. Thanks @andrewpbrett :)
🔥
2021-03-26 19:08:17 +00:00
Matt-Yorkley
1b19d4bdee Update default scopes with acts_as_paranoid
Fixes an issue where the LineItem :sorted_by_name_and_unit_value scope was not working with removal of the default scopes on line item and variant, which meant that the join in the scope was excluding soft-deleted items that should not have been excluded.
2021-03-26 18:22:05 +00:00
Andy Brett
d78517b6ed Update app/views/spree/admin/orders/_add_product.html.haml
Co-authored-by: Maikel <maikel@email.org.au>
2021-03-26 09:34:12 -07:00
Andy Brett
19c2c9c1c5 Merge pull request #7175 from openfoodfoundation/7130-notify-on-payment-intent-error
Record invalid payment states for debugging
2021-03-26 08:33:07 -07:00
Matt-Yorkley
902265c678 Merge pull request #7235 from jibees/7220-import-ofn-font-into-admin
Fix font import from Darkswarm to admin
2021-03-26 15:27:07 +01:00
Matt-Yorkley
881e6dbac7 Add more explicit touch spec for Exchange -> Enterprise 2021-03-26 13:01:33 +00:00
Matt-Yorkley
45a06a300e Update Exchange touch on Enterprise to use touch_later
This can improve issues with deadlocks where multiple touch calls are triggered in a single update, for example where an exchange touches it's parent enterprise on save, and we do this:

oc_with_lots_of_exchanges.exchanges.each{|ex| ex.clone! }
2021-03-26 12:44:50 +00:00
Jean-Baptiste Bellet
ee4beb57db Do not import darkswarm file into admin, but only needed selector 2021-03-26 12:27:33 +01:00
Transifex-Openfoodnetwork
ad14a91eb2 Updating translations for config/locales/en_FR.yml 2021-03-26 22:00:33 +11:00
Transifex-Openfoodnetwork
09e0474069 Updating translations for config/locales/fr.yml 2021-03-26 21:57:16 +11:00
Transifex-Openfoodnetwork
59cf5aa3ec Updating translations for config/locales/ru.yml 2021-03-26 21:31:08 +11:00
Jean-Baptiste Bellet
0ea085a275 Add unit prices for already bought product in cart page 2021-03-26 09:49:28 +01:00
Jean-Baptiste Bellet
2b93814fb1 Add context inside scope: used to specify display
- Context is used to customize some CSS specifications as sometimes display can be different (depending on the context)
 - variant variable was not used: copy/paste error
2021-03-26 09:11:42 +01:00
Transifex-Openfoodnetwork
2e8178a33f Updating translations for config/locales/es.yml 2021-03-26 18:42:11 +11:00
Transifex-Openfoodnetwork
96bb26ad45 Updating translations for config/locales/ca.yml 2021-03-26 18:37:20 +11:00
Maikel Linke
4c1f977d26 Return thread syncing to concurrency spec
Without syncing the two threads with a lock, the spec could accidentally
pass even if the code is broken. It was accidentally removed during
refactoring in b0fa1464f.
2021-03-26 12:07:46 +11:00
Maikel Linke
cbd730f4eb Remove left-over comment
This spec was fixed before and the comment was outdated.
2021-03-26 12:07:24 +11:00
Andy Brett
563a2758a6 remove UI for modifying line items on canceled orders 2021-03-25 16:52:56 -07:00
Transifex-Openfoodnetwork
bc191ab9bb Updating translations for config/locales/de_DE.yml 2021-03-26 10:50:19 +11:00
Jean-Baptiste Bellet
2849f18313 Add some CSS specification to avoid page content up/down move
- Use `display: flex`
 - Improve the display of the blue cross by a better alignement into the circle
2021-03-25 23:21:26 +01:00
Andy Brett
254f5e95af Merge pull request #7219 from jibees/7216-fix-failing-specs-on-unit-price
Refactor unit price i18n keys
2021-03-25 13:26:14 -07:00
Andy Brett
5631c895b7 Merge pull request #7155 from jibees/7126-fix-links-to-customer-email
/admin/orders : fix incorrect value of the mail field in the mailto link
2021-03-25 12:55:24 -07:00
Andy Brett
691dd05028 Merge pull request #6956 from andrewpbrett/unit-price-backend
Provide actual unit price values in front end shop
2021-03-25 12:50:59 -07:00
Andy Brett
1d78a827ae Merge pull request #7156 from jibees/5679-add-i18n-keys-for-distance_of_time_in_words_to_now-method
Add keys to handle some i18n issues
2021-03-25 12:43:09 -07:00
Andy Brett
2490861639 show correct values in line_item.rb 2021-03-25 12:26:02 -07:00
Transifex-Openfoodnetwork
8638509d01 Updating translations for config/locales/fr.yml 2021-03-26 06:20:25 +11:00
Transifex-Openfoodnetwork
76214e7733 Updating translations for config/locales/en_FR.yml 2021-03-26 06:17:27 +11:00
Transifex-Openfoodnetwork
aad9a69cfe Updating translations for config/locales/fr.yml 2021-03-26 06:17:20 +11:00
Matt-Yorkley
5b3fd25a78 Update all locales with the latest Transifex translations 2021-03-25 19:01:50 +00:00
Matt-Yorkley
cdd052d39f Merge pull request #7218 from openfoodfoundation/transifex
Transifex
2021-03-25 19:57:49 +01:00
Jean-Baptiste Bellet
5c93ccc0e3 Refactor unit price i18n keys
- Now got two keys: `js.admin.unit_price_tooltip` and `js.shopfront.unit_price_tooltip`
2021-03-25 17:59:20 +01:00
Transifex-Openfoodnetwork
93501743b6 Updating translations for config/locales/ar.yml 2021-03-26 03:48:04 +11:00
Matt-Yorkley
0f5af2d9f1 Merge pull request #6927 from Matt-Yorkley/adjustments-payment-fee
[Adjustments] Payment fee adjustment
2021-03-25 17:40:53 +01:00
Andy Brett
b68476cdcb Merge pull request #7212 from coopdevs/remove-n+1-on-admin-customers
Fix multiple N+1s on /admin/customers.json
2021-03-25 09:29:43 -07:00
Andy Brett
be60adbcb3 update class name to singular in spec 2021-03-25 08:51:16 -07:00
Andy Brett
907c0d3e8c rename unit_price.rb file 2021-03-25 08:51:15 -07:00
Andy Brett
d2828585eb fix typo in spec 2021-03-25 08:51:15 -07:00
Andy Brett
6ebf45610d use instance_double in specs 2021-03-25 08:51:15 -07:00
Andy Brett
7319ef7345 use better method and class names 2021-03-25 08:51:15 -07:00
Andy Brett
330839012e add translation 2021-03-25 08:51:15 -07:00
Andy Brett
89c7342892 memoize UnitPrices object 2021-03-25 08:51:15 -07:00
Andy Brett
0afc2d281a shorten UnitPrices method names 2021-03-25 08:51:15 -07:00
Andy Brett
39fc0707c3 provide unit price values in front end shop 2021-03-25 08:51:15 -07:00
Matt-Yorkley
f684b5b234 Make bullet activation optional
This should speed up CI, and still makes it easy to use when needed.
2021-03-25 15:36:51 +00:00
Matt-Yorkley
cbd7c9f4c0 Update adjustments controller collection scope 2021-03-25 15:02:02 +00:00
Pau Pérez Fabregat
b12293d1fb Merge pull request #6991 from jibees/6494-show-unit-price-in-admin/product-edit-form
Show unit price in admin/product edit form
2021-03-25 15:59:09 +01:00
Pau Pérez Fabregat
0121c18823 Merge pull request #7210 from openfoodfoundation/dependabot/npm_and_yarn/karma-6.3.1
Bump karma from 0.13.22 to 6.3.1
2021-03-25 12:43:11 +01:00
Pau Pérez Fabregat
56d2db8c58 Merge pull request #7194 from Matt-Yorkley/deprecations-validates-id
Deprecations: validation definitions
2021-03-25 12:39:33 +01:00
Pau Pérez Fabregat
914e6d5f21 Merge pull request #7196 from Matt-Yorkley/deprecations-uniq
Deprecations: certain uses of #uniq
2021-03-25 12:12:36 +01:00
Pau Pérez Fabregat
26bd6f0f17 Merge pull request #7205 from Matt-Yorkley/deprecations-3
Deprecations 3
2021-03-25 12:11:30 +01:00
Pau Pérez Fabregat
9397922902 Merge pull request #7206 from openfoodfoundation/transifex
Transifex
2021-03-25 11:33:08 +01:00
Pau Perez
ead1ab31b4 Fix multiple N+1 on /admin/customers.json
This (should) considerably improve traces like
https://app.datadoghq.com/apm/trace/917632173599137280?spanID=3163385094622710144&env=production&sort=time&colorBy=service&spanViewType=metadata&graphType=flamegraph&shouldShowLegend=true
by fixing the following 3 N+1s

```
user: root
GET /admin/customers.json?enterprise_id=4
USE eager loading detected
  Customer => [:enterprise]
  Add to your query: .includes([:enterprise])
Call stack
  /usr/src/app/app/serializers/api/admin/customer_with_calculated_balance_serializer.rb:24:in `balance_value'
  /usr/src/app/app/serializers/api/admin/customer_with_calculated_balance_serializer.rb:9:in `balance'
  /usr/src/app/app/controllers/admin/customers_controller.rb:20:in `block (2 levels) in index'
  /usr/src/app/app/controllers/admin/customers_controller.rb:17:in `index'

user: root
GET /admin/customers.json?enterprise_id=4
USE eager loading detected
  Spree::Address => [:state]
  Add to your query: .includes([:state])
Call stack
  /usr/src/app/app/serializers/api/address_serializer.rb:14:in `state_name'
  /usr/src/app/app/controllers/admin/customers_controller.rb:20:in `block (2 levels) in index'
  /usr/src/app/app/controllers/admin/customers_controller.rb:17:in `index'

user: root
GET /admin/customers.json?enterprise_id=4
USE eager loading detected
  Spree::Address => [:country]
  Add to your query: .includes([:country])
Call stack
  /usr/src/app/app/serializers/api/address_serializer.rb:10:in `country_name'
  /usr/src/app/app/controllers/admin/customers_controller.rb:20:in `block (2 levels) in index'
  /usr/src/app/app/controllers/admin/customers_controller.rb:17:in `index'
```

This popped up after improving the balances calculation. Now, that it's
fast, it's clear that are more performance problems on that endpoint.
We'll see if there are any left after this.
2021-03-25 11:19:00 +01:00
Maikel Linke
49eaee05a2 Deactivate cop Naming/PredicateName
It picked up matcher helpers in specs like `have_in_cart` which is a
useful name here.
2021-03-25 18:10:57 +11:00
Maikel Linke
ffb4ba5ef5 Style numeric predicate use with Rubocop 2021-03-25 18:07:11 +11:00
Maikel Linke
852147bf45 Update Rubocop todo lists 2021-03-25 17:59:59 +11:00
Maikel Linke
853b250afa Disable Rubocop suggestions to avoid noise 2021-03-25 17:44:46 +11:00
Maikel Linke
74fce2d2f1 Disable new Rubo-Cops
We have enough violations already. Let's add them as we see fit and
avoid the warnings for now.
2021-03-25 17:41:45 +11:00
Maikel Linke
f2103e923f Update Rails version for Rubocop 2021-03-25 17:41:05 +11:00
Maikel Linke
0133cb4d22 Update deprecated Rubocop option 2021-03-25 17:40:09 +11:00
dependabot[bot]
33ca13ca8e Bump karma from 0.13.22 to 6.3.1
Bumps [karma](https://github.com/karma-runner/karma) from 0.13.22 to 6.3.1.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v0.13.22...v6.3.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-25 05:50:48 +00:00
dependabot[bot]
04400e0289 Bump rubocop from 1.11.0 to 1.12.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.11.0...v1.12.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-25 05:26:45 +00:00
Maikel Linke
4d242af007 Use pessimistic locking processing Stripe payment
We used pessimistic locking around the `update` action already but when
Stripe redirects back to us we complete the payment in the `edit` action.
2021-03-25 15:17:30 +11:00
Maikel Linke
9fabca134a Fix and re-activate concurrency spec 2021-03-25 14:35:45 +11:00
Maikel Linke
af5ac2a25e Extend test coverage of CheckoutController
I'm covering the interaction with Stripe here to test for error cases in
the future.
2021-03-25 14:35:45 +11:00
Transifex-Openfoodnetwork
ac4903ef67 Updating translations for config/locales/pt_BR.yml 2021-03-25 06:28:47 +11:00
Matt-Yorkley
ba3984104b Replace deprecated #alias_method_chain in Spree::Product 2021-03-24 17:51:22 +00:00
Matt-Yorkley
0ab43d23f9 Replace deprecated reloading by passing true to an association
object.relation(true) -> object.relation.reload
2021-03-24 17:51:22 +00:00
Matt-Yorkley
26ed44412f Update #validates definitions
Where the presence of an object is being validated and that object comes from an *association*, we should use `validates :object, presence: true` instead of `validates :object_id, presence: true`.

This does not apply in the same way to validations on uniqueness of certain attributes, such as `validates :object_id, uniqueness...`
2021-03-24 15:43:09 +00:00
Matt-Yorkley
ec088c3a60 Merge pull request #7161 from openfoodfoundation/dependabot/bundler/oauth2-1.4.7
Bump oauth2 from 1.4.4 to 1.4.7
2021-03-24 13:35:32 +01:00
Matt-Yorkley
932adb533c Merge pull request #7184 from Matt-Yorkley/deprecation-errors-set
Update deprecated errors.set syntax
2021-03-24 13:17:55 +01:00
Matt-Yorkley
f1e4612c05 Update deprecated uses of #uniq
Enumerable#uniq is fine (eg calling #uniq on an Array object), but now using #uniq on an ActiveRecord::Relation is deprecated in favour of #distinct (which modifies the query itself, as opposed to iterating over the results of the query).
2021-03-24 11:42:24 +00:00
Guido Oliveira
6f340174d3 fix content moving when cart is open 2021-03-24 08:29:37 -03:00
Maikel Linke
b27ecb3465 Replace ActiveMerchant's deprecated gateway_mode
It's now just called `mode`. This avoids the warning:

  ../app/models/spree/gateway.rb:31:in `provider': Base#gateway_mode is deprecated in favor of Base#mode and will be removed in a future version
2021-03-24 15:27:44 +11:00
Andy Brett
1cb9504a2c Merge pull request #7187 from luisramos0/uniq
[Rails 5.2] Relation#Uniq is deprecated, distinct is recommended instead
2021-03-23 20:52:47 -07:00
Andy Brett
024efafa39 Merge pull request #7190 from luisramos0/more_spec_syntax
[rails 5.2] Fix more spec syntax
2021-03-23 20:52:31 -07:00
Andy Brett
28ad3a5f1d Merge pull request #7186 from luisramos0/tax_rate_validation_fix
[Rails 5.2] Fix tax_category validation to work in rails 5.2
2021-03-23 20:52:13 -07:00
Andy Brett
8080c09469 Merge pull request #7189 from luisramos0/inv_item_fix
[Rails 5.2] Fix validation problem in inventory items
2021-03-23 20:51:53 -07:00
Luis Ramos
e2df8937e5 Fix rspec syntax in bulk items controller 2021-03-23 22:00:50 +00:00
Luis Ramos
5549054325 Fix rspec syntax in line items controller 2021-03-23 21:55:58 +00:00
Luis Ramos
b14646ff50 Fix rspec syntax in checkout controller 2021-03-23 21:48:52 +00:00
Luis Ramos
7c8c720976 Fix rspec syntax to work with rails 5.2 2021-03-23 21:41:03 +00:00
Luis Ramos
b3d10cfb60 Fix validation of inventory item 2021-03-23 21:22:03 +00:00
Luis Ramos
c2364b3528 Relation#Uniq is deprecated, distinct is recommended instead 2021-03-23 20:57:58 +00:00
Luis Ramos
708c99fe9b Fix validation to work in rails 5.2 2021-03-23 20:33:04 +00:00
Matt-Yorkley
5f4e3c75c7 Update deprecated errors.set syntax
DEPRECATION WARNING: ActiveModel::Errors#set is deprecated and will be removed in Rails 5.1. Use model.errors.add(:preferred_discount_amount, ["has an invalid format. Please enter a number."]) instead. (called from block (2 levels) in localize_number at /home/runner/work/openfoodnetwork/openfoodnetwork/lib/spree/localized_number.rb:38)
2021-03-23 20:11:59 +00:00
Matt-Yorkley
5840b0e33c Adapt adjustment interface for payment's adjustment being singular
Payments only have one adjustment, all other adjustable objects have adjustments (plural).
2021-03-23 18:19:37 +00:00
Matt-Yorkley
e237727ba2 Migrate payment fee adjustments to payment objects 2021-03-23 18:19:37 +00:00
Matt-Yorkley
5d1d72b36b Update Admin::OrdersHelper#order_adjustments_for_display 2021-03-23 18:19:37 +00:00
Matt-Yorkley
21e0c36f4f Update order totals after deleting shipments and payments 2021-03-23 18:19:06 +00:00
Matt-Yorkley
5a7792bebc Update Checkout Restart spec 2021-03-23 18:19:06 +00:00
Matt-Yorkley
3294b33431 Update Payment spec 2021-03-23 18:19:06 +00:00
Matt-Yorkley
2ccaf80013 Update EnterpriseFeeSummary report scopes 2021-03-23 18:19:06 +00:00
Matt-Yorkley
242ccc4fb3 Update OrderAdjustmentsFetcher 2021-03-23 18:18:36 +00:00
Matt-Yorkley
8abfd7c3f3 Update Checkout spec 2021-03-23 18:17:50 +00:00
Matt-Yorkley
cb179c794b Update Paypal spec 2021-03-23 18:17:50 +00:00
Matt-Yorkley
a0e6b64e98 Update Order serializer 2021-03-23 18:17:50 +00:00
Matt-Yorkley
a42651d543 Update Payment fee adjustment 2021-03-23 18:17:50 +00:00
Matt-Yorkley
525fef14b1 Merge pull request #6974 from Matt-Yorkley/adjustments-line-item-fees
[Adjustments] Update line item enteprise fees
2021-03-23 19:06:02 +01:00
Andy Brett
b539015647 Merge pull request #7025 from Matt-Yorkley/adjustments-order-taxes
[Adjustments] Simplify order tax adjustments
2021-03-23 09:37:44 -07:00
Pau Pérez Fabregat
5a16b86ac9 Merge pull request #7178 from andrewpbrett/rebalance-ci
Robustify CI
2021-03-23 16:32:54 +01:00
filipefurtad0
36ab3825e9 covers unit variant changes; adds test to #7180 2021-03-23 15:30:15 +00:00
Pau Pérez Fabregat
ac164df514 Merge pull request #7181 from openfoodfoundation/transifex
Transifex
2021-03-23 16:25:26 +01:00
Andy Brett
e9c259ec98 remove unnecessary type check 2021-03-23 08:12:26 -07:00
Transifex-Openfoodnetwork
cdc40f1b88 Updating translations for config/locales/en_FR.yml 2021-03-23 22:36:35 +11:00
Transifex-Openfoodnetwork
e97135f138 Updating translations for config/locales/en_FR.yml 2021-03-23 22:33:36 +11:00
Transifex-Openfoodnetwork
bf3e9b56c7 Updating translations for config/locales/fr.yml 2021-03-23 22:32:50 +11:00
Pau Pérez Fabregat
07d52bb44f Merge pull request #7173 from Matt-Yorkley/adjustments-indexes
Add indexes on adjustments polymorphic associations
2021-03-23 11:55:30 +01:00
Pau Pérez Fabregat
393ea92dc7 Merge pull request #7177 from coopdevs/fix-balances-order-cycle-report-regression
Fix balances order cycle report regression
2021-03-23 10:08:11 +01:00
Pau Pérez Fabregat
14104cba57 Merge pull request #7171 from openfoodfoundation/transifex
Transifex
2021-03-23 09:38:17 +01:00
Pau Perez
199d48123b Fully qualify table columns in query object
This fixes the error UK's is experiencing:

```
PG::AmbiguousColumn: ERROR: column reference "state" is ambiguous LINE
1: SELECT DISTINCT spree_orders.*, CASE WHEN state IN ('cancele...
^ : SELECT DISTINCT spree_orders.*, CASE WHEN state IN ('canceled',
'returned') THEN payment_total WHEN state IS NOT NULL THEN payment_total
- total ELSE 0 END AS balance_value, spree_orders.* FROM "spree_orders"
INNER JOIN "spree_shipments"
```

See
https://app.bugsnag.com/yaycode/openfoodnetwork-uk/errors/6058c45989d37300079e8312?event_id=6058ccd30075af73bcb20000&i=sk&m=nw.
2021-03-23 09:37:47 +01:00
Pau Perez
c7b85a3591 Sum balances in Payments report implementing #+
This avoids consumers of `OrderBalance` having to couple with the inner
details of this abstraction, which makes the code more changeable.
2021-03-23 09:28:40 +01:00
Andy Brett
eff832c583 cleaner formatting
Co-authored-by: Maikel <maikel@email.org.au>
2021-03-22 20:47:12 -07:00
Andy Brett
3dc627995f Merge pull request #7138 from luisramos0/rails52commits
Rails52commits
2021-03-22 18:13:01 -07:00
Andy Brett
e8f00f3d8c Merge branch 'master' into rails52commits 2021-03-22 17:43:34 -07:00
Andy Brett
50296458b8 Merge pull request #7097 from luisramos0/rails-5-2-rspec-params
Rails 5 2 update Rspec controller syntax
2021-03-22 17:29:29 -07:00
Andy Brett
aab1a5e5d5 Merge pull request #7147 from Matt-Yorkley/deprecations-2
Deprecations 2
2021-03-22 17:28:11 -07:00
Andy Brett
f784db0127 Merge pull request #7100 from luisramos0/view_spec_in_rails5
Rails 5-2 - View spec in rails5
2021-03-22 16:42:56 -07:00
Luis Ramos
13b8b3d4a5 Fix rubocop issues 2021-03-22 23:24:01 +00:00
Andy Brett
2fbc5afce6 add rake task to catch all subfolders under /spec 2021-03-22 16:18:19 -07:00
Luis Ramos
3853aed718 Make validator work in rails 5 and rails 5.2 by adding a proc 2021-03-22 22:45:04 +00:00
Transifex-Openfoodnetwork
58a5a694a9 Updating translations for config/locales/en_US.yml 2021-03-23 08:19:44 +11:00
Luis Ramos
e2ce6634df Adapt specs to new rspec syntax without xhr 2021-03-22 20:43:48 +00:00
Luis Ramos
c224396e71 Correct helper name needed in this spec 2021-03-22 20:38:14 +00:00
Pau Perez
ec4bae3995 Reproduce regression in a test 2021-03-22 19:01:17 +01:00
Andy Brett
dbe06e206c Merge pull request #7048 from andrewpbrett/fix-sub-manifests
Verify line item when placing sub order (Fix #6680)
2021-03-22 10:24:20 -07:00
Andy Brett
f021e5e074 add --profile to all jobs 2021-03-22 09:37:03 -07:00
Andy Brett
8cc6e60ed1 include specs that start with numbers 2021-03-22 09:31:52 -07:00
Matt-Yorkley
3e9d1bfe1f Add defensive more code in not_hidden_for scope 2021-03-22 14:52:42 +00:00
Pau Perez
1a1552a6ed Make OrderUpdater use new balance implementation
In this class we properly calculated the balance taking into account the
orders in cancellation state so we need to use the new implementation if
we don't want to introduce a regression by using
`#old_oustanding_balance`.

I was initially a bit dubious because this method was checking
`order.payments` as well but now I see that was redundant. Is on
`payment_total` to take into account whether or not the order is paid or
any other payment related details.
2021-03-22 11:45:12 +01:00
Pau Perez
f494b720f8 Fix spec 2021-03-22 11:45:12 +01:00
Pau Perez
9762275555 Use old_outstanding_balance on disabled toggle
No need to go through the `OrderBalance` in this context since we
already check for the toggle.
2021-03-22 11:45:12 +01:00
Pau Perez
5082b6dc99 Make BalanceCalculator use old balance calculation
This class is currently used and it gets skipped when the
:customer_balance toggle is enabled, so there's no point on abstracting
the balance with `OrderBalance`. It'll never go through its
`#new_outstanding_balance` branch and it'll be removed once we active
that toggle to everyone.
2021-03-22 11:45:12 +01:00
Pau Perez
5815d1a4a4 Make #outstanding_balance return an OrderBalance
This will let us branch by abstraction. All existing calls to
`#outstanding_balance` will go through `OrderBalance` hence, will
check the feature toggle.

Note that by default, `OrderBalance` will end up calling
`#old_outstanding_balance`. As the name states, that's exactly what
`#outstanding_balance` was so far. This means no consumers will see any
change in behavior. We just added on item in the call stack (sort of).
2021-03-22 11:45:12 +01:00
Transifex-Openfoodnetwork
0d58701b07 Updating translations for config/locales/en_GB.yml 2021-03-22 20:11:05 +11:00
Transifex-Openfoodnetwork
471d2ea25d Updating translations for config/locales/es.yml 2021-03-22 19:57:33 +11:00
Transifex-Openfoodnetwork
6c984ab72f Updating translations for config/locales/ca.yml 2021-03-22 19:56:46 +11:00
Pau Pérez Fabregat
7e176298ef Merge pull request #7162 from openfoodfoundation/dependabot/bundler/i18n-js-3.8.2
Bump i18n-js from 3.8.1 to 3.8.2
2021-03-22 09:04:37 +01:00
Maikel Linke
fce8d3a2f8 Record invalid payment states for debugging
We observed invalid payment states in Bugsnag but we don't actually know
in which state the payment intent was in. From the context we can guess
that it was "succeeded" but it would be good to validate this. And in
the future it would be good to know if there are other invalid states we
can end up in.

The notification to Bugsnag happens in another part of the code.
2021-03-22 16:35:22 +11:00
Maikel Linke
3dac451e5b Add spec for StripeSCA payment gateway
We didn't actually have a unit test for this.
2021-03-22 16:35:22 +11:00
Maikel
56154bdb7e Merge pull request #7168 from andrewpbrett/rebalance-ci
Rebalance CI jobs
2021-03-22 12:23:20 +11:00
Andy Brett
5cbd37f112 reorder jobs and move to 7 jobs 2021-03-21 14:55:53 -07:00
Matt-Yorkley
50e0d78c0c Remove dead callback invocations 2021-03-21 14:06:23 +00:00
Matt-Yorkley
0da90ab834 Update schedules controller callbacks 2021-03-21 14:06:01 +00:00
Matt-Yorkley
6c17680423 Update return authorizations controller callbacks 2021-03-21 14:06:01 +00:00
Matt-Yorkley
365dc2a49e Update payment methods controller callback 2021-03-21 14:05:57 +00:00
Matt-Yorkley
a70b2a12d1 Update variants controller callback 2021-03-21 13:25:32 +00:00
Matt-Yorkley
a82bae2a46 Remove Spree resource controller custom callbacks 2021-03-21 13:25:32 +00:00
Transifex-Openfoodnetwork
e1ae1aa78e Updating translations for config/locales/en_NZ.yml 2021-03-21 11:23:24 +11:00
Matt-Yorkley
85d2f3143b Improve indexes on adjustments adjustable and originator associations 2021-03-20 11:09:53 +00:00
Cillian O'Ruanaidh
31f737422c Pass in owner_id parameter correctly so admin/enterprises#create controller spec doesn't fail 2021-03-19 22:21:47 +00:00
Cillian O'Ruanaidh
4e1eefa877 Extract location map from registration form into its own partial, also add missing new lines 2021-03-19 21:43:29 +00:00
Cillian O'Ruanaidh
f20cea7e4f Allow people to set enterprise latitude/longitude manually or automatically.
This for new changes to the enterprise registration/signup flow where a map will be displayed when people are filling in their address. On this map people can check the geocoder has geocoded their address correctly and if not they can manually adjust their latitude/longitude on the map.

But currently every time someone changes their address in the Admin > Enterprise > Address section the address would automatically be geocoded so this could overwrite the latitude/longitude that was set during sign up. To prevent the latitude/longitude from being overwritten this add's a checkbox which people need to explicity click if they want their address to be automatically geocoded, otherwise it will just use the manually configured latitude/longitude.

Note this new feature which allows people to select their location on a map during registration only works with Google maps so far. So if an instance is using Open Street Map this change also adds support for passing a :use_geocoder parameter to the Api::EnterprisesController during registration so that the address will be geocoded on the backend without the use of a map.
2021-03-19 21:43:29 +00:00
julesemmac
971971803e Improving user discover on ofn map
The context for this update is here: https://community.openfoodnetwork.org/t/improving-user-discovery-on-ofn-map/2013

Also with rebasing help from Maikel Linke <mkllnk@web.de>
2021-03-19 21:43:29 +00:00
Transifex-Openfoodnetwork
4ea195f803 Updating translations for config/locales/de_DE.yml 2021-03-20 08:19:28 +11:00
Andy Brett
40be8e2874 Merge pull request #7157 from Matt-Yorkley/dead-code-billing-names
DCOTW: Order#billing_firstname and Order#billing_lastname
2021-03-19 12:12:03 -07:00
Andy Brett
c298aa19fa rebalance CI jobs 2021-03-19 10:48:18 -07:00
dependabot[bot]
7fe889712b Bump i18n-js from 3.8.1 to 3.8.2
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.8.1 to 3.8.2.
- [Release notes](https://github.com/fnando/i18n-js/releases)
- [Changelog](https://github.com/fnando/i18n-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fnando/i18n-js/compare/v3.8.1...v3.8.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-19 05:26:00 +00:00
dependabot[bot]
4c9d4104ba Bump oauth2 from 1.4.4 to 1.4.7
Bumps [oauth2](https://github.com/oauth-xx/oauth2) from 1.4.4 to 1.4.7.
- [Release notes](https://github.com/oauth-xx/oauth2/releases)
- [Changelog](https://github.com/oauth-xx/oauth2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/oauth-xx/oauth2/compare/v1.4.4...v1.4.7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-19 05:21:59 +00:00
Maikel Linke
f80168fbca Update locales from Transifex 2021-03-19 11:46:30 +11:00
Maikel
16d629e5d2 Merge pull request #7121 from Matt-Yorkley/update-adjustments
Update adjustments
2021-03-19 11:25:22 +11:00
Maikel
cf3b32d712 Merge pull request #7158 from openfoodfoundation/transifex
Transifex
2021-03-19 11:18:10 +11:00
Maikel
c4370f1583 Merge pull request #7045 from jibees/7008-add-automated-tests-for-unit-price
add automated tests for unit price in the shopfront
2021-03-19 11:01:25 +11:00
Matt-Yorkley
77b0e2d23f Update has_many_through on Order
Fixes:

384) Spree::OrderMailer basic behaviour doesn't aggressively escape double quotes in confirmation body
       Failure/Error: adjustments = adjustments.to_a + order.shipment_adjustments.to_a

       ActionView::Template::Error:
         Cannot have a has_many :through association 'Spree::Order#shipment_adjustments' which goes through 'Spree::Order#shipments' before the through association is defined.
       # ./app/helpers/checkout_helper.rb:10:in `checkout_adjustments_for'
       # ./app/views/spree/order_mailer/_order_summary.html.haml:43:in `_app_views_spree_order_mailer__order_summary_html_haml__2911251238692323485_70331958934800'
       # ./app/views/spree/order_mailer/confirm_email_for_customer.html.haml:23:in `_app_views_spree_order_mailer_confirm_email_for_customer_html_haml__3734564010704881256_70331959518520'
       # ./app/mailers/spree/order_mailer.rb:35:in `block in confirm_email_for_customer'
       # ./app/mailers/spree/order_mailer.rb:33:in `confirm_email_for_customer'
       # ./spec/mailers/order_mailer_spec.rb:20:in `block (3 levels) in <top (required)>'
       # ------------------
       # --- Caused by: ---
       # ActiveRecord::HasManyThroughOrderError:
       #   Cannot have a has_many :through association 'Spree::Order#shipment_adjustments' which goes through 'Spree::Order#shipments' before the through association is defined.
       #   ./app/helpers/checkout_helper.rb:10:in `checkout_adjustments_for'
2021-03-18 21:56:37 +00:00
Matt-Yorkley
d5443cf489 Update has_many_through on ShippingMethod
Fixes:

259) Spree::ShippingMethod#shipments can gather all the related shipments
       Failure/Error: expect(shipping_method.shipments).to include(shipment)

       ActiveRecord::HasManyThroughOrderError:
         Cannot have a has_many :through association 'Spree::ShippingMethod#shipments' which goes through 'Spree::ShippingMethod#shipping_rates' before the through association is defined.
       # ./spec/models/spree/shipping_method_spec.rb:190:in `block (3 levels) in <module:Spree>'
2021-03-18 21:56:37 +00:00
Matt-Yorkley
6132f4bf18 Don't pass string to conditional in validation 2021-03-18 21:56:37 +00:00
Luis Ramos
ab18a2e60c [Rails 5] change #process method call args for upgraded rails
Copied from spree a5e14e3313
2021-03-18 21:53:00 +00:00
Matt-Yorkley
a7fd64d7bf Update has_many_through on Schedule 2021-03-18 21:53:00 +00:00
Matt-Yorkley
eb5c37daca Change order of declaration for has_many_through association with it's parent
Fixes:

292) OrderManagement::Subscriptions::ProxyOrderSyncer#sync! when the subscription is not persisted and the schedule includes upcoming oc that closes after ends_at does not create a new proxy order for that oc
       Failure/Error: order_cycle.schedules << schedule

       ActiveRecord::HasManyThroughOrderError:
         Cannot have a has_many :through association 'OrderCycle#schedules' which goes through 'OrderCycle#order_cycle_schedules' before the through association is defined.
       # ./spec/factories.rb:29:in `block (4 levels) in <top (required)>'
       # ./spec/factories.rb:28:in `each'
       # ./spec/factories.rb:28:in `block (3 levels) in <top (required)>'
       # ./engines/order_management/spec/services/order_management/subscriptions/proxy_order_syncer_spec.rb:59:in `block (4 levels) in <module:Subscriptions>'
       # ./engines/order_management/spec/services/order_management/subscriptions/proxy_order_syncer_spec.rb:65:in `block (4 levels) in <module:Subscriptions>'
       # ./engines/order_management/spec/services/order_management/subscriptions/proxy_order_syncer_spec.rb:133:in `block (6 levels) in <module:Subscriptions>'
       # ./engines/order_management/spec/services/order_management/subscriptions/proxy_order_syncer_spec.rb:133:in `block (5 levels) in <module:Subscriptions>'
2021-03-18 21:53:00 +00:00
Matt-Yorkley
ee0da87681 Fix touch call to unsaved object
Failure/Error: enterprise.andand.touch

       ActiveRecord::ActiveRecordError:
         cannot touch on a new or destroyed record object. Consider using persisted?, new_record?, or destroyed? before touching
       # ./app/models/spree/address.rb:155:in `touch_enterprise'
       # ./spec/factories/product_factory.rb:12:in `block (3 levels) in <top (required)>'
       # ./spec/factories/variant_factory.rb:26:in `block (4 levels) in <top (required)>'
       # ./spec/models/spree/variant_spec.rb:9:in `block (2 levels) in <module:Spree>'
2021-03-18 21:53:00 +00:00
Matt-Yorkley
bdbeb2feb8 Require missing dependency in VariantOverride 2021-03-18 21:53:00 +00:00
Andy Brett
80d90700c4 Merge pull request #7142 from coopdevs/tiny-improvement-of-specs
Tiny improvement of specs using OutstandingBalance class
2021-03-18 11:34:52 -07:00
Andy Brett
17143d62d6 Merge pull request #7148 from Matt-Yorkley/bump-cancancan
Bump cancancan to 1.15.0
2021-03-18 11:29:53 -07:00
Andy Brett
23494c918d Merge pull request #7143 from cillian/shorter-transient-data-retention-period
Reduce retention period of Spree state changes and log entries from 6 to 3 months
2021-03-18 11:28:29 -07:00
Matt-Yorkley
479c1ae6e6 Merge pull request #7062 from mkllnk/6327-terms-of-service
Show Terms of Service at checkout if required
2021-03-18 19:16:06 +01:00
Andy Brett
5f9c5c0d90 Merge pull request #7095 from luisramos0/render_plain
Raisl 5 - Render plain and render head
2021-03-18 10:56:48 -07:00
Andy Brett
afa7269f48 Merge branch 'master' into render_plain 2021-03-18 10:53:13 -07:00
Transifex-Openfoodnetwork
92da9b717c Updating translations for config/locales/ar.yml 2021-03-19 04:06:21 +11:00
Andy Brett
577401fca0 add regression spec 2021-03-18 09:18:46 -07:00
Matt-Yorkley
2e20078c05 Delete dead code Order#billing_firstname and Order#billing_lastname
🔥
2021-03-18 15:54:40 +00:00
Andy Brett
97a63edf50 Merge pull request #7096 from luisramos0/rails-5-2-helper
Rails 5.2 add T&Cs helper
2021-03-18 08:16:12 -07:00
Pau Perez
5ee647fd7c Improve specs
Better to rely on a verifying double and reveal our intentions using
`subject` instead.
2021-03-18 15:55:54 +01:00
Pau Pérez Fabregat
a1af16ae72 Merge pull request #7116 from coopdevs/increase-invoice-renderer-coverage
Better test InvoiceRenderer
2021-03-18 15:54:43 +01:00
Pau Pérez Fabregat
72b3dbbf44 Merge pull request #7149 from coopdevs/rearrange-order-updater-specs
Rearrange order updater tests to make them method-centric
2021-03-18 15:53:37 +01:00
Pau Pérez Fabregat
71b902d9d2 Merge pull request #6980 from drummer83/clean-footer
Cleaner and consistent design of front-end footer
2021-03-18 15:53:09 +01:00
Jean-Baptiste Bellet
b8353e0007 Add i18n keys to handle distance_of_time_in_words_to_now result
- This method is already translated thanks to rails-i18n, but it is missing few langages such as 'fr_BE'. Adding those keys makes it possible to have the translation.
 - Adding translations to `en.yml` could be seen as useless (since is already correctly handled by rails-i18n) but this is the way we process i18n issues.
2021-03-18 15:49:31 +01:00
Pau Pérez Fabregat
ec41a571ed Merge pull request #7140 from coopdevs/better-test-subs-mailer
Rearrange and cover balance in subs mailer specs
2021-03-18 15:43:41 +01:00
Jean-Baptiste Bellet
d79c457dae Use native <a /> element to create a mailto link
- Nothing special done by helper method `mail_to` so using a native <a /> element (and it's correctly escaped)
2021-03-18 15:09:21 +01:00
Matt-Yorkley
49f1e44999 Simplify Order#total_tax to cover all taxes from all sources 2021-03-18 14:05:29 +00:00
Matt-Yorkley
2f262f70e1 Update #subject syntax 2021-03-18 13:19:16 +00:00
Matt-Yorkley
6b4de4b3dd Migrate enterprise fees on line items 2021-03-18 13:19:16 +00:00
Matt-Yorkley
bd81289240 Use persisted order is order spec 2021-03-18 13:18:20 +00:00
Matt-Yorkley
2c7d6453ce Fix adjustment test setup in Order spec
Missing order associations...
2021-03-18 13:18:20 +00:00
Matt-Yorkley
9f23bb2203 Update SubscriptionPlacementJob fee deleting 2021-03-18 13:18:20 +00:00
Matt-Yorkley
cafe1b5f1c Update order totals after creating fees
This was being triggered by a callback in Spree::Adjustments before, but now that the adjustable is not the order, it does not get triggered by fees being added to line items...
2021-03-18 13:18:20 +00:00
Matt-Yorkley
62a495a42e Allow line item enterprise fees to be found in EnterpriseFeeSummary report 2021-03-18 13:18:20 +00:00
Matt-Yorkley
526794b32e Refactor CheckoutHelper 2021-03-18 13:18:20 +00:00
Matt-Yorkley
3253ab4616 Fix test setup in CheckoutHelper spec 2021-03-18 13:18:20 +00:00
Matt-Yorkley
4ee0271756 Loosen scope in order enterprise fees tax total method 2021-03-18 13:18:20 +00:00
Matt-Yorkley
f2627dff0b Loosen scope in adjustment spec to include enterprise fees on line items 2021-03-18 13:18:20 +00:00
Matt-Yorkley
a0a787b6ec Delete dead code OrderAdjustmentsFetcher#line_item_adjustments
🎉
2021-03-18 13:18:20 +00:00
Matt-Yorkley
f67a8e4af3 Update and simplify LineItem#price_with_adjustments 2021-03-18 13:18:20 +00:00
Matt-Yorkley
8d4733b3d5 Update EnterpriseFee#clear_all_adjustments 2021-03-18 13:18:20 +00:00
Matt-Yorkley
a768cb2510 Set adjustment "target" (adjustable) to be the line item when adding enterprise fees on line items 2021-03-18 13:18:20 +00:00
Matt-Yorkley
5bbe768827 Update order total in test setup 2021-03-18 13:16:19 +00:00
Matt-Yorkley
bb46df61d4 Simplify Order#total_tax
We get the same value here, but without the three additional database hits to adjustments (both of these values are already present on the order object itself).
2021-03-18 13:16:19 +00:00
Matt-Yorkley
c07a4e6c55 Remove "included_tax" hack from TaxRate
Yay! 🎉

The values of tax amounts stored in adjustments on the order no longer require use of the (deprecated) included_tax field.
2021-03-18 13:16:19 +00:00
Matt-Yorkley
be3e184651 Merge pull request #6973 from Matt-Yorkley/adjustments-line-item-taxes
[Adjustments] Update line item taxes
2021-03-18 11:50:01 +01:00
Matt-Yorkley
3ed8dbe3b3 Merge pull request #7146 from Matt-Yorkley/deprecations
Deprecations
2021-03-18 11:25:14 +01:00
Matt-Yorkley
fea6ca5907 Improve update efficiency in migration 2021-03-18 10:07:16 +00:00
Pau Perez
93bc60664a Fix long lines 2021-03-18 10:00:33 +01:00
Jean-Baptiste Bellet
d8772752da Factorize Unit Price into a single method: displayableUnitPrice
- Code is at a single place
 - No need to import `localizeCurrencyFilter` into Controllers that required unit_prices
 - Add `currencyconfig` into unit_prices_spec as it's now dependant to localizeCurrencyFilter
2021-03-18 09:48:42 +01:00
Jean-Baptiste Bellet
e8a0858f15 Add unit prices into the "Edit variant" form
- Only needs to watch `unit_value_human` and `variant.price` the only two editable field for this form that is related to unit price
 - Add hidden_field_tag to retrieve values into the controller
2021-03-18 09:48:42 +01:00
Jean-Baptiste Bellet
50b0e87722 Move module OFNShared to admin.products
instead of `ofn.admin`
 - `admin.products` is already embeded in `ofn.admin`
 - `OFNShared` needs `mm.foundation` (for tooltipProvider)
2021-03-18 09:48:42 +01:00
Jean-Baptiste Bellet
e137eb724b Readjust height of the question mark icon
- 15px is actually the height of an `<label />` inside a form.
2021-03-18 09:48:42 +01:00
Jean-Baptiste Bellet
945ed5fb78 Avoid NaN on unit price computing 2021-03-18 09:48:42 +01:00
Jean-Baptiste Bellet
5ce558c2db Move value and unit into the same input disabled text field
- Both value and unit of the unit price is now inside the `<input />` text field.
2021-03-18 09:48:42 +01:00
Jean-Baptiste Bellet
c084299b72 Add tests in imperial weight system 2021-03-18 09:48:42 +01:00
Jean-Baptiste Bellet
c8099dc2a4 Do not display unit price value and unit until information is filled
- Display the field but with `null` value
2021-03-18 09:48:32 +01:00
Jean-Baptiste Bellet
fa4974ddb2 React to form changes, compute unit price and display accurate values.
- Add method `processUnitPrice` which is responsible for computing the right unit price, that depends on `price`, `variant_unit_scale`, `variant_unit`, `unit_value` and `variant_unit_name`
 - Watch the needed model to compute the unit price: `product.price` and  `product.variant_unit_name`
 - Add dependencies : UnitPrices and localizeCurrencyFilter
 - Add currencyconfig to spec, as it's needed by localizeCurrencyFilter
 - Put `'ng-controller' => 'unitsCtrl'` to the relevant node.
 - Add new ng-model, as it's needed to watch it in order to compute unit price : `product.price`
 - Finally display the needed information: `product.unit_price_value` and `product.unit_price_unit`
2021-03-18 09:48:32 +01:00
Jean-Baptiste Bellet
8ad3109e95 Pass needed arguments and reorder state machine
- Arguments were misordered and `scale` is needed to compute the denominator.
 - Reorder "state machine" if-else as variant_unit_name is priority and "item" is too.
 - @andrewpbrett I need your review here ;)
 - Still need to test imperial system
2021-03-18 09:48:32 +01:00
Andy Brett
7abb3868fc add UnitPrices service 2021-03-18 09:48:17 +01:00
Jean-Baptiste Bellet
b494cd2f8b Add unit price field to New Product form
- Add a new i18n key for the content of the tooltip:  js.shopfront.unit_price_tooltip.admin
 - Display unit price readonly field near the price field
 - Still fake values, needs to be updated
2021-03-18 09:48:17 +01:00
Jean-Baptiste Bellet
3060670466 Add a key parameter to have possibility of different text inside
- The tooltip between the shopfront and the admin will not be the same
2021-03-18 09:48:17 +01:00
Jean-Baptiste Bellet
daa7cca866 Adjust import to include shared/* between Darkswarm and admin
- Import joyride css file
 - Used by question-mark-with-tooltip used in admin part
2021-03-18 09:48:17 +01:00
Jean-Baptiste Bellet
ec0f99a949 Add joyride-tip-guide css specifications
- Could not add the file itself because of many dependancies are broken the admin part.
 - Just use the strict minimum
2021-03-18 09:48:17 +01:00
Jean-Baptiste Bellet
3fcbb1a5fe Move files from darkswarm to shared
- As this directive is now used by Darkswarm and admin, move files in shared/ folders
 - Needs some css variable in admin part : as question-mark-with-tooltip is used in admin part, it needs some css variable
 - Add own scss variables file with all needed variables for question-mark-icon. Some duplication, but now really independant and shared between both darkswarm and admin.
 - Remove strange border around the button, rendered by chrome when button is focused.
2021-03-18 09:48:17 +01:00
Jean-Baptiste Bellet
429cf4a5cb Create a new angularjs module: OFNShared
- This module could be shared between Darkswarm and admin
 - add this new module to test environment
2021-03-18 09:48:17 +01:00
Jean-Baptiste Bellet
e9b833c27b Add unit test for cart page 2021-03-18 09:40:04 +01:00
Jean-Baptiste Bellet
014ffef16c Add tests about unit price inside the cart sidebar
- Test if the question mark icon is present
 - Click to show the tooltip
 - Another click to hide the tooltip
2021-03-18 09:40:04 +01:00
Jean-Baptiste Bellet
1be1d161d3 Add tests about unit price inside a shopfront
- Test that the unit price wrapper is here
 - Click on the question mark icon and display the tooltip
 - Click outside the question mark icon and hide the toolip
2021-03-18 09:40:04 +01:00
Pau Perez
85446c0dde Rearrange and cover balance in subs mailer specs
This moves them to a more unit-like style where the mailer methods are
the subjects. However, I did so only for the methods that show order
balance and thus we want to be extra sure of their coverage.
2021-03-18 09:18:16 +01:00
Pau Perez
ae9d8020a1 Better test InvoiceRenderer
This required a tiny refactoring to enable injecting the renderer. It'll
make it easier to later add the relevant specs related to the order
balance.
2021-03-18 09:17:44 +01:00
Maikel
33f7fa7e32 Merge pull request #7111 from coopdevs/fix-static-assets-deprecation
Replace assets config with public_file_server
2021-03-18 13:44:30 +11:00
Maikel
e53c996efd Merge pull request #7082 from openfoodfoundation/dependabot/bundler/i18n-1.8.9
Bump i18n from 1.8.5 to 1.8.9
2021-03-18 13:23:08 +11:00
Matt-Yorkley
751b9349e8 Merge pull request #7015 from andrewpbrett/shopfront-producers
Only show primary producers on shopfront list of producers (fix #4218)
2021-03-17 23:30:42 +01:00
Matt-Yorkley
e62cf67be5 Add more defensive code in TaxRateFinder 2021-03-17 22:23:04 +00:00
Matt-Yorkley
baaee1baab Update OrderAdjustmentsFetcher 2021-03-17 22:23:04 +00:00
Matt-Yorkley
064f7582cc Update line_item included taxes
Drops use of the `spree_adjustments.included_tax` database field (when summing line item tax), which we are slowly deprecating before eventual removal
2021-03-17 22:23:04 +00:00
Andy Brett
70b7143e7b reload line items and recalculate fees after removing line item 2021-03-17 12:06:05 -07:00
Matt-Yorkley
8503e3c5f3 Merge pull request #7023 from Matt-Yorkley/ineligible-efficiency
Reduce unnecessary updates in Payment#revoke_adjustment_eligibility
2021-03-17 18:55:01 +01:00
Andy Brett
b8629e847c Merge pull request #7014 from andrewpbrett/canceled-order-payments
Add resumed to list of allowable order states to view the payment tab
2021-03-17 10:46:51 -07:00
Andy Brett
12b66d82ab verify line item when placing sub order
This removes the inventory unit from the shipment manifest, so that the item no longer appears on the order view in the admin view.
2021-03-17 09:35:01 -07:00
Andy Brett
9d33b36799 Merge pull request #7024 from Matt-Yorkley/dead-code-auto-capture
DCOTW: Spree::Config[:auto_capture]
2021-03-17 09:31:00 -07:00
Matt-Yorkley
826515874b Replace some uses of #alias_method_chain 2021-03-17 16:28:19 +00:00
Luis Ramos
333a488dc8 Fix deprecation warning 2021-03-17 16:23:53 +00:00
Pau Perez
b48677c624 Rearrange tests to make them method-centric
If these are unit tests, it's much easier to find a `describe` with the
method under test and putting all the tests exercising that method
together.

It turns out that `#update_payment_state` is by far the method that we
test the most which leads me to think:

a) this class might be doing too many things.
b) other methods might not be that well covered.
2021-03-17 17:05:19 +01:00
Matt-Yorkley
fbff481a8b Bump cancancan
Conservative bump to a newer version that fixes some deprecated syntax for Rails 5.x (eg #before_filter)
2021-03-17 15:37:15 +00:00
Andy Brett
cd988733c3 Merge pull request #7145 from coopdevs/temp-skip-flaky-spec
Temporarily skip embedded shopfront flaky spec
2021-03-17 08:33:53 -07:00
Matt-Yorkley
39b1ae0ee8 Fix validation conditional in Spree::Product 2021-03-17 15:22:22 +00:00
Luis Ramos
da6a7da99d Remove sanitize
This was added here for no specific reason I think, it's just an id, I dont think we need this 1d83809866
2021-03-17 15:22:22 +00:00
Matt-Yorkley
29e0786906 Fix inheritance of Migration object in spec
Fixes:

Spree::Preferences::Preferable persisted preferables requires a valid id but returns default values
       Failure/Error:
               class CreatePrefTest < ActiveRecord::Migration
                 def self.up
                   create_table :pref_tests do |t|
                     t.string :col
                   end
                 end

                 def self.down
                   drop_table :pref_tests
                 end

       StandardError:
         Directly inheriting from ActiveRecord::Migration is not supported. Please specify the Rails release the migration was written for:

           class CreatePrefTest < ActiveRecord::Migration[4.2]
       # ./spec/models/spree/preferences/preferable_spec.rb:225:in `block (3 levels) in <top (required)>'
2021-03-17 15:22:22 +00:00
Matt-Yorkley
4505fa7fd9 Fix warning on Product variants_including_master scope 2021-03-17 15:22:22 +00:00
Matt-Yorkley
55b0751c1a Use strings for class names on associations 2021-03-17 15:15:57 +00:00
Matt-Yorkley
237075dd47 Replace deprecated before_filter syntax 2021-03-17 15:15:26 +00:00
Matt-Yorkley
6c19baeab3 Remove transactional callback config 2021-03-17 15:15:20 +00:00
Pau Pérez Fabregat
571f1b9f87 Merge pull request #7122 from openfoodfoundation/transifex
Transifex
2021-03-17 16:08:49 +01:00
Pau Perez
cf730f8b0c Temporarily skip embedded shopfront flaky spec
Closes #7129 as discussed on that issue.
2021-03-17 16:06:48 +01:00
Andy Brett
9aa992b700 Merge pull request #7067 from openfoodfoundation/dependabot/bundler/rspec-rails-4.1.2
Bump rspec-rails from 4.0.2 to 4.1.2
2021-03-17 07:46:59 -07:00
Pau Perez
8c57ccdaf9 Replace assets test config with public_file_server
This fixes the following deprecation warnings

```
DEPRECATION WARNING: `config.serve_static_files` is deprecated and will be removed in Rails 5.1.
Please use `config.public_file_server.enabled = true` instead.
 (called from block in <top (required)> at /home/runner/work/openfoodnetwork/openfoodnetwork/config/environments/test.rb:13)
DEPRECATION WARNING: `config.static_cache_control` is deprecated and will be removed in Rails 5.1.
Please use
`config.public_file_server.headers = { 'Cache-Control' => 'public, max-age=3600' }`
instead.
 (called from block in <top (required)> at /home/runner/work/openfoodnetwork/openfoodnetwork/config/environments/test.rb:14)
```
2021-03-17 15:43:31 +01:00
Andy Brett
1311ff2959 Merge pull request #7136 from coopdevs/better-test-order-mailer
Rearrange and extend some OrderMailer unit-tests
2021-03-17 07:33:27 -07:00
Cillian O'Ruanaidh
a80e1b7625 Reduce retention period of Spree state changes and log entries from 6 to 3 months
The UK instance noticed Spree state changes and log entries seem to be filling up quite quickly.

Fixes #7123
2021-03-17 12:12:45 +00:00
Matt-Yorkley
3a5f763bf2 Merge pull request #7107 from filipefurtad0/line_items_controller.spec
covers payment_state changes from item deletion
2021-03-17 12:50:52 +01:00
Transifex-Openfoodnetwork
736a628082 Updating translations for config/locales/en_IE.yml 2021-03-17 22:31:32 +11:00
Pau Perez
f56678bcd9 Rearrange and extend some OrderMailer unit-tests
This moves them to a more unit-like style where the mailer methods are
the subjects. However, I did so only for the methods that show order
balance and thus we want to be extra sure of their coverage.
2021-03-17 12:09:06 +01:00
Pau Pérez Fabregat
51f63060a4 Merge pull request #6879 from coopdevs/customer-balance-bulk-coop-report
Customer balance bulk coop report
2021-03-17 12:08:44 +01:00
Pau Pérez Fabregat
0a1a1c3567 Merge pull request #7137 from andrewpbrett/ci-timezones
Fix failing timezone-related specs
2021-03-17 12:03:39 +01:00
Maikel
3a0c9814b8 Merge pull request #7037 from openfoodfoundation/dependabot/bundler/awesome_print-1.9.2
Bump awesome_print from 1.8.0 to 1.9.2
2021-03-17 17:26:22 +11:00
Luis Ramos
c4c5bbc9a3 Adapt helpers to rails 5.2 2021-03-16 23:37:24 +00:00
Luis Ramos
32c68f5951 Adapt helper call to make it work in rails 5.2 2021-03-16 23:37:24 +00:00
Luis Ramos
f55150745e Add checkout helper to checkout controller 2021-03-16 23:37:24 +00:00
Luis Ramos
d4cbf47226 Add T and Cs helper to checkout controller 2021-03-16 23:37:24 +00:00
Luis Ramos
25e0262364 Adapt spec to new rspec syntax with params and no xhr 2021-03-16 23:31:43 +00:00
Luis Ramos
f710bbed3e Convert calls to xhr to post or put with xhr: true 2021-03-16 23:31:43 +00:00
Luis Ramos
58c3c49cfb Adapt to new rspec syntax 2021-03-16 23:31:43 +00:00
Luis Ramos
c5581fa25f Rename spec/support/CheckoutHelper to resolve colision with app/helpers/CheckoutHelper 2021-03-16 23:20:11 +00:00
Luis Ramos
a953a12f76 Remove dead code 2021-03-16 23:20:11 +00:00
Luis Ramos
138522bd17 Add helper to view spec to make it work in rails 5 2021-03-16 23:20:11 +00:00
Luis Ramos
cb8fd2131e Use body: nil instead of deprecated nothing:
Ideally we would be using render head status but it's issuing quite a lot of double render problems, we can improve later
2021-03-16 23:13:58 +00:00
Luis Ramos
53d758ca21 Replace render text with render plain for rails 5.1 2021-03-16 23:13:58 +00:00
dependabot[bot]
4adaa6d28d Bump rspec-rails from 4.0.2 to 4.1.2
Bumps [rspec-rails](https://github.com/rspec/rspec-rails) from 4.0.2 to 4.1.2.
- [Release notes](https://github.com/rspec/rspec-rails/releases)
- [Changelog](https://github.com/rspec/rspec-rails/blob/main/Changelog.md)
- [Commits](https://github.com/rspec/rspec-rails/compare/v4.0.2...v4.1.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-16 22:33:54 +00:00
dependabot[bot]
7f594026cd Bump awesome_print from 1.8.0 to 1.9.2
Bumps [awesome_print](https://github.com/awesome-print/awesome_print) from 1.8.0 to 1.9.2.
- [Release notes](https://github.com/awesome-print/awesome_print/releases)
- [Changelog](https://github.com/awesome-print/awesome_print/blob/master/CHANGELOG.md)
- [Commits](https://github.com/awesome-print/awesome_print/compare/v1.8.0...v1.9.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-16 22:32:03 +00:00
filipefurtad0
2e870ed7bc replace update! w/ reload; remove assertion 2021-03-16 22:02:26 +00:00
filipefurtad0
87e4b5e49d covers payment_state changes from item deletion 2021-03-16 22:02:26 +00:00
dependabot[bot]
6ebcff9a4a Bump i18n from 1.8.5 to 1.8.9
Bumps [i18n](https://github.com/ruby-i18n/i18n) from 1.8.5 to 1.8.9.
- [Release notes](https://github.com/ruby-i18n/i18n/releases)
- [Changelog](https://github.com/ruby-i18n/i18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ruby-i18n/i18n/compare/v1.8.5...v1.8.9)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-16 19:32:53 +00:00
Andy Brett
06deab9605 Merge pull request #7084 from openfoodfoundation/dependabot/bundler/acts-as-taggable-on-7.0.0
Bump acts-as-taggable-on from 4.0.0 to 7.0.0
2021-03-16 12:31:58 -07:00
Matt-Yorkley
d64fd195c0 Merge pull request #7104 from openfoodfoundation/dependabot/bundler/compass-rails-4.0.0
Bump compass-rails from 2.0.1 to 4.0.0
2021-03-16 20:31:49 +01:00
Andy Brett
046a2077f2 check the time, not the printed zone, in the spec 2021-03-16 12:14:27 -07:00
Andy Brett
f9f1bf8331 specify UTC explicitly 2021-03-16 12:00:20 -07:00
Andy Brett
134e017122 Merge pull request #7085 from openfoodfoundation/dependabot/bundler/responders-3.0.1
Bump responders from 2.4.1 to 3.0.1
2021-03-16 11:24:28 -07:00
dependabot[bot]
b1b71483de Bump responders from 2.4.1 to 3.0.1
Bumps [responders](https://github.com/heartcombo/responders) from 2.4.1 to 3.0.1.
- [Release notes](https://github.com/heartcombo/responders/releases)
- [Changelog](https://github.com/heartcombo/responders/blob/master/CHANGELOG.md)
- [Commits](https://github.com/heartcombo/responders/compare/v2.4.1...v3.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-16 17:57:43 +00:00
Matt-Yorkley
0f05198f48 Update any adjustments that are missing an order association 2021-03-16 17:45:11 +00:00
Andy Brett
0d364c6b69 Merge pull request #7110 from Matt-Yorkley/payment-capture-error
Fix payment capture handling in Api::OrdersController
2021-03-16 10:41:43 -07:00
Matt-Yorkley
2ba6a3cc23 Merge pull request #7133 from coopdevs/fix-env-deprecation
Fix `env` deprecated in Rails 5.0
2021-03-16 18:29:40 +01:00
Andy Brett
3ff9a0f2a3 Merge pull request #7135 from Matt-Yorkley/paypal-spec-setup
Update order totals in paypal test setup
2021-03-16 10:22:48 -07:00
Andy Brett
76940a6a2e Merge pull request #7134 from coopdevs/feature-test-payments-report
Feature-test payments report
2021-03-16 10:18:36 -07:00
Matt-Yorkley
c91f02a94a Update order totals in paypal test setup 2021-03-16 16:52:30 +00:00
Andy Brett
e8a256ecc5 Merge pull request #7132 from Matt-Yorkley/reload-deprecations
Replace deprecated use of :reload argument
2021-03-16 09:31:24 -07:00
Pau Perez
16647006c6 Feature-test payments report
This report displays order balances and we'll need this basic
feature-test coverage to ensure it keeps working once we refactor them.
2021-03-16 17:05:31 +01:00
Andy Brett
b0f2688001 Merge pull request #7128 from jibees/7127-terms-&-conditions-test-fails
Use timezone as hour and minute offset from UTC in terms_and_conditions_spec.rb
2021-03-16 08:34:18 -07:00
Pau Perez
57101aa5b6 Fix env deprecated in Rails 5.0
I found it at the very bottom of the `test-consumer-features` CI build
job. See: https://github.com/rails/rails/issues/23294.
2021-03-16 15:12:44 +01:00
Matt-Yorkley
e78fb784c6 Merge pull request #7042 from coopdevs/fix-money-object-deprecation-warnings
Fix money object deprecation warnings
2021-03-16 14:30:51 +01:00
Matt-Yorkley
5e8d231c49 Merge pull request #7113 from coopdevs/fix-reload-deprecation-on-user-112
Fix deprecation warning related to #reload
2021-03-16 14:25:18 +01:00
Matt-Yorkley
80a654cef1 Merge pull request #6938 from Matt-Yorkley/paypal-adjustments-coverage
[Adjustments] Paypal adjustments test coverage
2021-03-16 13:16:07 +01:00
Matt-Yorkley
2d9d293405 Replace deprecated use of :reload argument 2021-03-16 12:04:35 +00:00
Jean-Baptiste Bellet
57a65da674 Use timezone as hour and minute offset from UTC
- e.g. +0900 (and not e.g. +09:00)
2021-03-16 09:52:45 +01:00
Pau Perez
6fae80bb04 Fix deprecation warning related to #reload
This fixes:

```
DEPRECATION WARNING: Passing an argument to force an association to
reload is now deprecated and will be removed in Rails 5.1. Please call
`reload` on the result collection proxy instead. (called from
can_own_more_enterprises? at /usr/src/app/app/models/spree/user.rb:112)
```

This method in particular gets called a lot of times so it'll have it's
cost in performance.
2021-03-16 08:01:25 +01:00
Andy Brett
fbc0d8f352 Merge pull request #7125 from coopdevs/show-build-status-in-prs
Run Github CI build on pull_request event
2021-03-15 15:30:26 -07:00
Andy Brett
ae4e8386c4 Merge pull request #7019 from openfoodfoundation/dependabot/bundler/monetize-1.11.0
Bump monetize from 1.10.0 to 1.11.0
2021-03-15 15:13:27 -07:00
Andy Brett
ffe9d4737c Merge pull request #7114 from coopdevs/extract-spec-file
Move invoice-related specs to their own file
2021-03-15 15:11:14 -07:00
Pau Pérez Fabregat
8a359ba1e4 Merge pull request #7086 from Matt-Yorkley/adjustments-index
[Adjustments] Add index on spree_adjustments.order_id
2021-03-15 21:52:40 +01:00
Pau Perez
e952664a14 Run build on pull_request event
As is, we're seeing builds almost only on merge commits and not on
others. Also, the build status is not displayed at the bottom of the
PR.

Once we see this fixed and have a better understanding, we can decide
whether or not we remove the `push` event. I guess both we'll be needed.
2021-03-15 20:06:15 +01:00
Transifex-Openfoodnetwork
eb9cf04071 Updating translations for config/locales/fr_CA.yml 2021-03-16 04:22:30 +11:00
Transifex-Openfoodnetwork
e55457d9dd Updating translations for config/locales/en_CA.yml 2021-03-16 04:13:10 +11:00
Transifex-Openfoodnetwork
aeefd068bf Updating translations for config/locales/en_CA.yml 2021-03-16 03:58:49 +11:00
Pau Pérez Fabregat
7b6e94057c Merge pull request #7119 from Matt-Yorkley/flaky-timezones
Allow timezone from ENV vars, but use UTC as default
2021-03-15 17:53:15 +01:00
Matt-Yorkley
c045efb89d Merge pull request #7112 from Matt-Yorkley/admin-adjustments-controller
Ensure order association is set correctly when adding admin adjustments
2021-03-15 16:51:10 +01:00
Matt-Yorkley
4d7029f0c9 Allow timezone from ENV vars, but use UTC as default 2021-03-15 14:55:22 +00:00
Matt-Yorkley
657291df90 Update order total when editing admin adjustments 2021-03-15 11:46:14 +00:00
Pau Perez
7a3121b624 Move invoice-related specs to their own file
The `Spree::Admin::OrdersController`'s test file quite long (as well as
the controller itself) but it'll grow more in the upcoming commits.
That's just a symptom of that controller having too many
responsibilities. It does much more than CRUD on `Spree::Order` (the
Rails convention).

Things like invoices are an entity on their own and would better fit
into a `InvoicesController`. Hopefully, splitting up the tests is hint
for the next dev to do that.
2021-03-15 12:45:27 +01:00
Pau Pérez Fabregat
162ae4ff24 Merge pull request #7103 from andrewpbrett/update-ci
Combine model jobs in CI
2021-03-15 12:29:09 +01:00
Matt-Yorkley
3219ea231d Ensure order association is set correctly when adding admin adjustments 2021-03-15 11:18:14 +00:00
Matt-Yorkley
5354c63d9a Fix payment capture handling in Api::OrdersController
Fixes:

NoMethodError: undefined method `t' for #<Api::OrdersController:0x0000000013834290>
Location
app/controllers/api/orders_controller.rb:50 - payment_capture_failed
2021-03-15 10:36:07 +00:00
Pau Pérez Fabregat
71aec23c0d Merge pull request #7064 from coopdevs/abstract-order-balance
Abstract order balance in a simple PORO
2021-03-15 11:35:45 +01:00
dependabot[bot]
1fcc77dbe7 Bump acts-as-taggable-on from 4.0.0 to 7.0.0
Bumps [acts-as-taggable-on](https://github.com/mbleigh/acts-as-taggable-on) from 4.0.0 to 7.0.0.
- [Release notes](https://github.com/mbleigh/acts-as-taggable-on/releases)
- [Changelog](https://github.com/mbleigh/acts-as-taggable-on/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mbleigh/acts-as-taggable-on/compare/v4.0.0...v7.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-14 18:47:23 +00:00
dependabot[bot]
492858ae1f Bump compass-rails from 2.0.1 to 4.0.0
Bumps [compass-rails](https://github.com/Compass/compass-rails) from 2.0.1 to 4.0.0.
- [Release notes](https://github.com/Compass/compass-rails/releases)
- [Changelog](https://github.com/Compass/compass-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Compass/compass-rails/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-14 14:21:13 +00:00
dependabot[bot]
431536e8a6 Bump monetize from 1.10.0 to 1.11.0
Bumps [monetize](https://github.com/RubyMoney/monetize) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/RubyMoney/monetize/releases)
- [Changelog](https://github.com/RubyMoney/monetize/blob/main/CHANGELOG.md)
- [Commits](https://github.com/RubyMoney/monetize/commits/v1.11.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-14 14:21:03 +00:00
Matt-Yorkley
8531d82f02 Merge pull request #7102 from andrewpbrett/fix-ci
Update miniracer to 0.3.1
2021-03-14 15:20:00 +01:00
Andy Brett
9bcefd3605 Merge pull request #7083 from openfoodfoundation/dependabot/bundler/activerecord-import-1.0.8
Bump activerecord-import from 1.0.7 to 1.0.8
2021-03-13 11:27:49 -08:00
Andy Brett
c45bb470e7 Merge pull request #7066 from luisramos0/legacy_user
Remove dead current_api_user helper
2021-03-13 11:17:05 -08:00
Andy Brett
29db3ed3ad Merge pull request #7078 from mkllnk/coverage
Disable code coverage by default
2021-03-13 11:16:47 -08:00
dependabot[bot]
135f5c63e0 Bump activerecord-import from 1.0.7 to 1.0.8
Bumps [activerecord-import](https://github.com/zdennis/activerecord-import) from 1.0.7 to 1.0.8.
- [Release notes](https://github.com/zdennis/activerecord-import/releases)
- [Changelog](https://github.com/zdennis/activerecord-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zdennis/activerecord-import/compare/v1.0.7...v1.0.8)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-13 19:00:54 +00:00
Andy Brett
89e0fd8f0a combine model jobs 2021-03-13 10:30:15 -08:00
Andy Brett
902cd92f96 update miniracer 2021-03-13 10:28:09 -08:00
Andy Brett
54825aa264 Merge pull request #7099 from Matt-Yorkley/rails-5-fixes
Rails 5.0 fixes
2021-03-13 07:51:48 -08:00
Andy Brett
b7f9fb8d72 send full redirect URL to stripe 2021-03-13 10:58:33 +00:00
Andy Brett
6996001580 add defensive checking for stripe response 2021-03-13 10:58:30 +00:00
Matt-Yorkley
707d089419 Update type handling in PaymentMethodsController and add tests 2021-03-13 10:57:54 +00:00
Matt-Yorkley
6d51ece69c Tidy up payment method params 2021-03-13 10:57:51 +00:00
Matt-Yorkley
00c7ab1ebb Add index on spree_adjustments.order_id 2021-03-12 10:12:56 +00:00
Matt-Yorkley
274440acdd Migrate database
This is the first migration with Rails 5. Some of the formatting has changed. Done in a separate commit for clarity.
2021-03-12 10:11:55 +00:00
Maikel Linke
62234c0708 Configure SimpleCov as recommended by author
The configuration can go into the central .simplecov file and then we
just need to `require` simplecov to start the coverage process. This
also avoids duplicating the config if we want to start simplecov from
the rails server to cover the lines used in by the server in feature
specs.

https://github.com/simplecov-ruby/simplecov#using-simplecov-for-centralized-config
2021-03-12 11:08:38 +11:00
Maikel Linke
3ee54b1bfa Disable code coverage by default
We can activate it on demand:

  COVERAGE=1 bundle exec rspec

We often run specs in chunks but simplecov needs all tests to be run.
2021-03-12 11:03:12 +11:00
Matt-Yorkley
2c0e9d77b8 Merge pull request #6832 from openfoodfoundation/rails-5-upgrade
Rails 5.0 -> master
2021-03-11 20:20:36 +01:00
Matt-Yorkley
321da76005 Update regression test
This error is no longer thrown by the payment object creation
2021-03-11 12:23:00 +00:00
Matt-Yorkley
6bb85e9acd Fix payment and shipment states issue
For some reason the order objects were stale here when calling order.update! from either a payment or shipment callback, which was overwriting those states as nil on the order.
2021-03-11 12:23:00 +00:00
Matt-Yorkley
ac37db7e00 Update test setup in OrderCycleManagement report 2021-03-11 12:23:00 +00:00
Matt-Yorkley
04a13a4f6f Update Boolean typecasting to Rails 5 version 2021-03-11 12:23:00 +00:00
Matt-Yorkley
7bc63e6e81 Re-add db2fog
Turns out it works with Rails 5
2021-03-11 12:23:00 +00:00
Matt-Yorkley
096b693461 Update Gemfile.lock 2021-03-11 12:23:00 +00:00
Matt-Yorkley
6c00fe44ae Revert order permissions changes 2021-03-11 12:19:55 +00:00
Matt-Yorkley
7924865ff8 Set clearer version 2021-03-11 12:19:55 +00:00
Matt-Yorkley
8d8df447c6 Remove debugging 2021-03-11 12:19:55 +00:00
Matt-Yorkley
25139178b5 Fix appending to collection (take 2) 2021-03-11 12:19:55 +00:00
Matt-Yorkley
c827d77236 Fix reloading completed_order_with_fees factory 2021-03-11 12:19:55 +00:00
Matt-Yorkley
4542a3464e Fix params in Admin::ProductsController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
4c2871e572 Refactor and fix params issues in Admin::OrderCyclesController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
64b52527fd Fix params issues in Admin::SubsciptionsController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
bbbce4e6c9 Fix params issues in Api::EnterprisesController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
c2c8dbfb38 Add strong params in Api::ExchangeProductsController and deal with boolean issue 2021-03-11 12:19:55 +00:00
Matt-Yorkley
9e83cb65db Set concurrency spec to pending
It's not working at all in Rails 5. There's new concurrency modules in Rails 5, we should investigate them...
2021-03-11 12:19:55 +00:00
Matt-Yorkley
3748d92bc8 Fix modifying taxons in ShopsCaching spec
This was triggering an error via the callback Spree::Product#remove_previous_primary_taxon_from_taxons
2021-03-11 12:19:55 +00:00
Matt-Yorkley
aea8d1dc99 Fix appending to Relation in in EnterpriseFeesController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
95b5586f9b Using strings for keys in FormAdapter spec 2021-03-11 12:19:55 +00:00
Matt-Yorkley
e11d1e6cdb Add strong params to Spree::Admin::SearchController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
6087a4b969 Fix rendering of javascript template
The erb tags in this partial were not being parsed as erb, breaking various other things on the page.
2021-03-11 12:19:55 +00:00
Matt-Yorkley
688b3c98d7 Use strong params in variants search 2021-03-11 12:19:55 +00:00
Matt-Yorkley
4ff56ce625 Update deprecated use of #uniq in OrderCyle scopes 2021-03-11 12:19:55 +00:00
Matt-Yorkley
ccf0556711 Fix params mangling in Admin::EnterprisesController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
83278b17db Fix test controller issue 2021-03-11 12:19:55 +00:00
Matt-Yorkley
190770b9df Update query filter params handling 2021-03-11 12:19:55 +00:00
Matt-Yorkley
bd408e02b0 Update OrderCyclesController params usage 2021-03-11 12:19:55 +00:00
Matt-Yorkley
0393ea4219 Update variant params in CartController 2021-03-11 12:19:55 +00:00
Matt-Yorkley
ec597aab1a Fix params issue in ReportsController expectation 2021-03-11 12:19:55 +00:00
Matt-Yorkley
e46fe3735b Fix params issue in controller specs 2021-03-11 12:19:54 +00:00
Matt-Yorkley
1911d25959 Fix Sets::ModelSet spec 2021-03-11 12:19:54 +00:00
Matt-Yorkley
29c34060e9 Add tight pinning on wkhtmltopdf-binary gem version 2021-03-11 12:19:54 +00:00
Matt-Yorkley
2ac4ace3e8 Fix params issues in UserPasswordsController 2021-03-11 12:19:54 +00:00
Matt-Yorkley
dcecfaea87 Fix params issues in OrderCyclescontroller spec 2021-03-11 12:19:54 +00:00
Matt-Yorkley
31df28b348 Fix params mangling in Api::ProductController 2021-03-11 12:19:54 +00:00
Matt-Yorkley
304da48d50 Remove dual boot 2021-03-11 12:19:54 +00:00
Matt-Yorkley
f28cd4a4e5 Adapt checkout FormDataAdapter 2021-03-11 12:06:00 +00:00
Matt-Yorkley
fd1b14ca4a Fix string/integer issues in states controller spec 2021-03-11 12:06:00 +00:00
Matt-Yorkley
ff722e6969 Fix cookie issues in i18n helper spec 2021-03-11 12:06:00 +00:00
Matt-Yorkley
5e3d646f8c Fix params access in reports views 2021-03-11 12:06:00 +00:00
Matt-Yorkley
dcf982c1c3 Fix params mangling issues in SubscriptionsController 2021-03-11 12:06:00 +00:00
Matt-Yorkley
af8d497433 Fix handling of params in variant overrides bulk update actions 2021-03-11 12:06:00 +00:00
Matt-Yorkley
7bf4f88034 Fix params issues in Api::TaxonsController 2021-03-11 12:06:00 +00:00
Matt-Yorkley
c5feb19e5b Fix use of ActiveRecord::Type::Boolean#type_cast_from_database
This method longer exists.
2021-03-11 12:06:00 +00:00
Matt-Yorkley
009844bfe7 Update expected params in reports controller tests 2021-03-11 12:06:00 +00:00
Matt-Yorkley
0f1142b5c4 Fix more broken specs related to accessing params hash 2021-03-11 12:06:00 +00:00
Matt-Yorkley
ed09db6003 Fix broken specs related to accessing params hash 2021-03-11 12:06:00 +00:00
Matt-Yorkley
2fdb1861a6 Fix uses of ActionController::TestResponse in specs
This class has moved / changed slightly.
2021-03-11 12:06:00 +00:00
Matt-Yorkley
5bd1e9c37c Add rails-controller-testing gem
```
Spree::Admin::PaymentMethodsController#create and #update can create a payment method of a valid type
      Failure/Error: expect(response).to redirect_to spree.edit_admin_payment_method_path(assigns(:payment_method))

      NoMethodError:
        assigns has been extracted to a gem. To continue using it,
                add `gem 'rails-controller-testing'` to your Gemfile.
      # ./spec/controllers/spree/admin/payment_methods_controller_spec.rb:41:in `block (3 levels) in <module:Spree>'
```
2021-03-11 12:06:00 +00:00
Matt-Yorkley
120a2c4f3a Merge pull request #7036 from Matt-Yorkley/adjustments-callbacks
[Adjustments] Reduce adjustments callbacks
2021-03-11 12:59:34 +01:00
Matt-Yorkley
29c5703161 Improve OrdersHelper spec and delete dead code
The removed test here was checking for adjustments that have an amount of zero and are eligible. If the amount is zero, it will already be marked as ineligible.
2021-03-11 11:22:35 +00:00
Matt-Yorkley
c5a47b51a6 Update order totals during CheckoutController#update 2021-03-11 11:20:01 +00:00
Matt-Yorkley
714e4f7896 Update test setup in checkout helper spec 2021-03-11 11:20:01 +00:00
Matt-Yorkley
90712647b1 Update totals when processing a return 2021-03-11 11:20:01 +00:00
Matt-Yorkley
4c64aaed77 Remove callbacks in Adjustment that call order.update! 2021-03-11 11:20:01 +00:00
Matt-Yorkley
791a47d170 Merge pull request #6858 from Matt-Yorkley/adjustments-shipping-cost
[Adjustments] Move shipping adjustment from order to shipment
2021-03-11 12:17:14 +01:00
Luis Ramos
12d5120629 Remove dead current_api_user helper 2021-03-11 00:40:51 +00:00
Maikel Linke
06f46c4e29 Remove unnecessary comments 2021-03-11 11:18:12 +11:00
Pau Pérez Fabregat
41adacbffb Merge pull request #7056 from jibees/6978-unit-prices-transform-question-mark-to-cross-to-close-it
Transform question mark to cross to close it (unit price)
2021-03-10 17:08:05 +01:00
Pau Pérez Fabregat
e341b04487 Merge pull request #6902 from openfoodfoundation/setup-postgres-gh-actions
Setup Github Actions as CI
2021-03-10 16:59:59 +01:00
Pau Perez
0eb14bc0a4 Do not modify the HTML returned by Money gem
It was due to these lines that we were returning a broken HTML tag but
also, there's no need to remove blanks.
2021-03-10 16:29:09 +01:00
Pau Perez
42d0f16773 Abstract order balance in a simple PORO
This new class lets us [Branch by
abstraction](https://www.martinfowler.com/bliki/BranchByAbstraction.html)
by encapsulating an order's balance. As a result, that's the only place
where we need to check the feature toggle, instead of every place where
`#outstanding_balance` is called (quite some). That would be very hard
to review and it'd be more likely to introduce bugs.

What I like about this is that we also managed to group together the
data and logic that we had spread in a few places and have it nicely
encapsulated. So, where we had a number, we'll now have an object.

Once we fully change all `#outstanding_balance` consumers to use this
new abstraction we'll be able to remove the methods this class replaces.
These are: `Spree::Order#outstanding_balance?`,
`Spree::Order#display_oustanding_balance` and
`OrderHelper.outstanding_balance_label`.

This is just the first step. I'll follow this up with a PR per
page/mailer/whatever where we use the balance to replace it with an
instance of `OrderBalance`. That is, splitting up what I explored in
https://github.com/openfoodfoundation/openfoodnetwork/pull/6959 but in
very small and manageable pieces.
2021-03-10 16:09:09 +01:00
Pau Pérez Fabregat
82257185c4 Merge pull request #7057 from Matt-Yorkley/missing-tax-translation
Update untranslated string
2021-03-10 10:42:14 +01:00
Pau Pérez Fabregat
66201c6618 Merge pull request #7055 from coopdevs/remove-js-capabilities-to-test
Remove unnecessary JS-capabilites for test
2021-03-10 09:53:23 +01:00
Maikel Linke
20f11327b5 Show combined checkbox when all terms required
The user should need to tick only one box to agree.

We don't remember yet if someone agreed to the platform TOS and
therefore the box is always unticked to start with.

Remembering the agreement is another issue:
https://github.com/openfoodfoundation/openfoodnetwork/issues/6328
2021-03-10 17:09:26 +11:00
Maikel Linke
f73c32ce4b Move rendering logic of terms to helper
Preparing for a third option to display.
2021-03-10 17:09:26 +11:00
Maikel Linke
4af0e61163 Simplify logic for terms and conditions display
Checking for `false` instead of a falsey value allows us to distinguish
from an unset variable and disable the checkout button only when a
checkbox is present and unticked.
2021-03-10 17:09:26 +11:00
Maikel Linke
b266c9df34 Enable checkout button only when terms accepted
This was working with the seller's terms but now it includes the
platform's terms as well.

Pending:

- Simplify Ansible code
- Unify the two terms checkboxes if both required
2021-03-10 17:09:26 +11:00
Maikel Linke
2149ce7c94 Reduce run time of specs by combining them
It's better style to have those specs independent but we also have a
need for fast tests.
2021-03-10 17:09:26 +11:00
Maikel Linke
561da1f834 Show Terms of Service at checkout if required
The checkout page shows a checkbox to accept the platform's Terms of
Service. Ticking the box doesn't have any effect yet but at least people
are aware and are presented with a link to the terms.
2021-03-10 17:09:26 +11:00
Maikel Linke
0e8745adc3 Remove passing of unused variable 2021-03-10 17:09:26 +11:00
Maikel Linke
ee66a096e2 Ignore uploaded Ts&Cs for version control
We do that for other uploaded files already.
2021-03-10 17:09:26 +11:00
Maikel Linke
ba9de403e6 Add admin option to require shoppers agree to TOS
This switch doesn't have any effect yet. We need to implement it in the
checkout.
2021-03-10 17:09:26 +11:00
Andy Brett
05a074d33a Merge pull request #7041 from Matt-Yorkley/adjustments-set-eligibility
[Adjustments] Remove Adjustment#set_eligibility
2021-03-09 13:33:21 -08:00
Pau Pérez Fabregat
332d7b8482 Merge pull request #7044 from filipefurtad0/transaction_fees_specs
adds coverage to transacion fees/payment methods
2021-03-09 18:52:58 +01:00
Matt-Yorkley
11d5c6a2f1 Update untranslated string
This translation already exists, we just weren't using it in this view.
2021-03-09 17:19:40 +00:00
Jean-Baptiste Bellet
2414161210 Remove useless and error-prone css specification
- This shouldn't be a general specification, but eventually used inside context. By default, no need to this.
2021-03-09 17:25:32 +01:00
Jean-Baptiste Bellet
5239b259d0 Transform question mark to cross when tooltip is open
- Behavior consistent w/ price_breakdown feature.
2021-03-09 17:22:07 +01:00
Pau Pérez Fabregat
64a2493cc7 Merge pull request #7001 from coopdevs/add-bullet-for-development
Set up Bullet for development and testing
2021-03-09 16:47:53 +01:00
Pau Pérez Fabregat
3543e7f005 Merge pull request #6894 from jibees/6878-question-mark-icon-as-svg
Use svg icon instead of CSS `before` for the question mark icon
2021-03-09 16:47:30 +01:00
Pau Pérez Fabregat
4a6de97935 Merge pull request #7054 from coopdevs/removes-puts-debugging
Remove puts debugging in tests
2021-03-09 16:27:32 +01:00
Pau Perez
5b31e06cab Add Github Actions badge to README 2021-03-09 16:22:46 +01:00
Pau Perez
8301f2d550 Output RSpec profiling data
This shows things like:

```
Top 10 slowest examples (32.34 seconds, 87.1% of total time):

  As a site administrator
  I want to configure the site content
 fills in a setting shows the result on the home page
    19.12 seconds ./spec/features/admin/configuration/content_spec.rb:17
  States creating and editing states should allow an admin to edit existing states
    7.36 seconds ./spec/features/admin/configuration/states_spec.rb:40
  Tax Rates while editing can be deleted
    1.22 seconds ./spec/features/admin/configuration/tax_rates_spec.rb:58
  States creating and editing states should allow an admin to create states for non default countries
    1.16 seconds ./spec/features/admin/configuration/states_spec.rb:52
  States creating and editing states should show validation errors
    1 seconds ./spec/features/admin/configuration/states_spec.rb:68
  Zones edit existing zone
    0.90067 seconds ./spec/features/admin/configuration/zones_spec.rb:42
```

and

```
Top 8 slowest example groups:

  As a site administrator
  I want to configure the site content
    6.64 seconds average (19.93 seconds / 3 examples) ./spec/features/admin/configuration/content_spec.rb:5
  States
    2.42 seconds average (9.68 seconds / 4 examples) ./spec/features/admin/configuration/states_spec.rb:5
  Tax Rates
    0.51138 seconds average (2.56 seconds / 5 examples) ./spec/features/admin/configuration/tax_rates_spec.rb:4
  Zones
    0.49488 seconds average (1.48 seconds / 3 examples) ./spec/features/admin/configuration/zones_spec.rb:5
  Tax Categories
    0.32438 seconds average (1.3 seconds / 4 examples) ./spec/features/admin/configuration/tax_categories_spec.rb:5
  Taxonomies
    0.30578 seconds average (1.22 seconds / 4 examples) ./spec/features/admin/configuration/taxonomies_spec.rb:5
  General Settings
    0.28868 seconds average (0.57737 seconds / 2 examples) ./spec/features/admin/configuration/general_settings_spec.rb:5
  Mail Methods
    0.26415 seconds average (0.26415 seconds / 1 example) ./spec/features/admin/configuration/mail_methods_spec.rb:5

Finished in 37.11 seconds (files took 6.27 seconds to load)
26 examples, 0 failures
```

which is essential to speed up our test suite.
2021-03-09 16:22:46 +01:00
Andy Brett
5e19e5e83d use UTC 2021-03-09 16:22:46 +01:00
Andy Brett
b5b751fa39 fix admin feature spec 2021-03-09 16:22:46 +01:00
Andy Brett
bc7469c7aa fix order test 2021-03-09 16:22:46 +01:00
Pau Perez
a5fbd6bb57 DRY downloads directory path 2021-03-09 16:22:46 +01:00
Pau Perez
0e4f9d18d4 Fix browser's download path configuration
The CI build can't find the downloaded file and fails like:

```
2) enterprise fee summaries csv downloads smoke test for generation of report based on permissions when logged in as enterprise user generates file with data for the enterprise
     Failure/Error: sleep 0.1 until downloaded?

     Timeout::Error:
       execution expired
     # ./spec/support/downloads_helper.rb:34:in `sleep'
     # ./spec/support/downloads_helper.rb:34:in `block in wait_for_download'
     # ./spec/support/downloads_helper.rb:33:in `wait_for_download'
     # ./spec/support/downloads_helper.rb:11:in `downloaded_filename'
     # ./engines/order_management/spec/features/order_management/reports/enterprise_fee_summaries_spec.rb:119:in `block (5 levels) in <top (required)>'
     # ./engines/order_management/spec/features/order_management/reports/enterprise_fee_summaries_spec.rb:80:in `block (4 levels) in <top (required)>'
     # ./spec/support/downloads_helper.rb:22:in `with_empty_downloads_folder'
     # ./engines/order_management/spec/features/order_management/reports/enterprise_fee_summaries_spec.rb:80:in `block (3 levels) in <top (required)>'
```
2021-03-09 16:19:27 +01:00
Andy Brett
ae3b186bcd remove hardcoded time string in T&C spec 2021-03-09 16:19:27 +01:00
Pau Perez
42c9050a17 Fix cookie retrieval in feature spec
I also took the chance to reduce some redundant assertions.
2021-03-09 16:19:27 +01:00
Pau Perez
c61fc25e9f Disable Knapsack only to Github workflow 2021-03-09 16:19:27 +01:00
Pau Perez
838563a80b Skip code coverage in Github Actions
No need to slow down the build with partial coverage analysis that won't
be merged in a single report for the whole build.

Also, this makes builds fail because we are not running the whole suite.
2021-03-09 16:19:27 +01:00
Pau Perez
3cef261de1 Force RSpec's output to be in color
While also simplifying the configuration using the default `progress`
RSpec formatter.
2021-03-09 16:18:29 +01:00
Pau Perez
1f0b597120 Run tests in a Github workflow
Things to be aware of:

  * Allows manually triggering GH workflow. See:
  https://docs.github.com/en/actions/reference/events-that-trigger-workflows#workflow_dispatch.
  * Installs versions in the yarn.lock and prevents updates to the yarn.lock.
  * Yarn and npm come pre-installed in Github's runner VMs. See
https://docs.github.com/en/actions/guides/building-and-testing-nodejs#installing-dependencies.
  * We use the latest LTS Node version so it can read ES6 syntax `let`.
  * Karma tests require RAILS_ENV. In lib/tasks/karma.rake we default to
  `test` so that means someone else is setting `RAILS_ENV` before that.
  We'll need to find out who so we can avoid this.
  * We run the CI build only on pushes to any branch. This the
  redundancy of all build jobs due to the `push` and `pull_request`
  events. I still don't see what's the exact difference between these
  two events. See:
  https://docs.github.com/en/actions/reference/events-that-trigger-workflows.
2021-03-09 16:18:04 +01:00
filipefurtad0
f26a7befab removes default value assertions 2021-03-09 15:18:02 +00:00
Pau Perez
c986583d09 Remove unnecessary JS-capabilites for test
This gets this file execution time from ~10s to ~2s.
2021-03-09 16:04:29 +01:00
Pau Perez
333c669fbf Remove puts debugging in tests 2021-03-09 16:01:55 +01:00
Pau Perez
9c642e2957 Use the instance currency as Money's default 2021-03-09 09:00:37 +01:00
Andy Brett
0125b5f10e add spec for plus_relatives_and_oc_producers 2021-03-08 09:10:40 -08:00
Andy Brett
95c232dfe7 add spec for a resumed order 2021-03-08 08:54:28 -08:00
Pau Pérez Fabregat
6b111561e8 Merge pull request #7000 from Matt-Yorkley/dead-code-tax-total
DCOTW: Order#tax_total
2021-03-08 16:57:59 +01:00
Matt-Yorkley
c99a9f4ee1 Remove Adjustment#set_eligibility 2021-03-08 15:29:04 +00:00
Pau Perez
5c74668726 Make test rely on container rather than parent
This decouples it a bit from the actual HTML markup and makes it a bit
more resilient.
2021-03-08 16:20:07 +01:00
Jean-Baptiste Bellet
ac70bbfd9b Add missing closing curly bracket 2021-03-08 15:58:26 +01:00
Pau Pérez Fabregat
876c378e4f Merge pull request #7028 from Matt-Yorkley/dead-code-available-shipment
DCOTW: Order#has_available_shipment
2021-03-08 15:25:39 +01:00
Pau Pérez Fabregat
696a429bcb Merge pull request #7030 from Matt-Yorkley/dcotw-item-count
DCOTW: Order#item_count
2021-03-08 15:23:09 +01:00
Pau Pérez Fabregat
367882951b Merge pull request #7039 from openfoodfoundation/dependabot/bundler/webmock-3.12.1
Bump webmock from 3.12.0 to 3.12.1
2021-03-08 13:43:17 +01:00
Pau Pérez Fabregat
da2b36449d Merge pull request #7040 from openfoodfoundation/transifex
Transifex
2021-03-08 13:42:40 +01:00
Pau Perez
7792bc34c8 Test that currency symbol position can be changed 2021-03-08 13:40:00 +01:00
filipefurtad0
3b81f51fe4 adds coverage to transacion fees/payment methods 2021-03-08 12:35:35 +00:00
Pau Perez
ca268d5c84 Remove unnecessary indirection in test 2021-03-08 13:34:57 +01:00
Pau Perez
41011ce28a Fix Money deprecation warning w/ :default_currency
This removes the deprecation warning:

```
[WARNING] The default currency will change from `USD` to `nil` in the
next major release. Make sure to set it explicitly using
`Money.default_currency=` to avoid potential issues
```
2021-03-08 13:03:00 +01:00
Pau Perez
ccfb6ae26e Fix Money deprecation warning with :rounding_mode
This removes the deprecation warning:

```
[WARNING] The default rounding mode will change from `ROUND_HALF_EVEN`
to `ROUND_HALF_UP` in the next major release. Set it explicitly using
`Money.rounding_mode=` to avoid potential problems.
```

by specifying the default rounding mode at boot time so that it's only
set once for the whole app. See
https://github.com/RubyMoney/money#rounding for details.
2021-03-08 13:03:00 +01:00
Pau Perez
96bcde61a3 Fix Money deprecation warning with :html_wrap
This fixes the following deprecation warning

```
[DEPRECATION] `html` is deprecated - use `html_wrap` instead. Please
note that `html_wrap` will wrap all parts of currency and if you use
`with_currency` option, currency element class changes from `currency`
to `money-currency`.
```
2021-03-08 13:03:00 +01:00
Pau Perez
485449e289 Fix Money gem deprecation warning with :format
This removes millions of deprecation warnings like the following

```
[DEPRECATION] `symbol_position: :before` is deprecated - you can replace it with `format: %u %n`
```

from the build. It gets printed every time a `Spree::Money` is instantiated.

This should result in a non-negligible speed up of the test suite.
2021-03-08 13:03:00 +01:00
Pau Perez
e355a00724 Remove redundant spec context
This is already tested by the top-most before block and besides, we
there's no OFN in Japan. We don't need to test all supported currencies
but ensure that the various arguments work as intended.
2021-03-08 12:52:41 +01:00
Transifex-Openfoodnetwork
e7e812bee7 Updating translations for config/locales/en_FR.yml 2021-03-08 20:28:18 +11:00
Transifex-Openfoodnetwork
a7919c72e3 Updating translations for config/locales/fr.yml 2021-03-08 20:27:46 +11:00
Transifex-Openfoodnetwork
096b31f783 Updating translations for config/locales/en_GB.yml 2021-03-08 20:19:16 +11:00
dependabot[bot]
844c8b85d9 Bump webmock from 3.12.0 to 3.12.1
Bumps [webmock](https://github.com/bblimke/webmock) from 3.12.0 to 3.12.1.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.12.0...v3.12.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-08 05:58:15 +00:00
Matt-Yorkley
af29c67ea5 Update Order#ship_total 2021-03-06 14:14:56 +00:00
Andy Brett
5f01fcd902 Merge pull request #7017 from openfoodfoundation/dependabot/bundler/geocoder-1.6.6
Bump geocoder from 1.6.5 to 1.6.6
2021-03-05 20:32:09 -08:00
Matt-Yorkley
f894473e03 Delete dead code: Order#item_count 2021-03-06 00:04:46 +00:00
Matt-Yorkley
68e752ef32 Delete dead code: Order#has_available_shipment 2021-03-05 23:42:08 +00:00
Matt-Yorkley
365700615a Remove dead code: Spree::Config.auto_capture
We set this value to `true` unconditionally in an initializer, and then check the value in various places via Spree::Config. It's never false, and it's not configurable, so we can just drop it and remove the related conditionals. 🔥
2021-03-05 16:03:07 +00:00
Matt-Yorkley
a670771037 Reduce duplicate updates in Payment#revoke_adjustment_eligibility
This was triggering two separate updates, and each of those updates could trigger callbacks, and those could trigger other callbacks. Here we're doing the same thing, but with one update.
2021-03-05 15:12:41 +00:00
Pau Perez
d814f98bb6 Update all locales with the latest Transifex translations 2021-03-05 13:46:14 +01:00
Pau Pérez Fabregat
2f81af3818 Merge pull request #7010 from openfoodfoundation/transifex
Transifex
2021-03-05 13:43:13 +01:00
Transifex-Openfoodnetwork
918db44925 Updating translations for config/locales/it.yml 2021-03-05 21:58:06 +11:00
Transifex-Openfoodnetwork
f5e6a98360 Updating translations for config/locales/ru.yml 2021-03-05 20:55:59 +11:00
Transifex-Openfoodnetwork
7db560341b Updating translations for config/locales/es.yml 2021-03-05 18:43:17 +11:00
Transifex-Openfoodnetwork
cc65aba292 Updating translations for config/locales/ca.yml 2021-03-05 18:42:59 +11:00
Pau Pérez Fabregat
b354a4226a Merge pull request #7009 from coopdevs/remove-subs-performance-specs
Remove subs-related performance specs
2021-03-05 08:37:13 +01:00
dependabot[bot]
6033c276d8 Bump geocoder from 1.6.5 to 1.6.6
Bumps [geocoder](https://github.com/alexreisner/geocoder) from 1.6.5 to 1.6.6.
- [Release notes](https://github.com/alexreisner/geocoder/releases)
- [Changelog](https://github.com/alexreisner/geocoder/blob/master/CHANGELOG.md)
- [Commits](https://github.com/alexreisner/geocoder/compare/v1.6.5...v1.6.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-05 05:30:15 +00:00
Andy Brett
a431c03eb1 only show primary producers on shopfront list of producers 2021-03-04 14:32:55 -08:00
Andy Brett
7bf1bd6287 Merge pull request #6995 from coopdevs/add-good-migrations
Add gem to watch after data migrations
2021-03-04 12:09:22 -08:00
Andy Brett
4e5945f9ef add resumed to list of allowable order states 2021-03-04 11:24:39 -08:00
Transifex-Openfoodnetwork
2ea9664ecb Updating translations for config/locales/en_US.yml 2021-03-05 05:13:51 +11:00
Transifex-Openfoodnetwork
dfdc97cfa4 Updating translations for config/locales/de_DE.yml 2021-03-05 05:00:27 +11:00
Pau Pérez Fabregat
674f0f87a3 Merge pull request #6528 from mprieger/5546-cart-page-last-item-deletion
Fix users removing last item of confirmed order on /cart page
2021-03-04 17:27:51 +01:00
Pau Pérez Fabregat
982c3d2215 Merge pull request #6965 from andrewpbrett/fix-sca-snail
Fix #6964: don't try to complete a failed payment
2021-03-04 17:26:24 +01:00
Pau Pérez Fabregat
ff239802b6 Merge pull request #6982 from andrewpbrett/canceled-order-payments
Fix #5018: Allow access to payments tab for canceled orders
2021-03-04 17:25:30 +01:00
Matt-Yorkley
3396319f29 Fix test setup in Order spec 2021-03-04 14:27:02 +00:00
Matt-Yorkley
9deadc8ae1 Simplify order.adjustment_total sum 2021-03-04 14:27:02 +00:00
Matt-Yorkley
1afcd70510 Simplify Order#total_tax 2021-03-04 14:27:02 +00:00
Matt-Yorkley
9cf8c84a7d Add model definition to migration 2021-03-04 14:27:02 +00:00
Matt-Yorkley
ff58e2da54 Use AR syntax in queries 2021-03-04 14:27:02 +00:00
Matt-Yorkley
b1bf2487e2 Update adjustment scope use in Xero Invoices report 2021-03-04 14:27:02 +00:00
Matt-Yorkley
e33950721c Change misleading method name in Xero Invoices code 2021-03-04 14:27:02 +00:00
Matt-Yorkley
945605e3a8 Rename Shipment #adjustment to #fee_adjustment for clarity 2021-03-04 14:27:02 +00:00
Matt-Yorkley
a5929b489a Ensure order object has line items in bulk_invoice_service 2021-03-04 14:27:02 +00:00
Matt-Yorkley
eed71d795e Use persisted shipment in shipping adjustment test 2021-03-04 14:27:02 +00:00
Matt-Yorkley
57b54637e3 Ensure order factory selects shipping rates correctly 2021-03-04 14:27:02 +00:00
Matt-Yorkley
434c9f1c7c Fix test setup in adjustments_spec
The order association is required for these objects to be found
2021-03-04 14:27:02 +00:00
Matt-Yorkley
0e2c1d0317 Refresh shipment rates when changing shipping method cost
The test setup here wasn't correctly updating he shipment's shipping_rates, so they were still zero.
2021-03-04 14:27:02 +00:00
Matt-Yorkley
55db911334 Update sales tax report 2021-03-04 14:27:02 +00:00
Matt-Yorkley
f956aca82f Use shipping fee adjustment as single source of truth, and persist it on the shipment :cost field when it changes. 2021-03-04 14:27:02 +00:00
Matt-Yorkley
bcbea618e8 Fix adjustment spec
The tested adjustment isn't found correctly if it isn't associated to the order...
2021-03-04 14:27:02 +00:00
Matt-Yorkley
7fb5bf217f Update checkout spec adjustment fetching 2021-03-04 14:27:02 +00:00
Matt-Yorkley
aa16c64f20 Update Order#finalize! to include all adjustments 2021-03-04 14:27:02 +00:00
Matt-Yorkley
c0b33de0f0 Move #adjustment_label to shipment 2021-03-04 14:27:02 +00:00
Matt-Yorkley
e67c29872a Update OrderMailer spec 2021-03-04 14:27:02 +00:00
Matt-Yorkley
86110f2f40 Improve shipment factory 2021-03-04 14:27:02 +00:00
Matt-Yorkley
f0de09da84 Update order correctly in ReturnAuthorizationsController 2021-03-04 14:27:02 +00:00
Matt-Yorkley
833aae23e5 Update admin adjustments controller 2021-03-04 14:27:02 +00:00
Matt-Yorkley
f94f424b63 Update fee fetching in controller tests 2021-03-04 14:27:02 +00:00
Matt-Yorkley
65bcf83552 Migrate shipping fee adjustments to shipments 2021-03-04 14:27:02 +00:00
Matt-Yorkley
c093701adf Improve UserBalanceCalculator spec test setup
Previously we were creating order objects that were not actually complete, and manually setting the `completed_at` field. This meant the order objects being tested were not actually in the correct state, ie: pre-checkout orders that had not been processed properly.
2021-03-04 14:27:02 +00:00
Matt-Yorkley
d4c9d70caa Update Adjustment specs 2021-03-04 14:27:02 +00:00
Matt-Yorkley
045cdec23c Update OrderDetailedSerializer 2021-03-04 14:27:02 +00:00
Matt-Yorkley
80aefa8e73 Update OrderTaxAdjustmentsFetcher 2021-03-04 14:27:02 +00:00
Matt-Yorkley
02fb2c6a55 Update CheckoutHelper 2021-03-04 14:27:02 +00:00
Matt-Yorkley
f0aa43e198 Update Order shipment adjustments fetching 2021-03-04 14:27:01 +00:00
Matt-Yorkley
00f116f35f Update Order::Updater to include shipment adjustments 2021-03-04 14:27:01 +00:00
Matt-Yorkley
1aec324269 Update shipment cost spec 2021-03-04 14:27:01 +00:00
Matt-Yorkley
f5d3e22730 Add shipment_adjustments association to Order 2021-03-04 14:27:01 +00:00
Matt-Yorkley
9ed6ae588f Update EnterpriseFeeSummary report adjustment scopes 2021-03-04 14:27:01 +00:00
Matt-Yorkley
4c57addb02 Move shipping fee adjustment from the order to the shipment 2021-03-04 14:27:01 +00:00
Matt-Yorkley
551cb9a2d2 Remove Shipment#cost method
Cost is now recorded on the shipment record itself
2021-03-04 14:27:01 +00:00
Matt-Yorkley
81cdc2eac1 Bring in Shipment#update_amounts method 2021-03-04 14:27:01 +00:00
Matt-Yorkley
2a0f132b8b Improve ShippingMethod -> Shipment association
5a54a0b6b0
2021-03-04 14:27:01 +00:00
Matt-Yorkley
f33c881503 Set default 0 on spree_shipments cost 2021-03-04 14:27:01 +00:00
Pau Pérez Fabregat
1ad3f38942 Merge pull request #6981 from drummer83/missing-translations
Updated translations to close #6666
2021-03-04 15:01:36 +01:00
Pau Pérez Fabregat
d856e006ec Merge pull request #6989 from andrewpbrett/fix-group-map-icons
Update path to +1 map icon
2021-03-04 11:31:17 +01:00
Pau Pérez Fabregat
ab5bb03b04 Merge pull request #7007 from openfoodfoundation/dependabot/bundler/ddtrace-0.46.0
Bump ddtrace from 0.45.0 to 0.46.0
2021-03-04 10:40:26 +01:00
Pau Pérez Fabregat
5c0e55a281 Merge pull request #7005 from openfoodfoundation/transifex
Transifex
2021-03-04 10:39:47 +01:00
Pau Perez
07481575dc Remove subs-related performance specs
This is a rather naive take on assessing performance, it slows down the
test suite and clutters the output with timings without providing value
in return.

Stems from
https://github.com/openfoodfoundation/openfoodnetwork/pull/6902.
2021-03-04 10:33:20 +01:00
dependabot[bot]
9bd85804b9 Bump ddtrace from 0.45.0 to 0.46.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.45.0 to 0.46.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.45.0...v0.46.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-04 05:33:57 +00:00
Transifex-Openfoodnetwork
baa0f82ede Updating translations for config/locales/de_DE.yml 2021-03-04 08:12:09 +11:00
Konrad
748b2b8223 Removed #secure and replaced with class 2021-03-03 20:59:30 +01:00
Konrad
db6eaede14 Shortened long line 2021-03-03 20:58:45 +01:00
Konrad
aa761d6d67 Removed #secure and replaced with class 2021-03-03 20:57:55 +01:00
Konrad
07b23602cd Included #secure and method show_social_icons? 2021-03-03 20:38:12 +01:00
Transifex-Openfoodnetwork
546fa6e6c4 Updating translations for config/locales/es.yml 2021-03-04 06:37:35 +11:00
Transifex-Openfoodnetwork
72f9f944af Updating translations for config/locales/ca.yml 2021-03-04 06:37:13 +11:00
Konrad
e0108431d9 Added method to check for social icons 2021-03-03 20:36:22 +01:00
Konrad
553954f8bf Removed "footer .row a" and added "#secure" 2021-03-03 20:35:16 +01:00
Pau Perez
b49777062b Include canceled orders in report when searching
It's a code smell to have a boolean control argument.
`Permissions::Order` goes too far and assumes we want to filter out
canceled orders when using report's search params and this is not the
case.
2021-03-03 18:21:44 +01:00
Pau Perez
f67b45a580 Reuse query object in Reports::LineItems
This almost removes the responsibility of fetching orders from this
class, that has too many. Ideally, I'd go on and leave this up to the
caller of this class making `Reports::LineItems` rely completely on the
passed in `orders_relation`. Not today.
2021-03-03 18:21:43 +01:00
Pau Perez
21fb3f3da6 Extract orders relation as a query object 2021-03-03 18:21:10 +01:00
Pau Perez
72597ea3f9 Optionally inject orders relation
So we can fetch them differently if we need to. Spoiler: we do in the
bulk coop report.
2021-03-03 18:21:07 +01:00
Pau Perez
2ead2ad417 Replace private stub with fake collaborator object 2021-03-03 18:19:26 +01:00
Pau Perez
b6ce9ca3ca Test bulk coop report includes canceled orders
Without them numbers in the report don't match with /admin/customers and
/account where their order total is considered towards the customer
balance.
2021-03-03 18:19:26 +01:00
Pau Perez
fce98da88d Reject line items in a more succinct way
Thanks for the suggestion @mkllnk!
2021-03-03 18:19:26 +01:00
Pau Perez
3b7f45516c Toggle bulk coop report balance calculation
This will make users hit the new method that implements the new
calculation we are aiming for, only if they have the feature enabled.
2021-03-03 18:19:26 +01:00
Pau Perez
cd60cea5de Extract balance-related methods into module
This model concerns helps us put together this related methods. Although
it doesn't provide any encapsulation yet, it makes a bit easier to
consider them all next time we need to change this implementation
somehow. It's a bit of an illusion but it feels like we are making this
God object model a bit smaller.

It also gives more room for documentation that will aid future devs.
2021-03-03 18:19:26 +01:00
Pau Perez
d1fde07535 Extend #outstanding_balance to mimic OustandingBalance 2021-03-03 18:19:26 +01:00
Pau Perez
c69f0baf9f Extract specs related to outstanding_balance 2021-03-03 18:19:26 +01:00
Pau Perez
d00a35e12c Split long statement 2021-03-03 18:19:26 +01:00
Pau Perez
b7335e12e9 Add first basic unit test to Reports::LineItems
This is quite hard and tedious due to its tight coupling with
Permissions::Order but sets the path to adding more of these and
eventually refactoring this class in the future.
2021-03-03 18:19:26 +01:00
Pau Perez
197d787396 Unit-test OrderDataMasker 2021-03-03 18:19:26 +01:00
Pau Perez
58ffd00f4a Extract private method
This was initially intended to cache the result of the `#map` and
`#uniq` calls but we're not confident enough and don't want to
scopecreep this. It's still worth to point out that this is what we
need, line items' `unique orders`. Hopefully, next time we find a way to
optimize it.
2021-03-03 18:19:26 +01:00
Pau Perez
49dfccfb51 Unit test #columns method
At least, this covers what we're investigating now.
2021-03-03 18:19:26 +01:00
Pau Perez
a3b2a25ccf Refactor and reuse :not_state scope 2021-03-03 18:19:26 +01:00
Pau Pérez Fabregat
5985344166 Merge pull request #6999 from coopdevs/add-missing-translation-key
Add missing shipment_states I18n key
2021-03-03 17:55:01 +01:00
Pau Pérez Fabregat
094ef28456 Merge pull request #6996 from filipefurtad0/payment_method_spec
fixes a pending test case for hubs w/ several distributors
2021-03-03 16:48:10 +01:00
Pau Pérez Fabregat
3539ceaec1 Merge pull request #6986 from coopdevs/fix-pending-locale-spec
Fix old pending locale-related spec
2021-03-03 16:15:03 +01:00
Pau Perez
ed41888ba4 Set up Bullet for development and testing
This will log any N+1 it finds, pointing to the line causing it and
a way to solve it, aka. which `#includes` to add. Like so

```
web_1     | GET /admin/order_cycles.json?ams_prefix=index&q%5Borders_close_at_gt%5D=Sun+Jan+31+2021+00:00:00+GMT%2B0100+(Central+European+Standard+Time)
web_1     | USE eager loading detected
web_1     |   OrderCycle => [:coordinator]
web_1     |   Add to your query: .includes([:coordinator])
web_1     | Call stack
web_1     |   /usr/src/app/app/serializers/api/admin/index_order_cycle_serializer.rb:41:in `coordinator'
web_1     |   /usr/src/app/app/controllers/spree/admin/base_controller.rb:98:in `render_as_json'
web_1     |   /usr/src/app/app/controllers/admin/order_cycles_controller.rb:17:in `block (2 levels) in index'
web_1     |   /usr/src/app/app/controllers/admin/order_cycles_controller.rb:14:in `index'
web_1     |   bin/rails:4:in `require'
web_1     |   bin/rails:4:in `<main>'
```

We gave a try at Bullet long ago and abandoned it because it's not
a silver bullet (pun intended) due to false positives. However, it's
pretty clear that this won't happen often; we have endless N+1 still to fix.

I recently experienced how, relying on Bullet made it just extra 30s to fix
additional N+1s other than the one I was fixing. Usually, finding the
culprit line takes me more of 30min.
2021-03-03 13:50:03 +01:00
Pau Pérez Fabregat
d7ee7e02dd Merge pull request #6987 from coopdevs/remove-delegation-specs
Remove unnecessary delegation specs
2021-03-03 13:44:00 +01:00
Pau Pérez Fabregat
433b9c030c Merge pull request #6988 from coopdevs/remove-unused-rspec-filtering
Remove unused RSpec specs filtering
2021-03-03 13:43:36 +01:00
Matt-Yorkley
d17ff38a7e Delete Order#tax_total
#display_tax_total is not used anywhere, #tax_total is used in once place but it's not needed.
2021-03-03 11:26:32 +00:00
Pau Perez
c83cb554d5 Add missing shipment_states I18n key
I spot `[missing "en.spree.shipment_states.canceled" translation]` while
checking the transactions tab on /account for an order that was
canceled.
2021-03-03 12:17:14 +01:00
filipefurtad0
1c018bdd90 fixes a pending test case for hubs w/ several distributors 2021-03-03 08:59:56 +00:00
Pau Pérez Fabregat
03e969fa51 Merge pull request #6993 from openfoodfoundation/dependabot/bundler/delayed_job_web-1.4.4
Bump delayed_job_web from 1.4.3 to 1.4.4
2021-03-03 08:30:53 +01:00
Pau Pérez Fabregat
1cfee50300 Merge pull request #6983 from openfoodfoundation/dependabot/bundler/rubocop-1.11.0
Bump rubocop from 1.10.0 to 1.11.0
2021-03-03 08:30:29 +01:00
Pau Perez
63f82bd142 Add gem to watch after data migrations
> This gem prevents Rails from auto-loading app code while it's running
migrations, preventing the common mistake of referencing ActiveRecord
models from migration code.

This will make us stop relying on @mkllnk to have robust data migrations
that don't cause trouble in the future.
2021-03-03 08:22:32 +01:00
dependabot[bot]
b9bf084136 Bump delayed_job_web from 1.4.3 to 1.4.4
Bumps [delayed_job_web](https://github.com/ejschmitt/delayed_job_web) from 1.4.3 to 1.4.4.
- [Release notes](https://github.com/ejschmitt/delayed_job_web/releases)
- [Changelog](https://github.com/ejschmitt/delayed_job_web/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ejschmitt/delayed_job_web/compare/v1.4.3...v1.4.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-03 05:17:59 +00:00
Andy Brett
5966557b59 update path to +1 map icon 2021-03-02 08:53:13 -08:00
Pau Perez
742b54376d Remove unused RSpec specs filtering
This was introduced ages ago and became dead code as no specs use these
filters anymore.

It stems from the work done in
https://github.com/openfoodfoundation/openfoodnetwork/pull/6902/.
2021-03-02 14:40:44 +01:00
Pau Perez
d439a5074b Remove unnecessary delegation specs
The custom RSpec matchers they use raises the following deprecation
warning

```
Using `stub` from rspec-mocks' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` instead. Called from /home/runner/work/openfoodnetwork/openfoodnetwork/spec/support/matchers/delegate_matchers.rb:22:in `block (2 levels) in <top (required)>'.
```

It's not worth maintaining those matchers to test such
implementation-related thing. Whether or not any delegations work is
something that will be caught by integration tests or directly stubbing
the collaborator object's methods.

This stems from
https://github.com/openfoodfoundation/openfoodnetwork/pull/6902.
2021-03-02 11:54:46 +01:00
Pau Perez
45d0501ca6 Fix old pending locale-related spec
This is the correct behavior: if you set a language that is not
available, it'll fallback to English.
2021-03-02 11:42:45 +01:00
dependabot[bot]
54409265d0 Bump rubocop from 1.10.0 to 1.11.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.10.0...v1.11.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-02 05:20:56 +00:00
Andy Brett
ad8973d74b add messages object to order controller 2021-03-01 21:01:34 -08:00
Andy Brett
6b1a1a59b1 update cart spec 2021-03-01 20:42:06 -08:00
Andy Brett
72b7fe723f fix indentation 2021-03-01 20:42:05 -08:00
Andy Brett
5751e247bd Update app/assets/javascripts/darkswarm/controllers/edit_bought_order_controller.js.coffee 2021-03-01 20:42:05 -08:00
Andy Brett
3725ba0fc4 Update app/assets/javascripts/darkswarm/services/cart.js.coffee 2021-03-01 20:42:05 -08:00
Matthew Rieger
651bdad7b9 Fix users removing last item of confirmed order on /cart page 2021-03-01 20:42:05 -08:00
Andy Brett
a02065b66f allow access to payments tab for canceled orders 2021-03-01 19:51:50 -08:00
Andy Brett
3b15e0ee15 only complete the payment if it is in a completable state 2021-03-01 18:51:14 -08:00
Konrad
97d2c0e255 Updated translations to close #6666 2021-03-02 01:02:36 +01:00
Konrad
3d8cfc4ccd Updated footer for clean footer
Updated the footer to have precise alignment of elements and consistent font sizes throughout the front-end footer.
2021-03-01 20:47:36 +01:00
Konrad
799d35f187 Updated stylesheets for clean footer
Updated the stylesheets to have precise alignment fo elements and consistent font sizes throughout the front-end footer.
2021-03-01 20:44:22 +01:00
Andy Brett
b3610e035d Merge pull request #6961 from openfoodfoundation/dependabot/bundler/i18n-js-3.8.1
Bump i18n-js from 3.8.0 to 3.8.1
2021-03-01 09:34:49 -08:00
Pau Pérez Fabregat
b701098dee Merge pull request #6975 from openfoodfoundation/dependabot/bundler/webdrivers-4.6.0
Bump webdrivers from 4.5.0 to 4.6.0
2021-03-01 17:29:02 +01:00
Pau Pérez Fabregat
6d42f93f8a Merge pull request #6979 from openfoodfoundation/transifex
Transifex
2021-03-01 17:27:45 +01:00
Jean-Baptiste Bellet
d6cf69df34 Fix vertical alignment using flex
- Firefox displayed the icon above the legend
 - Use `display: flex;` and `align-items: center;` to vertical align icon and text
2021-03-01 16:40:02 +01:00
Jean-Baptiste Bellet
36573701dc Use svg icon instead of CSS before
CSS can be sometimes a little bit inconsistent to create such an icon. Using SVG is better solution to create beautiful icon.
2021-03-01 16:39:53 +01:00
Transifex-Openfoodnetwork
8e477fef9e Updating translations for config/locales/es.yml 2021-03-02 02:15:01 +11:00
Transifex-Openfoodnetwork
ab8ac24797 Updating translations for config/locales/ca.yml 2021-03-02 02:14:44 +11:00
Pau Pérez Fabregat
c7577e29d6 Merge pull request #6977 from openfoodfoundation/transifex
Transifex
2021-03-01 16:13:43 +01:00
Transifex-Openfoodnetwork
79d4f4127a Updating translations for config/locales/ru.yml 2021-03-02 01:33:23 +11:00
Transifex-Openfoodnetwork
5682f87893 Updating translations for config/locales/en_FR.yml 2021-03-01 23:56:18 +11:00
Transifex-Openfoodnetwork
846cfe0050 Updating translations for config/locales/fr.yml 2021-03-01 23:56:05 +11:00
Pau Pérez Fabregat
7f4849da25 Merge pull request #6971 from Matt-Yorkley/dead-code-assassin
Remove dead code Order#display_ship_total
2021-03-01 10:07:30 +01:00
Pau Pérez Fabregat
8d31ba2677 Merge pull request #6966 from Matt-Yorkley/dead-code-totals
Dead code of the week
2021-03-01 10:05:31 +01:00
Pau Pérez Fabregat
68aafb9d4d Merge pull request #6967 from Matt-Yorkley/spree-missing-translations
Add missing Spree translation keys
2021-03-01 10:04:49 +01:00
Transifex-Openfoodnetwork
ea2139b9f2 Updating translations for config/locales/ca.yml 2021-03-01 20:04:42 +11:00
Pau Pérez Fabregat
9389de9aa1 Merge pull request #6970 from andrewpbrett/flaky-spec
Remove duplicate specs
2021-03-01 10:03:23 +01:00
Transifex-Openfoodnetwork
a6f72d3311 Updating translations for config/locales/es.yml 2021-03-01 20:02:18 +11:00
Transifex-Openfoodnetwork
066708fad0 Updating translations for config/locales/ca.yml 2021-03-01 20:01:37 +11:00
Pau Pérez Fabregat
be2dc2df09 Merge pull request #6976 from openfoodfoundation/dependabot/bundler/webmock-3.12.0
Bump webmock from 3.11.3 to 3.12.0
2021-03-01 10:00:07 +01:00
Pau Pérez Fabregat
a0aeb1ceb4 Merge pull request #6889 from mkllnk/6102-footer
Emphasise ways to get help in user emails
2021-03-01 09:59:18 +01:00
Transifex-Openfoodnetwork
7647d961fe Updating translations for config/locales/en_FR.yml 2021-03-01 19:46:21 +11:00
Transifex-Openfoodnetwork
0e888f1793 Updating translations for config/locales/fr.yml 2021-03-01 19:45:55 +11:00
Transifex-Openfoodnetwork
fbd24fac43 Updating translations for config/locales/en_GB.yml 2021-03-01 18:03:38 +11:00
dependabot[bot]
eace7822b6 Bump webmock from 3.11.3 to 3.12.0
Bumps [webmock](https://github.com/bblimke/webmock) from 3.11.3 to 3.12.0.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.11.3...v3.12.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-01 06:41:44 +00:00
dependabot[bot]
dbccc95aaf Bump webdrivers from 4.5.0 to 4.6.0
Bumps [webdrivers](https://github.com/titusfortner/webdrivers) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/titusfortner/webdrivers/releases)
- [Changelog](https://github.com/titusfortner/webdrivers/blob/master/CHANGELOG.md)
- [Commits](https://github.com/titusfortner/webdrivers/compare/v4.5.0...v4.6.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-01 06:39:15 +00:00
Matt-Yorkley
4c3ff402e6 Remove dead code Order#display_ship_total 2021-02-28 13:49:38 +00:00
Andy Brett
448c0e0ce3 Remove duplicate specs
The second of these is flaky; moreover, the OrdersController doesn't specifically have a method that they're testing. I think the ready_to_capture behaviors is adequately covered by 006236b8dd/spec/serializers/api/admin/order_serializer_spec.rb (L39-L68)
2021-02-27 15:05:11 -08:00
Matt-Yorkley
1f2e9a6b58 Add missing Spree translation keys 2021-02-27 12:07:17 +00:00
Matt-Yorkley
16eff698df Remove dead code; Spree::Order #line_item_adjustment_totals and #price_adjustment_totals 2021-02-27 11:56:44 +00:00
Andy Brett
006236b8dd Merge pull request #6919 from andrewpbrett/authorize-payment-links
Show authorization links in separate table
2021-02-26 18:31:26 -08:00
Andy Brett
855e38cd73 add I18n 2021-02-26 07:47:58 -08:00
Pau Perez
c3179b4304 Restore table's top rounded corners 2021-02-26 07:44:09 -08:00
Pau Perez
2146ed277f Fix table header spacing when status is hidden 2021-02-26 07:44:09 -08:00
Pau Perez
ad147ed8f5 Make payment auth table as wide as table below
This makes this page look a bit more consistent. Note I also had to fix
the price in the value column.

To do this I pulled out the width property from `.orders` which defines
too many things. This way we can make the auth table full-width while
not being tied to all the other properties which are not needed in this
table. Then, `.orders`'s nested `.order1, .order2` etc. column class
become useless.
2021-02-26 07:44:09 -08:00
Pau Perez
cbb919f28b Left-align table with table below 2021-02-26 07:44:09 -08:00
Pau Perez
8696882549 Refactor payment auth button to fit into table row
This looks a bit more cohesive with the rest of the row cells while
still standing out from the rest.
2021-02-26 07:44:08 -08:00
Andy Brett
7bbfb6b8db use rpsec subject in payments spec 2021-02-26 07:44:08 -08:00
Andy Brett
c23fb27031 remove unnecessary join 2021-02-26 07:44:08 -08:00
Andy Brett
7bb49b51fd use scope on payment model 2021-02-26 07:44:08 -08:00
Andy Brett
e5eb8f97f9 add basic feature spec for authorisation table 2021-02-26 07:44:08 -08:00
Andy Brett
83bc9d2a12 add unit spec for Payments query 2021-02-26 07:44:08 -08:00
Andy Brett
0b245ad7b1 make user attr private 2021-02-26 07:44:08 -08:00
Andy Brett
ee351d91a9 show authorization links in separate table 2021-02-26 07:44:08 -08:00
Matt-Yorkley
f1fca874a1 Update all locales with the latest Transifex translations 2021-02-26 13:13:59 +00:00
dependabot[bot]
e6b5775327 Bump i18n-js from 3.8.0 to 3.8.1
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.8.0 to 3.8.1.
- [Release notes](https://github.com/fnando/i18n-js/releases)
- [Changelog](https://github.com/fnando/i18n-js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fnando/i18n-js/compare/v3.8.0...v3.8.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-26 05:25:43 +00:00
Pau Pérez Fabregat
4116066a75 Merge pull request #6725 from Matt-Yorkley/adjustments-tax-totals
[Adjustments] Order tax totals
2021-02-25 19:24:23 +01:00
Pau Pérez Fabregat
5ded4ed938 Merge pull request #6958 from Matt-Yorkley/remove-weird-file
Remove dead file
2021-02-25 15:56:04 +01:00
Matt-Yorkley
d92de62a0b I guess this was committed by mistake 2021-02-25 12:56:07 +00:00
Pau Pérez Fabregat
404ec7bf92 Merge pull request #6950 from andrewpbrett/fix-nil-enterprise-category
Fix #6949: Add default icon value if enterprise.category is nil
2021-02-25 13:20:10 +01:00
Pau Pérez Fabregat
a6d6530852 Merge pull request #6957 from openfoodfoundation/dependabot/bundler/webmock-3.11.3
Bump webmock from 3.11.2 to 3.11.3
2021-02-25 13:19:54 +01:00
Pau Pérez Fabregat
dc4ec4d69d Merge pull request #6955 from openfoodfoundation/transifex
Transifex
2021-02-25 11:49:49 +01:00
dependabot[bot]
5cf7fbd48c Bump webmock from 3.11.2 to 3.11.3
Bumps [webmock](https://github.com/bblimke/webmock) from 3.11.2 to 3.11.3.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.11.2...v3.11.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-25 05:31:20 +00:00
Transifex-Openfoodnetwork
2c66184f73 Updating translations for config/locales/es_US.yml 2021-02-25 09:31:10 +11:00
Transifex-Openfoodnetwork
b81686133e Updating translations for config/locales/ca.yml 2021-02-25 09:31:08 +11:00
Transifex-Openfoodnetwork
a4ea792325 Updating translations for config/locales/en_GB.yml 2021-02-25 09:31:07 +11:00
Transifex-Openfoodnetwork
4c28bcf0d1 Updating translations for config/locales/fr_CA.yml 2021-02-25 09:31:05 +11:00
Transifex-Openfoodnetwork
3cbb14af04 Updating translations for config/locales/en_CA.yml 2021-02-25 09:31:02 +11:00
Transifex-Openfoodnetwork
f77417acef Updating translations for config/locales/en_US.yml 2021-02-25 09:31:00 +11:00
Transifex-Openfoodnetwork
65e040948f Updating translations for config/locales/fr.yml 2021-02-25 09:30:58 +11:00
Transifex-Openfoodnetwork
2fa6583176 Updating translations for config/locales/es.yml 2021-02-25 09:30:55 +11:00
Andy Brett
bc7477795c Merge pull request #6910 from andrewpbrett/remove-order-capture
Make orders not capturable if they have a payment pending authorization
2021-02-24 12:20:43 -08:00
Pau Pérez Fabregat
d7d86729ad Merge pull request #6929 from efgalvao/issue#6892
Fix the issue #6892
2021-02-24 20:48:27 +01:00
Andy Brett
741ed73cf5 add specs for enterprises with nil or unknown category 2021-02-24 11:43:53 -08:00
Andy Brett
106803cc0b Merge pull request #6945 from openfoodfoundation/dependabot/bundler/stripe-5.30.0
Bump stripe from 5.29.1 to 5.30.0
2021-02-24 10:11:24 -08:00
Pau Pérez Fabregat
15e6c28cc5 Merge pull request #6954 from coopdevs/remove-dead-serializer
Remove dead serializer
2021-02-24 18:01:29 +01:00
Transifex-Openfoodnetwork
6b0339df63 Updating translations for config/locales/fr_CA.yml 2021-02-25 03:33:32 +11:00
Transifex-Openfoodnetwork
3eec52b8f1 Updating translations for config/locales/en_CA.yml 2021-02-25 03:33:26 +11:00
Transifex-Openfoodnetwork
7b52abbd35 Updating translations for config/locales/fr_CA.yml 2021-02-25 03:30:39 +11:00
Transifex-Openfoodnetwork
3825712755 Updating translations for config/locales/es_US.yml 2021-02-25 03:30:28 +11:00
Transifex-Openfoodnetwork
0a0ba1255a Updating translations for config/locales/ca.yml 2021-02-25 03:30:26 +11:00
Transifex-Openfoodnetwork
dbb0d9bd38 Updating translations for config/locales/en_GB.yml 2021-02-25 03:30:24 +11:00
Transifex-Openfoodnetwork
583e091f67 Updating translations for config/locales/de_DE.yml 2021-02-25 03:30:23 +11:00
Transifex-Openfoodnetwork
c169e63b53 Updating translations for config/locales/fr.yml 2021-02-25 03:30:19 +11:00
Matt-Yorkley
0f0f3e1ab4 Merge pull request #6940 from drummer83/patch-1
Create independent title string for 'Map' page
2021-02-24 17:24:25 +01:00
Pau Perez
ec3b402856 Remove dead serializer
This became unused in
b9d72ce4cf (diff-5df9d1d16b9e9ac1724af5c6180ca86f7caeb6a4880d2f77ac25fbe757b597b9).
2021-02-24 17:09:16 +01:00
Pau Pérez Fabregat
0e03864aa9 Merge pull request #6906 from jibees/6895-close-tooptip-when-user-clicks-anywhere-else
Close unit price tooltip when user click outside the tooltip
2021-02-24 15:19:25 +01:00
Matt-Yorkley
faf7e3c02b Simplify filtering items with zero price 2021-02-24 12:39:10 +00:00
Matt-Yorkley
02b3636377 Extract relevant adjustments to comment-method 2021-02-24 12:39:10 +00:00
Pau Pérez Fabregat
d513dc31de Merge pull request #6905 from jibees/6498-show-unit-price-in-checkout
Show unit price in checkout process (both cart page and cart sidebar)
2021-02-24 11:59:25 +01:00
Maikel
0654e3d1cf Merge pull request #6854 from openfoodfoundation/dependabot/bundler/rswag-2.4.0
Bump rswag from 2.3.3 to 2.4.0
2021-02-24 15:47:31 +11:00
Maikel Linke
bcd9ea2b87 Update generated swagger file
rake rswag PATTERN="spec/requests/api/*_spec.rb"

This file is just a demo so far. The more complete description of the
API is: /swagger.yaml
2021-02-24 15:45:47 +11:00
Andy Brett
2d304bd997 add default icon value if enterprise.category is nil 2021-02-23 11:37:36 -08:00
Pau Pérez Fabregat
89947c8154 Merge pull request #6946 from openfoodfoundation/dependabot/bundler/awesome_nested_set-3.4.0
Bump awesome_nested_set from 3.3.1 to 3.4.0
2021-02-23 20:37:07 +01:00
Pau Perez
116109c63d Make /api/orders N+1 free
With the help of the bullet gem, and since we remove a couple of N+1s
already, remove them all was just a few keystrokes away. This commits
gets us from 42 SQL queries to 17, and 364.5ms to 253.9ms on my machine
where I just have the sample data's orders. As usual, this will have
a much bigger impact in scenarios with more data.
2021-02-23 10:26:12 -08:00
Pau Perez
20a7f2f24e Eager load payment and subs. order associations
This removes the N+1 queries caused by
`Api::Admin::OrderSerialier#ready_to_capture` when used from
`Api::OrdersController#index`. While it's fine for the single-order
controller actions, it's not for this one that deals with a collection
of orders.

Fortunately, `SearchOrders` is used only in this controller action so we
can put the `includes` calls there, otherwise, we would need to refactor
it a bit to pass in a context-specific AR relation.
2021-02-23 10:26:12 -08:00
Andy Brett
d62a984939 make orders not capturable if they have a payment pending authorization 2021-02-23 10:26:04 -08:00
Matt-Yorkley
9852470ef6 Merge pull request #6913 from Matt-Yorkley/rails-5-backports
Rails 5 backports
2021-02-23 11:55:31 +01:00
dependabot[bot]
37707f4a5b Bump awesome_nested_set from 3.3.1 to 3.4.0
Bumps [awesome_nested_set](https://github.com/collectiveidea/awesome_nested_set) from 3.3.1 to 3.4.0.
- [Release notes](https://github.com/collectiveidea/awesome_nested_set/releases)
- [Changelog](https://github.com/collectiveidea/awesome_nested_set/blob/master/CHANGELOG)
- [Commits](https://github.com/collectiveidea/awesome_nested_set/compare/v3.3.1...v3.4.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-23 05:35:38 +00:00
dependabot[bot]
f7173ff0b0 Bump stripe from 5.29.1 to 5.30.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.29.1 to 5.30.0.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-ruby/compare/v5.29.1...v5.30.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-23 05:35:07 +00:00
Maikel Linke
b61ce13a1b Add missing helper to UserMailer 2021-02-23 11:24:55 +11:00
Maikel Linke
a971b62068 Emphasise ways to get help in user emails
We had a very prominent footer showing how to get in contact with the
local instance people but most users need to get in contact with the
enterprise they are buying from. So removing all those details and
replacing them by a simple "powered by" line will hopefully direct
attention to the shop's contact details.
2021-02-23 11:24:55 +11:00
Maikel
3e0547f563 Merge pull request #6926 from andrewpbrett/check-nan
Ensure unit_value is a number
2021-02-23 10:40:00 +11:00
drummer83
7e01b76af2 Create independent title string for 'Map' page
The "map" page didn't have a separate Transifex string for the page title. Instead the string 'label_map' was being used, which is also used elsewhere on the website. 
To make the page title independent from 'label_map' the title string 'map_title' is added (like on shops page, producers page etc.).
2021-02-22 22:13:46 +01:00
drummer83
43055d8704 Create independent title string for 'Map' page
The "map" page didn't have a separate Transifex string for the page title. Instead the string 'label_map' was being used, which is also used elsewhere on the website. So no good idea to change that.
To make the page title independent from 'label_map' the title string is changed to 'map_title' (like on shops page, producers page etc.).
2021-02-22 21:29:42 +01:00
Matt-Yorkley
0e3429dc35 Merge pull request #6758 from Matt-Yorkley/enterprise-fees-refactor
Enterprise fees refactor
2021-02-22 17:59:18 +01:00
Andy Brett
dac7176bde Merge pull request #6922 from jibees/6917-fix-prefilled-date-for-new-date-picker-
Separate date format used for server communication from user-readable date
2021-02-22 08:23:51 -08:00
Andy Brett
ff243c40a7 Merge pull request #6885 from andrewpbrett/fix-group-map-icons
Move map icons to /public
2021-02-22 08:11:54 -08:00
Matt-Yorkley
d517e5adf6 Simplify matching 2021-02-22 16:03:27 +00:00
Matt-Yorkley
ecf4332527 Use #all_adjustments scope
Some of the way these objects are returned by different scopes will be changing soon. This ensures we should get the same results.
2021-02-22 16:03:26 +00:00
Matt-Yorkley
20f4a5359e Exclude all tax adjustments in item building
Included taxes are ignored here, and the additional tax total is is handled separately.
2021-02-22 16:02:19 +00:00
Matt-Yorkley
3ac16432c7 Refactor data representation methods 2021-02-22 16:02:19 +00:00
Matt-Yorkley
8de5ac4680 Extract itemized contents to service 2021-02-22 16:02:19 +00:00
Matt-Yorkley
eaf9305a77 Simplify adjustments summing 2021-02-22 15:45:32 +00:00
Pau Pérez Fabregat
fd067d01f6 Merge pull request #6937 from openfoodfoundation/transifex
Transifex
2021-02-22 16:37:54 +01:00
Transifex-Openfoodnetwork
13f5083386 Updating translations for config/locales/de_DE.yml 2021-02-23 02:05:31 +11:00
Transifex-Openfoodnetwork
2aa90a4bbe Updating translations for config/locales/de_DE.yml 2021-02-23 02:02:28 +11:00
Matt-Yorkley
40d284812a Extract itemized contents to testable method 2021-02-22 13:12:04 +00:00
Pau Pérez Fabregat
f7f8ecf654 Merge pull request #6930 from openfoodfoundation/dependabot/bundler/activerecord-import-1.0.8
Bump activerecord-import from 1.0.7 to 1.0.8
2021-02-22 13:05:41 +01:00
Pau Pérez Fabregat
9c75efdce8 Merge pull request #6921 from openfoodfoundation/transifex
Transifex
2021-02-22 13:05:04 +01:00
Jean-Baptiste Bellet
9bc5aa69bb Use the right default date time format
- Using the altInput from flatpickr forces us to use this default date format which is `%Y-%m-%d %H:%M`
2021-02-22 13:00:43 +01:00
Jean-Baptiste Bellet
c22101783c Forward focus event on original input as flatpickr instance is open
- Thus, warning about modifying the opening date of an order cycle with active subscription will trigger (see `spec/features/admin/order_cycles/list_spec.rb`)
2021-02-22 13:00:43 +01:00
Jean-Baptiste Bellet
e93474d493 Look for hidden input using the right date time format
- This is an option, and by default it has the previous behavior: look only for visible element
 - This option allows us to look for non-visible elements
 - Using new altInput from flatpickr create a input hidden element. This is why we need to look at this element.
 - Using the altInput from flatpickr forces us to use this default date format
 - As we now use `altInput` from flatpickr, the value used to communicate between backend and frontend is stored into an input type hidden.
2021-02-22 13:00:04 +01:00
Jean-Baptiste Bellet
fbe53a3a2e Use UI to fill date into datetimepicker
This creates a new method to select date and time from datetimepicker.

Field cannot be filled "manually" (ie. by entering its value)
2021-02-22 12:58:29 +01:00
Transifex-Openfoodnetwork
83ed5dde85 Updating translations for config/locales/es_US.yml 2021-02-22 20:59:57 +11:00
Transifex-Openfoodnetwork
3698d0b4ad Updating translations for config/locales/en_GB.yml 2021-02-22 20:10:03 +11:00
Andy Brett
5dcda317d2 add bugsnag alert 2021-02-21 22:27:58 -08:00
Andy Brett
dec6d2189f add unit test for unit_value 2021-02-21 22:26:36 -08:00
dependabot[bot]
9b13ac78be Bump activerecord-import from 1.0.7 to 1.0.8
Bumps [activerecord-import](https://github.com/zdennis/activerecord-import) from 1.0.7 to 1.0.8.
- [Release notes](https://github.com/zdennis/activerecord-import/releases)
- [Changelog](https://github.com/zdennis/activerecord-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zdennis/activerecord-import/compare/v1.0.7...v1.0.8)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-22 05:56:33 +00:00
Andy Brett
55215bb59a Merge pull request #6899 from Matt-Yorkley/cost-price-dead-code
Remove cost_price and other dead code
2021-02-21 11:10:17 -08:00
edmar.galvao@codeminer42.com
cf6fe1a903 Fix the issue #6892 2021-02-21 15:08:50 -03:00
Transifex-Openfoodnetwork
467c05bc50 Updating translations for config/locales/fr_CA.yml 2021-02-22 01:13:31 +11:00
Transifex-Openfoodnetwork
4cc4d1aa68 Updating translations for config/locales/en_CA.yml 2021-02-22 01:05:41 +11:00
Matt-Yorkley
54cd543118 Update data migration to use raw SQL 2021-02-20 19:03:19 +00:00
Matt-Yorkley
24dd971943 Include scopes in migration 2021-02-20 19:03:19 +00:00
Matt-Yorkley
1aeee83c29 Populate tax total fields on spree_orders 2021-02-20 19:03:19 +00:00
Matt-Yorkley
ec7d1d8133 Introduce tax totals in Order::Updater 2021-02-20 19:03:19 +00:00
Andy Brett
e06843c445 ensure unit_value is a number 2021-02-19 14:38:08 -08:00
Transifex-Openfoodnetwork
a5c633cd89 Updating translations for config/locales/en_US.yml 2021-02-20 07:30:09 +11:00
Andy Brett
05736884fe prepend / to route 2021-02-19 07:43:29 -08:00
Andy Brett
e7489965c5 move map icons to public/ 2021-02-19 07:43:23 -08:00
Matt-Yorkley
90f5659e68 Merge pull request #6923 from openfoodfoundation/filipefurtad0-update-doc-1
Update CONTRIBUTING.md
2021-02-19 15:56:01 +01:00
Jean-Baptiste Bellet
ce0d33caa6 Add needed class to be displayed as datetimepicker input
- + Remplace `ng-disabled` by `ng-if` as its correctly handled by flatpickr/altInput combo.
2021-02-19 15:37:12 +01:00
Jean-Baptiste Bellet
2a504f7359 Add a flatpickr plugin to attach 'id' attribute to input element
- As we use `altInput`, the original input is hidden. This plugin forward the `id` attribute of the original input to the input created on-the-fly and used by end user.
2021-02-19 14:59:13 +01:00
filipefurtad0
cc009ba33f Update CONTRIBUTING.md
Added lines on bundle and yarn install. For context see this thread:
https://openfoodnetwork.slack.com/archives/C2GQ45KNU/p1613393033083800
2021-02-19 13:02:03 +00:00
Matt-Yorkley
40eab5f73c Use params.dig in TaxonsController 2021-02-19 12:12:20 +00:00
Matt-Yorkley
f858fe3c68 Improve coverage in admin_orders_controller_spec 2021-02-19 11:18:00 +00:00
Matt-Yorkley
cc55e9eeda Improve coverage in orders_controller_spec 2021-02-19 11:17:59 +00:00
Matt-Yorkley
d4750b9f26 Improve clarity of orders controller test 2021-02-19 11:17:59 +00:00
Matt-Yorkley
ba81bd8395 Remove after_action callback in Admin:OrdersController 2021-02-19 11:17:59 +00:00
Matt-Yorkley
5c5d687c9b Remove hacks for working around closed adjustments
The enterprise fees are recreated and the shipping and payment fees are updated. The rest of the deleted code is not necessary (eg #with_open_adjustments). Everything else that needs to happen here is already done automatically (eg updating order totals).
2021-02-19 11:17:59 +00:00
Matt-Yorkley
9303d61db1 Update specs 2021-02-19 11:17:58 +00:00
Jean-Baptiste Bellet
424067d2dd Add mandatory class for date input
- Using flatpickr component, we need to add class to have a beautiful input with white background and pointer hover it.
2021-02-19 11:22:52 +01:00
Jean-Baptiste Bellet
26be76b95c Add new CSS specifications for flatpickr input as using altInput
- We now use altInput which is the only visible input to the end user.
 - This input inherits all the classes from the component who instantiated it, but not the `.flatpickr-input` class.
 - Add more specification to have a beautiful white background with pointer component.
2021-02-19 11:21:04 +01:00
Jean-Baptiste Bellet
c9cf989b27 Introduce altInput for flatpickr date(time)picker
- altInput is used to display the date to the end user: this field must be i18nized
 - dateFormat is the date format used through the front and the backend
2021-02-19 11:16:43 +01:00
Transifex-Openfoodnetwork
c80b67ed9c Updating translations for config/locales/es.yml 2021-02-19 21:10:34 +11:00
Transifex-Openfoodnetwork
1ae4786a06 Updating translations for config/locales/ca.yml 2021-02-19 21:10:00 +11:00
Transifex-Openfoodnetwork
5782504b3a Updating translations for config/locales/en_FR.yml 2021-02-19 21:01:34 +11:00
Transifex-Openfoodnetwork
86fa186421 Updating translations for config/locales/fr.yml 2021-02-19 21:01:32 +11:00
Maikel Linke
fe3fb78f76 Update from Transifex 2021-02-19 15:56:50 +11:00
Maikel
af832666ff Merge pull request #6916 from openfoodfoundation/transifex
Transifex
2021-02-19 15:50:04 +11:00
Maikel Linke
5b94049620 Whitelist params for several settings for Rails 5
Rails 5 is a bit stricter and Spree's Config#set method doesn't work
with a Parameters object.
2021-02-19 14:20:15 +11:00
Matt-Yorkley
5d1af5620c Merge pull request #6674 from cillian/include-ready-for-in-producer-notification
Include the 'Ready for' time for the order cycle in the Notify Producers email
2021-02-18 22:01:08 +01:00
Transifex-Openfoodnetwork
5c431fa99c Updating translations for config/locales/en_IE.yml 2021-02-19 04:34:00 +11:00
Matt-Yorkley
c47902d932 Fix params in Admin::EnterprisesController#register 2021-02-18 15:04:09 +00:00
Matt-Yorkley
84f56b2b44 Fix relation/array handling in OrderCycles List 2021-02-18 14:59:38 +00:00
Matt-Yorkley
aebd785a54 Fix persistence issue in view test setup 2021-02-18 14:58:25 +00:00
Jean-Baptiste Bellet
dd0ef0d599 Display unit price info if feature is enabled 2021-02-18 15:05:40 +01:00
Jean-Baptiste Bellet
ee4943f6e2 Display unit price on /cart page
- Use a new class to specify css customization
 - Add to `line_item.rb` a fake method: `unit_price_price_and_unit` @andrewpbrett will change it with real values.
 - Add a new variable: $text-xs to specify small font-size


squash "Display unit price on /cart page"
2021-02-18 15:02:30 +01:00
Jean-Baptiste Bellet
5914e6c885 Add a context to question mark icon with tooltip to display it adjusted
- This behavior permit use to create custom CSS specifications to display this tooltip best fitted to the context.
2021-02-18 15:02:30 +01:00
Jean-Baptiste Bellet
5b91f096ba Add unit price information into the cart
- .total-price element must be a div (display: block) to be text right aligned (and not being float: right)
 - use .option-text to display a grey text
 - use display: flex to display question mark icon and text information
2021-02-18 15:02:30 +01:00
Matt-Yorkley
76009c259f Ensure encodable object in StripeAccountsController
Fixes:
```
Admin::StripeAccountsController#connect redirects to Stripe Authorization url constructed OAuth
     Failure/Error: url_params = { state: JWT.encode(payload, key, 'HS256'), scope: "read_write" }

     JSON::GeneratorError:
       only generation of JSON objects or arrays allowed
     # ./app/controllers/admin/stripe_accounts_controller.rb:8:in `connect'
     # ./spec/controllers/admin/stripe_accounts_controller_spec.rb:18:in `block (3 levels) in <top (required)>'
```
2021-02-18 13:51:01 +00:00
Matt-Yorkley
3976f8ef89 Use params.dig when traversing nested params in passwords controllers 2021-02-18 13:05:16 +00:00
Matt-Yorkley
12c9ac7ccd Use params.dig when traversing nested params in views 2021-02-18 13:02:58 +00:00
Matt-Yorkley
219c982db7 Re-implement pre-Rails-5 versions of #implement! and #decrement! on Spree::LineItem
Rails 5 introduced some breaking changes to these built-in methods, and the new versions no longer work correctly in relation to decrementing stock with VariantOverrides.
2021-02-18 12:28:24 +00:00
Matt-Yorkley
dfadcbd2e0 Fix relation/array modification issues in EnterprisesHelper 2021-02-18 12:28:24 +00:00
Pau Pérez Fabregat
1fc21bdcb3 Merge pull request #6903 from openfoodfoundation/transifex
Transifex
2021-02-18 13:23:02 +01:00
Matt-Yorkley
18a354ec1e Fix private method called
```
Failure/Error: variant.stock_items.first.update_attribute(:count_on_hand, 10)

     NoMethodError:
       private method `count_on_hand=' called for #<Spree::StockItem:0x00005573998948a8>
       Did you mean?  count_on_hand
                      count_on_hand?
                      count_on_hand_was
     # ./spec/models/spree/variant_spec.rb:249:in `block (5 levels) in <module:Spree>'
     # -e:1:in `<main>'
```
2021-02-18 12:20:29 +00:00
Matt-Yorkley
a8009d044b Use permit in StripeAccountsController 2021-02-18 12:20:29 +00:00
Matt-Yorkley
1535c680f5 Fix direct params access in StripeAccountsController 2021-02-18 12:20:28 +00:00
Pau Pérez Fabregat
3c208a4fe9 Merge pull request #6911 from mkllnk/remove-dead-rails3-code
Remove dead code needed for Rails 3
2021-02-18 12:45:03 +01:00
Pau Pérez Fabregat
a21a8b18b1 Merge pull request #6861 from ccozkan/new-product-form-on_hand-field-improvements
Remove required field asterisk from on_hand's field on new products form
2021-02-18 12:39:58 +01:00
Matt-Yorkley
5a260b4e71 Update deprecated middleware configurations 2021-02-18 11:03:20 +00:00
Matt-Yorkley
7230d2767c Add concern for accessing raw params hash 2021-02-18 11:02:22 +00:00
Matt-Yorkley
c8824ec59f Fix undefined method #push on ActiveRecord::Relation 2021-02-18 11:00:24 +00:00
Matt-Yorkley
2413afa355 Update patch with warning 2021-02-18 10:57:03 +00:00
Transifex-Openfoodnetwork
1e51884cb2 Updating translations for config/locales/en_FR.yml 2021-02-18 21:46:42 +11:00
Transifex-Openfoodnetwork
cb5543ea75 Updating translations for config/locales/fr.yml 2021-02-18 21:43:20 +11:00
Matt-Yorkley
c8ff745471 Patch paperclip bug 2021-02-18 10:42:57 +00:00
Transifex-Openfoodnetwork
ff423a7b7c Updating translations for config/locales/de_DE.yml 2021-02-18 20:57:34 +11:00
Transifex-Openfoodnetwork
88e8d110b3 Updating translations for config/locales/es.yml 2021-02-18 18:45:06 +11:00
Transifex-Openfoodnetwork
ce501d4715 Updating translations for config/locales/ca.yml 2021-02-18 18:44:58 +11:00
Maikel Linke
29d7596b4e Remove dead code needed for Rails 3
This was initially added to allow unprivileged database users to run the
app but Rails 4 contains that patch already.

References:

  b70edd542
  719c45b40
2021-02-18 16:18:54 +11:00
Transifex-Openfoodnetwork
a48d8d8a61 Updating translations for config/locales/pt_BR.yml 2021-02-18 10:16:53 +11:00
Andy Brett
f463af327c Merge pull request #6808 from andrewpbrett/authorize-payment-links
Allow a customer to perform further action for a Stripe payment if needed (#4181)
2021-02-17 10:17:51 -08:00
Pau Pérez Fabregat
8068c6015f Merge pull request #6836 from coopdevs/customer-balance-reports
Customer balance reports
2021-02-17 17:34:37 +01:00
Matt-Yorkley
719b65138f Add tax total fields to spree_orders 2021-02-17 16:15:34 +00:00
Matt-Yorkley
899552cfee Improve summing of line item totals 2021-02-17 16:15:34 +00:00
Matt-Yorkley
752d8bd5a0 Start refactoring Order::Updater class 2021-02-17 16:15:34 +00:00
Matt-Yorkley
b31d75aa67 Remove cost_price fields from database 2021-02-17 14:29:30 +00:00
Matt-Yorkley
42a5d7cdc7 Delete dead code Variant#set_option_value 2021-02-17 14:27:51 +00:00
Matt-Yorkley
105f59d959 Delete dead code Variant#default_price? 2021-02-17 14:27:51 +00:00
Matt-Yorkley
4213f66afb Delete dead code Variant#name_and_sku 2021-02-17 14:27:51 +00:00
Matt-Yorkley
d06fee026c Delete dead code Variant#on_backorder 2021-02-17 14:27:51 +00:00
Matt-Yorkley
81ac2c5add Delete code related to :cost_price field 2021-02-17 14:27:51 +00:00
Matt-Yorkley
12dedf8a3b Merge pull request #6774 from Matt-Yorkley/increase-precision
Increase limit on database columns that involve prices
2021-02-17 15:06:19 +01:00
Jean-Baptiste Bellet
c313083593 Specify background position and with/height
- Click on this background trigger the tooltip close event.
2021-02-17 14:59:29 +01:00
Transifex-Openfoodnetwork
789e2dca7b Updating translations for config/locales/de_DE.yml 2021-02-17 23:15:21 +11:00
Pau Pérez Fabregat
766acdf75b Merge pull request #6900 from openfoodfoundation/try-out-gh-actions-as-ci
Add Github CI build workflow
2021-02-17 12:45:15 +01:00
Pau Perez
e4c0fa5043 Add Github CI build workflow
based on
https://docs.github.com/en/actions/guides/building-and-testing-ruby#starting-with-the-ruby-workflow-template.

Things worth mentioning:

* ruby/setup-ruby reads `.ruby-version` by default. See:
https://github.com/ruby/setup-ruby#supported-version-syntax
* I chose to run on ubuntu-18.04 because that's what we use in
production. This should reduce potential "it runs on machine but fails
in CI" due to different system libraries versions and such.

We're temporarily running only `spec/queries/` specs because we want it
to finish quickly as we iterate on its configuration.
2021-02-17 12:37:11 +01:00
Pau Pérez Fabregat
a88280566c Merge branch 'master' into increase-precision 2021-02-17 11:36:36 +01:00
Pau Pérez Fabregat
297927c8df Merge pull request #6897 from openfoodfoundation/transifex
Transifex
2021-02-17 11:12:14 +01:00
Pau Pérez Fabregat
16140b7b0b Merge pull request #6843 from Matt-Yorkley/tax-rates-double-take
Also soft-delete tax rates when changing `included_in_price`
2021-02-17 09:41:07 +01:00
Transifex-Openfoodnetwork
4d07faff06 Updating translations for config/locales/es.yml 2021-02-17 19:37:21 +11:00
Transifex-Openfoodnetwork
93bb84ddd0 Updating translations for config/locales/ca.yml 2021-02-17 19:37:10 +11:00
Andy Brett
cfd8403125 Merge pull request #6865 from jibees/6833-bom-fix-display-issue-for-product
Fix some display issues on Bulk Order Management page
2021-02-16 19:06:42 -08:00
Maikel
10c86e852f Merge pull request #6888 from mkllnk/use-google-tiles-with-google-maps
Use Google's map tiles with Google Maps
2021-02-17 08:56:03 +11:00
Transifex-Openfoodnetwork
5bd336ac09 Updating translations for config/locales/en_FR.yml 2021-02-17 05:38:48 +11:00
Transifex-Openfoodnetwork
3dd2dd31cd Updating translations for config/locales/fr.yml 2021-02-17 05:38:37 +11:00
Andy Brett
d444c5d6d4 Merge pull request #6893 from openfoodfoundation/transifex
Transifex
2021-02-16 08:32:07 -08:00
Pau Pérez Fabregat
71c8a62351 Merge pull request #6851 from jibees/6497-show-unit-price-in-shopfront
Show unit price in shopfront
2021-02-16 16:33:49 +01:00
Transifex-Openfoodnetwork
6de797c0a4 Updating translations for config/locales/fr_CA.yml 2021-02-17 02:33:21 +11:00
Transifex-Openfoodnetwork
1ceda0c076 Updating translations for config/locales/en_CA.yml 2021-02-17 02:29:14 +11:00
Jean-Baptiste Bellet
a8cc0d1001 add translation for question mark tooltip 2021-02-16 15:26:36 +01:00
Jean-Baptiste Bellet
e509925789 Use question mark with tooltip directive
Needs some css customization due to the use of a button element (instead of a basic span)
2021-02-16 15:26:21 +01:00
Jean-Baptiste Bellet
4be2b42fe1 create a new directive: question mark with tooltip
- Display a rounded blue question mark icon
 - Show (hide) on click a blue tooltip on top of the question mark icon
2021-02-16 15:26:21 +01:00
Jean-Baptiste Bellet
7442d06bed add new template to manage variant
- The aim of this template is to display unit price
 - Duplicate the angular directive
 - Add a question mark icon and its own file
 - Add some needed colors in the branding file
2021-02-16 15:26:21 +01:00
Jean-Baptiste Bellet
8c42388af1 add a randomized unit price for variant
unit price is composed with :
 - a unit_price_price which is a number that can be localized (depending on the currency)
- a unit_price_unit which can be either `item` of `kg`

@andrewpbrett will do stuff to have a relevant unit price for each variant
2021-02-16 15:26:21 +01:00
Jean-Baptiste Bellet
d97b46cd5b add new feature for beta testers: unit_price
The aim of this "feature toggle" is to enable the unit price display for each product/variants.
By default activate on both development and staging environment.
2021-02-16 15:26:21 +01:00
Matt-Yorkley
3da5c0d7fd Update TaxRate transition spec
Setting a tax rate to included fails a validation if a default zone doesn't exist, so that's added. Also improved the tested scenarios and some of the details checked on the updated objects.
2021-02-16 13:21:57 +00:00
Pau Perez
36ce39a217 Sort OC report orders by completed_at
This is then consistent with the ordering we use to list orders in
/admin, which is more useful. As a result, the test is also more robust.
2021-02-16 13:25:21 +01:00
dependabot[bot]
c56c5d0028 Bump rswag from 2.3.3 to 2.4.0
Bumps [rswag](https://github.com/rswag/rswag) from 2.3.3 to 2.4.0.
- [Release notes](https://github.com/rswag/rswag/releases)
- [Changelog](https://github.com/rswag/rswag/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rswag/rswag/compare/2.3.3...2.4.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-16 08:52:23 +00:00
Pau Pérez Fabregat
77dc6b7d57 Merge pull request #6890 from openfoodfoundation/dependabot/bundler/rubocop-1.10.0
Bump rubocop from 1.9.1 to 1.10.0
2021-02-16 09:51:15 +01:00
Pau Pérez Fabregat
fc25a921d3 Merge pull request #6891 from openfoodfoundation/transifex
Transifex
2021-02-16 09:50:13 +01:00
Transifex-Openfoodnetwork
67a201de55 Updating translations for config/locales/en_GB.yml 2021-02-16 18:07:29 +11:00
dependabot[bot]
e87550f1e9 Bump rubocop from 1.9.1 to 1.10.0
Bumps [rubocop](https://github.com/rubocop-hq/rubocop) from 1.9.1 to 1.10.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v1.9.1...v1.10.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-16 05:32:38 +00:00
Maikel Linke
445fae4d09 Use Google's map tiles with Google Maps
We started to move to Open Street Maps (OSM) and one simple change was
to show OSM tiles on top of the current Google Maps functionality. This
hybrid use violates Google's terms and conditions though and I'm
reverting it here (basically reverting daa5b00a2).

Another branch of work was already started to use OSM without Google
functionality and it's available behind a feature toggle. We can
continue that work in our own time without a license violation. This
change is only changing the tiles, the look of the map and doesn't touch
any functionality which was always provided by Google Maps.
2021-02-16 14:30:24 +11:00
Andy Brett
560ad49057 unit tests for ProcessPaymentIntent 2021-02-15 18:09:07 -08:00
Andy Brett
05e762ff21 add controller specs for confirming payment intent 2021-02-15 17:09:38 -08:00
Andy Brett
f8239ed3ed use image path generator for map icons 2021-02-15 14:43:34 -08:00
Çağrı Özkan
dee2095a13 Remove required star from on_hand field 2021-02-16 00:23:53 +03:00
Çağrı Özkan
6fad35a975 Checkout upstream's admin/products/new view 2021-02-16 00:22:09 +03:00
Pau Pérez Fabregat
897a0c7779 Merge pull request #6880 from openfoodfoundation/transifex
Transifex
2021-02-15 16:47:51 +01:00
Transifex-Openfoodnetwork
8277093fa9 Updating translations for config/locales/de_DE.yml 2021-02-15 23:32:14 +11:00
Pau Pérez Fabregat
ffc850a794 Merge pull request #6876 from openfoodfoundation/transifex
Transifex
2021-02-15 11:50:41 +01:00
Transifex-Openfoodnetwork
347f193aeb Updating translations for config/locales/es.yml 2021-02-15 19:56:52 +11:00
Transifex-Openfoodnetwork
0084aff9d4 Updating translations for config/locales/ca.yml 2021-02-15 19:56:38 +11:00
Transifex-Openfoodnetwork
03d8ecbb56 Updating translations for config/locales/en_FR.yml 2021-02-15 19:27:01 +11:00
Transifex-Openfoodnetwork
41defd3d2f Updating translations for config/locales/fr.yml 2021-02-15 19:26:36 +11:00
Andy Brett
01293a3a3a Merge pull request #6863 from turinglabsorg/master
deleting only OFN related Docker containers and images
2021-02-13 09:24:00 -08:00
Andy Brett
77a3649e50 documentation 2021-02-12 13:46:05 -08:00
Andy Brett
c851705d5a reload order's new state after processing payment 2021-02-12 13:36:17 -08:00
Andy Brett
cd2b4d2fb2 advance order after processing payment intent 2021-02-12 13:36:04 -08:00
Andy Brett
8c7bf863f8 return pending payments in order serializer 2021-02-12 12:20:35 -08:00
Andy Brett
6efad74c5c add authorize link to transactions page 2021-02-12 12:20:35 -08:00
Andy Brett
1b2416652f update translations 2021-02-12 10:45:54 -08:00
Andy Brett
538dfb1e59 Merge pull request #6868 from openfoodfoundation/transifex
Transifex
2021-02-12 10:36:46 -08:00
Andy Brett
0a7396eb1c Merge pull request #6713 from andrewpbrett/sca-subs-emails
Send emails when subscription payments require SCA auth
2021-02-12 08:23:32 -08:00
Jean-Baptiste Bellet
034153dacf Fix some columns grid system issues
- Use class directly instead of attribut of element (`.three` instead of `%div{ :class => "three"}` )
 - Correct a lots of bad calculation about columns grid system
 - Use class instead of style if it's possible (`.text-center` instead of `:style => 'text-align: center;'`)
2021-02-12 10:02:27 +01:00
Transifex-Openfoodnetwork
2981be7013 Updating translations for config/locales/en_US.yml 2021-02-12 12:56:39 +11:00
Maikel
9aa7dd3206 Merge pull request #6714 from luisramos0/rails5-new
[Rails 5] Update Gemfile_next.lock and fix app/services/permissions/order.rb
2021-02-12 12:32:39 +11:00
Andy Brett
7c2febdd78 Merge pull request #6813 from jibees/6795-missing-cases-for-loading-spinner
Make loading spinner visible
2021-02-11 10:55:05 -08:00
Andy Brett
b5e9c935e9 Merge pull request #6821 from cillian/admin-product-sorting-bug
Include sort direction parameter during bulk product update to prevent JS error causing 'Saving' text to hang
2021-02-11 10:54:24 -08:00
Andy Brett
5a8a3b8d6b Merge pull request #6822 from arku/chore/cost-price-removal
Remove cost price field field from product variant form
2021-02-11 10:48:00 -08:00
Andy Brett
96a746175d update spec with new behavior 2021-02-11 10:36:50 -08:00
Pau Pérez Fabregat
7f882bfe92 Merge pull request #6295 from luisramos0/remove_pin
Remove Pin Payments
2021-02-11 18:04:59 +01:00
Transifex-Openfoodnetwork
96dea93745 Updating translations for config/locales/en_FR.yml 2021-02-12 03:56:37 +11:00
Transifex-Openfoodnetwork
6d87861efc Updating translations for config/locales/fr.yml 2021-02-12 03:55:05 +11:00
Transifex-Openfoodnetwork
69724cfc24 Updating translations for config/locales/ru.yml 2021-02-12 02:51:41 +11:00
Transifex-Openfoodnetwork
09575b20bd Updating translations for config/locales/de_DE.yml 2021-02-12 02:51:40 +11:00
Transifex-Openfoodnetwork
e168393662 Updating translations for config/locales/es.yml 2021-02-12 02:37:16 +11:00
Transifex-Openfoodnetwork
ae8488da92 Updating translations for config/locales/ca.yml 2021-02-12 02:35:35 +11:00
turinglabsorg
07a42e8a21 deleting only OFN related Docker containers and images 2021-02-11 14:30:07 +01:00
Pau Pérez Fabregat
99dbd8afa7 Merge pull request #6791 from filipefurtad0/customers_spec
enhances customers_spec.rb to check customer balance, after additional payments were added to an order
2021-02-11 11:36:30 +01:00
Pau Pérez Fabregat
5fd1bc3604 Merge pull request #6862 from openfoodfoundation/dependabot/bundler/geocoder-1.6.5
Bump geocoder from 1.6.4 to 1.6.5
2021-02-11 11:23:13 +01:00
Pau Pérez Fabregat
7fe79eccea Merge pull request #6691 from jibees/6664-new-datetimepicker
6664 new datetimepicker
2021-02-11 11:21:19 +01:00
Pau Pérez Fabregat
34ce3c0db1 Merge branch 'master' into remove_pin 2021-02-11 11:19:18 +01:00
Pau Perez
23b0885f4b Turn ivars into private attr_readers
This makes them more changeable and robust. Ruby will raise
NoMethodError on typos while it'll silently create a new ivar without
us noticing. Also, in my experience, a reader method gives more room to
future refactorings and eases testing because methods are easier to
stub.
2021-02-11 11:04:39 +01:00
Pau Perez
e2853b9afb Do not load order twice
The controller already does so, then, we can pass it to the service and
avoid that extra round-trip to the DB and save some memory. Spree::Order
is a rather bulky object (God object code smell perhaps) and it'll
surely make a difference.
2021-02-11 11:04:21 +01:00
Pau Perez
e703113c08 Fix typo in test wording 2021-02-11 10:29:56 +01:00
filipefurtad0
33f7335c02 splitted testcases into different context blocks 2021-02-11 10:29:56 +01:00
filipefurtad0
82b93fc757 declared relevant variables with let! 2021-02-11 10:29:56 +01:00
filipefurtad0
3160d723b0 checks whether second payment was added correctly to the order 2021-02-11 10:29:56 +01:00
filipefurtad0
467b9e71a2 adds additional test case, in which a negative payment is added to an order 2021-02-11 10:29:56 +01:00
filipefurtad0
c722e1c082 declares variables for orders using let; prepares additional test cases 2021-02-11 10:29:56 +01:00
dependabot[bot]
f3d1206de8 Bump geocoder from 1.6.4 to 1.6.5
Bumps [geocoder](https://github.com/alexreisner/geocoder) from 1.6.4 to 1.6.5.
- [Release notes](https://github.com/alexreisner/geocoder/releases)
- [Changelog](https://github.com/alexreisner/geocoder/blob/master/CHANGELOG.md)
- [Commits](https://github.com/alexreisner/geocoder/compare/v1.6.4...v1.6.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-11 09:29:01 +00:00
Pau Pérez Fabregat
752421cd8b Merge pull request #6814 from jibees/6797-to-much-white-space-when-editing-subscription
6797 Too much white space when editing subscription
2021-02-11 10:18:31 +01:00
Çağrı Özkan
4db41f8a16 Change on_hand's field to number_field and add required attribute 2021-02-10 22:52:31 +03:00
Andy Brett
891874995b refactor ProcessPaymentIntent to service 2021-02-10 11:22:29 -08:00
Andy Brett
ef6d1a3afb refactor flag param to module 2021-02-10 11:06:01 -08:00
Pau Pérez Fabregat
3a3485614d Merge pull request #6839 from openfoodfoundation/transifex
Transifex
2021-02-10 18:52:35 +01:00
Pau Pérez Fabregat
38da86c65b Merge pull request #6857 from andrewpbrett/remove-variant-migration
Remove variant migration
2021-02-10 18:45:03 +01:00
Pau Pérez Fabregat
8af805d10c Merge pull request #6840 from coopdevs/temp-skip-flaky-specs
Temporarily skip very flaky specs
2021-02-10 18:42:43 +01:00
Andy Brett
9104ca72a9 refactor to descriptive method authorization_action_required? 2021-02-10 09:36:35 -08:00
Pau Pérez Fabregat
98aed88295 Merge pull request #6853 from openfoodfoundation/dependabot/bundler/stripe-5.29.1
Bump stripe from 5.29.0 to 5.29.1
2021-02-10 18:31:28 +01:00
Pau Pérez Fabregat
3f20d939fa Merge pull request #6852 from openfoodfoundation/dependabot/bundler/timecop-0.9.4
Bump timecop from 0.9.3 to 0.9.4
2021-02-10 18:29:52 +01:00
Andy Brett
7814e74649 remove migration 2021-02-10 08:56:35 -08:00
Pau Pérez Fabregat
b7af92abb2 Merge pull request #6801 from coopdevs/toggle-customer-balance-to-entire-instance
Toggle customer balance to entire instance
2021-02-10 17:32:35 +01:00
dependabot[bot]
7baaa6f046 Bump stripe from 5.29.0 to 5.29.1
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.29.0 to 5.29.1.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-ruby/compare/v5.29.0...v5.29.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-10 05:31:53 +00:00
dependabot[bot]
dc74be45b9 Bump timecop from 0.9.3 to 0.9.4
Bumps [timecop](https://github.com/travisjeffery/timecop) from 0.9.3 to 0.9.4.
- [Release notes](https://github.com/travisjeffery/timecop/releases)
- [Changelog](https://github.com/travisjeffery/timecop/blob/master/History.md)
- [Commits](https://github.com/travisjeffery/timecop/compare/v0.9.3...v0.9.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-10 05:30:17 +00:00
Matt-Yorkley
ff549fb62e Also soft-delete tax rates when changing included_in_price
We need to do this when the included_in_price boolean changes as well, for the same reasons.
2021-02-09 17:26:16 +00:00
Matt-Yorkley
a811fb3783 Merge pull request #6838 from Matt-Yorkley/minor-rails-5-bits
Minor Rails 5 bits -> master
2021-02-09 14:40:13 +01:00
Matt-Yorkley
d6442bb16f Fix get requests in API controller spec 2021-02-09 11:57:00 +00:00
Matt-Yorkley
78eb5d23f9 Update TaxRatesController spec
BigDecimal was throwing an error here (in Rails 5) unless it received a string, but I think this is actually an issue with the way params were being passed in the relevant spec, as opposed to the controller itself.
2021-02-09 11:57:00 +00:00
Matt-Yorkley
4c4142c56d Fix HAML "unbalanced brackets" errors 2021-02-09 11:57:00 +00:00
Matt-Yorkley
1b947d30fa Pass ids in params that should be ids 2021-02-09 11:57:00 +00:00
Matt-Yorkley
d9bd0e8f0e Use alternate method for setting request.referer in controller specs
Apparently stubbing `request.referer` is tricky business in Rails 5... :shrugs:
2021-02-09 11:57:00 +00:00
Pau Pérez Fabregat
41410fdab5 Merge pull request #6834 from andrewpbrett/fix-variants-with-no-products
Remove variants with no product
2021-02-09 12:07:54 +01:00
Pau Perez
31d3854a74 Temporarily skip very flaky specs
These are the tests that are failing a lot across all builds, slowing
down everything in the pipe. It's better to skip these rather than
paying this huge toll. They can be restored once we spike a new CI service.
2021-02-09 11:48:06 +01:00
Pau Perez
50c429f393 Update db/schema's timestamp after migration 2021-02-09 11:27:48 +01:00
Transifex-Openfoodnetwork
66c331542c Updating translations for config/locales/it.yml 2021-02-09 18:39:59 +11:00
Matt-Yorkley
12a513c54c Apply an upstream fix to Spree::I18n
See: fe95f637c9

Fixes error mentioned in the above Spree commit.
2021-02-08 22:14:42 +00:00
Matt-Yorkley
bd7bc803cb Fix broken syntax in multiple angular files
I have no idea how this was not already throwing errors before...
2021-02-08 22:13:50 +00:00
Andy Brett
9a2bf9d333 use #destroy_all 2021-02-08 13:12:40 -08:00
Pau Pérez Fabregat
a820304166 Merge pull request #6819 from openfoodfoundation/transifex
Transifex
2021-02-08 22:10:59 +01:00
Jean-Baptiste Bellet
653f576bb1 Fill date and time value into the fields
as the new datetimepicker provide a disabled input field, it needs to be virtualized (and cannot be filled in with method `fill_in`)
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
57e20373fc overriding flatpickr selectors needs to be with uppercase
so disable the scss-lint check SelectorFormat
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
6a2461b30b overriding specific selectors needs to be as specific
so disable the scss-lint check QualifyingElement
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
fbd6db89c9 avoid selecting the day in the previous month
When you select date at the end of the month (27,28,29,30,...) it is likely possible that this date is already displayed by the calender but for the previous month.
Avoid this by using css selector :not()
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
8383b19458 factorize as we need only one file for datepicker 2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
9619ea06de code climate checks
- use variables for colors instead of values
 - trailinf line at the end of file
 - new line after each declaration
 - 2 spaces of indentation
 - avoid qualifying elements in selectors
 - prefer lowercase in hexa color
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
54f34093b4 reorder tests and set oc1 to an "updated" value
Seems like we need to set a value to "" before fill_in the input.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
f5c77f17a6 remove useless files.
As we use flatpickr, these files are useless. Delete it.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
b72ef18ad6 update datepicker_helper and add method to select date
Introduce a new method `select_date_from_datepicker` and then use it on test
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
3ab1d728a1 update helper with right selectors
As we now use flatpickr, need to update css/xpath selectors used by tests.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
1dbafcaf7d remove animation
To make tests ok.
I could use Capybara.disable_animation = true, but there was no animation to old datetimepicker, so it's more consistant like this.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
6dbaf1f7f3 specify date and datetime format 2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
e3db4e2e86 update test to match new datepicker
And use the method choose_today_from_datepicker
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
11d62eb331 add translation for "today" and "now" buttons
and remove useless translations
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
83f5d49ce2 remove references to jquery-ui datetimepicker
need to add dialog module from jquery-ui
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
84b402675a force onChange events to fire
And so the "You have unsaved changes" bar appears
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
079008d99b introduce "Now" button
Throught the plugin: https://github.com/jcsmorais/shortcut-buttons-flatpickr
import js library via yarn
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
329ec3455f update order_cycles (both list and simple) tests
As we know use a new datepicker (flatpickr), we need to update our test.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
2ce361c655 code climate update
"color white should be written in hexadecimal form as #ffffff"
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
947a9da18b remove useless translations
as flatpickr is already translated
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
6c3ededb0b apply flatpickr on element
- update flatpickr instance value with `onOpen` callback
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
a5d58ea36c change css selector and use a precise one
Be more precise on selector. `flatpickr-input` is more selective.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
e06ea6ccd3 remove unused options
as we use flatpickr, we don't need these options
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
4f7f8b559a localize flatpickr date format
Flatpickr can format date. Use a localized dateFormat.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
4d9289c45b Render flatpickr input more enabled
by default, `input[readonly]` is styled as disable one. Using flatpickr with these disable inputs need to be customized. By clinking on it, it opens the datepicker widget.
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
6cf172abc9 add flatpickr to order cycle and .datetimepicker
Add your new date(time)picker on both order cycle and elements with class `.datetimepicker`
set the right options to datetimepicker
2021-02-08 22:09:06 +01:00
Jean-Baptiste Bellet
c8a3951830 add flatpickr
add flatpick as a yarn package and import it into the appropriate files (both js and scss)
2021-02-08 22:09:06 +01:00
Transifex-Openfoodnetwork
f6d47bc3e4 Updating translations for config/locales/de_DE.yml 2021-02-09 07:00:15 +11:00
Pau Perez
cbfea1ba97 Hide new report's balance under toggle 2021-02-08 19:43:45 +01:00
Pau Perez
e4319b06e6 Take into account other finalized order states
This makes it consistent with other places where we show order balances.
Here though, we purposefully skip canceled ones.
2021-02-08 19:34:42 +01:00
Pau Perez
a66d1b7299 Compute order balance chaining with query object 2021-02-08 19:34:42 +01:00
Pau Perez
106dcbae01 Add test coverage to the two distinct output rows 2021-02-08 19:34:42 +01:00
Pau Perez
412bb24e42 Ensure report rows are always in the same order
I saw the row were returned not respecting any ordering when refreshing
the page locally. It made it hard to debug whether or not the customer
balance was right.

It's less than ideal to use `allow_any_instance_of` but with this legacy
and very coupled code, it's the best we can do.
2021-02-08 19:34:42 +01:00
Pau Pérez Fabregat
d7cf265f0e Merge pull request #6831 from Matt-Yorkley/netread-timeout
Add retry handling for flaky spec timeouts
2021-02-08 19:26:01 +01:00
Andy Brett
8f59d76eb2 remove variants with no product 2021-02-08 08:57:11 -08:00
Pau Pérez Fabregat
ed1c1e5607 Merge pull request #6823 from Matt-Yorkley/dead-code-shipment
Dead code: Shipment#total_cost
2021-02-08 13:44:14 +01:00
Pau Pérez Fabregat
8fcfcfe813 Merge pull request #6826 from openfoodfoundation/dependabot/bundler/rswag-2.3.3
Bump rswag from 2.3.2 to 2.3.3
2021-02-08 13:43:23 +01:00
Pau Pérez Fabregat
8d1354f07a Merge pull request #6827 from openfoodfoundation/dependabot/bundler/timecop-0.9.3
Bump timecop from 0.9.2 to 0.9.3
2021-02-08 13:42:58 +01:00
Matt-Yorkley
dcc3d933bc Add retry handling for flaky spec timeouts 2021-02-08 12:38:22 +00:00
Transifex-Openfoodnetwork
af7ba5c535 Updating translations for config/locales/ru.yml 2021-02-08 23:32:39 +11:00
Transifex-Openfoodnetwork
fe04295ea5 Updating translations for config/locales/en_GB.yml 2021-02-08 22:33:05 +11:00
Transifex-Openfoodnetwork
6a9f6c82ef Updating translations for config/locales/es.yml 2021-02-08 20:19:50 +11:00
Transifex-Openfoodnetwork
c638729df2 Updating translations for config/locales/ca.yml 2021-02-08 20:19:34 +11:00
Transifex-Openfoodnetwork
96c017939c Updating translations for config/locales/en_FR.yml 2021-02-08 19:27:38 +11:00
Transifex-Openfoodnetwork
662c65665c Updating translations for config/locales/fr.yml 2021-02-08 19:27:27 +11:00
dependabot[bot]
da71cd0b84 Bump timecop from 0.9.2 to 0.9.3
Bumps [timecop](https://github.com/travisjeffery/timecop) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/travisjeffery/timecop/releases)
- [Changelog](https://github.com/travisjeffery/timecop/blob/master/History.md)
- [Commits](https://github.com/travisjeffery/timecop/compare/v0.9.2...v0.9.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-08 05:59:25 +00:00
dependabot[bot]
c49122461c Bump rswag from 2.3.2 to 2.3.3
Bumps [rswag](https://github.com/rswag/rswag) from 2.3.2 to 2.3.3.
- [Release notes](https://github.com/rswag/rswag/releases)
- [Changelog](https://github.com/rswag/rswag/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rswag/rswag/compare/2.3.2...2.3.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-08 05:47:09 +00:00
Maikel
173cf9e536 Merge pull request #6565 from Matt-Yorkley/adjustments-inclusive
[Adjustments] Improve inclusive/additional tax recording
2021-02-08 09:38:31 +11:00
Transifex-Openfoodnetwork
f97fd8f8a7 Updating translations for config/locales/de_DE.yml 2021-02-08 02:01:06 +11:00
Matt-Yorkley
14530ddbc5 Remove dead code: Shipment#total_cost 2021-02-07 13:41:44 +00:00
Matt-Yorkley
8d6468dab1 Remove dead code: Shipment#display_total_cost 2021-02-07 13:41:40 +00:00
Matt-Yorkley
b9f46d4253 Increase precision on database columns that involve prices
Increases the maximum number of digits (on the left side of the decimal place) that the column can hold, to allow larger values. This change is made in Spree 2.2 and is relevant in cases with either large order values, or certain currencies that have large values as standard. For example, 100 UK Pounds is roughly 4000 Thai Baht. 1 million pounds is unlikely to ever be needed as a value, but 1 million Baht is not so unlikely...
2021-02-07 00:16:32 +00:00
Matt-Yorkley
7bf31d120b Add price field test 2021-02-07 00:05:39 +00:00
Arun Kumar Mohan
beece545de Remove cost price field from product variant form 2021-02-06 18:48:06 -05:00
Luis Ramos
e9aa6a5cd4 Rename Pin payment methods to check 2021-02-06 11:17:11 +00:00
Luis Ramos
c0ddeceb1e Remove Pin Payments 2021-02-06 11:15:48 +00:00
Transifex-Openfoodnetwork
5c96b3e070 Updating translations for config/locales/en_IE.yml 2021-02-06 03:50:32 +11:00
Cillian O'Ruanaidh
1fcf797d4e Include sort direction parameter during bulk product update to prevent JS error causing 'Saving' text to hang
Before if you did a bulk product update there was an error:

> TypeError: Cannot set property 'variants' of null

It only seemed to happen if pagination was required i.e. more than 15 products. It seemed to be happening because the default sort order on the products API endpoint which handles the bulk update is 'created desc' but 'name asc' on the /admin/products controller.

Another fix included here is for the sorting direction arrows which were not displaying on the admin products page. The sorting arrows require the sorting expression to be on the :sorting var instead of :q.sorting.

Fixes #6399
2021-02-05 16:08:08 +00:00
Transifex-Openfoodnetwork
5eb88f60e4 Updating translations for config/locales/fr_CA.yml 2021-02-06 00:23:51 +11:00
Transifex-Openfoodnetwork
52fc9cee31 Updating translations for config/locales/en_CA.yml 2021-02-06 00:14:49 +11:00
Matt-Yorkley
9851c9a762 Merge pull request #6678 from Matt-Yorkley/soft-deprecate-tax-rates
Introduce soft-deprecation strategy when modifying tax rates
2021-02-05 13:16:40 +01:00
Transifex-Openfoodnetwork
1dcdbd83a2 Updating translations for config/locales/es.yml 2021-02-05 21:46:31 +11:00
Transifex-Openfoodnetwork
f941ce1c7a Updating translations for config/locales/ca.yml 2021-02-05 21:46:27 +11:00
Pau Perez
5832bce1e4 Update all locales with the latest Transifex translations 2021-02-05 11:28:29 +01:00
Pau Pérez Fabregat
6ccf4b0245 Merge pull request #6817 from openfoodfoundation/transifex
Transifex
2021-02-05 11:24:00 +01:00
Transifex-Openfoodnetwork
dd2baf7e96 Updating translations for config/locales/en_FR.yml 2021-02-05 20:23:24 +11:00
Transifex-Openfoodnetwork
4a619e596e Updating translations for config/locales/fr.yml 2021-02-05 20:22:32 +11:00
Pau Pérez Fabregat
aee56f6331 Merge pull request #6812 from openfoodfoundation/transifex
Transifex
2021-02-05 08:45:46 +01:00
Andy Brett
d3ad997964 Merge pull request #6792 from andrewpbrett/migrate-variant-unit-values
Migrate variants with nil unit_value
2021-02-04 18:00:23 -08:00
Andy Brett
f746dec537 update spec 2021-02-04 13:52:45 -08:00
Andy Brett
1e863c6e65 Merge branch 'master' into migrate-variant-unit-values 2021-02-04 13:27:30 -08:00
Andy Brett
9c135ee0f7 add default to unit_value and weight 2021-02-04 13:17:43 -08:00
Pau Pérez Fabregat
3ab6da03e7 Merge pull request #6296 from luisramos0/remove_migs
Remove Migs payment gateway
2021-02-04 22:07:35 +01:00
Pau Pérez Fabregat
4b892d408e Merge pull request #6809 from andrewpbrett/remove-bogus-providers
Remove "Bogus" payment providers from staging and production
2021-02-04 21:09:16 +01:00
Pau Pérez Fabregat
35a76a313a Merge pull request #6807 from jibees/6798-new-product-form-fill-all-space
New Product Form: Fill all space available
2021-02-04 21:08:56 +01:00
Andy Brett
212186e059 check all variants, not just where we use 'items' 2021-02-04 11:45:36 -08:00
Andy Brett
d642984261 add db constraint; check for existing nil/nan in migration 2021-02-04 11:24:35 -08:00
Pau Pérez Fabregat
f6e6b6041c Merge pull request #6734 from coopdevs/disable-ui-mail-settings
Disable mail methods form so no one can edit
2021-02-04 17:57:32 +01:00
Andy Brett
91245ae6ab also set weight to default to 0.0 2021-02-04 08:05:48 -08:00
Pau Pérez Fabregat
76fa63fd71 Merge pull request #6789 from coopdevs/authorize-only-changed-vos
Authorize only changed vos
2021-02-04 15:22:50 +01:00
Pau Perez
655fe887f9 Distinguish user not present and list empty
This is a bit more thorough.
2021-02-04 13:19:04 +01:00
Pau Perez
88e22a78c2 Execute Ruby file in each test example
Kernel#require prevented this from happening thus, the file was only
loaded once so tests were passing so far by pure luck.
2021-02-04 13:16:03 +01:00
Jean-Baptiste Bellet
ef42653fee Use all available space
Don't need to put the table into a `.seven.columns.alpha.omega` div: use the maximum available space.
2021-02-04 12:53:12 +01:00
Jean-Baptiste Bellet
502ef8f6f2 Use as many space as available
Each row is sixteen long, use all space (five + eleven = sixteen)
2021-02-04 12:52:07 +01:00
Jean-Baptiste Bellet
7aef8a609e Use method image_path
Instead of using URL, use the image_path method which computes the path to an image asset in the public images directory.
2021-02-04 11:51:46 +01:00
Pau Perez
d6350c3d0b Remove deprecated Feature class implementation
This became dead code now.
2021-02-04 10:20:54 +01:00
Pau Perez
14cee0e45d Add new Feature class to toggle based on a closure
This enables toggling features as best fits us in each case. With this
new approach we can then toggle :customer_balance to an entire instance,
which is what we want in France.
2021-02-04 10:20:54 +01:00
Transifex-Openfoodnetwork
6c4f74e4e4 Updating translations for config/locales/es.yml 2021-02-04 20:06:10 +11:00
Transifex-Openfoodnetwork
3505ced3c2 Updating translations for config/locales/ca.yml 2021-02-04 20:05:50 +11:00
Pau Pérez Fabregat
4d7b29ca33 Merge pull request #6811 from openfoodfoundation/transifex
Transifex
2021-02-04 10:05:07 +01:00
Transifex-Openfoodnetwork
ea134d4600 Updating translations for config/locales/en_FR.yml 2021-02-04 19:07:08 +11:00
Transifex-Openfoodnetwork
e3b7736c68 Updating translations for config/locales/fr.yml 2021-02-04 19:06:37 +11:00
Transifex-Openfoodnetwork
439280d046 Updating translations for config/locales/de_DE.yml 2021-02-04 10:52:26 +11:00
Andy Brett
51630ac77b remove "Bogus" payment providers from staging and production 2021-02-03 14:03:13 -08:00
Luis Ramos
e5e2402a7c Add migrate to rename Migs payments to check 2021-02-03 21:53:15 +00:00
Luis Ramos
60667e23d9 Remove en.yml migs entry 2021-02-03 21:47:37 +00:00
Luis Ramos
e69eefdc0f Remove Migs payment gateway 2021-02-03 21:41:40 +00:00
Jean-Baptiste Bellet
4cb98dd4ac Fill all space available
These two fields (Display As, and Unit Names) are mutually exclusive: they are never displayed at the same time. Use all the available space.
2021-02-03 21:44:33 +01:00
Andy Brett
5d2c612839 don't send emails if auth required during checkout 2021-02-03 10:05:51 -08:00
Andy Brett
5160140d88 move SCA Auth module out of Subscriptions since we reuse it in Checkout 2021-02-03 10:05:47 -08:00
Andy Brett
5f84cd9f13 add param to ScaAuthorize call for redirect url 2021-02-03 09:50:42 -08:00
Andy Brett
6e735739a5 after customer auth + redirect, process payment and clear cvv_response_message 2021-02-03 09:50:37 -08:00
Andy Brett
558b01896f extract url helpers to helper module 2021-02-03 09:50:37 -08:00
Andy Brett
c0b3fc301e add email template to notify hub that auth is required 2021-02-03 09:50:28 -08:00
Andy Brett
4e3594b8f8 remove redundant url check method 2021-02-03 09:09:05 -08:00
Andy Brett
84db1c9bb4 update text of auth emails 2021-02-03 09:07:16 -08:00
Andy Brett
50074aae9d update db schema 2021-02-03 08:45:42 -08:00
Matt-Yorkley
389e149ded Wrap updates in a transaction block
Ensures the operation will be rolled ack if either saving the new record or deleting the old record fail
2021-02-03 11:54:54 +00:00
Pau Pérez Fabregat
79f98bdfa7 Merge pull request #6770 from Matt-Yorkley/more-dead-code
Dead code: Spree::Order#clear_adjustments
2021-02-03 09:37:42 +01:00
Pau Pérez Fabregat
fbab5120f1 Merge pull request #6771 from Matt-Yorkley/touch-updated-at
Touch updated_at column when updating records via #update_column
2021-02-03 09:33:37 +01:00
Luis Ramos
0a1863aa2d Remove extra empty line 2021-02-02 23:05:11 +00:00
Luis Ramos
54489948b9 Remove useless assignment 2021-02-02 23:04:12 +00:00
Luis Ramos
eb56d1ff28 Put the workaround inside a if clause on rails version so it works in both rails 4 and rails 5 2021-02-02 23:00:21 +00:00
Luis Ramos
886888c2a8 Workaround to get where_values to work in rails 5 2021-02-02 22:51:34 +00:00
Luis Ramos
bb91d37270 Force angular-rails-templates to be below 1.1.0 2021-02-02 22:51:34 +00:00
Luis Ramos
c171441b6c Add rails-controller-testing to rails 5 2021-02-02 22:51:34 +00:00
Luis Ramos
08d5a82627 Move some entries in Gemfile to general part, no need to keep these as rails 5 exceptions as a general rule works well 2021-02-02 22:51:34 +00:00
Luis Ramos
068b72e41a Update Gemfile_next.log by running bundle install 2021-02-02 22:51:34 +00:00
Andy Brett
4ba5d9dafc Merge pull request #6779 from openfoodfoundation/dependabot/bundler/test-unit-3.4.0
Bump test-unit from 3.3.9 to 3.4.0
2021-02-02 14:50:23 -08:00
Andy Brett
83d7d49e44 refactor sub confirm job; move email to service 2021-02-02 10:43:37 -08:00
Andy Brett
142af0055c use #find_each instead of #each 2021-02-02 09:40:17 -08:00
Andy Brett
109a3da104 use more efficient query; enforce not null at db level 2021-02-02 09:32:47 -08:00
Pau Pérez Fabregat
19636c687e Merge pull request #6796 from openfoodfoundation/transifex
Transifex
2021-02-02 15:50:15 +01:00
Pau Pérez Fabregat
32892b7ae5 Merge pull request #6793 from openfoodfoundation/dependabot/bundler/rubocop-1.9.1
Bump rubocop from 1.9.0 to 1.9.1
2021-02-02 15:49:48 +01:00
Pau Pérez Fabregat
9bb2970a07 Merge pull request #6782 from jibees/6766-manage-hover-on-account-tabs
User profile tabs: specify :hover rule only for devices that can effectively handle it
2021-02-02 15:47:03 +01:00
Pau Perez
a19aceae8c Replace spree_put with put in controller tests
This removes the following annoying deprecation warnings that happen in
each test.

```
DEPRECATION WARNING: You are trying to generate the URL for a named route called :main_app but no such route was found. In the future, this will result in an `ActionController::UrlGenerationError` exception. (called from process_action_with_route at /usr/s
rc/app/spec/support/controller_requests_helper.rb:49)
DEPRECATION WARNING: Passing the `use_route` option in functional tests are deprecated. Support for this option in the `process` method (and the related `get`, `head`, `post`, `patch`, `put` and `delete` helpers) will be removed in the next version without
 replacement. Functional tests are essentially unit tests for controllers and they should not require knowledge to how the application's routes are configured. Instead, you should explicitly pass the appropiate params to the `process` method. Previously th
e engines guide also contained an incorrect example that recommended using this option to test an engine's controllers within the dummy application. That recommendation was incorrect and has since been corrected. Instead, you should override the `@routes`
variable in the test case with `Foo::Engine.routes`. See the updated engines guide for details. (called from process_action_with_route at /usr/src/app/spec/support/controller_requests_helper.rb:49)
```
2021-02-02 15:39:24 +01:00
Pau Perez
aef0d28dd1 Do not load unmodified VOs from DB
Closes #6727.

This avoids the authorization of all the VOs of the hub, which will go
through VOs that may have become invalid due to their underlying product
not belonging to the supplier the hub has permissions with (or any other
data integrity issue).

This is utterly confusing for the user who is only given a generic error
and doesn't understand what's wrong with the particular VO they changed,
while it may be fine after all. What's more, this often results in
a customer support request, which then may end up with a dev finding out
which VO is broken.

Also, there's no point in loading them from DB if the users didn't touch
them.
2021-02-02 15:39:23 +01:00
Pau Pérez Fabregat
d48aa4a73f Merge pull request #6748 from coopdevs/dont-fetch-vos-with-deleted-variant
Do not fetch VOs with deleted variant
2021-02-02 15:38:29 +01:00
Matt-Yorkley
d7b130d293 Update all locales with the latest Transifex translations 2021-02-02 12:23:25 +00:00
Matt-Yorkley
617d914835 Merge pull request #6788 from jibees/6783-align-new-product-form
Use full width for "new product" form
2021-02-02 13:11:12 +01:00
Matt-Yorkley
b1349306f9 Merge pull request #6787 from jibees/6784-align-items-on-shipping-and-payment-methods-forms
Align items on shipping and payment methods forms
2021-02-02 13:08:28 +01:00
Pau Perez
cdcda46bff Re-enable mail_bcc field in mail method settings
This feels safer because we don't risk messing up with any instance's
operations while still moving us towards removing this page.
2021-02-02 12:16:55 +01:00
Jean-Baptiste Bellet
a82b24d4c1 specify width and height
Was too small, almost invisible.
2021-02-02 11:19:20 +01:00
Transifex-Openfoodnetwork
596e8a6828 Updating translations for config/locales/ru.yml 2021-02-02 20:48:36 +11:00
dependabot[bot]
1613c2e6fb Bump rubocop from 1.9.0 to 1.9.1
Bumps [rubocop](https://github.com/rubocop-hq/rubocop) from 1.9.0 to 1.9.1.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v1.9.0...v1.9.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-02 05:34:32 +00:00
Andy Brett
850dfd776a migrate variants with nil unit_value 2021-02-01 21:27:32 -08:00
Pau Pérez Fabregat
9db9d2d138 Merge pull request #6786 from jibees/6781-align-packages-selection-on-registration
Package selection: use "columns" system to display 3 items on same line
2021-02-01 21:06:00 +01:00
Pau Pérez Fabregat
bcbd1ce8bc Merge pull request #6790 from openfoodfoundation/transifex
Transifex
2021-02-01 21:05:16 +01:00
Pau Perez
20b9ac89b8 Fix missing translation
The used key doesn't exist.
2021-02-01 18:45:02 +01:00
Pau Perez
063d44fecc Disable mail methods form fields except mails_from
This moves a step closer to having a simple and straightforward way to
configure the app's mail delivery which doesn't require to be a nuclear
engineer to troubleshoot mail issues.

It happens way too often that servers have mail config broken when
restarted or redeployed and it takes too much brain power to fix it. No
doubt; it's way too complex.

I chose to leave this page's form fields but "Send mails as" as
read-only. This other field is still used by instance manager to
troubleshoot mail issues.
2021-02-01 18:45:02 +01:00
Jean-Baptiste Bellet
370a108b3d Add stripe account owner selector as a new row
Otherwise, not displayed.
2021-02-01 18:00:28 +01:00
Transifex-Openfoodnetwork
38dde5e063 Updating translations for config/locales/es.yml 2021-02-02 03:04:56 +11:00
Transifex-Openfoodnetwork
fe79186bec Updating translations for config/locales/ca.yml 2021-02-02 03:03:33 +11:00
Pau Pérez Fabregat
d5413224b7 Merge pull request #6769 from openfoodfoundation/transifex
Transifex
2021-02-01 16:57:45 +01:00
Pau Pérez Fabregat
90466e19dc Merge pull request #6776 from Matt-Yorkley/dead-argument
Dead code: superfluous argument in CartService#populate
2021-02-01 16:49:02 +01:00
Pau Perez
0ee1e2cd72 Eager load taggings related to variant overrides
This removes an N+1 with taggings but doesn't solve the one with tags.
Using `includes(taggings: :base_tags)` based on
47da5036de/lib/acts_as_taggable_on/taggable.rb (L83-L84)
wasn't enough to solve it and I got to stop here. This is scope-creeping
too much.
2021-02-01 16:38:40 +01:00
Pau Perez
ee4f2a7b02 Remove N+1 on variants and products
We get from an initial INNER JOIN with variants and products to fetch
the variant overrides + N queries like:

```sql
SELECT "spree_variants".* FROM "spree_variants" WHERE
"spree_variants"."deleted_at" IS NULL AND "spree_variants"."id" = $1
LIMIT 1  [["id", 1545]]

SELECT "spree_products".* FROM "spree_products" WHERE
"spree_products"."id" = $1 LIMIT 1  [["id", 604]]
```

to the same initial INNER JOIN + just 2 queries like:

```sql
SELECT "spree_variants".* FROM "spree_variants" WHERE
"spree_variants"."deleted_at" IS NULL AND "spree_variants"."id" IN
(1551, 1554)

SELECT "spree_products".* FROM "spree_products" WHERE
"spree_products"."deleted_at" IS NULL AND "spree_products"."id" IN (606,
607)
```
2021-02-01 16:38:40 +01:00
Pau Perez
6584f510e8 Remove now dead code 2021-02-01 16:38:40 +01:00
Jean-Baptiste Bellet
acbe0faa1e use full width for new product form
- use the sixteen full width: eight + eight or eight + four + four, ...
2021-02-01 16:35:55 +01:00
Pau Pérez Fabregat
1420c43a0a Merge pull request #6778 from openfoodfoundation/dependabot/bundler/database_cleaner-1.99.0
Bump database_cleaner from 1.8.5 to 1.99.0
2021-02-01 16:06:51 +01:00
Jean-Baptiste Bellet
adf67475be special aligment for stripe form 2021-02-01 15:39:51 +01:00
Jean-Baptiste Bellet
c44ce85f30 alignment for specific provider settings form in payment method 2021-02-01 15:31:39 +01:00
Jean-Baptiste Bellet
46e6bc6179 align payment method form
- enlarge the form to be "full size" (four + twelve = 16 columns)
2021-02-01 15:18:45 +01:00
Jean-Baptiste Bellet
e57acd3163 align shipping method form (editing)
- use `row` and no more `field` to be consistent
- enlarge the form to be "full size" (four + twelve = 16 columns)
- enlarge "hubs sidebar"
2021-02-01 15:11:47 +01:00
Pau Pérez Fabregat
0878db70fe Merge pull request #6780 from openfoodfoundation/dependabot/bundler/webmock-3.11.2
Bump webmock from 3.11.1 to 3.11.2
2021-02-01 14:57:45 +01:00
Pau Pérez Fabregat
640681d664 Merge pull request #6719 from coopdevs/stop-using-spree-req-helpers-in-users-controller-spec
[Rails 5] Stop using deprecated req. helpers in users specs
2021-02-01 14:56:28 +01:00
Pau Perez
060530cda8 Do not fetch VOs with deleted variant
In the line below we filter them out in Ruby so it's a waste of
resources. The fundamental difference is that `#includes` and
`#references` results in LEFT JOINs, whereas `#joins` results in INNER
JOIN, and because there's a default scope on `deleted_at IS NULL`, these
are not included in the result set.

This however, requires us to move away from the current algorithm but
unfortunately we can't refactor it completely yet.

Before:

```sql
SELECT *
  FROM "variant_overrides"
  LEFT OUTER
  JOIN "spree_variants"
    ON "spree_variants"."id"              =  "variant_overrides"."variant_id"
   AND "spree_variants"."deleted_at" IS NULL
  LEFT OUTER
  JOIN "spree_products"
    ON "spree_products"."id"              =  "spree_variants"."product_id"
   AND "spree_products"."deleted_at" IS NULL
 WHERE "variant_overrides"."permission_revoked_at" IS NULL
   AND "variant_overrides"."hub_id" IN (
    SELECT "enterprises"."id"
      FROM "enterprises"
    INNER
      JOIN "enterprise_roles"
        ON "enterprise_roles"."enterprise_id" =  "enterprises"."id"
    WHERE (enterprise_roles.user_id          =  ?)
      AND (sells                             != 'none')
 ORDER BY name)
```

After:

```sql
SELECT "variant_overrides".*
  FROM "variant_overrides"
 INNER
  JOIN "spree_variants"
    ON "spree_variants"."id"              =  "variant_overrides"."variant_id"
   AND "spree_variants"."deleted_at" IS NULL
 INNER
  JOIN "spree_products"
    ON "spree_products"."id"              =  "spree_variants"."product_id"
   AND "spree_products"."deleted_at" IS NULL
 WHERE "variant_overrides"."permission_revoked_at" IS NULL
   AND "variant_overrides"."hub_id" IN (
    SELECT "enterprises"."id"
      FROM "enterprises"
    INNER
      JOIN "enterprise_roles"
        ON "enterprise_roles"."enterprise_id" =  "enterprises"."id"
    WHERE (enterprise_roles.user_id          =  ?)
      AND (sells                             != 'none')
 ORDER BY name)
```

This is covered in the test suite by
spec/controllers/admin/variant_overrides_controller_spec.rb:72. It keeps
passing so we're good to go.
2021-02-01 14:47:51 +01:00
Jean-Baptiste Bellet
b7e23a7401 user "columns" system to display 3 items on same line 2021-02-01 14:15:50 +01:00
Jean-Baptiste Bellet
fcd304182b specify :hover rule only for devices that can handle it
Since mobile device cannot handle :hover rule (hover is non sense for touch devices), specify css for only devices that effectivly handle it.

see https://css-tricks.com/solving-sticky-hover-states-with-media-hover-hover/
and https://caniuse.com/mdn-css_at-rules_media_hover for compatibility (quite good)
2021-02-01 10:53:34 +01:00
dependabot[bot]
863a7ec688 Bump webmock from 3.11.1 to 3.11.2
Bumps [webmock](https://github.com/bblimke/webmock) from 3.11.1 to 3.11.2.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.11.1...v3.11.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-01 06:29:04 +00:00
dependabot[bot]
6f4b18a7d5 Bump test-unit from 3.3.9 to 3.4.0
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.3.9 to 3.4.0.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.3.9...3.4.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-01 06:23:46 +00:00
dependabot[bot]
e9c789a459 Bump database_cleaner from 1.8.5 to 1.99.0
Bumps [database_cleaner](https://github.com/DatabaseCleaner/database_cleaner) from 1.8.5 to 1.99.0.
- [Release notes](https://github.com/DatabaseCleaner/database_cleaner/releases)
- [Changelog](https://github.com/DatabaseCleaner/database_cleaner/blob/master/History.rdoc)
- [Commits](https://github.com/DatabaseCleaner/database_cleaner/compare/v1.8.5...v1.99.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-02-01 06:20:51 +00:00
Matt-Yorkley
3da21ce2bd Add historical note to CartService
Useful background when applying upstream fixes from Spree::OrderPopulator, and means grepping for OrderPopulator doesn't come up empty.
2021-01-30 16:57:05 +00:00
Matt-Yorkley
d39468013e Clarify CartService#populate arguments
This method doesn't use :products anywhere, it doesn't need to be passed in as part of the argument.
2021-01-30 16:52:59 +00:00
Matt-Yorkley
2de54e5ae2 Fix updated_at issue in RemoveTransientData spec
The value in the test setup was not what was expected after the updates to touching the updated_at columns.
2021-01-30 13:10:38 +00:00
Matt-Yorkley
0e82160b76 Touch the updated_at column when updating records via #update_column
#update_column(s) skips callbacks (which is useful), but it doesn't change the updated_at field on the record by default (which we should be doing in these cases).

This change is made in Spree 2.2 here: b367c629ce
2021-01-30 12:49:38 +00:00
Andy Brett
c28b65f772 update subs jobs delivery methods 2021-01-29 21:08:41 -08:00
Andy Brett
e694449dcc move subs jobs out of spree namespace 2021-01-29 21:08:41 -08:00
Andy Brett
3da0c2e386 send authorization emails when running the subscriptionconfirmjob 2021-01-29 21:08:41 -08:00
Andy Brett
87bce505ec Merge pull request #6765 from openfoodfoundation/dependabot/bundler/rack-mini-profiler-2.3.1
Bump rack-mini-profiler from 2.3.0 to 2.3.1
2021-01-29 20:04:13 -08:00
Andy Brett
fb5668afa6 Merge pull request #6764 from openfoodfoundation/dependabot/bundler/rubocop-1.9.0
Bump rubocop from 1.8.1 to 1.9.0
2021-01-29 20:03:56 -08:00
Matt-Yorkley
8466ab5675 Extract more OFN fee-handling code from Spree::Order class 2021-01-29 22:51:21 +00:00
Matt-Yorkley
793baca44f Update fees on single line item and then order fees in LineItemsController#delete
Fees on other line items are left alone (not recreated), and whatever fees on the order are updated.
2021-01-29 21:53:11 +00:00
Matt-Yorkley
ce5f9a9a94 Update existing closed order fees when deleting line items on completed orders in LineItemsController#delete
Whatever fee adjustments there are on other line items should be left alone (not recreated), and whatever fee adjustments are already on the order should just be updated.
2021-01-29 21:53:11 +00:00
Matt-Yorkley
58c7c90624 Refactor methods for updating closed adjustments 2021-01-29 21:53:11 +00:00
Matt-Yorkley
b2b6d3ab87 Relocate specs for #provided_by_order_cycle? method extracted from Order class to service 2021-01-29 21:53:11 +00:00
Matt-Yorkley
dffa4d4f39 Update order methods delegation 2021-01-29 21:53:09 +00:00
Matt-Yorkley
3ecdfca9cf Rename fee adjustment clear-all method 2021-01-29 21:52:28 +00:00
Matt-Yorkley
9abf6cdcdf Rename expensive method Order#update_distribution_charge!
This method is named "update distribution charge". What this method actually does is delete all of the fee adjustments on an order and all it's line items, then recreate them all from scratch. We call this from lots of different places all the time, and it's incredibly expensive. It even gets called from inside of transactions being run inside callbacks. Renaming it hopefully will add a bit of clarity.

This needs to be a lot more granular!
2021-01-29 21:52:28 +00:00
Matt-Yorkley
785cdf9bdc Extract order fees logic to service 2021-01-29 21:52:27 +00:00
Matt-Yorkley
fc06e5e4c3 Remove dead code Spree::Order#clear_adjustments 2021-01-29 19:58:05 +00:00
Transifex-Openfoodnetwork
8f163cf5b5 Updating translations for config/locales/en_CA.yml 2021-01-30 06:08:22 +11:00
Matt-Yorkley
e7866db7b1 Improve efficiency in applying enterprise fees in Order#update_distribution_charge! 2021-01-29 18:32:26 +00:00
Matt-Yorkley
b97734d918 Merge pull request #6720 from cillian/cancel-email-for-shop
When an order is cancelled by a customer send an email to the shop.
2021-01-29 18:30:28 +01:00
Cillian O'Ruanaidh
0cfd7de8a8 Fix the link to the order in the order cancelled email. 2021-01-29 14:14:11 +00:00
Matt-Yorkley
d03be3b8dc Update all locales with the latest Transifex translations 2021-01-29 11:42:09 +00:00
Matt-Yorkley
e4d7e03903 Merge pull request #6740 from Matt-Yorkley/carts-cleanup
Remove old abandoned carts
2021-01-29 12:32:16 +01:00
Cillian O'Ruanaidh
c8198ff67c Merge branch 'master' into include-ready-for-in-producer-notification 2021-01-29 11:30:11 +00:00
Cillian O'Ruanaidh
899dffec96 When an order is cancelled by a customer send an email to the shop.
Fixes #6435 i.e. If the customer paid for their order by Stripe/Paypal then the Enterprise needs to know that the order was cancelled in order to arrange a refund.  Refunds are not automatically processed when an order is cancelled.

This will send a very basic email to the shop, it only includes a link to view the cancelled order in the admin area initially.

I created a CustomerOrderCancellation object here because orders can be cancelled in two ways (1) by the customer, so an email should be sent to the shop. (2) by the shop, so an email doesn't need to be sent. However the code for cancelling order happens in Order#cancel via the state machine. Rather than passing some sort of parameter into #cancel to indicate whether it is a customer or shop cancelled order it might be clearer to have a CustomerOrderCancellation object, there could be other differences between customer or shop cancelled orders in future maybe.
2021-01-29 11:23:05 +00:00
Pau Pérez Fabregat
818dfc0399 Merge pull request #6751 from jibees/4971-profile-tabs-back-forward-buttons
Make user's profile tabs aware of location change event
2021-01-29 10:01:58 +01:00
dependabot[bot]
32761baa68 Bump rack-mini-profiler from 2.3.0 to 2.3.1
Bumps [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/MiniProfiler/rack-mini-profiler/releases)
- [Changelog](https://github.com/MiniProfiler/rack-mini-profiler/blob/master/CHANGELOG.md)
- [Commits](https://github.com/MiniProfiler/rack-mini-profiler/compare/v2.3.0...v2.3.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-29 05:38:38 +00:00
dependabot[bot]
36380414a4 Bump rubocop from 1.8.1 to 1.9.0
Bumps [rubocop](https://github.com/rubocop-hq/rubocop) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v1.8.1...v1.9.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-29 05:35:09 +00:00
Matt-Yorkley
4ec68dcd85 Update migration to include TaxRate model 2021-01-29 02:37:35 +00:00
Matt-Yorkley
9791287712 Run data cleanup job at 4:30am 2021-01-28 21:51:50 +00:00
Matt-Yorkley
4f7c8062a1 Create class to map join table and simplify code 2021-01-28 21:51:50 +00:00
Matt-Yorkley
d502320b14 Enable cascading deletes 2021-01-28 21:51:47 +00:00
Andy Brett
6fea2dbe46 Merge pull request #6760 from openfoodfoundation/dependabot/bundler/rswag-2.3.2
Bump rswag from 2.3.1 to 2.3.2
2021-01-28 13:11:33 -08:00
Pau Pérez Fabregat
45573dc522 Merge pull request #6753 from jibees/6746-epic-fullwdith-admin-layout-quick-wins
FullWidth admin layout quick wins
2021-01-28 21:10:06 +01:00
Pau Pérez Fabregat
0a1d4873e3 Merge pull request #6736 from jibees/6707-remove-anchor-jump
Remove anchor in URL so avoid browser scrolling to the top of the page when editing order
2021-01-28 21:09:08 +01:00
Pau Pérez Fabregat
abe2cb9fac Merge pull request #6728 from emclaughlin1215/add_tax_rates_i18n_key
Adding a tax_rates key to en.yml to match the key used everywhere.
2021-01-28 21:04:22 +01:00
Matt-Yorkley
dcbe9c4011 Merge pull request #6756 from andrewpbrett/fix-sca-regression
Fix SCA regression
2021-01-28 19:45:08 +01:00
Pau Pérez Fabregat
d4f6f903c9 Merge pull request #6759 from openfoodfoundation/dependabot/bundler/ddtrace-0.45.0
Bump ddtrace from 0.44.0 to 0.45.0
2021-01-28 16:40:29 +01:00
Pau Pérez Fabregat
6cc19ac6d5 Merge pull request #6726 from filipefurtad0/shipping_methods_spec_pending_fix
Fixes a pending test case and improves the spec run time
2021-01-28 16:39:39 +01:00
Pau Pérez Fabregat
2668747237 Merge pull request #6723 from luisramos0/spree_routes_2
Move spree orders routes out of the spree engine routes into the main app routes
2021-01-28 16:31:49 +01:00
Matt-Yorkley
57f429db58 Merge pull request #6606 from mkllnk/6081-add-to-cart
Add quantity input to shop front
2021-01-28 15:51:08 +01:00
Matt-Yorkley
de530c2a46 Merge pull request #6750 from mkllnk/6749-i18n-in-assets
Use JS I18n function in assets to avoid parsing error
2021-01-28 15:50:22 +01:00
Jean-Baptiste Bellet
553053bad1 use find instead of click_link because <a> element no longer has href attribute
- click_link only looks for <a> element with href attribute
 - Use a regexp for a case-insensitive search (as CSS use a uppercase transform)
2021-01-28 09:45:24 +01:00
dependabot[bot]
55cddbbc1a Bump rswag from 2.3.1 to 2.3.2
Bumps [rswag](https://github.com/rswag/rswag) from 2.3.1 to 2.3.2.
- [Release notes](https://github.com/rswag/rswag/releases)
- [Changelog](https://github.com/rswag/rswag/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rswag/rswag/compare/2.3.1...2.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-28 05:46:19 +00:00
dependabot[bot]
0a128d83d0 Bump ddtrace from 0.44.0 to 0.45.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.44.0 to 0.45.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.44.0...v0.45.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-28 05:41:53 +00:00
Matt-Yorkley
c65f623ed8 Memoize and simplify objects being checked in Order#provided_by_order_cycle? 2021-01-28 01:02:57 +00:00
Luis Ramos
7cea4138c2 Fix spec setup 2021-01-27 22:44:52 +00:00
Matt-Yorkley
85c489d303 Ignore carts with failed payments in cleanup 2021-01-27 22:40:23 +00:00
Matt-Yorkley
e6c59fbd96 Update data retention periods
Sessions and cart data are removed if older than 3 months, instead of 6.
2021-01-27 22:40:23 +00:00
Matt-Yorkley
3fddaba4bf Extract private methods 2021-01-27 22:40:23 +00:00
Matt-Yorkley
0a88712926 Clear orphaned records in join table spree_option_value_line_items 2021-01-27 22:40:23 +00:00
Matt-Yorkley
4230d46a06 Remove carts older than 6 months 2021-01-27 22:40:23 +00:00
Maikel
8a757812e7 Merge pull request #6735 from coopdevs/enable-mail-delivery-always
Enable mail delivery always
2021-01-28 09:31:12 +11:00
Matt-Yorkley
f49355e5d3 Merge pull request #6724 from Matt-Yorkley/remove-price-adjustments
Delete dead code Spree::Order#price_adjustments
2021-01-27 23:29:38 +01:00
Luis Ramos
12dac82b8a Delete dead route 2021-01-27 22:08:06 +00:00
Luis Ramos
c604f4c0c6 Remove dead endpoint 2021-01-27 22:05:04 +00:00
Jean-Baptiste Bellet
bb21543ae0 remove useless brackets 2021-01-27 21:35:55 +01:00
Pau Pérez Fabregat
c3897dd3df Merge pull request #6643 from coopdevs/customer-balance-frontoffice
Customer balance frontoffice
2021-01-27 19:55:56 +01:00
Andy Brett
e6e20309aa Revert "don't try to process a payment if it's pending auth"
This reverts commit bba9e55006.
2021-01-27 08:06:20 -08:00
Jean-Baptiste Bellet
9b1c0e6806 avoid inserting div in the columns grid system
it break the css selectors (as :first-child, ...)

fixe: #6747
2021-01-27 15:05:48 +01:00
Jean-Baptiste Bellet
c5edd74d05 remove useless wrapper and align items (both right and left)
Fixe: #6747
2021-01-27 15:04:45 +01:00
Jean-Baptiste Bellet
a6fba8a065 Put content into grid columns system
Two columns of three + a ten column rather than empty column + content outside column system

correct #6745
2021-01-27 14:40:50 +01:00
Matt-Yorkley
7525620d6c Merge pull request #6070 from Matt-Yorkley/responsive-admin
Full-width admin layout
2021-01-27 12:45:06 +01:00
Matt-Yorkley
feca9e7838 Improve hubs sidebar in payment methods edit 2021-01-27 11:38:01 +00:00
Matt-Yorkley
398b4a09a1 Improve enterprise fees calculator fields 2021-01-27 11:38:01 +00:00
Matt-Yorkley
366588de95 Improve <legend> element centering 2021-01-27 11:38:01 +00:00
Matt-Yorkley
b5ab6cbf69 Improve button spacing in enterprises submenu 2021-01-27 11:38:01 +00:00
Matt-Yorkley
e762c1d02f Adjust buttons layout on enterprise shipping and payment methods page 2021-01-27 11:38:01 +00:00
Matt-Yorkley
f72cd6222f Adjust variant columns in inventory pages 2021-01-27 11:38:01 +00:00
Matt-Yorkley
79316560d6 Remove skeleton.css from /vendor/assets
This was recently imported from spree_core
2021-01-27 11:38:01 +00:00
Matt-Yorkley
539ff228e0 Adjust form layout on order cycle edit form (simple view) 2021-01-27 11:38:01 +00:00
Matt-Yorkley
afdb5e8c6f Add a max-width of 1400px for huge monitors (1600px or more) 2021-01-27 11:38:01 +00:00
Matt-Yorkley
d40ec2d63c Adjust order cycle edit form layout 2021-01-27 11:38:01 +00:00
Matt-Yorkley
0d99656b1b Adjust dashboard layout 2021-01-27 11:38:01 +00:00
Matt-Yorkley
52cfa0a103 Remove old Javascript hacks for the main menu and replace with flex-based CSS properties 2021-01-27 11:38:01 +00:00
Matt-Yorkley
d886b1dcea Tweak some styles and layout classes 2021-01-27 11:38:01 +00:00
Matt-Yorkley
29e74017a6 Replace fixed 960 grid 2021-01-27 11:38:01 +00:00
Pau Pérez Fabregat
9fe2cb1a30 Merge pull request #6681 from luisramos0/css
[Rails 5] Make the app work in rails 5
2021-01-27 12:08:27 +01:00
Jean-Baptiste Bellet
0242e1a0c9 avoid unnecessary javascript:void(0) 2021-01-27 10:26:05 +01:00
Jean-Baptiste Bellet
48c667d2dd add onLocationChangeSuccess event handler
watch this event and toggle class if needed.
2021-01-27 10:25:05 +01:00
Maikel Linke
06983c4dc7 Use JS I18n function in asset, avoid parsing error
A deployment to the French server failed because a translation contained
an apostrophe `'` and we were rendering it without escaping in
Javascript. We don't have that problem and avoid other issues by using
the javascript translate function. That way the error message is
translated in the browser with the user's language and we don't have to
do any additional escaping.
2021-01-27 14:12:25 +11:00
Maikel Linke
0393e902c4 Update translations from Transifex 2021-01-27 08:28:37 +11:00
Luis Ramos
ab135e30c0 Fix order_path in stripe connect spec 2021-01-25 20:25:13 +00:00
Luis Ramos
11fdbe5e9f Switch spree from namespace to scope in routes so helpers like order_path keep working 2021-01-25 20:01:08 +00:00
Luis Ramos
34ae3ca24d Replace spree_order_url with order_url so we can use scope in the routes file 2021-01-25 19:56:25 +00:00
Luis Ramos
f3da7afd55 Replace spree_order_path with order_path so we can use scope in the routes file 2021-01-25 19:55:42 +00:00
Luis Ramos
dbef7b60a6 Adapt spec to new orders url 2021-01-25 19:52:48 +00:00
Luis Ramos
21f48b52c8 Fix cancel order route 2021-01-25 19:52:48 +00:00
Luis Ramos
592474189d Fix order route in paypal controller 2021-01-25 19:52:48 +00:00
Luis Ramos
d52661fe0a Fix admin order form to use admin orders route 2021-01-25 19:52:48 +00:00
Luis Ramos
00fcb89af1 Fix order_url routes in a few places 2021-01-25 19:52:48 +00:00
Luis Ramos
dd4ca8a8e6 Fix order path in subs emailer view 2021-01-25 19:52:48 +00:00
Luis Ramos
f25e06ddb6 Fix order path route in payments controller 2021-01-25 19:52:48 +00:00
Luis Ramos
3813b80615 Adapt order path route in order details view 2021-01-25 19:52:48 +00:00
Luis Ramos
88c21ef82e Fix order path 2021-01-25 19:52:48 +00:00
Luis Ramos
60c3557c2d Fix checkout form order path 2021-01-25 19:52:48 +00:00
Luis Ramos
6e7ee02191 Change spree.order_path to spree_order_path everywhere 2021-01-25 19:52:48 +00:00
Luis Ramos
e98d97ae0d Move spree orders routes out of the spree engine routes into the main app routes, still inside the spree namespace 2021-01-25 19:52:48 +00:00
Pau Pérez Fabregat
10a60b1f72 Merge pull request #6729 from openfoodfoundation/dependabot/bundler/shoulda-matchers-4.5.1
Bump shoulda-matchers from 4.5.0 to 4.5.1
2021-01-25 16:34:13 +01:00
Jean-Baptiste Bellet
686dcaaa1b remove '#' as path for link_to
Adding '#' to the current url makes most of browser jump to the top of the page. Avoid this by deleting this added # (meaningless) and replacing it by empty string.
2021-01-25 16:09:12 +01:00
Pau Perez
5677c86f9b Remove enable_mail_delivery preference from DB
It's no longer used.
2021-01-25 13:34:13 +01:00
Pau Perez
4a5869b60c Remove ability to toggle mail delivery
OFN requires mails to work so there's no point in having this
conditional with the maintenance cost it entails.
2021-01-25 13:27:44 +01:00
Pau Pérez Fabregat
efd2c81877 Merge pull request #6722 from luisramos0/spree_routes
Replace spree_get with simple get
2021-01-25 09:12:51 +01:00
dependabot[bot]
70bd81430d Bump shoulda-matchers from 4.5.0 to 4.5.1
Bumps [shoulda-matchers](https://github.com/thoughtbot/shoulda-matchers) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/thoughtbot/shoulda-matchers/releases)
- [Changelog](https://github.com/thoughtbot/shoulda-matchers/blob/master/CHANGELOG.md)
- [Commits](https://github.com/thoughtbot/shoulda-matchers/compare/v4.5.0...v4.5.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-25 06:13:04 +00:00
filipefurtad0
c5c9e803ab Fixes a pending test case and improves the spec run time 2021-01-24 13:32:04 +00:00
Erin McLaughlin
609db647bb Adding a tax_rates key to en.yml to match the key used everywhere. 2021-01-23 22:07:07 -05:00
Matt-Yorkley
ff54426e30 Expand tests on additional and inclusive taxes. 2021-01-23 03:59:32 +00:00
Matt-Yorkley
7940a42e8c Add Spree::Order#all_adjustments scope, which can be used to get all adjustments on an order, and order's line_items, etc, not just adjustments directly on the order itself. 2021-01-23 03:59:32 +00:00
Matt-Yorkley
4d4c055577 Loosen Spree::Adjustment#tax scope to include any tax adjustments 2021-01-23 03:59:32 +00:00
Matt-Yorkley
ddfcda0c0b Adapt imported Paypal code
The #additional scope from Spree 2.2 is now present, so we can tidy up this conditional.
2021-01-23 03:59:32 +00:00
Matt-Yorkley
173e502c98 Rename #included scope to #inclusive
This method name (#included) is reserved and used internally by ActiveRecord. After updating Ruby, this has changed from a silent warning to a fatal error.
2021-01-23 03:59:32 +00:00
Matt-Yorkley
a328a9bc1b Use included boolean in tax adjustments 2021-01-23 03:59:32 +00:00
Matt-Yorkley
8be18cd05c Add #included and #additional scopes to Spree::Adjustment
We can now do things like:
```
included_tax = order.adjustments.tax.included.sum(:amount)
additional_tax = order.adjustments.tax.additional.sum(:amount)
```
2021-01-23 03:59:32 +00:00
Matt-Yorkley
66bf69b52c Add included column to spree_adjustments table 2021-01-23 03:59:31 +00:00
Matt-Yorkley
0247386f82 Delete dead code Spree::Order#price_adjustments
This method returns the same thing as the Spree::Order#line_items_adjustments scope, but in a slightly less useful format (an array instead of a relation). The method's name is also totally inaccurate, as currently the only adjustments that appear on line items are tax adjustments for inclusive tax rates, which by definition have no effect on the price whatsoever...
2021-01-23 00:05:56 +00:00
Luis Ramos
1643636d43 Replace spree_get with simple call to get 2021-01-22 22:32:48 +00:00
Luis Ramos
d6a53cb84f Replace spree_get with simple call to get 2021-01-22 22:30:11 +00:00
Luis Ramos
94275eedfb Replace spree_get with simple call to get 2021-01-22 22:28:53 +00:00
Luis Ramos
59e900826e Replace spree_get with get
Spree helper method is not needed
2021-01-22 22:22:50 +00:00
Luis Ramos
be9ee376a3 Use get instead of spree_get
spree_get is not needed in these cases
2021-01-22 22:20:52 +00:00
Cillian O'Ruanaidh
9c6e97f90d Merge branch 'master' into include-ready-for-in-producer-notification 2021-01-22 11:45:01 +00:00
Cillian O'Ruanaidh
70a557cea3 Display the pickup time for each distributor, not the coordinator, in the Notify Producers email 2021-01-22 11:39:46 +00:00
Pau Perez
cc2e46890e Stop using deprecated req. helpers in users specs
This removes the following two deprecation warnings that we are getting
by millions (the two for each controller action test):

```
DEPRECATION WARNING: You are trying to generate the URL for a named route called "main_app" but no such route was found. In the future, this will result in an `ActionController::UrlGenerationError` exception. (called from process_action_with_route at /usr/
src/app/spec/support/controller_requests_helper.rb:49)
DEPRECATION WARNING: Passing the `use_route` option in functional tests are deprecated. Support for this option in the `process` method (and the related `get`, `head`, `post`, `patch`, `put` and `delete` helpers) will be removed in the next version without
 replacement. Functional tests are essentially unit tests for controllers and they should not require knowledge to how the application's routes are configured. Instead, you should explicitly pass the appropiate params to the `process` method. Previously th
e engines guide also contained an incorrect example that recommended using this option to test an engine's controllers within the dummy application. That recommendation was incorrect and has since been corrected. Instead, you should override the `@routes`
variable in the test case with `Foo::Engine.routes`. See the updated engines guide for details. (called from process_action_with_route at /usr/src/app/spec/support/controller_requests_helper.rb:49)
```

It slows down our test suite and clutters the output a lot. As per my
investigation, this is something that arose in
https://github.com/rails/rails/pull/17453 and addressed in
https://github.com/rails/rails/pull/17725. TL;DR: Engines need to define
their routes in controller tests as shown in
https://github.com/discourse/discourse/pull/3011.

This, however, revealed a much complex reality in our case. We're still
using a `Spree::Core::Engine` with its own routes at
`Spree::Core::Engine.routes`. So we can't skip defining `routes { }` for
each of its controllers unless we merge this engine into our app, but
that's going to require more effort. What could that entail in
https://github.com/openfoodfoundation/openfoodnetwork/compare/master...coopdevs:move-users-to-app-routes.

To make it even worse, note that we override spree's core routes from
our own, resulting in a controller whose actions are being served from
routes defined in either `config/routes.rb` or `config/spree/routes.rb`
🙈.
2021-01-22 11:42:17 +01:00
Maikel Linke
46d23f1f8a Fit bulk buy modal on small mobile screens
On some Iphones the modal wouldn't fit and there were line breaks
between the input fields. The inputs are now stacked vertically on small
screens so that there is still plenty of space for large numbers in the
quantity fields.
2021-01-22 16:44:52 +11:00
Maikel Linke
4ab48c4b85 Initialise valid quantities when choosing OCs
Line items were initialised with undefined quantities which makes it
impossible to distinguish between the initial unset quantity and a user
entering an invalid quantity. When a user changed order cycles, all
quantities are reset and the UI displayed the quantity modifier buttons
instead of the Add button.

Initialising with the valid quantity 0 helps us to display the Add
button in that situation.
2021-01-22 16:42:21 +11:00
Maikel Linke
bd731267ec Allow user to get maximum available quantity
When the user entered a number beyond the stock level, the browser was
correcting that to the max number which is very helpful. But Angular was
setting the model to undefined which removes the item from the cart.

Deactivating Angular's max behaviour let's us set the value ourselves
which is then used in the cart.
2021-01-22 16:42:21 +11:00
Maikel Linke
35b4e8c4d1 Allow editing of invalid quantities
If the user entered an invalid quantity, Angular set the model to
undefined and we removed the input field to show the add button. That
makes it impossible for a user to see what the maximum quantity to enter
would be. For example:

- The variant has a stock level of 5.
- The user enters 7.
- Angular sets it to undefined.
- The input field disappears.
- The user is startled and doesn't know how to proceed.

But now we hide the input only if it's deliberately set to zero.
2021-01-22 16:42:21 +11:00
Maikel Linke
0166400b03 Guard against invalid quantity input
The user can now type anything into the quantity field and some of it
may not be valid. These safe guards ensure that the buttons still work
even if the quantity is undefined or out of range.

Angular guards against the value being out of range but that has other
side-effects. We want to be able to de-activate some of Angular's
behaviour.
2021-01-22 16:42:20 +11:00
Maikel Linke
cf2a105b2a Prevent line breaks within plus/minus buttons 2021-01-22 16:42:20 +11:00
Maikel Linke
688be46b10 Avoid horizontal scroll bar on small screens 2021-01-22 16:42:20 +11:00
Maikel Linke
3558d01fce Give the new input fields more space
The additional input needs more space and we are adjusting columns here.
2021-01-22 16:42:20 +11:00
Maikel Linke
66423a1ec3 Add quantity input to shop front product list
Adding bigger quantities can now be done via an input field instead of
clicking a thousand times.

The add-button has been widened to match the new space requirements.
2021-01-22 16:42:20 +11:00
Maikel Linke
e5506df5ea Replace bulk quantity label with input field
Enable the user to enter a number directly.
2021-01-22 16:42:20 +11:00
Maikel Linke
af918e63ee Change bulk quantities on any quantity change
This prepares for changing the quantity with an input field. It also
applies if the quantity is changed after an ajax request.
2021-01-22 16:42:20 +11:00
Maikel Linke
7add9247d5 Update translations from Transifex 2021-01-22 11:58:27 +11:00
Maikel
d5376ce29d Merge pull request #6702 from openfoodfoundation/transifex
Transifex
2021-01-22 11:54:57 +11:00
Andy Brett
84689c43be Merge pull request #6534 from andrewpbrett/sca-emails
Send email when SCA authorization is required for admin payment
2021-01-21 13:53:35 -08:00
Andy Brett
91d5b55376 Merge pull request #6673 from openfoodfoundation/dependabot/bundler/paypal-sdk-merchant-1.117.2
Bump paypal-sdk-merchant from 1.106.1 to 1.117.2
2021-01-21 11:21:27 -08:00
Andy Brett
0f92b3c4de Merge pull request #6685 from Matt-Yorkley/angular-csrf
[Rails 5] Update Angular CSRF handling
2021-01-21 11:01:06 -08:00
Andy Brett
0e7f4b2f14 Merge pull request #6537 from mkllnk/simplify-mail-config
Simplify mail config
2021-01-21 10:59:43 -08:00
Andy Brett
d2b2e46124 Merge pull request #6701 from Matt-Yorkley/admin-order-performance
Fix performance issue in loading payment methods
2021-01-21 10:58:35 -08:00
Andy Brett
3ef4a74b84 Merge pull request #6655 from Matt-Yorkley/summing-amounts
Improve performance on summing adjustments and payment
2021-01-21 10:58:10 -08:00
Matt-Yorkley
d8b795ebee Merge pull request #6679 from Matt-Yorkley/soft-delete-enterprise-fees
Soft-delete Enterprise Fees
2021-01-21 19:57:29 +01:00
Andy Brett
70f30f5224 Merge pull request #6658 from andrewpbrett/item-counter-fix
Further fix #5989 (Item counter accepts values higher than the available stock)
2021-01-21 10:56:18 -08:00
Andy Brett
bba9e55006 don't try to process a payment if it's pending auth 2021-01-21 09:18:29 -08:00
Andy Brett
ce4621858d base authorization on the payment's order 2021-01-21 09:18:29 -08:00
Andy Brett
8bcaeff6c8 resolve merge conflict; add ssl helper to base controller 2021-01-21 09:18:29 -08:00
Andy Brett
1635b83c15 add missing translation key for payment actions 2021-01-21 09:18:29 -08:00
Andy Brett
903b2e7ff4 whitelist allowed events to be sent to a Payment 2021-01-21 09:18:29 -08:00
Andy Brett
ab5ffead1d require that the redirect url be to stripe.com and over https 2021-01-21 09:18:29 -08:00
Andy Brett
affc82b2b5 update payment jobs delivery methods 2021-01-21 09:18:29 -08:00
Andy Brett
d76db9ee51 update payment controller spec to move payment to pending 2021-01-21 09:18:29 -08:00
Andy Brett
d9b27bc556 move controller and mailer outside of spree namespace; use haml in template 2021-01-21 09:18:29 -08:00
Andy Brett
5f1669280c update to rspec 3 expect syntax 2021-01-21 09:17:07 -08:00
Andy Brett
b669ccdc74 refactor admin payments controller 2021-01-21 09:17:07 -08:00
Andy Brett
84b5fcf2ce add resend-authorization-email button to admin screen 2021-01-21 09:17:07 -08:00
Andy Brett
5c0408c68c pass paymentIntent ID to capture 2021-01-21 08:48:38 -08:00
Andy Brett
8507dacc10 pass return_url option to gateway authorize 2021-01-21 08:48:33 -08:00
Andy Brett
802e49bed3 add PaymentMailer and send email if payment auth is required 2021-01-21 08:24:01 -08:00
Cillian O'Ruanaidh
40f9b063fe Remove ability to create new product from products page, use /admin/products/new instead.
It's simpler if there is just one place to add a new product. Closes #6650

This removes the 'creating directly from the new product path' test scenario because we have another 'assigning important attributes' scenario above which provides enough coverage.
2021-01-21 08:24:01 -08:00
Matt-Yorkley
49c616c33c Extract tax rate transition logic to service 2021-01-21 14:50:14 +00:00
Pau Pérez Fabregat
1833ab5ffa Merge pull request #6710 from openfoodfoundation/dependabot/bundler/webdrivers-4.5.0
Bump webdrivers from 4.4.2 to 4.5.0
2021-01-21 12:27:02 +01:00
Pau Pérez Fabregat
3370271ad8 Merge pull request #6705 from coopdevs/fix-request-queuing-tracking
Pass request_queuing setting to Rack middleware
2021-01-21 12:04:22 +01:00
dependabot[bot]
b6e7307cb9 Bump webdrivers from 4.4.2 to 4.5.0
Bumps [webdrivers](https://github.com/titusfortner/webdrivers) from 4.4.2 to 4.5.0.
- [Release notes](https://github.com/titusfortner/webdrivers/releases)
- [Changelog](https://github.com/titusfortner/webdrivers/blob/master/CHANGELOG.md)
- [Commits](https://github.com/titusfortner/webdrivers/compare/v4.4.2...v4.5.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-21 05:16:36 +00:00
Andy Brett
77419a1e4b Merge pull request #6675 from cillian/single-new-product-view
Remove ability to create new product from products page, use /admin/products/new instead.
2021-01-20 19:23:33 -08:00
Andy Brett
e31d566f7f Merge pull request #6283 from luisramos0/sets
Move sets out of app/models to app/services/sets
2021-01-20 19:22:15 -08:00
Andy Brett
ca37976661 Merge pull request #6640 from jibees/2772-loading-spinner-reusable-component
Create a reusable "loading spinner" component
2021-01-20 19:21:31 -08:00
Andy Brett
1d4fa2983c Merge pull request #6466 from Matt-Yorkley/package-optimisation
Optimise Shipment#to_package
2021-01-20 19:20:56 -08:00
Andy Brett
4a19a368dd Merge pull request #6706 from Matt-Yorkley/adjustments-migration
Fix issue with orphaned adjustments in migration
2021-01-20 13:23:36 -08:00
Andy Brett
dd38c8b3e2 add down method for migration 2021-01-20 12:56:03 -08:00
Pau Perez
cc9e3fe69b Replace double negation with proper list of states
We rely now on the exhaustive list of states an order can be in after
checkout. What made this all a bit more messy is that I made up the
"checkout" order state, likely mixing it from the payment model states.

This simplifies things quite a bit and gives meaningful names to things.
2021-01-20 18:34:31 +01:00
Pau Perez
d9c065a311 Remove outdated comment
This comment was related to the feature we removed in
https://github.com/openfoodfoundation/openfoodnetwork/pull/3609.
2021-01-20 18:23:22 +01:00
Pau Perez
996761da67 Fix long line 2021-01-20 18:23:22 +01:00
Pau Perez
9bb49bb590 Ensure the query the class depends on is called 2021-01-20 18:23:22 +01:00
Pau Perez
db23428832 Test OutstandingBalance
This duplicates the scenarios tested for CustomersWithBalance.
2021-01-20 18:23:22 +01:00
Pau Perez
783863056d Extract query object out of UsersController
It improves the overall readability of the code and as a result, things
became easier to manage already.
2021-01-20 18:23:22 +01:00
Pau Perez
d18e79ab19 Move query object to app/queries/ and doc it 2021-01-20 18:23:22 +01:00
Pau Perez
e8ef4acb2b Hide new data fetching implementation under toggle 2021-01-20 18:23:22 +01:00
Pau Perez
37b7340eb1 Refactor specs to speed them up
We don't care about the conversion from hash to JSON (that's an
ActiveModel::Serializer responsibility that is thoroughly tested) but
our logic so we can skip that step which only slows down tests.

It consistently reduced ~1.5s on my machine but it's still too slow to wait
~8.5s to get feedback from them.
2021-01-20 18:23:22 +01:00
Pau Perez
a124f93b20 Remove old commented out code 2021-01-20 18:23:22 +01:00
Pau Perez
20abaaa950 Reuse outstanding balance statement across queries
Instead of relying on Spree::Order#outstanding_balance we make us of the
result set `balance_value` computed column. So, we ask PostgreSQL to
compute it instead of Ruby and then serialize it from that computed
column. That's a bit faster to compute that way and let's reuse logic.

We hide this new implementation under this features' toggle so it's only
used when enabled. We want hit the old behaviour by default.
2021-01-20 18:23:22 +01:00
Pau Perez
681a009eb6 Extract outstanding balance SQL CASE/WHEN 2021-01-20 18:23:22 +01:00
Pau Perez
caf1c9ecd9 Move data fetching from injection helper to action
Data fetching is a controller action responsibility. We shouldn't couple
the controller with it too much but it should trigger it, not the
view-layer.
2021-01-20 18:23:22 +01:00
Matt-Yorkley
e1c13bc194 Fix issue with orphaned adjustments in migration 2021-01-20 13:42:14 +00:00
Pau Perez
ba018df9c5 Pass request_queuing setting to Rack middleware
It turns out that this setting belongs to the Rack middleware Datadog
comes with to track requests (See
e4c430a174/docs/GettingStarted.md (rack)).

The way to pass this option to it is through `configuration[:rack]`
where the `TraceMiddleware` will read it from. See
f57aefe60a/lib/ddtrace/contrib/rack/middlewares.rb (L215-L217)
and
f57aefe60a/lib/ddtrace/contrib/rack/middlewares.rb (L30-L43).
2021-01-20 10:58:07 +01:00
Andy Brett
a53cc6bc92 Update all locales with the latest Transifex translations 2021-01-19 19:07:37 -08:00
Andy Brett
89ce850da6 Merge pull request #6703 from openfoodfoundation/fix-datadog-init
Revert "Enable request queuing tracking in Datadog"
2021-01-19 18:39:21 -08:00
Transifex-Openfoodnetwork
b9cf5b7a9b Updating translations for config/locales/de_DE.yml 2021-01-20 12:46:16 +11:00
Andy Brett
012289e95f Merge pull request #6687 from openfoodfoundation/dependabot/bundler/monetize-1.10.0
Bump monetize from 1.9.4 to 1.10.0
2021-01-19 17:23:33 -08:00
Matt-Yorkley
6a9505cf67 Ensure adjustments can access soft-deleted originators
Note: originator is generally an EnterpriseFee or a TaxRate
2021-01-19 16:46:14 +00:00
Matt-Yorkley
c4a8a38c8d Soft-delete enterprise fees
These objects can hold critical information related to adjustments and tax categories. If they are hard-deleted we lose vital data that's needed by associated records.
2021-01-19 16:46:14 +00:00
Matt-Yorkley
a184075c5c Fix performance issue in loading payment methods
This was loading and initializing every payment method in the database, and every calculator for each of those payment methods.

🔥
2021-01-19 15:33:44 +00:00
Pau Pérez Fabregat
b84fb5814e Merge pull request #6696 from Matt-Yorkley/migration-issues
Update adjustment migration
2021-01-19 16:02:04 +01:00
Pau Pérez Fabregat
8b01c9c8ba Merge pull request #6279 from luisramos0/base_controller
Merge Spree::BaseController with ApplicationController and merge StoreController with ::BaseController
2021-01-19 15:52:47 +01:00
Matt-Yorkley
79b86f535d Move class definitions in adjustment migration 2021-01-19 13:33:37 +00:00
Luis Ramos
8007554176 Remove test_after_commit gem, it's baked into rails 5 now 2021-01-19 01:15:43 +00:00
Luis Ramos
fc40775ca8 Make paypal controller inherit from base controller and not from old store controller 2021-01-18 23:33:05 +00:00
Maikel
334e270a11 Merge pull request #6552 from Matt-Yorkley/adjustments-order-association
[Adjustments] Associate all adjustments with an order
2021-01-19 08:43:13 +11:00
Andy Brett
473ac820aa Merge pull request #6676 from openfoodfoundation/transifex
Transifex
2021-01-18 13:34:44 -08:00
Pau Pérez Fabregat
c9d2149ef9 Merge pull request #6688 from coopdevs/remove-unneeded-deprecation-warning
Remove old deprecation warning
2021-01-18 21:06:56 +01:00
Pau Pérez Fabregat
cd7ba2c62b Merge pull request #6690 from coopdevs/update-static-files-config
Update old setting to serve static assets
2021-01-18 18:05:44 +01:00
dependabot[bot]
d1eea4654a Bump monetize from 1.9.4 to 1.10.0
Bumps [monetize](https://github.com/RubyMoney/monetize) from 1.9.4 to 1.10.0.
- [Release notes](https://github.com/RubyMoney/monetize/releases)
- [Changelog](https://github.com/RubyMoney/monetize/blob/master/CHANGELOG.md)
- [Commits](https://github.com/RubyMoney/monetize/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-18 16:10:24 +00:00
Pau Perez
fd80d4a67f Remove old deprecation warning
We're in Rails 4.2 so we can remove it. This gets rid of the following
message when running tests:

```
DEPRECATION WARNING: Suppressing Selenium deprecation warnings is not needed any more. (called from block in <top (required)> at /usr/src/app/spec/spec_helper.rb:214)
```
2021-01-18 17:01:43 +01:00
Pau Perez
006abee23d Update old setting to serve static assets
Fixes the following deprecation warning:

```
DEPRECATION WARNING: The configuration option `config.serve_static_assets` has been renamed to `config.serve_static_files` to clarify its role (it merely enables serving everything in the `public` folder and is unrelated to the asset pipeline). The `serve_
static_assets` alias will be removed in Rails 5.0. Please migrate your configuration files accordingly. (called from block in <top (required)> at /usr/src/app/config/environments/test.rb:13)
```
2021-01-18 17:01:33 +01:00
Pau Pérez Fabregat
158aa78f89 Merge pull request #6692 from Matt-Yorkley/deliver-specs
Update mail delivery mocks in subscription specs
2021-01-18 16:41:02 +01:00
Matt-Yorkley
bc9020a555 Update mail delivery mocks in subscription specs 2021-01-18 12:27:07 +00:00
Andy Brett
1287cb1e56 Merge pull request #6686 from Matt-Yorkley/devise-spec-helper
Update deprecated devise spec helper
2021-01-17 19:57:49 -08:00
Luis Ramos
d8436c2dab Downgrade libv8 so that mini racer keeps working 2021-01-16 22:41:50 +00:00
Andy Brett
ca022e505a Merge pull request #6684 from Matt-Yorkley/subs-delivery
Use deliver_now in Jobs
2021-01-16 09:11:25 -08:00
Matt-Yorkley
a7ad62a735 Update deprecated devise spec helper
Devise has been complaining about this for a while in the test suite:
```
[Devise] including `Devise::TestHelpers` is deprecated and will be removed from Devise.
For controller tests, please include `Devise::Test::ControllerHelpers` instead.
```
2021-01-16 13:54:09 +00:00
Matt-Yorkley
ea9ebc8a33 Update Angular CSRF handling 2021-01-16 13:41:24 +00:00
Matt-Yorkley
b713219690 Use deliver_now in Jobs 2021-01-16 13:19:00 +00:00
Andy Brett
2c405a5705 Merge pull request #6672 from Matt-Yorkley/update-hooks
Delete dead code #update_hooks
2021-01-15 19:03:14 -08:00
Luis Ramos
7c9024101b Some css fixes to make it all work in rails 5 2021-01-15 23:26:37 +00:00
Luis Ramos
4060e7debf Replace usages of Spree::BaseController with ApplicationController 2021-01-15 21:59:16 +00:00
Luis Ramos
7a22367b4a Make controllers use ::Basecontroller instead of StoreController 2021-01-15 21:59:16 +00:00
Luis Ramos
23e6048bde Merge StoreController with BaseController 2021-01-15 21:59:16 +00:00
Luis Ramos
ff8a81cee7 Remove includes already present in parent ApplicationController 2021-01-15 21:59:16 +00:00
Luis Ramos
0eab1b2339 Merge Spree::BaseController with ApplicationController 2021-01-15 21:59:16 +00:00
Matt-Yorkley
c0c7c6ec78 Update checkout helper summing and add test coverage 2021-01-15 17:29:21 +00:00
Matt-Yorkley
5593da2928 Delete dead code #update_hooks
These hooks allow Spree core to be modified by other gems and apps without changing Spree code. We don't use it. #YAGNI
2021-01-15 16:49:45 +00:00
Andy Brett
f179214920 Merge pull request #6677 from Matt-Yorkley/remove-debugging
Remove debugging code from spec
2021-01-15 08:30:00 -08:00
Matt-Yorkley
1eb08ba31c Define basic models in migration 2021-01-15 16:17:18 +00:00
Transifex-Openfoodnetwork
8f8f430e87 Updating translations for config/locales/en_CA.yml 2021-01-16 02:04:42 +11:00
Transifex-Openfoodnetwork
6be14dfb29 Updating translations for config/locales/fr_CA.yml 2021-01-16 01:58:02 +11:00
Matt-Yorkley
8cc4c6a63f Introduce soft-deprecation strategy when modifying tax rates
If an admin changes the amount on a tax rate, and that rate has been used by adjustments in the past, we need to soft-delete and clone it to preserve the data integrity of previous adjustments that were created using that rate.
2021-01-15 13:38:03 +00:00
Matt-Yorkley
c870af8981 Remove debugging output. 2021-01-15 13:21:03 +00:00
Transifex-Openfoodnetwork
c132a5351f Updating translations for config/locales/it.yml 2021-01-15 23:46:42 +11:00
Transifex-Openfoodnetwork
dc76f161a3 Updating translations for config/locales/es.yml 2021-01-15 23:42:27 +11:00
Transifex-Openfoodnetwork
26e817818f Updating translations for config/locales/ca.yml 2021-01-15 23:34:40 +11:00
Pau Pérez Fabregat
5129611cff Merge pull request #6668 from luisramos0/disable_cache_instrumentation
[Rails 5] Make app startup in rails 5 and update Gemfile_next.lock
2021-01-15 13:15:07 +01:00
Pau Pérez Fabregat
f240402c43 Merge pull request #6654 from Matt-Yorkley/update-without-callbacks
Remove #update_attributes_without_callbacks
2021-01-15 12:24:42 +01:00
Cillian O'Ruanaidh
79668e06a7 Remove ability to create new product from products page, use /admin/products/new instead.
It's simpler if there is just one place to add a new product. Closes #6650

This removes the 'creating directly from the new product path' test scenario because we have another 'assigning important attributes' scenario above which provides enough coverage.
2021-01-15 10:24:50 +00:00
Cillian O'Ruanaidh
110d692ffa Include the 'Ready for' time for the order cycle in the Notify Producers Email
This is so people can distinguish which order cycle the email is referring to. Fixes #6371
2021-01-15 09:24:05 +00:00
dependabot[bot]
8e4e276995 Bump paypal-sdk-merchant from 1.106.1 to 1.117.2
Bumps [paypal-sdk-merchant](https://github.com/paypal/merchant-sdk-ruby) from 1.106.1 to 1.117.2.
- [Release notes](https://github.com/paypal/merchant-sdk-ruby/releases)
- [Changelog](https://github.com/paypal/merchant-sdk-ruby/blob/master/ChangeLog.txt)
- [Commits](https://github.com/paypal/merchant-sdk-ruby/compare/v1.106.1...v1.117.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-15 05:49:20 +00:00
Andy Brett
9639c2af57 Update all locales with the latest Transifex translations 2021-01-14 17:24:42 -08:00
Andy Brett
cd383189c9 Merge pull request #6667 from openfoodfoundation/transifex
Transifex
2021-01-14 17:11:20 -08:00
Luis Ramos
209e2f20c5 Add rails 5 version for js template helpers 2021-01-15 00:23:37 +00:00
Luis Ramos
bc2d966e5f Remove commented code 2021-01-15 00:22:20 +00:00
Luis Ramos
874da929d3 Disable db2fog in rails 5, it doesnt work, we need to find an alternative for rails 5 2021-01-15 00:21:28 +00:00
Luis Ramos
02a1116fff Remove cache intrumentation
It doesnt work in rails 5 and apparently it was introduced to debug already deleted products cache in staging

See this commit that introduced it 10a79d5a65
2021-01-14 23:45:05 +00:00
Luis Ramos
d06c1fa665 Update Gemfile_next.lock 2021-01-14 23:44:09 +00:00
Maikel
d16bfbad93 Merge pull request #6662 from luisramos0/action_dispatch
First rails 5 upgrade PR with dual boot: remove action_dispatch/request if on rails 5 so we can boot the app in rails 5
2021-01-15 10:17:05 +11:00
Maikel
52b417877a Merge pull request #6660 from openfoodfoundation/dependabot/bundler/webmock-3.11.1
Bump webmock from 3.11.0 to 3.11.1
2021-01-15 09:52:10 +11:00
Andy Brett
7ca81f45d0 Merge pull request #6641 from Matt-Yorkley/shipping-method-soft-deletion
Ensure ShippingMethod is correctly using soft-deletion
2021-01-14 11:53:19 -08:00
Transifex-Openfoodnetwork
3610827869 Updating translations for config/locales/en_GB.yml 2021-01-15 06:42:28 +11:00
Transifex-Openfoodnetwork
a0ee8cb1b3 Updating translations for config/locales/en_FR.yml 2021-01-15 06:01:40 +11:00
Andy Brett
18dcbbd892 Merge pull request #6613 from Matt-Yorkley/variant-override-serialization
Don't serialize all variant override objects where they are not needed
2021-01-14 10:59:11 -08:00
Transifex-Openfoodnetwork
577be5f70b Updating translations for config/locales/fr.yml 2021-01-15 05:57:20 +11:00
Andy Brett
81ea71af94 Merge pull request #6652 from jibees/6651-remove-trailing-asterisk-on-non-mandatory-field
remove asterisk on 'display as' field unit value for a product
2021-01-14 10:09:15 -08:00
Pau Pérez Fabregat
929ae82e00 Merge pull request #6574 from Matt-Yorkley/bye-bye-spree-paypal
Bye Bye Spree Paypal
2021-01-14 18:16:44 +01:00
Pau Pérez Fabregat
9689fe2edf Merge pull request #6384 from andrewpbrett/fix-product-descriptions
correctly display '&' and '&nbsp;' in product descriptions
2021-01-14 17:00:16 +01:00
Luis Ramos
82b2777cb3 Remove action_dispatch/request if on rails 5 so we can boot the app in rails 5 2021-01-14 09:48:59 +00:00
Luis Ramos
fd0bba19a7 Adapt enterprises code and specs to new namespace Sets::EnterpriseSet 2021-01-14 09:41:07 +00:00
Luis Ramos
ed0441dc41 Fix a few more rubocop issues 2021-01-14 09:41:07 +00:00
Luis Ramos
19b12092a0 Fix rubocop issues and adapt exceptions file 2021-01-14 09:41:07 +00:00
Luis Ramos
5d6d7f7ad0 Adapt enterprise fees code and specs to new namespace of Sets::EnterpriseFeeSet 2021-01-14 09:41:07 +00:00
Luis Ramos
96a351ad0e Adapt usage of Sets to their new location 2021-01-14 09:41:07 +00:00
Luis Ramos
187b4a1fc2 Add Sets namespace to each set file 2021-01-14 09:41:07 +00:00
Luis Ramos
8e65d29b02 Move sets to specific services namespace 2021-01-14 09:41:07 +00:00
Pau Pérez Fabregat
9db4f9be15 Merge pull request #6634 from Matt-Yorkley/jobs-cleanup
Jobs cleanup
2021-01-14 10:08:15 +01:00
Pau Pérez Fabregat
85e932274d Merge pull request #6442 from luisramos0/rails5-dualboot
Rails 5 upgrade with dualboot
2021-01-14 10:00:54 +01:00
Maikel
168958311a Merge pull request #6656 from Matt-Yorkley/payment-identifier
Fix payment identifier generation
2021-01-14 17:34:38 +11:00
Maikel
fbda1fffd7 Merge pull request #6653 from Matt-Yorkley/dead-code-available-payment
Dead code: #has_available_payment
2021-01-14 17:33:07 +11:00
Maikel
50472d18e0 Merge pull request #6642 from coopdevs/doc-customer-serializer
Doc customer serializer
2021-01-14 17:28:34 +11:00
Maikel
14842f52fc Merge pull request #6633 from Matt-Yorkley/inverse-of
Adding inverse_of
2021-01-14 17:25:51 +11:00
dependabot[bot]
3cee999032 Bump webmock from 3.11.0 to 3.11.1
Bumps [webmock](https://github.com/bblimke/webmock) from 3.11.0 to 3.11.1.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.11.0...v3.11.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-14 05:42:02 +00:00
Andy Brett
08d9ef5832 rename spec file; add test for nil content 2021-01-13 21:01:12 -08:00
Andy Brett
bbd7fd0350 handle nil product descriptions 2021-01-13 20:57:27 -08:00
Maikel Linke
c922a8fd4c Fix: Remove unused conditional
I forgot to remove this unused conditional in a previous commit. Spree
defaulted to overriding the email config and we never changed that.
2021-01-14 12:05:42 +11:00
Maikel Linke
f1618ec35f Remove old spec context
The specs all stay the same, just changing the indent.
2021-01-14 12:05:41 +11:00
Maikel Linke
be229c9002 Simplify email config by removing unused option
Spree used to give you more options to configure ActionMailer but our
setup is much simpler. We can remove unused code.

The removed option was never used by OFN and defaulted to true. We don't
need a database migration because the value isn't set in the database.
2021-01-14 12:05:41 +11:00
Andy Brett
8c4d12a501 limit item counter to max quantity available even if amount is manually filled in 2021-01-13 16:23:41 -08:00
Matt-Yorkley
5f2dc38241 Merge pull request #6098 from brymut/item-counter-fix
Fix #5989 Item counter accepts higher amount than available stock
2021-01-13 22:33:08 +01:00
Andy Brett
c29d57b54e Merge pull request #6369 from Matt-Yorkley/broken-variants
Fix variant data inconsistencies
2021-01-13 11:10:44 -08:00
Pau Pérez Fabregat
6e48607760 Merge pull request #6629 from jibees/6199-alignment-readyfor-ipad
6199 adjust alignment on the Order Cycle component on ipad
2021-01-13 19:20:14 +01:00
Matt-Yorkley
9633ddf7ce Add test for variant override symbol and tooltip 2021-01-13 18:19:16 +00:00
Matt-Yorkley
18c9e16303 Fix payment identifier generation
Upstream fix from Spree 2.2.

See: 4e747187d7
2021-01-13 17:37:22 +00:00
Matt-Yorkley
aacd942697 Update specs that stub associations inaccurately
These specs fail if the code is using #sum on stubbed objects that don't respond to it nicely.
2021-01-13 17:32:20 +00:00
Matt-Yorkley
305ae103ce Use :create instead of :build in order updater specs
The order updater requires a persisted order
2021-01-13 17:09:02 +00:00
Matt-Yorkley
7d0ec48bcf Improve performance on summing adjustments and payment
:amount is a database field in these cases, as opposed to a method that returns a computed result. Calling `.sum(:amount)` is much more efficient here as it computes the sum at database level, as opposed to `.map(&:amount).sum`, which would fetch and instanciate all the objects first, and then sum the amounts after.
2021-01-13 16:16:49 +00:00
Matt-Yorkley
561cf23dc1 Remove #update_attributes_without_callbacks
This is a hacky Spree method that's removed in Spree 2.2

See: 7deba6a152
2021-01-13 16:02:21 +00:00
Matt-Yorkley
8d338a06f3 Delete dead code #has_available_payment
This is removed in Spree 2.2, as it serves no purpose.

See: 0617bdce30
2021-01-13 15:48:02 +00:00
Pau Perez
acd4dddf1b Doc how balance_value works
[skip ci]
2021-01-13 12:50:41 +01:00
Jean-Baptiste Bellet
dcbf02bc47 remove asterisk on 'display as' field unit value for a product
as it's not a mandatory field
2021-01-13 11:30:08 +01:00
Pau Pérez Fabregat
0b686bbd32 Merge pull request #6366 from coopdevs/fix-customer-balance-n+1
Fix customer balance n+1
2021-01-13 10:25:47 +01:00
Andy Brett
f633f1809f Merge pull request #6646 from openfoodfoundation/dependabot/bundler/shoulda-matchers-4.5.0
Bump shoulda-matchers from 4.4.1 to 4.5.0
2021-01-12 09:07:39 -08:00
Andy Brett
667bc08f05 Merge pull request #6647 from openfoodfoundation/dependabot/bundler/rubocop-1.8.1
Bump rubocop from 1.8.0 to 1.8.1
2021-01-12 09:05:26 -08:00
Pau Perez
e83a3ff76d Revert "Enable request queuing tracking in Datadog"
This reverts commit 91e5276140.
2021-01-12 10:56:11 +01:00
dependabot[bot]
735c3ce022 Bump rubocop from 1.8.0 to 1.8.1
Bumps [rubocop](https://github.com/rubocop-hq/rubocop) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v1.8.0...v1.8.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-12 05:47:39 +00:00
dependabot[bot]
c635c0f541 Bump shoulda-matchers from 4.4.1 to 4.5.0
Bumps [shoulda-matchers](https://github.com/thoughtbot/shoulda-matchers) from 4.4.1 to 4.5.0.
- [Release notes](https://github.com/thoughtbot/shoulda-matchers/releases)
- [Changelog](https://github.com/thoughtbot/shoulda-matchers/blob/master/CHANGELOG.md)
- [Commits](https://github.com/thoughtbot/shoulda-matchers/compare/v4.4.1...v4.5.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-12 05:46:41 +00:00
Andy Brett
67e5825739 add specs for content sanitizer 2021-01-11 21:34:59 -08:00
Andy Brett
5723a79409 check for content.present? 2021-01-11 21:21:24 -08:00
Matt-Yorkley
ca4de40fa2 Associate all adjustments with an order
This change is introduced in the adjustments updates from Spree 2.2 and used heavily in new scopes and methods (not included here).
2021-01-11 17:35:35 +00:00
Jean-Baptiste Bellet
8399b82bfd rename component to spinner
A name for a "thing" rather a state
2021-01-11 16:49:56 +01:00
Matt-Yorkley
46ff247bc9 Ensure ShippingMethod#destroy is using soft-deletion
25f5c2daf8

We've already applied some of the changes in this commit during previous Spree upgrade work, but there were a couple of bits missing.
2021-01-11 15:46:38 +00:00
Jean-Baptiste Bellet
26edd83a54 do not include inside a javascript asset
I made a mistake by using it inside a javascript asset
revert part of commit e34050f7c
2021-01-11 16:33:44 +01:00
Jean-Baptiste Bellet
71dc5a8ff0 remove trailing space 2021-01-11 16:29:13 +01:00
Jean-Baptiste Bellet
e34050f7cb add wrapper to show/hide loading spinner 2021-01-11 16:23:22 +01:00
Jean-Baptiste Bellet
544a7407e3 specify max-width to not overflow parent element 2021-01-11 16:22:47 +01:00
Jean-Baptiste Bellet
1b4254a5cf Revert "replace code by reusable component"
This reverts commit 4d953abbe9.
2021-01-11 16:12:17 +01:00
Pau Perez
33c72ecab0 Defend from nil BETA_TESTERS var 2021-01-11 15:55:34 +01:00
Pau Perez
dfed20d634 Consider awaiting_return, returned in balance
These states are reached when the order is complete and shipped. An
admin can create a new return authorization, which will set the order in
`awaiting_return` state. It's only after, when we call
`return_authorization#receive` that the return authorization moves to
`received` state and the order to `returned`.

You can do so from the UI by editing the return authorization and
clicking on Receive. However, we didn't find any order in such state in
UK, FR and AU. The UX is quite obfuscated. That must be why no users
clicked on it.

The `returned` state cannot count for the balance as is, since some of
the products are returned to the shop. That's enough for now.
2021-01-11 15:50:19 +01:00
Pau Perez
aa3fc71626 Consider resumed & payment orders in balance
These order states are already taken care of because they fall in the
`WHEN state IS NOT NULL` case.
2021-01-11 15:50:19 +01:00
Pau Perez
5018e88a34 Consider all states prior to checkout in balance 2021-01-11 15:50:19 +01:00
Pau Perez
398467e7ed Hide new balance impl. under feature toggle
This makes it possible to deploy it without releasing it to users since
the toggle is not enabled for anyone.

It aims to make the balance calculation consistent across pages.
2021-01-11 15:50:19 +01:00
Pau Perez
2e9bae0ea5 Move relation includes out of query object
This query object is meant to be reusable but those includes are
context-specific and will likely not be needed when reusing the query
elsewhere. If we keep them there, chances are next dev might not notice
it and will introduce a performance regression.
2021-01-11 15:50:19 +01:00
Pau Perez
46d997406a Filter out cart orders when fetching customers
We only care about non-cart orders and skipping carts, saves PostgreSQL
query planner to go through thousands of records in production use cases
(my food hub).

We go from

```sql
 ->  Index Scan using index_spree_orders_on_customer_id on spree_orders  (cost=0.42..12049.45 rows=152002 width=15) (actual time=0.015..11.703 rows=13867 loops=1)
```

to

```sql
->  Index Scan using index_spree_orders_on_customer_id on spree_orders  (cost=0.42..12429.46 rows=10802 width=15) (actual time=0.025..17.705 rows=9954 loops=1)
```
2021-01-11 15:50:19 +01:00
Pau Perez
539c5d067a Update order payment_total when voiding a payment
As is, `payment_total` is only increased after successfully processing
a payment and never updated. This inconsistency breaks
`CustomerWithBalance` which relies on it.

Needless to say that if we keep this denormalized column, we better make
it consistent. I investigated current Spree's master branch (709e686cc0)
and they also realized it was broken. Now `Payment` runs the following
from the `after_save` `update_order` callback.

```rb
order.updater.update_payment_total if completed? || void?
```

I also took the chance to rearrange tests a bit.
2021-01-11 15:50:19 +01:00
Pau Perez
04930877dd Test that payment_total is stored after payment
CustomerWithBalance totally relies on `spree_orders.payment_total` so we
better cover it with tests.
2021-01-11 15:50:19 +01:00
Pau Perez
93cdca85c6 Return 0 balance when the customer has no orders 2021-01-11 15:50:19 +01:00
Pau Perez
96a91969c9 Extract balance-specific serializer
So we only show the customer balance where really needed. Aggregating
the balance can be costly. Also, we avoid defensive coding.
2021-01-11 15:50:19 +01:00
Pau Perez
9d0dd968b1 Test customer balance query with guest orders
Guest orders also have an associated customer record that is created
by Spree::Order#ensure_customer at checkout. Subsequent orders will use
that one due to Spree::Order#associate_customer.
2021-01-11 15:50:19 +01:00
Pau Perez
d8872bc785 Explain why Arel can't be used in statement 2021-01-11 15:50:19 +01:00
Pau Perez
1e9a1f340e Don't consider order total when it is canceled 2021-01-11 15:50:19 +01:00
Pau Perez
e404225de0 Extract query object 2021-01-11 15:50:19 +01:00
Pau Perez
d62ab06504 Refactor DB query to aggregate customer balance
It's simpler and many orders of magnitude more efficient to ask the DB
to aggregate the customer balance based on their orders. It removes
a nasty N+1.

The resulting SQL query is:

```sql
SELECT customers.*, SUM(spree_orders.total - spree_orders.payment_total) AS balance
FROM "customers"
INNER JOIN "spree_orders"
    ON "spree_orders"."customer_id" = "customers"."id"
WHERE "customers"."enterprise_id" = 1
    AND (completed_at IS NOT NULL)
    AND (state != 'canceled')
GROUP BY customers.id
ORDER BY email;
```
2021-01-11 15:50:19 +01:00
Pau Pérez Fabregat
ad6165c446 Merge pull request #6480 from openfoodfoundation/dependabot/bundler/paper_trail-10.3.1
Bump paper_trail from 7.1.3 to 10.3.1
2021-01-11 12:02:34 +01:00
Jean-Baptiste Bellet
6f24ecd973 replace code by reusable component
There is no need to add .text-center as it's already on the parent component
2021-01-11 11:20:00 +01:00
Jean-Baptiste Bellet
4d953abbe9 replace code by reusable component
in a js file
2021-01-11 11:18:54 +01:00
Jean-Baptiste Bellet
b02b36b8e8 replace code by reusable component 2021-01-11 11:18:34 +01:00
Jean-Baptiste Bellet
776a61d1d9 create loading spinner reusable component 2021-01-11 11:17:33 +01:00
Andy Brett
ffeea631b3 add spec for exceeding available quantity 2021-01-09 18:49:53 -08:00
Andy Brett
c8c576ce38 keep size attribute 2021-01-09 17:49:47 -08:00
Bryan Mutai
eef6396de3 Add max attribute to item counter input 2021-01-09 17:36:35 -08:00
dependabot[bot]
b6a115e271 Bump paper_trail from 7.1.3 to 10.3.1
Bumps [paper_trail](https://github.com/airblade/paper_trail) from 7.1.3 to 10.3.1.
- [Release notes](https://github.com/airblade/paper_trail/releases)
- [Changelog](https://github.com/paper-trail-gem/paper_trail/blob/master/CHANGELOG.md)
- [Commits](https://github.com/airblade/paper_trail/compare/v7.1.3...v10.3.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-09 22:50:08 +00:00
Andy Brett
c12abf8057 Merge pull request #6617 from Matt-Yorkley/stock-items-variant-deletion
Stock items and variant deletion
2021-01-09 12:12:24 -08:00
Andy Brett
9cc0f74314 Merge pull request #6620 from mkllnk/6616-emphasize-qty-button-disabled
Emphasize disabled Add button when out of stock
2021-01-09 11:34:57 -08:00
Matt-Yorkley
e5be249f2c Update comment on #expire_current_order 2021-01-09 13:26:30 +00:00
Matt-Yorkley
f9f830e0e1 Bring in Paypal certificates hack via new initializer 2021-01-09 13:26:30 +00:00
Matt-Yorkley
c07a4fcb5e Remove data-hooks from views 2021-01-09 13:26:30 +00:00
Matt-Yorkley
8439b68b36 Update code comment and link 2021-01-09 13:26:30 +00:00
Matt-Yorkley
09b7512cd8 Remove dead code around unused payment_method_field data-hook 2021-01-09 13:26:30 +00:00
Matt-Yorkley
2e5810d64d Fix more Rubocop offences 2021-01-09 13:26:30 +00:00
Matt-Yorkley
bf47db1792 Fix missing route in Spree::OrdersController
I'm not sure why this spec started failing. Fixes:

```
Spree::OrdersController viewing cart when an item is in the cart the page provides the right registration path
     Failure/Error: expect(subject.registration_path).to eq registration_path

     ActionController::UrlGenerationError:
       No route matches {:action=>"index", :controller=>"registration"}
     # ./spec/controllers/spree/orders_controller_spec.rb:140:in `block (5 levels) in <top (required)>'
```
2021-01-09 13:26:30 +00:00
Matt-Yorkley
83f58368c7 Fix class-loading issue in test suite
Fixes:

```
Failure/Error: include Spree::Core::ControllerHelpers::Auth

NameError:
  uninitialized constant Spree::Core::ControllerHelpers::Auth
# ./lib/spree/api/controller_setup.rb:19:in `block in included'
# ./lib/spree/api/controller_setup.rb:5:in `class_eval'
# ./lib/spree/api/controller_setup.rb:5:in `included'
# ./app/controllers/api/base_controller.rb:9:in `include'
# ./app/controllers/api/base_controller.rb:9:in `<class:BaseController>'
# ./app/controllers/api/base_controller.rb:6:in `<module:Api>'
# ./app/controllers/api/base_controller.rb:5:in `<top (required)>'
# ./app/controllers/api/products_controller.rb:5:in `<module:Api>'
# ./app/controllers/api/products_controller.rb:4:in `<top (required)>'
# ./spec/controllers/api/products_controller_spec.rb:6:in `<top (required)>'
```
2021-01-09 13:26:30 +00:00
Matt-Yorkley
c34ae0af4b Bring in paypal-sdk-merchant gem dependency 2021-01-09 13:26:30 +00:00
Matt-Yorkley
3487898f68 Remove better_spree_paypal_express gem 2021-01-09 13:24:51 +00:00
Matt-Yorkley
618738db69 Fix more Rubocop offences 2021-01-09 13:22:25 +00:00
Matt-Yorkley
2864f62a08 Fix missing semicolons in spree_paypal_express.js 2021-01-09 13:22:25 +00:00
Matt-Yorkley
ab43c04ca8 Bring in translations 2021-01-09 13:22:25 +00:00
Matt-Yorkley
5c7dc6621b Bring in views (and convert from ERB to HAML) 2021-01-09 13:22:25 +00:00
Matt-Yorkley
7f8fe631dd Bring in Spree::PaypalExpressCheckout 2021-01-09 13:22:25 +00:00
Matt-Yorkley
2a27da1cc5 Bring in Spree::Gateway::PayPalExpress 2021-01-09 13:22:25 +00:00
Matt-Yorkley
2dce66f079 Fix some simple Rubocop offences 2021-01-09 13:22:25 +00:00
Matt-Yorkley
4ca3e29458 Apply changes from and remove Spree::PaypalController decorator 2021-01-09 13:22:25 +00:00
Matt-Yorkley
94549e98ba Bring in Spree::PaypalController 2021-01-09 13:22:09 +00:00
Matt-Yorkley
597eed5285 Bring in Spree::Admin::PaypalPaymentsController 2021-01-09 13:22:09 +00:00
Matt-Yorkley
42468e2ef3 Apply Spree::Admin::PaymentsController decorator 2021-01-09 13:22:09 +00:00
Matt-Yorkley
2fb7dfa430 Bring in Paypal Express javascript 2021-01-09 13:22:09 +00:00
Matt-Yorkley
478f761188 Add Spree::Gateway::PayPalExpress to spree payment_methods list 2021-01-09 13:22:09 +00:00
Matt-Yorkley
dd5a197fb3 Remove ManagerInvitationJob 2021-01-09 11:56:27 +00:00
Matt-Yorkley
ca42b1fff7 Remove ConfirmSignupJob 2021-01-09 11:38:29 +00:00
Matt-Yorkley
6a7f795f64 Remove WelcomeEnterpriseJob 2021-01-09 11:33:10 +00:00
Andy Brett
3877721209 Merge pull request #6631 from Matt-Yorkley/actionmailer-deliver
[Deprecation] Replace ActionMailer#deliver with ActionMailer#deliver_now
2021-01-08 17:42:31 -08:00
Andy Brett
d6656804eb Merge pull request #6557 from luisramos0/rubocop
Rubocop exceptions update
2021-01-08 17:36:23 -08:00
Andy Brett
08dcb13fca Merge pull request #6578 from Matt-Yorkley/products-endpoint-content-type
Products endpoint content type
2021-01-08 17:34:26 -08:00
Andy Brett
ebecabdda5 Merge pull request #22 from Matt-Yorkley/sanitizer-service
Content Sanitizer
2021-01-08 17:31:59 -08:00
Matt-Yorkley
b7ecf4791a Extract more sanitizing logic from Api::ProductSerializer and make service more generic/re-usable. 2021-01-09 01:07:11 +00:00
Matt-Yorkley
69640dc785 Tidy up producer mailer spec
This is covered in two other spec files relating to order cycles, the producer mailer spec doesn't need to know what calls the producer mailer.
2021-01-09 00:07:50 +00:00
Matt-Yorkley
a9706fa5f1 Update syntax in rake task 2021-01-08 23:18:55 +00:00
Matt-Yorkley
9d5eaa1790 Delete dead code in delayed job spec helper 2021-01-08 23:18:55 +00:00
Matt-Yorkley
496f2dab69 Ensure Jobs are instantiated correctly
We should not be using `Delayed::Job.enqueue` anywhere...
2021-01-08 23:18:55 +00:00
Matt-Yorkley
2dc918ff59 Ensure all Job classes correctly inherit from ActiveJob 2021-01-08 23:18:55 +00:00
Matt-Yorkley
ff962c1c9b Change various Mailer invocations from #deliver_now to #deliver_later 2021-01-08 23:18:55 +00:00
Luis Ramos
2e4a206825 Add new offenses to exceptions file 2021-01-08 22:43:15 +00:00
Luis Ramos
0b45533237 Update rubocop todo list 2021-01-08 22:43:15 +00:00
Luis Ramos
42fff560fb Attempt at rails 5 upgrade 2021-01-08 22:40:47 +00:00
Andy Brett
53b119ddb7 Merge pull request #6630 from coopdevs/update-haml-lint-config
Update haml lint config
2021-01-08 13:46:57 -08:00
Andy Brett
05f6337e7d Merge pull request #6622 from openfoodfoundation/dependabot/bundler/ddtrace-0.44.0
Bump ddtrace from 0.43.0 to 0.44.0
2021-01-08 13:39:07 -08:00
Andy Brett
59527ab38a refactor filter to a service 2021-01-08 13:37:18 -08:00
Luis Ramos
c2c491ced2 Setup dualboot for rails 5 upgrade 2021-01-08 21:34:13 +00:00
Matt-Yorkley
3e6445c51c Replace deprecated ActionMailer#deliver with ActionMailer#deliver_now
DEPRECATION WARNING: `#deliver` is deprecated and will be removed in Rails 5. Use `#deliver_now` to deliver immediately or `#deliver_later` to deliver through Active Job.
2021-01-08 20:35:47 +00:00
Matt-Yorkley
87b14f0237 Avoid using #allow_any_instance_of 2021-01-08 17:47:09 +00:00
Matt-Yorkley
3b1ad29d20 Fix view rendering in Api::BaseController 2021-01-08 17:47:09 +00:00
Matt-Yorkley
eec9f27353 Move controller concern to correct directory
This is a controller concern, it should live in app/controllers/concerns/
2021-01-08 17:47:09 +00:00
Matt-Yorkley
d90ed56603 Add missing test for Api::OrderCyclesController responses 2021-01-08 17:47:09 +00:00
Matt-Yorkley
0dd57fc3de Render an empty JSON object instead of a blank string 2021-01-08 17:47:09 +00:00
Matt-Yorkley
04e4893723 Update route declarations in caching spec 2021-01-08 17:47:09 +00:00
Matt-Yorkley
4ba3c81f90 Update route declaration in karma test 2021-01-08 17:47:09 +00:00
Matt-Yorkley
261ed751cb Remove explicit content_type declarations in Api::OrderCyclesController
This should be handled in `Api::BaseController`
2021-01-08 17:47:09 +00:00
Matt-Yorkley
d0800b5e32 Specify json format for API routes that return json in OrderCycleResource 2021-01-08 17:47:09 +00:00
Pau Pérez Fabregat
95ab6c7d83 Merge pull request #6627 from Matt-Yorkley/dead-code-product-available
Delete dead code Spree::Product#available?
2021-01-08 17:35:21 +01:00
Pau Perez
b08a918ba5 Do not check for spaces inside the braces of hash
This shuts the annoying lint error

```
Hash attribute should start with one space after the opening brace
Hash attribute should end with one space before the closing brace
```

and it aligns with our existing style. See
https://github.com/openfoodfoundation/openfoodnetwork/pull/6629 as an
example.
2021-01-08 17:22:37 +01:00
Pau Perez
03bb9899fa Copy Hound's default Haml lint config 2021-01-08 17:22:36 +01:00
dependabot[bot]
96cf1c0514 Bump ddtrace from 0.43.0 to 0.44.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.43.0 to 0.44.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.43.0...v0.44.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-08 16:20:47 +00:00
Pau Pérez Fabregat
8ca51c8b72 Merge pull request #6626 from Matt-Yorkley/flaky-oc-simple-spec
[Flaky Spec] Improve simple OC spec
2021-01-08 17:18:43 +01:00
Matt-Yorkley
0949e72c88 Merge pull request #6597 from Matt-Yorkley/cancancan
Switch from cancan to cancancan
2021-01-08 17:15:08 +01:00
Matt-Yorkley
139773bc22 Add inverse_of to associations between shipping methods and rates
See 20d913c21c
2021-01-08 15:42:58 +00:00
Matt-Yorkley
f07c2dcd84 Add inverse_of for associations involved in cart processing
7bac3e7b2c

and

61bd5446e1
2021-01-08 15:42:58 +00:00
Pau Perez
6e689c4607 Update all locales with the latest Transifex translations 2021-01-08 16:18:31 +01:00
Pau Pérez Fabregat
9cf71c703d Merge pull request #6615 from Matt-Yorkley/money
Money!
2021-01-08 13:24:14 +01:00
Matt-Yorkley
c281c67d0e Switch from cancan to cancancan
Development of cancan stopped in 2013. cancancan is the active fork of the defunct original, and has been updated many times to keep up with changes in newer Rails and Ruby versions.
2021-01-08 12:02:18 +00:00
Pau Pérez Fabregat
b51d8c573a Merge pull request #6614 from Matt-Yorkley/api-errors
API Bugnag errors
2021-01-08 12:59:11 +01:00
Pau Pérez Fabregat
47774b3b2e Merge pull request #6628 from openfoodfoundation/dependabot/bundler/rubocop-1.8.0
Bump rubocop from 1.7.0 to 1.8.0
2021-01-08 12:57:14 +01:00
Pau Pérez Fabregat
3927f56ed4 Merge pull request #6444 from openfoodfoundation/dependabot/bundler/kaminari-1.2.1
[Security] Bump kaminari from 0.17.0 to 1.2.1
2021-01-08 12:47:59 +01:00
Pau Pérez Fabregat
bd83443595 Merge pull request #6611 from jibees/6196-fix-text-wrapping-on-oc
6196 fix text wrapping on oc
2021-01-08 11:48:41 +01:00
Pau Pérez Fabregat
27e83392bf Merge pull request #6536 from coopdevs/enable-new-customer-balance-to-core-team
Enable new customer balance for the beta testers
2021-01-08 11:24:23 +01:00
Jean-Baptiste Bellet
fc71808517 use flex property to manage responsive
and remove unsued properties
2021-01-08 11:24:16 +01:00
Jean-Baptiste Bellet
5869eb1841 add new div container
to use flexbox properties for its two child divs
named: select-and-closing-container
2021-01-08 11:23:23 +01:00
dependabot[bot]
11ce9b943f Bump rubocop from 1.7.0 to 1.8.0
Bumps [rubocop](https://github.com/rubocop-hq/rubocop) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v1.7.0...v1.8.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-08 05:39:09 +00:00
Andy Brett
72a65426a0 allow '&' and spaces 2021-01-07 20:50:43 -08:00
Andy Brett
d78e8acee7 Merge pull request #6619 from luisramos0/remove_oj
Remove unused dependency
2021-01-07 12:43:09 -08:00
Andy Brett
3073a9b588 Merge pull request #6618 from luisramos0/byebug
Upgrade pry
2021-01-07 12:41:43 -08:00
Andy Brett
0bb92e04b5 Merge pull request #6621 from openfoodfoundation/dependabot/bundler/bugsnag-6.19.0
Bump bugsnag from 6.18.0 to 6.19.0
2021-01-07 12:35:51 -08:00
Matt-Yorkley
52b43d8c23 Delete dead code
This method isn't called from anywhere
2021-01-07 16:03:04 +00:00
Pau Pérez Fabregat
ca84e3eafb Merge pull request #6610 from openfoodfoundation/dependabot/bundler/stripe-5.29.0
Bump stripe from 5.28.0 to 5.29.0
2021-01-07 16:58:02 +01:00
Matt-Yorkley
d27900d5fb Merge pull request #6525 from openfoodfoundation/transifex
Transifex
2021-01-07 16:54:22 +01:00
Pau Pérez Fabregat
7f3c4f2433 Merge pull request #6551 from coopdevs/track-request-queuing
Track request queuing in Datadog
2021-01-07 16:34:42 +01:00
Matt-Yorkley
0c9df590d3 Add some improvements to help ensure UI elements are actually loaded by Angular before they are clicked on by Capybara 2021-01-07 14:50:09 +00:00
dependabot[bot]
0fdf398dd0 Bump bugsnag from 6.18.0 to 6.19.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.18.0 to 6.19.0.
- [Release notes](https://github.com/bugsnag/bugsnag-ruby/releases)
- [Changelog](https://github.com/bugsnag/bugsnag-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bugsnag/bugsnag-ruby/compare/v6.18.0...v6.19.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-07 05:42:58 +00:00
Maikel Linke
18b1504935 Emphasize disabled Add button when out of stock
Using the same grey as was used in the bulk modal already. This makes it
more consistent and hopefully more clear.
2021-01-07 10:32:10 +11:00
Luis Ramos
ea29c62c5e Remove unused dependency 2021-01-06 22:50:55 +00:00
Luis Ramos
18b84fc850 Upgrade pry 2021-01-06 22:41:20 +00:00
Matt-Yorkley
a8d07a7e80 Merge pull request #6602 from openfoodfoundation/dependabot/bundler/awesome_nested_set-3.3.1
Bump awesome_nested_set from 3.2.1 to 3.3.1
2021-01-06 21:43:12 +01:00
Matt-Yorkley
cca16c6e1f Fix stock issue and update specs (now passing)
See: dcd5944a29
2021-01-06 20:13:38 +00:00
Matt-Yorkley
c0c7c4f440 Import failing specs for stock items
See: dcd5944a29
2021-01-06 20:12:52 +00:00
Matt-Yorkley
cc88611b15 Update Spree::Money to use Monetize#parse instead of Money#parse
This method was removed from the money gem without replacement. It's now provided by the monetize gem.
2021-01-06 19:20:19 +00:00
Matt-Yorkley
3387bf5821 Switch from direct dependency on money gem to monetize gem
This change is actually made around Spree 2.0, but we missed it. The `monetize` gem also installs the `money` gem.
2021-01-06 19:17:00 +00:00
Matt-Yorkley
45e4d86631 Merge money_decorator.rb with money.rb
The #rounded method was left out, as it appears to be dead code.
2021-01-06 19:17:00 +00:00
dependabot-preview[bot]
47f59a5d0a [Security] Bump kaminari from 0.17.0 to 1.2.1
Bumps [kaminari](https://github.com/kaminari/kaminari) from 0.17.0 to 1.2.1. **This update includes security fixes.**
- [Release notes](https://github.com/kaminari/kaminari/releases)
- [Changelog](https://github.com/kaminari/kaminari/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kaminari/kaminari/compare/v0.17.0...v1.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-06 19:09:53 +00:00
Matt-Yorkley
0fbf3d6cd9 Merge pull request #6555 from filipefurtad0/tax_rates_spec
Extends spec coverage of Tax Rates settings - CRUD operations
2021-01-06 19:16:14 +01:00
Matt-Yorkley
019f4dfa24 Merge pull request #6605 from PauloVilarinho/refactor-pagination-data
Refactor pagination data
2021-01-06 19:06:23 +01:00
Matt-Yorkley
7beba3debf Merge pull request #6609 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.9.1
Bump rubocop-rails from 2.5.2 to 2.9.1
2021-01-06 17:46:50 +01:00
filipefurtad0
3c123bb947 Simplified the delete test-case
Using :xpath may compromise the stability of the test, and make it break upon slight changes to the page.
2021-01-06 16:23:46 +00:00
filipefurtad0
fc062a04a4 Updated the assertion/error to consider PR #6545 2021-01-06 16:23:46 +00:00
filipefurtad0
7f658d4c46 Removed the "_id" ending from objects
Renamed objects ":zone_id" and ":tax_category_id" into ":zone" and ":tax_category," as these are full objects and not just ids.
2021-01-06 16:23:46 +00:00
filipefurtad0
8a453abd26 Adding "frozen_string_literal" back to the file
Mistakenly removed the line "# frozen_string_literal: true". This commit adds it back in.
2021-01-06 16:23:46 +00:00
filipefurtad0
3edf5fd6d9 Extends spec coverage of Tax Rates settings - CRUD operations 2021-01-06 16:23:46 +00:00
Matt-Yorkley
bd4560cff6 Don't serialize all variant override objects where they are not needed
This is only needed in one place, and only as a count, and can cause huge amounts of superfluous data to be fetched and serialized, for example in the admin products index page (where variant override data is not used at all).
2021-01-06 16:04:47 +00:00
Andy Brett
381d5a5e37 Merge pull request #6599 from openfoodfoundation/dependabot/bundler/capybara-3.32.2
Bump capybara from 3.15.1 to 3.32.2
2021-01-06 07:40:39 -08:00
Matt-Yorkley
c482173394 Delete dead code
This AMS injection method is no longer referenced anywhere in the codebase
2021-01-06 13:20:31 +00:00
Matt-Yorkley
b842bfbc3d Explicitly notify Bugsnag on errors during API response processing
These errors are currently not being sent :/
2021-01-06 12:59:19 +00:00
Jean-Baptiste Bellet
39fc80172e move css property 2021-01-06 09:49:12 +01:00
Jean-Baptiste Bellet
1b4906d55a adjust margin according to old design 2021-01-06 09:17:11 +01:00
Jean-Baptiste Bellet
6e6be09740 use display flex to align 2021-01-06 09:16:38 +01:00
Jean-Baptiste Bellet
3a8b63b371 remove height constraint 2021-01-06 09:16:19 +01:00
dependabot[bot]
491dc387d7 Bump stripe from 5.28.0 to 5.29.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.28.0 to 5.29.0.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-ruby/compare/v5.28.0...v5.29.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-06 05:31:08 +00:00
dependabot[bot]
02c63519c7 Bump rubocop-rails from 2.5.2 to 2.9.1
Bumps [rubocop-rails](https://github.com/rubocop-hq/rubocop-rails) from 2.5.2 to 2.9.1.
- [Release notes](https://github.com/rubocop-hq/rubocop-rails/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop-rails/compare/v2.5.2...v2.9.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-06 05:28:02 +00:00
Andy Brett
e58cd8a043 overwrite existing field value 2021-01-05 16:01:04 -08:00
Andy Brett
67bf6bb5fc Merge pull request #6604 from openfoodfoundation/dependabot/bundler/webdrivers-4.4.2
Bump webdrivers from 4.2.0 to 4.4.2
2021-01-05 14:55:03 -08:00
Matt-Yorkley
540aa913a3 Tidy up Api::OrderController#index 2021-01-05 21:08:02 +00:00
Matt-Yorkley
fe0a0395d8 Remove DEFAULT_PAGE constants 2021-01-05 19:07:46 +00:00
Matt-Yorkley
4bb2653306 Tidy up pagination in Api::ProductsController#overridable and Angular PagedFetcher service
Refactors away some unnecessary mess and unblocks the last remaining issue in upgrading the Kaminari gem (deprecated calls to #num_pages method)
2021-01-05 18:57:08 +00:00
Matt-Yorkley
47f9a3f08a Add guard clause and remove conditionals
Sometimes the objects are not paginated. In this case we need to avoid trying to render pagination data, as it will throw an error. This guard clause also means we can remove messy conditionals from several controllers.
2021-01-05 18:51:24 +00:00
Paulo Vilarinho
f53089c16c fix products controller spec erros 2021-01-05 15:11:26 -03:00
dependabot[bot]
811480c8e0 Bump awesome_nested_set from 3.2.1 to 3.3.1
Bumps [awesome_nested_set](https://github.com/collectiveidea/awesome_nested_set) from 3.2.1 to 3.3.1.
- [Release notes](https://github.com/collectiveidea/awesome_nested_set/releases)
- [Changelog](https://github.com/collectiveidea/awesome_nested_set/blob/master/CHANGELOG)
- [Commits](https://github.com/collectiveidea/awesome_nested_set/compare/v3.2.1...v3.3.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-05 16:56:21 +00:00
Pau Pérez Fabregat
dae065324d Merge pull request #6600 from openfoodfoundation/dependabot/bundler/shoulda-matchers-4.4.1
Bump shoulda-matchers from 4.0.1 to 4.4.1
2021-01-05 17:54:47 +01:00
Pau Pérez Fabregat
a14750933c Merge pull request #6592 from openfoodfoundation/dependabot/bundler/rubocop-1.7.0
Bump rubocop from 0.81.0 to 1.7.0
2021-01-05 17:54:22 +01:00
Pau Pérez Fabregat
20fd85786c Merge pull request #6603 from openfoodfoundation/dependabot/bundler/rack-mini-profiler-2.3.0
Bump rack-mini-profiler from 2.0.2 to 2.3.0
2021-01-05 16:48:56 +01:00
Paulo Vilarinho
c99b250a5f refactor pagination data removing default_per_page parameter 2021-01-05 12:18:47 -03:00
Paulo Vilarinho
4d217c9e9d refactor render paginated products 2021-01-05 12:04:59 -03:00
Paulo Vilarinho
9a62ba8ed5 remove hound errors 2021-01-05 11:59:49 -03:00
Paulo Vilarinho
81c3c1cf32 remove default page 2021-01-05 11:57:54 -03:00
Paulo Vilarinho
330d42ea98 change inclue position to start of class 2021-01-05 11:48:02 -03:00
dependabot[bot]
381880d281 Bump webdrivers from 4.2.0 to 4.4.2
Bumps [webdrivers](https://github.com/titusfortner/webdrivers) from 4.2.0 to 4.4.2.
- [Release notes](https://github.com/titusfortner/webdrivers/releases)
- [Changelog](https://github.com/titusfortner/webdrivers/blob/master/CHANGELOG.md)
- [Commits](https://github.com/titusfortner/webdrivers/compare/v4.2.0...v4.4.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-05 12:07:15 +00:00
dependabot[bot]
87c9ec32e6 Bump shoulda-matchers from 4.0.1 to 4.4.1
Bumps [shoulda-matchers](https://github.com/thoughtbot/shoulda-matchers) from 4.0.1 to 4.4.1.
- [Release notes](https://github.com/thoughtbot/shoulda-matchers/releases)
- [Changelog](https://github.com/thoughtbot/shoulda-matchers/blob/master/CHANGELOG.md)
- [Commits](https://github.com/thoughtbot/shoulda-matchers/compare/v4.0.1...v4.4.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-05 12:04:57 +00:00
dependabot[bot]
ba867e53d0 Bump rack-mini-profiler from 2.0.2 to 2.3.0
Bumps [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler) from 2.0.2 to 2.3.0.
- [Release notes](https://github.com/MiniProfiler/rack-mini-profiler/releases)
- [Changelog](https://github.com/MiniProfiler/rack-mini-profiler/blob/master/CHANGELOG.md)
- [Commits](https://github.com/MiniProfiler/rack-mini-profiler/compare/v2.0.2...v2.3.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-05 12:01:20 +00:00
Paulo Vilarinho
efd4b97f5c fix depracation warnings from kaminary 2021-01-05 00:33:29 -03:00
Paulo Vilarinho
ccac16c5b2 fix orders controllers specs errors 2021-01-05 00:07:38 -03:00
Paulo Vilarinho
ab586f58b1 apply pagination data concern to bulk line items controller 2021-01-04 20:22:58 -03:00
Paulo Vilarinho
3f324537a5 apply pagination data concern to exchange products controller 2021-01-04 20:22:43 -03:00
Paulo Vilarinho
1c5f6e7222 apply pagination data concern to orders controller 2021-01-04 20:22:14 -03:00
Paulo Vilarinho
9bb7096be1 apply pagination data concern to products_controller 2021-01-04 20:21:39 -03:00
Paulo Vilarinho
0f00107de1 add pagination data concern 2021-01-04 20:21:24 -03:00
Andy Brett
2085e183d4 Merge pull request #6601 from openfoodfoundation/dependabot/bundler/spring-2.1.1
Bump spring from 2.0.2 to 2.1.1
2021-01-04 12:37:59 -08:00
dependabot[bot]
5460fc9152 Bump rubocop from 0.81.0 to 1.7.0
Bumps [rubocop](https://github.com/rubocop-hq/rubocop) from 0.81.0 to 1.7.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v0.81.0...v1.7.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-04 20:14:06 +00:00
dependabot[bot]
7ee8385902 Bump capybara from 3.15.1 to 3.32.2
Bumps [capybara](https://github.com/teamcapybara/capybara) from 3.15.1 to 3.32.2.
- [Release notes](https://github.com/teamcapybara/capybara/releases)
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/3.15.1...3.32.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-04 20:14:05 +00:00
Andy Brett
a749bb602a Merge pull request #6589 from openfoodfoundation/dependabot/bundler/ffaker-2.16.0
Bump ffaker from 2.11.0 to 2.16.0
2021-01-04 12:13:06 -08:00
Andy Brett
749c7f4193 Merge pull request #6585 from openfoodfoundation/dependabot/bundler/fuubar-2.5.1
Bump fuubar from 2.5.0 to 2.5.1
2021-01-04 12:11:52 -08:00
dependabot[bot]
343d8d2686 Bump spring from 2.0.2 to 2.1.1
Bumps [spring](https://github.com/rails/spring) from 2.0.2 to 2.1.1.
- [Release notes](https://github.com/rails/spring/releases)
- [Changelog](https://github.com/rails/spring/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/spring/compare/v2.0.2...v2.1.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-04 18:58:40 +00:00
Andy Brett
59c981e14d Merge pull request #6591 from openfoodfoundation/dependabot/bundler/test-prof-0.11.3
Bump test-prof from 0.7.5 to 0.11.3
2021-01-04 10:55:47 -08:00
dependabot[bot]
b8f7ef27a6 Bump fuubar from 2.5.0 to 2.5.1
Bumps [fuubar](https://github.com/thekompanee/fuubar) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/thekompanee/fuubar/releases)
- [Changelog](https://github.com/thekompanee/fuubar/blob/master/CHANGELOG.md)
- [Commits](https://github.com/thekompanee/fuubar/compare/releases/v2.5.0...releases/2.5.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-04 18:34:00 +00:00
dependabot[bot]
22d2b078e8 Bump ffaker from 2.11.0 to 2.16.0
Bumps [ffaker](https://github.com/ffaker/ffaker) from 2.11.0 to 2.16.0.
- [Release notes](https://github.com/ffaker/ffaker/releases)
- [Changelog](https://github.com/ffaker/ffaker/blob/master/Changelog.md)
- [Commits](https://github.com/ffaker/ffaker/commits/v2.16.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-04 17:53:45 +00:00
Pau Pérez Fabregat
bfbad0ae81 Merge pull request #6560 from openfoodfoundation/dependabot/bundler/unicorn-5.8.0
Bump unicorn from 5.7.0 to 5.8.0
2021-01-04 18:07:54 +01:00
dependabot[bot]
b49a773bca Bump test-prof from 0.7.5 to 0.11.3
Bumps [test-prof](https://github.com/test-prof/test-prof) from 0.7.5 to 0.11.3.
- [Release notes](https://github.com/test-prof/test-prof/releases)
- [Changelog](https://github.com/test-prof/test-prof/blob/master/CHANGELOG.md)
- [Commits](https://github.com/test-prof/test-prof/compare/v0.7.5...v0.11.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-04 17:07:30 +00:00
Pau Pérez Fabregat
ca7548e8f4 Merge pull request #6573 from openfoodfoundation/dependabot/bundler/test-unit-3.3.9
Bump test-unit from 3.3.7 to 3.3.9
2021-01-04 18:06:07 +01:00
Pau Pérez Fabregat
258b25b453 Merge pull request #6596 from openfoodfoundation/dependabot/bundler/simplecov-0.18.5
Bump simplecov from 0.17.1 to 0.18.5
2021-01-04 18:05:03 +01:00
Pau Pérez Fabregat
1d28e7add3 Merge pull request #6588 from openfoodfoundation/dependabot/bundler/pry-byebug-3.8.0
Bump pry-byebug from 3.7.0 to 3.8.0
2021-01-04 18:02:17 +01:00
dependabot[bot]
b84820ad93 Bump simplecov from 0.17.1 to 0.18.5
Bumps [simplecov](https://github.com/simplecov-ruby/simplecov) from 0.17.1 to 0.18.5.
- [Release notes](https://github.com/simplecov-ruby/simplecov/releases)
- [Changelog](https://github.com/simplecov-ruby/simplecov/blob/main/CHANGELOG.md)
- [Commits](https://github.com/simplecov-ruby/simplecov/compare/v0.17.1...v0.18.5)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-03 10:38:35 +00:00
Andy Brett
8452f174a1 Merge pull request #6575 from PauloVilarinho/remove-choose-currency-from-admin-general-settings
remove choose currency from admin general settings
2021-01-02 21:25:47 -08:00
dependabot[bot]
cf485266fe Bump pry-byebug from 3.7.0 to 3.8.0
Bumps [pry-byebug](https://github.com/deivid-rodriguez/pry-byebug) from 3.7.0 to 3.8.0.
- [Release notes](https://github.com/deivid-rodriguez/pry-byebug/releases)
- [Changelog](https://github.com/deivid-rodriguez/pry-byebug/blob/master/CHANGELOG.md)
- [Commits](https://github.com/deivid-rodriguez/pry-byebug/compare/v3.7.0...v3.8.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-02 23:12:57 +00:00
Andy Brett
180a49b501 Merge pull request #6590 from openfoodfoundation/dependabot/bundler/byebug-11.1.3
Bump byebug from 11.0.1 to 11.1.3
2021-01-02 15:11:38 -08:00
Andy Brett
115d3d0bfe Merge pull request #6587 from andrewpbrett/comment-out-oc-spec
Comment out flaky spec for complex order cycle updating
2021-01-02 15:03:20 -08:00
Paulo Vilarinho
4839b7bd63 remove choose currency from admin general settings 2021-01-02 15:00:15 -08:00
Andy Brett
3d8c7cc9f0 Merge pull request #6522 from arku/feat/stripe-credit-card-removal
Extract Stripe credit card deletion logic to a service object
2021-01-02 14:56:00 -08:00
Andy Brett
1e9b2b34f7 Merge pull request #6545 from PauloVilarinho/add-internationalization-to-included_price_validation
adds translation key to the included in price validation
2021-01-02 14:55:16 -08:00
Andy Brett
042b4faf1e comment out flaky spec 2021-01-02 14:53:55 -08:00
Andy Brett
97f1c586e1 Merge pull request #6595 from arku/chore/jsonp-format-handler-removal
Remove jsonp request handling logic
2021-01-02 14:51:30 -08:00
Arun Kumar Mohan
322e1496a9 Remove jsonp request handling logic 2021-01-02 02:17:30 -05:00
Andy Brett
51ee21e294 Merge pull request #6556 from Matt-Yorkley/adjustments-eligible
[Adjustments] Delete dead code #eligible_for_originator?
2021-01-01 20:48:27 -08:00
Andy Brett
9ddf3c4e5d Merge pull request #6562 from romale/patch-11
Added translation key "en.spree.actions.cancel"
2021-01-01 20:48:04 -08:00
Andy Brett
fabde59671 Merge pull request #6564 from romale/patch-12
Added translation keys "en.description" "en.display" "en.tags"
2021-01-01 20:47:14 -08:00
Andy Brett
d0888415e2 Merge pull request #6594 from Matt-Yorkley/credit-card-spec-expired
Ensure credit card is not out of date in credit card spec
2021-01-01 17:29:31 -08:00
Matt-Yorkley
f6d0d43622 Ensure credit card is not out of date in credit card spec
This just blew up on New Years Eve 🙈
2021-01-01 11:54:14 +00:00
dependabot[bot]
c9f2c63e1e Bump byebug from 11.0.1 to 11.1.3
Bumps [byebug](https://github.com/deivid-rodriguez/byebug) from 11.0.1 to 11.1.3.
- [Release notes](https://github.com/deivid-rodriguez/byebug/releases)
- [Changelog](https://github.com/deivid-rodriguez/byebug/blob/master/CHANGELOG.md)
- [Commits](https://github.com/deivid-rodriguez/byebug/compare/v11.0.1...v11.1.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-01-01 06:08:33 +00:00
Andy Brett
e71908fbdd Merge pull request #6566 from openfoodfoundation/dependabot/bundler/rspec-rails-4.0.2
Bump rspec-rails from 4.0.1 to 4.0.2
2020-12-31 13:10:21 -08:00
Andy Brett
17782a5577 Merge pull request #6570 from romale/patch-13
Added translation key "en.description"
2020-12-31 13:08:42 -08:00
Andy Brett
549bba0c4f Merge pull request #6583 from PauloVilarinho/remove-xml-format
remove xml format
2020-12-31 13:08:05 -08:00
Matt-Yorkley
74228242c0 Merge pull request #6576 from andrewpbrett/flaky-tag-spec
Comment out flaky tag rules spec
2020-12-31 16:59:46 +01:00
Matt-Yorkley
e88972b989 Merge pull request #6441 from luisramos0/ruby24
Bump to ruby 2.4.4
2020-12-31 15:31:45 +01:00
Paulo Vilarinho
106c42fe84 remove xml format 2020-12-30 16:06:50 -03:00
Andy Brett
fc4634cd67 comment out flaky spec 2020-12-29 19:22:09 -08:00
dependabot[bot]
3199842ecc Bump test-unit from 3.3.7 to 3.3.9
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.3.7 to 3.3.9.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.3.7...3.3.9)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-29 05:52:23 +00:00
romale
aa44615dd0 Missing translation key "en.description" 2020-12-28 19:04:03 +03:00
dependabot[bot]
cb8d2e95d8 Bump rspec-rails from 4.0.1 to 4.0.2
Bumps [rspec-rails](https://github.com/rspec/rspec-rails) from 4.0.1 to 4.0.2.
- [Release notes](https://github.com/rspec/rspec-rails/releases)
- [Changelog](https://github.com/rspec/rspec-rails/blob/main/Changelog.md)
- [Commits](https://github.com/rspec/rspec-rails/compare/v4.0.1...v4.0.2)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-28 06:41:44 +00:00
romale
00e61f0a99 Missing translation keys "en.description" "en.display" "en.tags" 2020-12-26 23:22:19 +03:00
Transifex-Openfoodnetwork
b9c41b4379 Updating translations for config/locales/ru.yml 2020-12-26 01:31:07 +11:00
romale
28f03947df Added translation key "en.spree.actions.cancel" 2020-12-25 14:39:11 +03:00
dependabot[bot]
4e3f4cb52e Bump unicorn from 5.7.0 to 5.8.0
Bumps [unicorn](https://yhbt.net/unicorn/) from 5.7.0 to 5.8.0.

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-25 05:43:50 +00:00
Matt-Yorkley
70f7d76723 Delete dead code #eligible_for_originator?
This check is used only by Spree::Promotion objects, which are not used in OFN. There are no objects which can be originators of an adjustment that respond to #eligible? in this way, so the method always returns true.
2020-12-23 08:29:12 +00:00
Andy Brett
ec4d171993 Merge pull request #6542 from openfoodfoundation/dependabot/bundler/paranoia-2.4.3
Bump paranoia from 2.4.2 to 2.4.3
2020-12-22 20:27:10 -08:00
Andy Brett
49a2dd6211 Update product set spec to allow changing the unit_value
These specs were introduced in cbac916e66 so we'll want to verify that we want to change them
2020-12-22 19:46:47 -08:00
Andy Brett
fade1696e2 update variant spec based on new validation behavior 2020-12-22 19:46:47 -08:00
Andy Brett
79aaa38173 update outdated spec
This spec was added as part of cbac916e66 - now that we're updating the unit_value to be 1, we expect this not to fail
2020-12-22 19:46:40 -08:00
Andy Brett
17faa7334e Merge pull request #6538 from openfoodfoundation/dependabot/bundler/redcarpet-3.5.1
Bump redcarpet from 3.5.0 to 3.5.1
2020-12-22 19:32:59 -08:00
Andy Brett
fdf997847d Merge pull request #6553 from openfoodfoundation/dependabot/bundler/webmock-3.11.0
Bump webmock from 3.10.0 to 3.11.0
2020-12-22 19:27:29 -08:00
Andy Brett
b4e47217ef Merge pull request #6523 from arku/fix/credit-card-clone-destroyer
Handle nil stripe customer in credit card clone removal logic
2020-12-21 14:27:16 -08:00
Transifex-Openfoodnetwork
d2ba4c8111 Updating translations for config/locales/pt_BR.yml 2020-12-22 01:31:45 +11:00
Transifex-Openfoodnetwork
100d7275a6 Updating translations for config/locales/pt_BR.yml 2020-12-22 01:28:39 +11:00
Transifex-Openfoodnetwork
5a16fd7075 Updating translations for config/locales/tr.yml 2020-12-21 23:34:02 +11:00
Transifex-Openfoodnetwork
c3661cece9 Updating translations for config/locales/tr.yml 2020-12-21 23:33:59 +11:00
dependabot[bot]
554a55ecc9 Bump webmock from 3.10.0 to 3.11.0
Bumps [webmock](https://github.com/bblimke/webmock) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.10.0...v3.11.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-21 06:27:09 +00:00
Transifex-Openfoodnetwork
89f1d11e62 Updating translations for config/locales/en_US.yml 2020-12-19 05:14:00 +11:00
Pau Pérez Fabregat
9a199ae02c Merge pull request #6540 from PauloVilarinho/add-internationalization-to-payment-method-clean-name
Add internationalization to payment method clean name
2020-12-18 18:06:19 +01:00
Pau Perez
91e5276140 Enable request queuing tracking in Datadog
Request queuing is critical to understand whether our app servers are
able to cope with all the traffic or requests pile up in Nginx queues.
I find the article
https://www.speedshop.co/2015/07/29/scaling-ruby-apps-to-1000-rpm.html
incredibly enlightening on this topic. Thanks @nateberkopec ❤️.

This requires
https://github.com/openfoodfoundation/ofn-install/pull/689.
2020-12-18 17:33:11 +01:00
Transifex-Openfoodnetwork
1d08e30b45 Updating translations for config/locales/ru.yml 2020-12-18 20:16:57 +11:00
Andy Brett
ebe71429db Merge pull request #6541 from mkllnk/fix-subscription-script
Fix typo in subs test script
2020-12-17 17:10:05 -08:00
Andy Brett
2d636c8272 Merge pull request #6546 from andrewpbrett/sca-backend
Fix #6543
2020-12-17 14:00:36 -08:00
Andy Brett
13d6d2c978 separate conditionals 🤦 2020-12-17 13:23:14 -08:00
Paulo Vilarinho
747b747e2d adds translation key to the included in price validation 2020-12-17 18:04:55 -03:00
Matt-Yorkley
1269e5f2e9 Merge pull request #6533 from andrewpbrett/sca-backend
Patch #6469: use `purchase` to charge offline for Stripe Connect
2020-12-17 17:17:14 +01:00
Paulo Vilarinho
85663d15d1 Fix dynamic constant assignment issues 2020-12-17 10:14:54 -03:00
Paulo Vilarinho
92649ca97c Refactor payment method clean name method 2020-12-17 10:06:41 -03:00
Transifex-Openfoodnetwork
128a2ada5c Updating translations for config/locales/nb.yml 2020-12-17 20:47:05 +11:00
Transifex-Openfoodnetwork
0615c6ff3d Updating translations for config/locales/nb.yml 2020-12-17 20:43:59 +11:00
Transifex-Openfoodnetwork
10eea3b9e0 Updating translations for config/locales/en_NZ.yml 2020-12-17 20:39:39 +11:00
dependabot[bot]
3d7a069b6b Bump paranoia from 2.4.2 to 2.4.3
Bumps [paranoia](https://github.com/rubysherpas/paranoia) from 2.4.2 to 2.4.3.
- [Release notes](https://github.com/rubysherpas/paranoia/releases)
- [Changelog](https://github.com/rubysherpas/paranoia/blob/core/CHANGELOG.md)
- [Commits](https://github.com/rubysherpas/paranoia/compare/v2.4.2...2.4.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-17 05:42:57 +00:00
Maikel Linke
f0db7a22cc Fix typo in subs test script 2020-12-17 16:08:59 +11:00
Paulo Vilarinho
6225c83abb Add internationalization of payment method clean name
The clean name payment method now uses the internationalization string
2020-12-17 00:35:57 -03:00
Paulo Vilarinho
50955d735c Add tests for internationalization of payment method clean name
The clean name payment method tests now uses the internationalization string
2020-12-17 00:34:21 -03:00
Andy Brett
7fc9cc9f31 test that purchase is called by SCA and Connect providers 2020-12-16 11:09:15 -08:00
Pau Perez
6f8967f002 Enable new customer balance for the core team
This enables the use of the new customer balance implementation to
whatever users we specify in the BETA_TESTERS env var through
ofn-install.

This var is meant to contain the user emails that will log in such as
personal accounts (I have an account with admin access to my hub) or
superadmin accounts used by the core team. This way can gather early
feedback ourselves while not releasing the new logic to users.
2020-12-16 11:09:54 +01:00
dependabot[bot]
e2df5ebe5b Bump redcarpet from 3.5.0 to 3.5.1
Bumps [redcarpet](https://github.com/vmg/redcarpet) from 3.5.0 to 3.5.1.
- [Release notes](https://github.com/vmg/redcarpet/releases)
- [Changelog](https://github.com/vmg/redcarpet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vmg/redcarpet/compare/v3.5.0...v3.5.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-16 05:47:50 +00:00
Andy Brett
934f4f278e add spec to subscription confirm job 2020-12-15 12:24:38 -08:00
Andy Brett
484576d1ac add unit test for stripe connect 2020-12-15 10:30:05 -08:00
Andy Brett
cb29d05069 use purchase to charge offline for Stripe Connect 2020-12-14 11:54:03 -08:00
Pau Pérez Fabregat
c79baead84 Merge pull request #6524 from ankis17/DatePickerTranslation
Fixed Translation for DatePicker
2020-12-14 16:41:51 +01:00
Pau Pérez Fabregat
f26507b897 Merge pull request #6454 from arku/fix/signup-route
Remove /signup routes
2020-12-14 16:38:23 +01:00
Pau Pérez Fabregat
d4fc3f2118 Merge pull request #6516 from coopdevs/per-user-feature-toggles
Refactor FeatureToggle to toggle depending on user
2020-12-14 16:03:05 +01:00
Pau Pérez Fabregat
fa812364ff Merge pull request #6453 from andrewpbrett/fix-void-payment-error
fix #5829 (Voiding an initial payment (i.e. a full refund) after partially refunding the order is not possible with Stripe-SCA)
2020-12-14 09:48:41 +01:00
Pau Pérez Fabregat
9f517e1931 Merge pull request #6455 from arku/fix/tabs
Fix tab toggle
2020-12-14 09:34:05 +01:00
Luis Ramos
997b9b9a2e Merge pull request #6526 from openfoodfoundation/dependabot/bundler/combine_pdf-1.0.21
Bump combine_pdf from 1.0.16 to 1.0.21
2020-12-13 22:40:55 +00:00
Transifex-Openfoodnetwork
21efb4f3c6 Updating translations for config/locales/en_GB.yml 2020-12-14 07:19:09 +11:00
Arun Kumar Mohan
020df3619f Add tests for Stripe::CreditCardRemover 2020-12-12 21:39:21 -05:00
Arun Kumar Mohan
f02f2c540c Handle nil stripe customer in credit card clone removal logic 2020-12-12 21:31:06 -05:00
dependabot[bot]
6f763e1216 Bump combine_pdf from 1.0.16 to 1.0.21
Bumps [combine_pdf](https://github.com/boazsegev/combine_pdf) from 1.0.16 to 1.0.21.
- [Release notes](https://github.com/boazsegev/combine_pdf/releases)
- [Changelog](https://github.com/boazsegev/combine_pdf/blob/master/CHANGELOG.md)
- [Commits](https://github.com/boazsegev/combine_pdf/compare/v1.0.16...v1.0.21)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-12 21:17:26 +00:00
Andy Brett
92aeab2ec3 Merge pull request #6490 from openfoodfoundation/dependabot/bundler/capybara-3.15.1
Bump capybara from 2.18.0 to 3.15.1
2020-12-12 13:16:04 -08:00
Luis Ramos
b76261c61c Adapt preferable to work with new BigDecimal version
BigDecimal raises exception if called with nil or empty values
2020-12-12 18:50:57 +00:00
Andy Brett
94d10a45a7 Merge pull request #6486 from openfoodfoundation/dependabot/bundler/factory_bot_rails-5.2.0
Bump factory_bot_rails from 4.10.0 to 5.2.0
2020-12-12 08:58:53 -08:00
Transifex-Openfoodnetwork
18f642546d Updating translations for config/locales/it.yml 2020-12-12 20:58:50 +11:00
Transifex-Openfoodnetwork
2afcdf9261 Updating translations for config/locales/it.yml 2020-12-12 20:55:35 +11:00
Ankita Satyavarapu
377febd8d7 Fixed Translation for DatePicker 2020-12-11 22:52:22 -05:00
Arun Kumar Mohan
1edebade78 Extract Stripe credit card deletion logic to a service object 2020-12-11 19:52:59 -05:00
Luis Ramos
1ea775cffb Keep factory bot v4 behaviour
In v5 the default value is true, that means that all parent objects (for example the order od a line item) will be built using the same strategy as the object (build or create), in v4 and now with this config, the parent is always created

We can revert this and use the default value but that will require some adaptions, quite a lot of specs are broken with that behaviour activated
2020-12-12 00:23:24 +00:00
Luis Ramos
367622cea8 Capybara v3 is not cleaning up the html into text so the permissions that are inside html li elements are not matched with the matcher have_table_row when there are multiple permissions. So, in this case, we need to do the work ourselves: looking up the correct row and then asserting the permissions are the ones required 2020-12-12 00:07:33 +00:00
Luis Ramos
ada25fa2b2 Improve stripe spec
I am not sure why this was passing without these stubbed requests for
the second order, but now they were correctly failing. This commit fixes
the spec.
2020-12-11 23:15:08 +00:00
Luis Ramos
480dfdf961 Handle redirect case
For some reason the process is now working correctly, the authorization step succeeds and a redirect link is stored in the payment with state pending. The payment state is correctly left at pending. Here we add a check for the redirect path sent by stripe and fail the authorization if there is one (it means the payment would need an extra auth step only available in the frontoffice now and probably through email to customer at some point in the future). For some reason the flash with the authorization failure message is not showing up for the user
2020-12-11 23:14:23 +00:00
Andy Brett
a745fceb53 Merge pull request #6469 from andrewpbrett/sca-backend
Allow SCA cards to be setup and charged offline for subscriptions
2020-12-11 14:23:12 -08:00
Pau Perez
182f0f66b6 Refactor FeatureToggle to toggle depending on user
This enables showing features to individual users only, which enables us
to deploy features that are not yet released to gather feedback from
product and testing, while no users have access to it.
2020-12-11 09:13:07 +01:00
Luis Ramos
62715a8060 Adapt matcher to capybara v3 2020-12-11 00:21:46 +00:00
Luis Ramos
26165cc08d Adapt matcher to capybara v3 2020-12-11 00:20:58 +00:00
Luis Ramos
f19946af8d Remove unnecessary test step that is breaking in capybara v3 2020-12-11 00:16:31 +00:00
Luis Ramos
c92e8de51f Adapt matchers to capybara v3 2020-12-11 00:13:46 +00:00
Luis Ramos
ed4a7bd361 Adapt matchers to capybara v3 2020-12-11 00:09:34 +00:00
Luis Ramos
6d37a15488 Adapt matchers to capybara v3 2020-12-11 00:02:22 +00:00
Luis Ramos
79c538fad9 Fix syntax for nil property 2020-12-10 23:44:24 +00:00
Luis Ramos
b287d67f6b Adapt matchers to capybara v3 2020-12-10 23:36:40 +00:00
Luis Ramos
5ae955c27f Adapt matchers to capybara v3 2020-12-10 23:35:34 +00:00
Luis Ramos
fd5adab0d5 Adapt matchers to capybara v3 2020-12-10 23:27:56 +00:00
Luis Ramos
773f733c8e Adapt matchers to capybara v3 2020-12-10 23:05:15 +00:00
Luis Ramos
80e59a920e Adpat matcher to capybara v3 2020-12-10 23:01:01 +00:00
Luis Ramos
b58fddf098 Adapt matcher to capybara v3 2020-12-10 22:59:37 +00:00
Luis Ramos
bcf7cc1013 Replace ignore with transient according to changes in factory bot v5 2020-12-10 22:16:17 +00:00
Andy Brett
3b7313f7e3 add spec for deleting the default card 2020-12-10 12:31:58 -08:00
Andy Brett
3daccb6420 update specs with new method signature 2020-12-10 12:17:55 -08:00
Andy Brett
655512adab add missing require statements 2020-12-10 12:17:42 -08:00
Andy Brett
f50577b489 refactor cloner to use ivars 2020-12-10 11:42:28 -08:00
Andy Brett
a1f6fe5522 remove unused method now that we use autopaging 2020-12-10 11:22:14 -08:00
Andy Brett
8c747e4812 refactor destroy_clones to separate class 2020-12-10 11:22:02 -08:00
Andy Brett
4c25edd91c refactor find_cloned_card to separate class 2020-12-10 11:04:27 -08:00
Andy Brett
0ac248f03a refactor offline payment methods 2020-12-10 10:26:38 -08:00
Andy Brett
13b95f41bb use built-in auto_paging_each with stripe 2020-12-10 08:19:41 -08:00
Andy Brett
50e87a023b rename method to validate! since it can raise an error 2020-12-10 07:45:07 -08:00
Pau Pérez Fabregat
b4b4d38d3b Merge pull request #6509 from mkllnk/image-tweaks
Image code tweaks
2020-12-10 12:50:18 +01:00
Pau Pérez Fabregat
3bf58b5b7c Merge pull request #6503 from openfoodfoundation/dependabot/bundler/delayed_job_active_record-4.1.5
Bump delayed_job_active_record from 4.1.4 to 4.1.5
2020-12-10 12:33:41 +01:00
Maikel Linke
3f6288d5c7 Load rake task under test for all its specs
If you ran only the second spec without the first, the rake file wasn't
loaded and the test failed.
2020-12-10 15:35:05 +11:00
Maikel Linke
6bf041aa74 Reduce complexity 2020-12-10 15:33:34 +11:00
Maikel Linke
e6c411684f Don't fail on missing images when resizing
The changed code obtains the image dimensions when you first upload an
image. Unfortunately it's also triggered when thumbnails are refreshed.
That doesn't change the size of the original image though.
2020-12-10 15:32:43 +11:00
Luis Ramos
465d2d2f1c Remove unused dependency 2020-12-09 18:35:44 -08:00
Maikel Linke
edf9dd7921 Update translations from Transifex 2020-12-10 13:34:05 +11:00
Maikel
5ca10d5cd1 Merge pull request #6465 from openfoodfoundation/transifex
Transifex
2020-12-10 13:29:12 +11:00
Maikel
33d220e777 Merge pull request #6291 from luisramos0/subs_tasks
Add tasks to help manually test subscriptions
2020-12-10 12:55:59 +11:00
Luis Ramos
9728b088f9 Fix syntax for nil properties 2020-12-09 23:38:16 +00:00
dependabot[bot]
c033fe70e7 Bump delayed_job_active_record from 4.1.4 to 4.1.5
Bumps [delayed_job_active_record](https://github.com/collectiveidea/delayed_job_active_record) from 4.1.4 to 4.1.5.
- [Release notes](https://github.com/collectiveidea/delayed_job_active_record/releases)
- [Commits](https://github.com/collectiveidea/delayed_job_active_record/compare/v4.1.4...v4.1.5)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-09 23:28:46 +00:00
Luis Ramos
c17998774e Adapt factories to factory_bot_rails v5 syntax 2020-12-09 23:09:33 +00:00
Andy Brett
de786982dd bump karma coffee preprocessor 2020-12-09 12:31:36 -08:00
dependabot[bot]
9b6702946c Bump moment from 2.28.0 to 2.29.1
Bumps [moment](https://github.com/moment/moment) from 2.28.0 to 2.29.1.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.28.0...2.29.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-09 11:40:06 -08:00
Transifex-Openfoodnetwork
7c6621a49b Updating translations for config/locales/en_FR.yml 2020-12-10 00:36:39 +11:00
Transifex-Openfoodnetwork
134c63f353 Updating translations for config/locales/en_FR.yml 2020-12-10 00:33:37 +11:00
Transifex-Openfoodnetwork
1d64230d4b Updating translations for config/locales/fr.yml 2020-12-10 00:31:44 +11:00
Transifex-Openfoodnetwork
8f796de35b Updating translations for config/locales/ar.yml 2020-12-10 00:03:43 +11:00
Transifex-Openfoodnetwork
b4a43e0554 Updating translations for config/locales/ar.yml 2020-12-10 00:00:34 +11:00
dependabot[bot]
f2c37ef64d Bump karma-chrome-launcher from 2.2.0 to 3.1.0
Bumps [karma-chrome-launcher](https://github.com/karma-runner/karma-chrome-launcher) from 2.2.0 to 3.1.0.
- [Release notes](https://github.com/karma-runner/karma-chrome-launcher/releases)
- [Changelog](https://github.com/karma-runner/karma-chrome-launcher/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma-chrome-launcher/compare/v2.2.0...v3.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-08 17:58:00 -08:00
dependabot[bot]
f45d348dd7 Bump ddtrace from 0.42.0 to 0.43.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.42.0 to 0.43.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.42.0...v0.43.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-08 17:56:37 -08:00
dependabot-preview[bot]
351d694c13 Bump haml from 5.2.0 to 5.2.1
Bumps [haml](https://github.com/haml/haml) from 5.2.0 to 5.2.1.
- [Release notes](https://github.com/haml/haml/releases)
- [Changelog](https://github.com/haml/haml/blob/main/CHANGELOG.md)
- [Commits](https://github.com/haml/haml/compare/v5.2.0...5.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-08 17:53:03 -08:00
Andy Brett
22ef9a0fef fix long line 2020-12-08 14:37:16 -08:00
Andy Brett
7a03882314 re-refactor cart_service 2020-12-08 14:37:16 -08:00
Andy Brett
b713bd7aa7 spec updates 2020-12-08 14:37:16 -08:00
Andy Brett
c70ea44091 show specific error message when add-to-cart fails 2020-12-08 14:37:16 -08:00
Luis Ramos
7a27741cf5 Remove unnecessary capybara version control in Gemfile 2020-12-08 22:15:54 +00:00
dependabot[bot]
2a3176f7f5 Bump capybara from 2.18.0 to 3.15.1
Bumps [capybara](https://github.com/teamcapybara/capybara) from 2.18.0 to 3.15.1.
- [Release notes](https://github.com/teamcapybara/capybara/releases)
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md)
- [Commits](https://github.com/teamcapybara/capybara/compare/2.18.0...3.15.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-08 21:24:15 +00:00
dependabot[bot]
5c65f9bf55 Bump factory_bot_rails from 4.10.0 to 5.2.0
Bumps [factory_bot_rails](https://github.com/thoughtbot/factory_bot_rails) from 4.10.0 to 5.2.0.
- [Release notes](https://github.com/thoughtbot/factory_bot_rails/releases)
- [Changelog](https://github.com/thoughtbot/factory_bot_rails/blob/master/NEWS.md)
- [Commits](https://github.com/thoughtbot/factory_bot_rails/compare/v4.10.0...v5.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2020-12-08 20:24:41 +00:00
Luis Ramos
0824f12472 Merge pull request #6472 from luisramos0/depen
Fix dependabot config
2020-12-08 20:02:26 +00:00
Luis Ramos
ab6f6c463a Fix problem in dependabot config, yarn is not a valid package-ecosystem, we can try npm 2020-12-08 20:00:19 +00:00
Luis Ramos
e2181960bc Merge pull request #6450 from openfoodfoundation/dependabot/bundler/knapsack-1.20.0
Bump knapsack from 1.19.0 to 1.20.0
2020-12-08 19:39:13 +00:00
Luis Ramos
e8ba16cb3e Merge pull request #6457 from openfoodfoundation/dependabot/bundler/spring-2.0.2
Bump spring from 1.7.2 to 2.0.2
2020-12-08 19:38:55 +00:00
Luis Ramos
c233052ec6 Merge pull request #6438 from luisramos0/devise4
Upgrade to devise 4.7
2020-12-08 17:19:13 +00:00
Andy Brett
d55343da1a only return gateway payment info if set on customer 2020-12-08 07:52:42 -08:00
Andy Brett
eddf8da107 update subscription spec with new method name 2020-12-08 07:52:42 -08:00
Andy Brett
3a8203094a refactor to remove boolean flag param 2020-12-08 07:52:42 -08:00
Andy Brett
f1d439870e use a named argument for offline param 2020-12-08 07:52:42 -08:00
Andy Brett
103366ea97 add request limits to credit card cloner 2020-12-08 07:52:42 -08:00
Andy Brett
9c544ef2f4 remove cloned cards after removing the platform card 2020-12-08 07:52:42 -08:00
Andy Brett
bc3fd8c50c remove unused method 2020-12-08 07:52:42 -08:00
Andy Brett
277d7f44b7 refactor api customers controller; resolve merge conflict 2020-12-08 07:52:42 -08:00
Andy Brett
a466886a32 fix rubocop warnings 2020-12-08 07:52:42 -08:00
Andy Brett
3d47ad7e33 add stubs for stripe requests 2020-12-08 07:52:42 -08:00
Andy Brett
fea7576ac1 update CreditCardCloner to find existing clone 2020-12-08 07:52:42 -08:00
Andy Brett
13ab25ac45 separate method for charging offline 2020-12-08 07:52:41 -08:00
Andy Brett
cad8a018f9 put SetupIntent on the connected Stripe account 2020-12-08 07:52:41 -08:00
Andy Brett
215d1bbe20 create js setup intent when authing shop 2020-12-08 07:52:41 -08:00
Andy Brett
b517d2f0c7 guard against a stripe customer already being deleted 2020-12-08 07:52:41 -08:00
Andy Brett
cc00f24569 add spec for clearing authorizations to credit_card_controller_spec 2020-12-08 07:46:10 -08:00
Andy Brett
d0098e190f close #4175 2020-12-08 07:46:10 -08:00
Andy Brett
1f8b4e05bb allow charges in subscriptions spec 2020-12-08 07:46:10 -08:00
Andy Brett
f875e406a8 update karma specs for setting default card 2020-12-08 07:46:10 -08:00
Andy Brett
3b44c8e7e2 update UI after changing default card 2020-12-08 07:46:10 -08:00
Andy Brett
6fdcd6218d add remove_shop_authorizations method to controller 2020-12-08 07:46:10 -08:00
Andy Brett
c60dcc75cd confirm changes to default card 2020-12-08 07:46:10 -08:00
Andy Brett
4cdc1993b8 add more specific copy on cc authorization 2020-12-08 07:46:10 -08:00
Andy Brett
747345ece9 only show authorized shops if there is a default card 2020-12-08 07:46:10 -08:00
Matt-Yorkley
5b9db50250 Optimise Shipment#to_package
This is done in a later Spree commit to reduce the amount of processing done in larger orders.

See: ab01b1ec1e
2020-12-08 11:21:05 +00:00
Maikel Linke
84730577da Fail with better message when giving wrong OC id
The script was failing with:

  NoMethodError: undefined method `update!' for nil:NilClass

Now it's failing with:

  ActiveRecord::RecordNotFound: Couldn't find OrderCycle with id=1
2020-12-08 11:48:34 +11:00
Maikel Linke
906dbffb29 Fail loudly when task doesn't work 2020-12-08 11:43:21 +11:00
Maikel Linke
aa8df639c4 Style to avoid indent changes with context changes
When the indent of arguments is aligned with the method brackets, it
needs to be changed when the method changes. Putting all arguments on
their own line makes diffs of method changes or argument changes
clearer. See the next commit.
2020-12-08 11:38:50 +11:00
Maikel Linke
70d1888cc2 Ease reading of times 2020-12-08 11:36:15 +11:00
Maikel Linke
feb0ad452d Safeguard production env from test script 2020-12-08 11:33:37 +11:00
Andy Brett
e866e983f6 add spec for partially refunded SCA orders 2020-12-07 14:51:47 -08:00
Transifex-Openfoodnetwork
33916cfff3 Updating translations for config/locales/nb.yml 2020-12-08 08:21:50 +11:00
Transifex-Openfoodnetwork
9333a6385e Updating translations for config/locales/nb.yml 2020-12-08 08:00:43 +11:00
Transifex-Openfoodnetwork
c37bd8e911 Updating translations for config/locales/nb.yml 2020-12-08 07:40:37 +11:00
Andy Brett
96462325d2 fix #5829 2020-12-04 18:13:43 -08:00
dependabot-preview[bot]
567e489716 Bump spring from 1.7.2 to 2.0.2
Bumps [spring](https://github.com/rails/spring) from 1.7.2 to 2.0.2.
- [Release notes](https://github.com/rails/spring/releases)
- [Changelog](https://github.com/rails/spring/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/spring/compare/v1.7.2...v2.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-04 19:14:16 +00:00
Arun Kumar Mohan
868a19df6e Fix tab toggle 2020-12-03 21:03:44 -05:00
Arun Kumar Mohan
81b03906f9 Remove /signup routes 2020-12-03 20:43:28 -05:00
Luis Ramos
acddb496b7 Remove spree_i18n dependency 2020-12-03 15:34:46 -08:00
dependabot-preview[bot]
d29773d297 [Security] Bump jquery-rails from 3.1.5 to 4.4.0
Bumps [jquery-rails](https://github.com/rails/jquery-rails) from 3.1.5 to 4.4.0. **This update includes a security fix.**
- [Release notes](https://github.com/rails/jquery-rails/releases)
- [Changelog](https://github.com/rails/jquery-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/jquery-rails/compare/v3.1.5...v4.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-03 15:33:41 -08:00
Luis Ramos
0f27f57cbb Use new Admin::ResourceController 2020-12-03 15:32:20 -08:00
Luis Ramos
1d327a61a6 Fix rubocop issue and adapt rubocop exceptions 2020-12-03 15:32:20 -08:00
Luis Ramos
0fb9f44dda Make all controllers use new Admin::ResourceController 2020-12-03 15:32:20 -08:00
Luis Ramos
c63d99dd20 Remove Spree namespace from controller 2020-12-03 15:32:20 -08:00
Luis Ramos
99fd99cd33 Move spree admin resource controller to admin resource controller 2020-12-03 15:32:20 -08:00
Luis Ramos
1d075bbc90 Remove empty resource controller 2020-12-03 15:32:20 -08:00
Luis Ramos
6e08fccbbe Merge resource_controller url helpers with parent version 2020-12-03 15:32:20 -08:00
Luis Ramos
fc4cf6a9a7 Merge resource_controller model_class method with parent version 2020-12-03 15:32:20 -08:00
dependabot-preview[bot]
abc58f5bb4 Bump acts_as_list from 0.3.0 to 0.9.19
Bumps [acts_as_list](https://github.com/brendon/acts_as_list) from 0.3.0 to 0.9.19.
- [Release notes](https://github.com/brendon/acts_as_list/releases)
- [Changelog](https://github.com/brendon/acts_as_list/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brendon/acts_as_list/compare/0.3.0...v0.9.19)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-03 15:30:24 -08:00
Matt-Yorkley
0ceba7c0a8 Update orders closing message 2020-12-03 15:29:14 -08:00
Luis Ramos
f71de8123a Dont show 'closing in' message when oc closes in more than 3 months 2020-12-03 15:29:14 -08:00
Luis Ramos
a51d01efac Merge pull request #6452 from luisramos0/dep
Move dependabot file to correct location
2020-12-03 21:35:49 +00:00
Luis Ramos
7a35fabb22 Move dependendabot config file to .github 2020-12-03 21:32:57 +00:00
dependabot-preview[bot]
67ee8c3500 Bump knapsack from 1.19.0 to 1.20.0
Bumps [knapsack](https://github.com/ArturT/knapsack) from 1.19.0 to 1.20.0.
- [Release notes](https://github.com/ArturT/knapsack/releases)
- [Changelog](https://github.com/ArturT/knapsack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ArturT/knapsack/compare/v1.19.0...v1.20.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-03 19:14:05 +00:00
Luis Ramos
5b00868c6f Allow mutable strings in some specs 2020-12-03 06:38:24 -08:00
Luis Ramos
bfd4adbcee Adapt code to work with frozen strings 2020-12-03 06:38:24 -08:00
Luis Ramos
611de912a8 Switch frozen_string_literal to false so that price code keeps working 2020-12-03 06:38:24 -08:00
Luis Ramos
2b8f0abe49 Try some mass auto-correct adding frozen-string-literal to all specs 2020-12-03 06:38:24 -08:00
Luis Ramos
de19efca64 Fix rubocop issue and add missing exceptions to manual_todo to get a green rubocop run 2020-12-03 06:38:24 -08:00
Luis Ramos
6c9e12b4ea Update rubocop exceptions file after bye bye spree 2020-12-03 06:38:24 -08:00
Andy Brett
dfabc5fa06 Update all locales with the latest Transifex translations 2020-12-02 21:41:18 -08:00
Luis Ramos
7a5a4f956a Replace use of Faker with FFaker 2020-12-02 11:40:50 -08:00
Luis Ramos
720edb4b05 Relax ffaker version requirement so that upgrades come as possible 2020-12-02 11:40:50 -08:00
dependabot-preview[bot]
3ec1af104f Bump ffaker from 1.32.1 to 2.11.0
Bumps [ffaker](https://github.com/ffaker/ffaker) from 1.32.1 to 2.11.0.
- [Release notes](https://github.com/ffaker/ffaker/releases)
- [Changelog](https://github.com/ffaker/ffaker/blob/master/Changelog.md)
- [Commits](https://github.com/ffaker/ffaker/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-02 11:40:50 -08:00
dependabot-preview[bot]
80d034706c Bump test-unit from 3.3.6 to 3.3.7
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.3.6 to 3.3.7.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.3.6...3.3.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-02 11:40:04 -08:00
Andy Brett
902f8caea9 direct specifically to shop tab 2020-12-02 11:39:02 -08:00
Andy Brett
14091cd106 fix #6415 2020-12-02 11:39:02 -08:00
Andy Brett
936f5c1a0c remove extraneous page call 2020-12-02 11:38:10 -08:00
Andy Brett
8963a787d6 only validate unit_value presence if "items" is not chosen 2020-12-02 11:38:10 -08:00
Andy Brett
59cab902f0 add numericality validation 2020-12-02 11:38:10 -08:00
Andy Brett
4d2c93930b resolve merge conflict 2020-12-02 11:38:10 -08:00
Tsara Sudrajat
fb769d37f9 Fix error when setting stock for new product 2020-12-02 11:38:10 -08:00
Andy Brett
65f6f1febf rearrange css 2020-12-02 11:37:25 -08:00
Andy Brett
99b5d9e0c5 use white-space: nowrap on variant prices 2020-12-02 11:37:25 -08:00
Andy Brett
c4cd574242 fix currency spec 2020-12-02 11:37:25 -08:00
Andy Brett
a3a6205343 fix #6252 2020-12-02 11:37:25 -08:00
Maikel
25c363feba Merge pull request #6356 from openfoodfoundation/dependabot/bundler/stringex-2.8.5
Bump stringex from 1.5.1 to 2.8.5
2020-12-02 16:39:00 +11:00
Luis Ramos
839278fc75 Add dependendabot config to increase limit to 10 PRs 2020-12-01 12:40:24 -08:00
Luis Ramos
3162cf9abf Add gem to make tests work with devise callbacks
This is noted in the devise 4.1 release notes: https://github.com/heartcombo/devise/blob/master/CHANGELOG.md#410
2020-12-01 17:19:07 +00:00
Luis Ramos
9abdcd88e5 Move confirmable config together with other devise configs in user model 2020-12-01 17:06:39 +00:00
Luis Ramos
ca1a4db299 Bump to ruby 2.4.4 2020-12-01 15:16:39 +00:00
Luis Ramos
bd6b1dbfed Upgrade to devise 4.7 2020-12-01 11:59:41 +00:00
Matt-Yorkley
1cab9e473b Merge pull request #6378 from openfoodfoundation/dependabot/bundler/webmock-3.10.0
Bump webmock from 3.9.5 to 3.10.0
2020-12-01 11:58:01 +01:00
dependabot-preview[bot]
93a73b4823 Bump stringex from 1.5.1 to 2.8.5
Bumps [stringex](https://github.com/rsl/stringex) from 1.5.1 to 2.8.5.
- [Release notes](https://github.com/rsl/stringex/releases)
- [Commits](https://github.com/rsl/stringex/compare/v1.5.1...v2.8.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 09:58:08 +00:00
Matt-Yorkley
7408c45980 Merge pull request #6297 from openfoodfoundation/rails-4-1
[Rails 4.1] Merge Rails 4.1 branch into master
2020-12-01 10:56:08 +01:00
Matt-Yorkley
fe4b20dd7b Merge pull request #6354 from openfoodfoundation/rails-4-2-rebased
Rails 4.2 upgrade
2020-12-01 10:55:25 +01:00
Pau Pérez Fabregat
3c71b7f6be Merge pull request #6428 from coopdevs/upgrade-brakeman-dependencies
Upgrade Ruby and Ubuntu to latest in GH action
2020-11-30 21:13:25 +01:00
Transifex-Openfoodnetwork
ea148d7f51 Updating translations for config/locales/en_US.yml 2020-12-01 00:15:59 +11:00
Transifex-Openfoodnetwork
a5761707d5 Updating translations for config/locales/en_US.yml 2020-12-01 00:12:50 +11:00
Pau Perez
259e139c47 Update all locales with the latest Transifex translations 2020-11-30 09:21:13 +01:00
Pau Perez
8c1e222788 Upgrade Ruby and Ubuntu to latest in GH action
It was asked for in
https://github.com/openfoodfoundation/openfoodnetwork/pull/6163/ to use
the latest stable Ruby version. It's also better to use Ubuntu's latest
as well.
2020-11-30 09:11:41 +01:00
Pau Pérez Fabregat
4ca930bdad Merge pull request #6163 from openfoodfoundation/luisramos0-patch-2
Add brakeman config
2020-11-30 09:08:32 +01:00
Pau Pérez Fabregat
f0a052b65b Merge pull request #6357 from Matt-Yorkley/secret-key-base
Update secret key base
2020-11-27 17:32:14 +01:00
Pau Pérez Fabregat
07a72eccd4 Merge pull request #6391 from Matt-Yorkley/paypal-stock-clashes
Paypal stock clashes
2020-11-27 17:08:15 +01:00
Matt-Yorkley
b04a76e8bf Update payments_report totals 2020-11-27 14:00:29 +00:00
Matt-Yorkley
1ceb6ac916 Update orders_and_fulfilment report totals 2020-11-27 14:00:29 +00:00
Andy Brett
049f66c2aa address #6411 2020-11-27 14:00:29 +00:00
Matt-Yorkley
9c41c296e4 Remove default comments from ApplicationResponder 2020-11-27 14:00:29 +00:00
Matt-Yorkley
d299c8cf01 Update test setup in Packer spec.
This is the correct way to set a variant's weight.
2020-11-27 14:00:29 +00:00
Matt-Yorkley
2b2f1ac0cd Improve specificity of expectation in reset password email test 2020-11-27 14:00:29 +00:00
Matt-Yorkley
d2998f1190 Remove spaces in payments report 2020-11-27 14:00:29 +00:00
Matt-Yorkley
c6c20dc0f6 Add ActionController::ConditionalGet to Api::BaseController
This was added in Spree around the time of Rails 4.2 and seems to fix some of the response errors around the `responders` gem.
2020-11-27 14:00:29 +00:00
Matt-Yorkley
60aaf8100a Fix some Rubocop offences 2020-11-27 14:00:29 +00:00
Matt-Yorkley
98f42a1f81 Fix output of Package#inspect 2020-11-27 14:00:29 +00:00
Matt-Yorkley
f589d278cf Add failing spec for Package#inspect 2020-11-27 14:00:29 +00:00
Matt-Yorkley
2b884be8dd Update specs to work with ActionMailer::DeliveryJob 2020-11-27 14:00:29 +00:00
Matt-Yorkley
64153c5072 Remove #handle_asyncronously and update to recommended asyncronous devise mail method 2020-11-27 14:00:29 +00:00
Matt-Yorkley
9de3370a8a Fix precision in adjustment form display
The tests here were looking for values with a format like "10.00" but the output had changed to "10.0"
2020-11-27 14:00:29 +00:00
Matt-Yorkley
63fb46f440 Delete some dead code
There are some really weird issues in the spec here, and this module is not in use anywhere.
2020-11-27 14:00:29 +00:00
Matt-Yorkley
aa718824d8 Fix touch spec
The behavior in #change blocks ironically seems to have changed
2020-11-27 14:00:29 +00:00
Matt-Yorkley
4394d2fe43 Fix tag_rules ForbiddenAttributes errors
Example error:
Tag Rules creating allows creation of rules of each type
     Failure/Error: expect(tag_rule.preferred_shipping_method_tags).to eq "volunteers-only"

       expected: "volunteers-only"
            got: ""

       (compared using ==)
     # ./spec/features/admin/tag_rules_spec.rb:81:in `block (3 levels) in <top (required)>'
2020-11-27 14:00:29 +00:00
Matt-Yorkley
ea5c7c5990 Fix broken redirect after bulk product update
Error:
As an Administrator
  I want to be able to manage products in bulk
 updating when a filter has been applied
     Failure/Error: expect(page.find("#status-message")).to have_content "Changes saved."
       expected to find text "Changes saved." in "Saving.."
     # ./spec/features/admin/bulk_product_update_spec.rb:451:in `block (2 levels) in <top (required)>'
2020-11-27 14:00:29 +00:00
Matt-Yorkley
2905267142 Fix broken variant weight assignment in spec
OrderManagement::Stock::Packer builds a package with all the items
     Failure/Error: expect(package.weight).to be_positive
       expected `0.0 (#<BigDecimal:7f156c99fda8,'0.0',9(18)>).positive?` to be truthy, got false
     # ./engines/order_management/spec/services/order_management/stock/packer_spec.rb:19:in `block (2 levels) in <module:Stock>'
2020-11-27 14:00:29 +00:00
Matt-Yorkley
71c6cee94c Fix "modifying frozen string" error in Package#inspect 2020-11-27 14:00:29 +00:00
Matt-Yorkley
7ef0056225 Fix invoice rendering issue
Setting `locals: { :@order => order }` no longer works; `@order` is not set as expected in the partial. Fixes various errors eg:

Failure/Error: = "#{@order.number}"

     ActionView::Template::Error:
       undefined method `number' for nil:NilClass
     # ./app/views/spree/admin/orders/invoice.html.haml:14:in `_app_views_spree_admin_orders_invoice_html_haml__1740595365701113578_70025078036080'
     # ./app/services/invoice_renderer.rb:3:in `render_to_string'
     # ./app/controllers/spree/admin/orders_controller.rb:89:in `invoice'
2020-11-27 14:00:29 +00:00
Matt-Yorkley
b512d3ce21 Fix column preferences spec
Failure/Error: expect(preferences.map(&:column_name)).to eq [:col1, :col2, :col3]

        expected: [:col1, :col2, :col3]
             got: ["col1", "col2", "col3"]

        (compared using ==)

        Diff:
        @@ -1 +1 @@
        -[:col1, :col2, :col3]
        +["col1", "col2", "col3"]

      # ./spec/models/column_preference_spec.rb:56:in `block (4 levels) in <top (required)>'
2020-11-27 14:00:29 +00:00
Matt-Yorkley
98c99de835 Use ActiveJob::Testhelper where needed 2020-11-27 14:00:29 +00:00
Matt-Yorkley
1aa2b7274b Fix test mailer delivery 2020-11-27 14:00:29 +00:00
Matt-Yorkley
ae33df946e Fix StateMachine specs 2020-11-27 14:00:29 +00:00
Matt-Yorkley
54ad90e071 Replace deprecated ActiveRecord::ConnectionAdapters::Column#value_to_boolean
This method has been removed in Rails 4.2
2020-11-27 14:00:29 +00:00
Matt-Yorkley
e1c1574931 Refactor BulkInvoiceService to use ActiveJob
Removes use of #handle_asynchronously, which we need to do elsewhere. Fixes:
BulkInvoiceService#start_pdf_job starts a background process to create a pdf with multiple invoices
      Failure/Error:
        expect do
          service.start_pdf_job [1, 2]
        end.to enqueue_job Delayed::PerformableMethod

        expected to enqueue exactly 1 jobs, but enqueued 0
      # ./spec/services/bulk_invoice_service_spec.rb:8:in `block (3 levels) in <top (required)>'
2020-11-27 14:00:29 +00:00
Matt-Yorkley
8f8973b6f9 Call #deliver in user_mailer_spec so mail is sent 2020-11-27 14:00:29 +00:00
Matt-Yorkley
3c74541145 Fix misbehaving params in Api::ProductsController
In some cases the given params were being deleted here.
2020-11-27 14:00:29 +00:00
Matt-Yorkley
1ab62fddcb Patch Paranoia#delete to resolve ActiveRecord::ConnectionAdapters::NullTransaction errors
Patches Paranoia gem to fix a conflict with transactions in Rspec: https://github.com/rubysherpas/paranoia/issues/274

Example error:
```
Failure/Error: order.line_items.first.variant.tap(&:delete)
NoMethodError:
       undefined method `state' for #<ActiveRecord::ConnectionAdapters::NullTransaction:0x0000564117dddd18>
```
2020-11-27 14:00:29 +00:00
Matt-Yorkley
1e8d400534 Add Paranoia#delete (original) 2020-11-27 14:00:29 +00:00
Matt-Yorkley
1a4e292178 Fix json "empty body" expectations 2020-11-27 14:00:29 +00:00
Matt-Yorkley
49081e171e Fix PG::UndefinedTable errors
The logic of #includes has changed slightly in Rails 4.2 and now usually needs the #references method as well.

PG::UndefinedTable:
     #   ERROR:  missing FROM-clause entry for table "enterprises"
     #   LINE 1: SELECT "spree_users".* FROM "spree_users" WHERE (enterprises...
     #                                                            ^
     #   ./spec/models/spree/user_spec.rb:125:in `block (4 levels) in <top (required)>'
2020-11-27 14:00:29 +00:00
Matt-Yorkley
a5472d6b64 Convert ConfirmSignupJob to ActiveJob 2020-11-27 14:00:29 +00:00
Matt-Yorkley
62b80043ba Fix mailer specs
These methods are not actually called now until the email is being delivered.
2020-11-27 14:00:29 +00:00
Matt-Yorkley
eb040de422 Fix expectation in base_helper_spec
The attribute on this element are now rendered in alphabetical order
2020-11-27 14:00:29 +00:00
Matt-Yorkley
b36b0eddee Fix Rubocop issues 2020-11-27 14:00:29 +00:00
Matt-Yorkley
aaf7a90f8b Convert OrderCycleNotificationJob to ActiveJob 2020-11-27 14:00:29 +00:00
Matt-Yorkley
9e334a4c1e Convert ConfirmOrderJob to ActiveJob 2020-11-27 14:00:29 +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
6b3da4ac89 Fix "PG::ProtocolViolation: ERROR: bind message supplies 0 parameters" errors 2020-11-27 14:00:28 +00:00
Matt-Yorkley
31415d00e6 TEMP - Fix deprecated cache store naming 2020-11-27 14:00:28 +00:00
Matt-Yorkley
e155b00ab9 Fix undefined constant Spree::Responder 2020-11-27 14:00:28 +00:00
Matt-Yorkley
3c0172c507 Fix Spree::Preferences cache issue
In some cases this method was trying to delete a Rails.cache entry with `nil` as the key, leading to lots of errors.
2020-11-27 14:00:28 +00:00
Matt-Yorkley
3cba9a16aa Use ActionController::Base for Api::BaseController
It looks like ActionController::Metal does not play nicely with the big changes to controller responders: https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#responders
2020-11-27 14:00:28 +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
Matt-Yorkley
54a4952dc5 Fix ForbiddenAttributesError on tag rules 2020-11-27 14:00:28 +00:00
Matt-Yorkley
34bfd877cc Fix #bulk_update in EnterprisesController 2020-11-27 14:00:28 +00:00
Matt-Yorkley
16cc0afe8f Replace removed method #retrieve_collector_from_mimes
https://apidock.com/rails/v4.1.8/ActionController/MimeResponds/retrieve_collector_from_mimes
2020-11-27 14:00:28 +00:00
Matt-Yorkley
ccaff08928 Re-add ForbiddenAttributesError debugging helper 2020-11-27 14:00:28 +00:00
Matt-Yorkley
91908a0e4c Switch from state_machine to state_machines gem
The old version is completely unmaintained and does not work with Rails 4.2
2020-11-27 14:00:28 +00:00
Matt-Yorkley
6b45208cf1 Define Capybara server
The server type now has to be set explicitly for Capybara
2020-11-27 14:00:28 +00:00
Matt-Yorkley
fb333c37e7 Fix Api controller setup for responders gem 2020-11-27 14:00:28 +00:00
Matt-Yorkley
3090cfa909 Add setup for responders gem 2020-11-27 14:00:28 +00:00
Matt-Yorkley
9205c85d4d Run rake db:migrate 2020-11-27 14:00:28 +00:00
Matt-Yorkley
ff9f6c3317 Remove foreigner gem
https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#foreign-key-support
2020-11-27 14:00:28 +00:00
Matt-Yorkley
25dd47e511 Add responders gem
https://guides.rubyonrails.org/upgrading_ruby_on_rails.html#responders
2020-11-27 14:00:28 +00:00
Matt-Yorkley
ece3e7aa69 Update gems to Rails 4.2 2020-11-27 14:00:28 +00:00
Luis Ramos
ff8d935699 Fix problem in enterprises controller 2020-11-27 13:59:46 +00:00
Luis Ramos
1d32ecab98 Fix spec by adding necessary references statement 2020-11-27 13:59:46 +00:00
Luis Ramos
ff17ced101 Fix enterprises spec by adding needed references statement 2020-11-27 13:59:46 +00:00
Luis Ramos
fa6cf0f281 Fix prod importer spec in rails 4.1 2020-11-27 13:59:46 +00:00
Luis Ramos
7e39d78733 Fix Long Method rubocop issue 2020-11-27 13:59:46 +00:00
Luis Ramos
0152b4da55 Fix rubocop issues 2020-11-27 13:59:46 +00:00
Luis Ramos
2a03e42f2a Update deep_munge patch to rails 4.1 where the code is now in ActionDispatch::Request::Utils 2020-11-27 13:59:46 +00:00
Matt-Yorkley
01a726d9bd Fix stubbing of stock totals
Recent changes to the way count_on_hand is summed in Spree::Stock::Quantifier mean the old method here will not work. Error:
```
  2) Spree::Variant#in_stock? when stock_items are not backorderable when stock_items out of stock return false if stock_items out of stock
     Failure/Error: expect(variant.in_stock?).to be_falsy

       expected: falsey value
            got: true
     # ./spec/models/spree/variant_spec.rb:241:in `block (5 levels) in <module:Spree>'
  ```
2020-11-27 13:59:46 +00:00
Matt-Yorkley
93fe8dbc5f Replace #scoped, which is now deprecated and removed in Rails 4.1 2020-11-27 13:59:46 +00:00
Matt-Yorkley
5c5a6361bf Fix nasty json encoding issue
The enterprise id returned by these json endpoints was being returned in *unicode* format, so where Angular was expecting a simple integer it was instead getting strings like: "\u0017"
2020-11-27 13:59:46 +00:00
Matt-Yorkley
0f2cbe8a52 Fix API exception response handling
For some reason when using `render text:` instead of `render json:` for this response, the status code being returned was 200 instead of the clearly explicitly defined 422 (:unprocessable_entity). I absolutely have no idea why!
2020-11-27 13:59:46 +00:00
Matt-Yorkley
f1002b953d Disable Javascript CSRF protection on EnterprisesController#check_permalink route
This route checks if an enterprise permalink is taken or not. Allowing the route to be accessed via Javascript without strict CSRF protection is reasonable. Fixes the following errors:

ActionController::InvalidCrossOriginRequest: Security warning: an embedded <script> tag on another site requested protected JavaScript. If you know what you're doing, go ahead and disable forgery protection on this action to permit cross-origin JavaScript embedding.
2020-11-27 13:59:46 +00:00
Luis Ramos
3ebc8145df Avoid calling update with nil values 2020-11-27 13:59:46 +00:00
Luis Ramos
edc1773676 Fix some calls to sum in reports code 2020-11-27 13:59:46 +00:00
Luis Ramos
6814eb663f Fix respond_with error 2020-11-27 13:59:46 +00:00
Luis Ramos
78cfcd905f Adapt more & and no & when using sum 2020-11-27 13:59:46 +00:00
Luis Ramos
9bbef16804 Converting all calls to ActiveRelation#sum to use a symbol with &
This is only applicable to database columns, if we are summing using a method in the model than the & is required!
2020-11-27 13:59:46 +00:00
Luis Ramos
974240fd4b Fix two sum calls in checkout helper 2020-11-27 13:59:46 +00:00
Luis Ramos
7472b7cc27 Fix sum call in quantifier 2020-11-27 13:59:46 +00:00
Eduardo
a8a933d73a change from render json to render plain due to template missing issue 2020-11-27 13:59:46 +00:00
Luis Ramos
bcd07e1791 Upgrade to rails 4.1 2020-11-27 13:59:46 +00:00
Luis Ramos
ecb29ec830 Add state machine patch to fix error with state machine
See here for details: https://github.com/pluginaweek/state_machine/issues/251#issuecomment-32133267
2020-11-27 13:59:46 +00:00
Luis Ramos
202aa3e5b7 Use reflections instead of, now gone, reflections 2020-11-27 13:59:46 +00:00
Luis Ramos
a05f43000a ActionView was extracted from ActionPack in rails 4.1 so we need to use ActionView 2020-11-27 13:59:46 +00:00
Luis Ramos
61708e5deb AbstractController::ViewPaths was moved to ActionView::ViewPaths in rails 4.1 2020-11-27 13:59:46 +00:00
Matt-Yorkley
27586d072d Merge pull request #6423 from openfoodfoundation/revert-6277-controllers
Revert "Move Spree::Admin::BaseController to Admin::BaseController"
2020-11-27 14:29:15 +01:00
Matt-Yorkley
3bfa903912 Revert "Move Spree::Admin::BaseController to Admin::BaseController" 2020-11-27 14:11:57 +01:00
Matt-Yorkley
0ba670b180 Ensure order is cleanly reset to cart state when redirecting to cart 2020-11-27 11:42:46 +00:00
Matt-Yorkley
c4cfc1dc05 Improve order test in paypal controller spec 2020-11-27 11:42:06 +00:00
Pau Pérez Fabregat
17957ed6c0 Merge pull request #6408 from openfoodfoundation/transifex
Transifex
2020-11-27 10:31:56 +01:00
Pau Pérez Fabregat
8b6a08457a Merge pull request #6293 from luisramos0/subs_debug
Add task to print Subscriptions debug info
2020-11-27 10:17:57 +01:00
Maikel
9e2a3d6973 Merge pull request #6277 from luisramos0/controllers
Move Spree::Admin::BaseController to Admin::BaseController
2020-11-27 16:13:55 +11:00
Icker
55b21310e4 Added introductory information for testing. 2020-11-25 09:44:02 -08:00
Transifex-Openfoodnetwork
1266a37ac5 Updating translations for config/locales/en_NZ.yml 2020-11-25 05:39:17 +11:00
Transifex-Openfoodnetwork
54feb2f57d Updating translations for config/locales/en_AU.yml 2020-11-24 07:31:32 +11:00
Transifex-Openfoodnetwork
e9eb90507e Updating translations for config/locales/ca.yml 2020-11-24 07:22:28 +11:00
Transifex-Openfoodnetwork
ee44159c83 Updating translations for config/locales/es.yml 2020-11-24 07:19:47 +11:00
Transifex-Openfoodnetwork
8861f5c6aa Updating translations for config/locales/ca.yml 2020-11-24 07:19:18 +11:00
Matt-Yorkley
b089404891 Merge pull request #6362 from coopdevs/remove-unused-truncate-html-gem
Remove unused truncate_html gem
2020-11-23 00:49:34 +01:00
Matt-Yorkley
2fa2a30c67 Add spec coverage, refactor, avoid double-render errors
👍
2020-11-22 18:37:31 +00:00
Matt-Yorkley
cabec7e73f Fix Rubocop warnings and tidy up 2020-11-22 18:02:54 +00:00
Matt-Yorkley
87df44764f Extract stock-check logic to controller concern and inject prior to final Paypal payment confirmation. 2020-11-22 18:02:52 +00:00
Andy Brett
8f25568530 Merge pull request #6390 from jhsu802701/qtest
SIMPLE: added scripts for running test suite in quiet mode
2020-11-20 12:15:04 -08:00
Andy Brett
b1b422b90e fix/silence rubocop styles 2020-11-20 10:41:31 -08:00
Andy Brett
cd94b23277 fix rubocop styles 2020-11-20 10:35:02 -08:00
Andy Brett
4e155641fc fix nil error if no proxy orders found 2020-11-20 10:32:48 -08:00
Andy Brett
85d99f3bf2 Merge branch 'master' into controllers 2020-11-20 08:12:03 -08:00
Andy Brett
c6b3a615f1 Merge pull request #6385 from jhsu802701/update_db_schema
SIMPLE: updated db/schema.rb with 'bundle exec rake db:migrate'
2020-11-20 08:03:27 -08:00
Matt-Yorkley
5429bd8d7a Update all locales with the latest Transifex translations 2020-11-19 23:13:09 +00:00
Matt-Yorkley
300e87648b Merge pull request #6394 from openfoodfoundation/transifex
Transifex
2020-11-20 00:11:03 +01:00
Matt-Yorkley
4a9ac62d91 Merge branch 'master' into transifex 2020-11-20 00:10:48 +01:00
Luis Ramos
d7a1d7769c Merge pull request #6258 from luisramos0/s3_with_region
Upgrade aws-sdk and switch to S3 virtual host style URLs
2020-11-19 22:59:57 +00:00
Transifex-Openfoodnetwork
cd20d2612d Updating translations for config/locales/cy.yml 2020-11-19 22:09:04 +11:00
Transifex-Openfoodnetwork
446007e283 Updating translations for config/locales/cy.yml 2020-11-19 22:05:56 +11:00
Transifex-Openfoodnetwork
7bc59512fd Updating translations for config/locales/cy.yml 2020-11-19 22:02:49 +11:00
Pau Pérez Fabregat
8c9960854f Merge pull request #6343 from Matt-Yorkley/api-controllers
API controllers: strong paramaters
2020-11-19 09:04:16 +01:00
Matt-Yorkley
242c1a2715 Add new Paypal feature spec 2020-11-19 01:44:53 +00:00
Matt-Yorkley
21d67a0723 Extract some more paypal-specific test code to new helper 2020-11-19 01:44:38 +00:00
Jason Hsu
59b3bfa161 Added scripts for running test suite in quiet mode and updated docker/README.md 2020-11-18 16:25:03 -06:00
Transifex-Openfoodnetwork
9fc3ff0250 Updating translations for config/locales/en_GB.yml 2020-11-19 05:14:36 +11:00
Transifex-Openfoodnetwork
7ddbc10c19 Updating translations for config/locales/en_GB.yml 2020-11-19 05:11:27 +11:00
Matt-Yorkley
41a5787830 Extract paypal response stubbing to helper 2020-11-18 15:39:01 +00:00
Matt-Yorkley
010c1c799d Add some notes on paypal checkout flow 2020-11-18 14:55:29 +00:00
Matt-Yorkley
2faea65f82 Bring in Spree::PaypalController#confirm method
Original method from the gem. This handles the post-payment response from paypal.
2020-11-18 14:51:23 +00:00
Matt-Yorkley
dd8f139c1b Memoize Spree::PaypalController#payment_method
This gets called 4 or 5 times in a single request just to read basic attributes from the object. The query doesn't need to be repeated each time
2020-11-18 13:45:14 +00:00
Matt-Yorkley
6d0d4b5096 Bring in Spree::PaypalController#payment_method
Original method from the gem. Modified in preceding commit.
2020-11-18 13:45:13 +00:00
Matt-Yorkley
b0a70f0ba3 Improve TaxonController strong params handling 2020-11-17 19:48:27 +00:00
Matt-Yorkley
0b18b0dc0a Include Calculator attributes in PaymentMethod nested attributes and DRY repeated code 2020-11-17 19:04:26 +00:00
Matt-Yorkley
d225294b6b Extract to PermittedAttributes::Calculator 2020-11-17 18:51:48 +00:00
Matt-Yorkley
3547b9fe56 Add missing calculator params 2020-11-17 18:51:48 +00:00
Matt-Yorkley
1766f33d46 Use ActionController::Metal and include StrongParameters 2020-11-17 18:51:48 +00:00
Matt-Yorkley
cbdb6126a6 Fix strong_params in API enterprises_controller 2020-11-17 18:51:48 +00:00
Matt-Yorkley
6a26c9da8c Fix strong_params in API products_controller 2020-11-17 18:51:48 +00:00
Matt-Yorkley
36f4f40e84 Refactor and fix PaymentMethod strong params 2020-11-17 18:51:48 +00:00
Matt-Yorkley
787f29105c Fix ForbiddenAttribute errors for bulk update of enterprise fees and order cycles
Example error:
As an administrator
    I want to manage simple order cycles
 updating many order cycle opening/closing times at once
     Failure/Error: raise ActiveModel::ForbiddenAttributesError, params.to_s

     ActiveModel::ForbiddenAttributesError:
       {"order_cycle_set"=>{"collection_attributes"=>{"0"=>{"id"=>62, "name"=>"Updated Order Cycle 1", "orders_open_at"=>"2040-12-01 12:00:00", "orders_close_at"=>"2040-12-01 12:00:01"}, "1"=>{"id"=>63, "name"=>"Updated Order Cycle 2", "orders_open_at"=>"2040-12-01 12:00:02", "orders_close_at"=>"2040-12-01 12:00:03"}, "2"=>{"id"=>64, "name"=>"Updated Order Cycle 3", "orders_open_at"=>"2040-12-01 12:00:04", "orders_close_at"=>"2040-12-01 12:00:05"}}}, "controller"=>"admin/order_cycles", "action"=>"bulk_update", "format"=>"json", "order_cycle"=>{}}
     # ./app/controllers/application_controller.rb:20:in `print_params'
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
     # ------------------
     # --- Caused by: ---
     # ActiveModel::ForbiddenAttributesError:
     #   ActiveModel::ForbiddenAttributesError
     #   ./app/models/model_set.rb:29:in `block in collection_attributes='
2020-11-17 18:51:48 +00:00
Matt-Yorkley
642a294844 Fix broken order edit shipment
As an administrator
    I want to create and edit orders
 as an enterprise manager viewing the edit page with different shipping methods can edit shipping method
     Failure/Error: expect(page).to have_content "Shipping: #{different_shipping_method_for_distributor1.name}"
       expected to find text "Shipping: Different" in "Logged in as : owen@romaguera.ca Account Logout Store DASHBOARD PRODUCTS ORDER CYCLES ORDERS REPORTS ENTERPRISES CUSTOMERS Order # R813516688 CANCEL ACTIONS BACK TO ORDER LIST John Doe - ADD PRODUCT NAME OR SKU (ENTER AT LEAST FIRST 4 CHARACTERS OF PRODUCT NAME) Select a variant 100 - PENDING ITEM DESCRIPTION PRICE QUANTITY TOTAL Product #3 - 9924 - 1g, S $10.00 1 x none $10.00 Product #4 - 5548 - 1g, S $10.00 1 x none $10.00 Product #5 - 8080 - 1g, S $10.00 1 x none $10.00 Product #6 - 3591 - 1g, S $10.00 1 x none $10.00 Product #7 - 6461 - 1g, S $10.00 1 x none $10.00 Product #8 - 4071 - 1g, S $110.00 1 x none $110.00 SHIPPING METHOD Different $0.00 Normal $0.00 Different $0.00 Tracking: U10000 LINE ITEM ADJUSTMENTS NAME AMOUNT Tax 1 10.0%: $10.00 ORDER ADJUSTMENTS NAME AMOUNT Transaction fee: $0.00 ORDER TOTAL $160.00 DISTRIBUTION Distributor: Enterprise 4 Order cycle: Order Cycle 2 UPDATE AND RECALCULATE FEES or BACK ORDER INFORMATION STATUS COMPLETE TOTAL : $160.00 SHIPMENT : PENDING PAYMENT : BALANCE DUE DATE COMPLETED : November 08, 2020 1:51 AM ORDER DETAILS CUSTOMER DETAILS ADJUSTMENTS PAYMENTS RETURN AUTHORIZATIONS"
     # ./spec/features/admin/order_spec.rb:291:in `block (5 levels) in <top (required)>'
2020-11-17 18:51:48 +00:00
Matt-Yorkley
7401e34c52 Fix credit cards strong params 2020-11-17 18:51:48 +00:00
Matt-Yorkley
ca41bbcee7 Fix Api::VariantsController ForbiddenAttributesError 2020-11-17 18:51:48 +00:00
Matt-Yorkley
c374bf5e49 Fix strong_params in API taxons_controller 2020-11-17 18:51:48 +00:00
Matt-Yorkley
417c4d9aea Inherit from ActionController::Base in API Controllers 2020-11-17 18:51:48 +00:00
Jason Hsu
b85f8d4b45 Updated db/schema.rb with 'bundle exec rake db:migrate' 2020-11-16 18:23:00 -06:00
Maikel Linke
315a5f0fd9 Update translations 2020-11-17 10:17:08 +11:00
Transifex-Openfoodnetwork
4ca8c220e9 Updating translations for config/locales/fr_CA.yml 2020-11-17 09:06:27 +11:00
Transifex-Openfoodnetwork
442dbaa7d7 Updating translations for config/locales/en_CA.yml 2020-11-17 08:49:15 +11:00
Matt-Yorkley
c080c1f1d6 Merge pull request #6382 from Matt-Yorkley/menu-fix
Fix the user menu
2020-11-16 22:20:12 +01:00
Matt-Yorkley
3b92df42c3 Fix the menu!
🙈
2020-11-16 19:05:08 +00:00
Matt-Yorkley
e2dbb150e5 Update all locales with the latest Transifex translations 2020-11-16 16:02:40 +00:00
Luis Ramos
ca29604ff8 Merge pull request #6377 from luisramos0/repeat_calculator_migrations
Repeat calculator migrations to clean up existing data
2020-11-16 10:46:42 +00:00
Transifex-Openfoodnetwork
57bc146de9 Updating translations for config/locales/it.yml 2020-11-14 21:08:20 +11:00
dependabot-preview[bot]
66799bad46 Bump webmock from 3.9.5 to 3.10.0
Bumps [webmock](https://github.com/bblimke/webmock) from 3.9.5 to 3.10.0.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.9.5...v3.10.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-13 19:16:37 +00:00
Luis Ramos
e5b7c036d5 Repeat calculator migrations to clean up existing data 2020-11-13 16:35:22 +00:00
Pau Pérez Fabregat
6f1d8664ac Merge pull request #6355 from coopdevs/install-gems-on-docker-boot
Install any missing gems when booting docker
2020-11-13 13:32:27 +01:00
Pau Pérez Fabregat
8d5e90e40f Merge pull request #6365 from Matt-Yorkley/mail-settings
Allow mail_auth_type to be set
2020-11-13 13:30:17 +01:00
Pau Pérez Fabregat
6db80e837b Merge pull request #6361 from andrewpbrett/fix-gateway-error-error
move gateway_error require to lib/spree/core.rb
2020-11-13 13:15:13 +01:00
Matt-Yorkley
cec295a113 Merge pull request #6373 from andrewpbrett/fix-admin-users
specify Spree routes for pagination, fix 500 on admin/users
2020-11-13 11:30:16 +01:00
Maikel Linke
a553547403 Update translations 2020-11-13 14:15:45 +11:00
Maikel
1e4edc671a Merge pull request #6364 from openfoodfoundation/transifex
Transifex
2020-11-13 14:05:12 +11:00
Maikel
b2113c96a2 Merge pull request #6317 from openfoodfoundation/dependabot/bundler/kaminari-0.17.0
Bump kaminari from 0.14.1 to 0.17.0
2020-11-13 13:58:25 +11:00
Maikel
408103516e Merge pull request #6321 from openfoodfoundation/dependabot/bundler/awesome_nested_set-3.2.1
Bump awesome_nested_set from 3.0.3 to 3.2.1
2020-11-13 13:30:18 +11:00
Maikel
d96216b8d7 Merge pull request #6268 from yihyang/master-yy-added-product-sorting
Sort products alphabetically in OC edit/create page
2020-11-13 13:29:54 +11:00
Maikel
d4ff9055c0 Merge pull request #6351 from efgalvao/issue#6249
Fixes Issue#6249
2020-11-13 13:28:55 +11:00
Maikel
591ba34eb6 Merge pull request #6335 from cillian/reset-on-demand-on-inventory-import
When resetting stock to 0 on absent products in inventory import also reset the on demand setting
2020-11-13 13:28:17 +11:00
Andy Brett
8dfd3f624d paginate zones using spree routes as well 2020-11-12 14:24:04 -08:00
Andy Brett
9cf30b431a specify Spree routes for pagination 2020-11-12 14:09:59 -08:00
Pau Pérez Fabregat
777cedd90d Merge pull request #6305 from efgalvao/issue#6292
Fixed issue #6292.
2020-11-12 17:42:42 +01:00
Transifex-Openfoodnetwork
b80d15b672 Updating translations for config/locales/pt_BR.yml 2020-11-13 02:43:56 +11:00
Transifex-Openfoodnetwork
228c7cc13a Updating translations for config/locales/pt_BR.yml 2020-11-13 02:40:55 +11:00
Pau Pérez Fabregat
7c4691ab33 Merge pull request #6339 from andrewpbrett/fix-instance-unit-picker
Fix #6304 (Product edit: Cannot change Variant unit scale of an existing product)
2020-11-12 16:15:00 +01:00
Matt-Yorkley
3d4f0ebb7b Ensure variants don't end up with invalid data when a product's variant_unit is changed
Fixes an issue where a product's variant_unit value is changed from "weight" to "items" and some of the product's variants can be left in an invalid state, which in turn breaks cloning of order cycles (with fatal errors).
2020-11-11 20:24:21 +00:00
Pau Pérez Fabregat
692adb0113 Merge pull request #6336 from coopdevs/fix-shop-layout
Fix .top-bar-section not to wrap the icons-menu
2020-11-11 17:29:53 +01:00
Matt-Yorkley
58e34b5ad6 Allow mail_auth_type to be set 2020-11-11 15:51:08 +00:00
Transifex-Openfoodnetwork
694bc6a598 Updating translations for config/locales/ar.yml 2020-11-12 02:18:05 +11:00
Transifex-Openfoodnetwork
e06b82f335 Updating translations for config/locales/ar.yml 2020-11-12 02:14:55 +11:00
Pau Perez
f9869d4360 Remove unused truncate_html gem
It seems that we don't use this gem in OFN. It was used in Spree in
https://github.com/openfoodfoundation/spree/blob/2-1-0-stable/core/app/helpers/spree/orders_helper.rb
to truncate the product description. We don't because we show it in
the product modal, and there's no trace of that helper method in our
codebase nor I see the gem used at all.
2020-11-11 13:18:23 +01:00
Matt-Yorkley
1cad631bdb Replace secret_token and update comments
`secret_token` is apparently still called directly in other places...
2020-11-11 01:30:52 +00:00
Andy Brett
17202ff39c move gateway_error require to lib/spree/core.rb 2020-11-10 14:55:56 -08:00
Luis Ramos
5d93180081 Move subs tasks into subs:test namespace 2020-11-10 22:03:36 +00:00
Luis Ramos
fdfc0b330f Remove some duplicated code 2020-11-10 22:03:36 +00:00
Luis Ramos
63d62d7ce4 Improve subs task by making it handle open and close times of the Order Cycle being tested 2020-11-10 22:03:36 +00:00
Luis Ramos
51451292bd Add task to closse OC and confirm orders 2020-11-10 22:03:36 +00:00
Luis Ramos
2bb22fb7f4 Add task to reset Orders inside a specific Order Cycle by repeating the
placement job
2020-11-10 22:03:36 +00:00
Luis Ramos
5289a5b381 Add namespace to all sample data factories
These factories are not used in testing and this way we avoid collisions on the root namespace as it was happening already with OrderFactory
2020-11-10 22:03:36 +00:00
Matt-Yorkley
03d49c7987 Update secret key base
`secret_token` is no longer used in Rails 4+
2020-11-10 20:46:15 +00:00
Andy Brett
d5037abbe7 add specs for new/edit product pages 2020-11-10 10:49:14 -08:00
Pau Perez
5ddfc54b2b Install any missing gems when booting docker
This runs `bundle install` if there are any missing gems when booting
the containers. `bundle check` ensures we don't unnecessarily run
`bundle install`, which is rather slow.

This avoids having to build the entire image (painfully slow) or having
to bring up a container just to install the gems. I used to do this
with `docker-compose run --rm web bundle install`.
2020-11-10 18:08:34 +01:00
Pau Pérez Fabregat
bea8982085 Merge pull request #6329 from openfoodfoundation/transifex
Transifex
2020-11-10 17:37:00 +01:00
Pau Pérez Fabregat
fc06cc242b Merge pull request #6210 from ipalo/feature/update-docker-image-to-ubuntu-20-04
Update the base Ubuntu Docker image from 18.04 to 20.04
2020-11-10 17:30:03 +01:00
Pau Pérez Fabregat
b70c349b05 Merge pull request #6352 from openfoodfoundation/dependabot/bundler/webmock-3.9.5
Bump webmock from 3.9.4 to 3.9.5
2020-11-10 16:47:44 +01:00
Pau Perez
634ab5ca6a Don't scale logo image
The trick using `width: 100%` and a set `max-width` doesn't work if we
can't know the image width as it can be uploaded by superadmins. There's
no need though because the media query breakpoint triggers just before that.
2020-11-10 09:51:41 +01:00
Matt-Yorkley
a802fe29be Fix typo in initializer 2020-11-10 00:07:06 +00:00
Luis Ramos
88ac5dc955 Fix rubocop issues by refactoring code 2020-11-10 00:03:34 +00:00
Luis Ramos
e879aa1bed Switch to s3_alias_url that enabble virtual host type of path 2020-11-10 00:03:33 +00:00
Luis Ramos
94a815a9ef Upgrade aws-sdk and set s3 host name using the provided url config.
This will enable us to set hostnames with the s3 region defined and that
will make our image upload work for all s3 regions.
2020-11-10 00:03:33 +00:00
Luis Ramos
c7c5a95407 Merge pull request #6345 from Matt-Yorkley/flaky-oc-spec
Improve flaky order cycle spec
2020-11-09 21:59:41 +00:00
dependabot-preview[bot]
1825c90a5f Bump webmock from 3.9.4 to 3.9.5
Bumps [webmock](https://github.com/bblimke/webmock) from 3.9.4 to 3.9.5.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.9.4...v3.9.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-09 19:14:30 +00:00
efgalvao
307b1ca9f9 Fixes Issue#6249 2020-11-09 14:06:37 -03:00
Pau Perez
17abb3e345 Fix feature specs
The underlying markup and CSS changed but the tests did not.
2020-11-09 15:43:54 +01:00
Pau Perez
1903c575ff Reorder properties alphabetically
As Hound demands.
2020-11-09 15:40:25 +01:00
Pau Perez
9a885173b9 Remove element from class selector
Fixes Hound error `Avoid qualifying class selectors with an element.`.
2020-11-09 15:39:09 +01:00
Transifex-Openfoodnetwork
3167e5ae2b Updating translations for config/locales/ru.yml 2020-11-10 01:29:44 +11:00
Transifex-Openfoodnetwork
7f968b2b10 Updating translations for config/locales/ru.yml 2020-11-10 01:26:34 +11:00
Transifex-Openfoodnetwork
b08299e83a Updating translations for config/locales/ru.yml 2020-11-10 01:23:23 +11:00
Matt-Yorkley
d9e2a80a4f Improve flaky order cycle spec
There are various points in this spec where content is dynamically added to the DOM, but Capybara is jumping ahead to start interacting with it before it as actually finished loading.
2020-11-09 11:26:12 +00:00
dependabot-preview[bot]
863702ed4b Bump awesome_nested_set from 3.0.3 to 3.2.1
Bumps [awesome_nested_set](https://github.com/collectiveidea/awesome_nested_set) from 3.0.3 to 3.2.1.
- [Release notes](https://github.com/collectiveidea/awesome_nested_set/releases)
- [Changelog](https://github.com/collectiveidea/awesome_nested_set/blob/master/CHANGELOG)
- [Commits](https://github.com/collectiveidea/awesome_nested_set/commits/v3.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-07 08:58:44 +00:00
Luis Ramos
6114dfb4ef Merge pull request #6337 from openfoodfoundation/dependabot/bundler/webmock-3.9.4
Bump webmock from 3.9.3 to 3.9.4
2020-11-07 08:57:13 +00:00
Luis Ramos
f39008f3d3 Merge pull request #6338 from openfoodfoundation/dependabot/bundler/highline-2.0.3
Bump highline from 1.6.18 to 2.0.3
2020-11-07 08:57:02 +00:00
Andy Brett
99301e1fb2 fix #6304 2020-11-06 12:49:07 -08:00
dependabot-preview[bot]
cb0b7ed030 Bump highline from 1.6.18 to 2.0.3
Bumps [highline](https://github.com/JEG2/highline) from 1.6.18 to 2.0.3.
- [Release notes](https://github.com/JEG2/highline/releases)
- [Changelog](https://github.com/JEG2/highline/blob/master/Changelog.md)
- [Commits](https://github.com/JEG2/highline/commits/v2.0.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-06 19:17:11 +00:00
dependabot-preview[bot]
7d9948f5b6 Bump webmock from 3.9.3 to 3.9.4
Bumps [webmock](https://github.com/bblimke/webmock) from 3.9.3 to 3.9.4.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.9.3...v3.9.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-06 19:14:43 +00:00
Transifex-Openfoodnetwork
18a7bdc631 Updating translations for config/locales/de_DE.yml 2020-11-07 05:32:48 +11:00
Transifex-Openfoodnetwork
6083d61ba7 Updating translations for config/locales/de_DE.yml 2020-11-07 05:29:38 +11:00
Transifex-Openfoodnetwork
9e2054dcd4 Updating translations for config/locales/de_DE.yml 2020-11-07 05:26:28 +11:00
Pau Perez
b5f27d48df Fix .top-bar-section not to wrap the icons-menu
This line-wrap makes the icons-menu overlap the OC selector. The menu's
background is transparent, what makes it look even more broken.

The fix involves refactoring the `.top-bar-section` into using flexbox
instead of this highly coupled CSS and floats. With flexbox it becomes
as easy as telling the browser to space the three sections evenly
filling-up the window, while scaling down the logo if there's not enough
room.

The root cause is that every instance uses a custom logo, which wasn't
the one we used while designing and implementing. This is why using
fixed-sizes in pixels won't work.
2020-11-06 17:35:24 +01:00
Cillian O'Ruanaidh
89d63dfbb9 When resetting stock to 0 on absent products in inventory import also reset the on demand setting
Before when you imported inventory and clicked the 'Set stock to zero for all existing products not present in the file' option it would set the on hand stock to 0 but if the variant override was also set to be on demand the inventory would still be available for sale. This change makes sure the on demand setting is turned off too.

Fixes #6289.
2020-11-06 14:57:31 +00:00
Matt-Yorkley
73995d1aff Merge pull request #6334 from Matt-Yorkley/hound2
Switch to rubocop_styleguide.yml as style source
2020-11-06 12:55:23 +01:00
Matt-Yorkley
f5a9c6f3f4 Switch to rubocop_styleguide.yml as style source 2020-11-06 11:53:56 +00:00
Matt-Yorkley
f6aeb04b14 Merge pull request #6322 from Matt-Yorkley/hound
Add HoundCI config
2020-11-06 12:20:03 +01:00
Matt-Yorkley
00320e4387 Use .scss-lint.yml with HoundCI 2020-11-06 10:18:35 +00:00
Matt-Yorkley
ebd7409f70 Add scss-lint configs to .scss-lint.yml 2020-11-06 10:18:34 +00:00
Transifex-Openfoodnetwork
e86d84e10f Updating translations for config/locales/en_FR.yml 2020-11-06 19:26:16 +11:00
Transifex-Openfoodnetwork
b7a503a848 Updating translations for config/locales/fr.yml 2020-11-06 19:26:04 +11:00
Luis Ramos
28570cded2 Update all locales with the latest Transifex translations 2020-11-06 04:20:08 +00:00
Luis Ramos
c0bb9aad5e Merge pull request #6286 from openfoodfoundation/transifex
Transifex
2020-11-06 04:18:56 +00:00
Luis Ramos
b281e7e9e5 Merge pull request #6312 from mkllnk/variant-override-loading
Avoid loading variant overrides for no reason
2020-11-06 03:59:33 +00:00
Matt-Yorkley
3011bdb87d Add HoundCI config 2020-11-06 00:27:32 +00:00
Matt-Yorkley
66b531ddf6 Merge pull request #6310 from luisramos0/acts_as_list
Bump acts_as_list to 0.3.0
2020-11-05 23:03:02 +01:00
Transifex-Openfoodnetwork
213f3cf072 Updating translations for config/locales/ar.yml 2020-11-06 07:43:38 +11:00
Transifex-Openfoodnetwork
e1962419c2 Updating translations for config/locales/ar.yml 2020-11-06 07:40:32 +11:00
Transifex-Openfoodnetwork
bb6f5cb3a7 Updating translations for config/locales/en_US.yml 2020-11-06 07:06:15 +11:00
dependabot-preview[bot]
2d90fa4723 Bump kaminari from 0.14.1 to 0.17.0
Bumps [kaminari](https://github.com/kaminari/kaminari) from 0.14.1 to 0.17.0.
- [Release notes](https://github.com/kaminari/kaminari/releases)
- [Changelog](https://github.com/kaminari/kaminari/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kaminari/kaminari/compare/v0.14.1...v0.17.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-05 19:15:53 +00:00
Matt-Yorkley
db3576f469 Merge pull request #6308 from luisramos0/translations
Fix some missing translations in orders edit page
2020-11-05 18:33:51 +01:00
Matt-Yorkley
c2362921fa Merge pull request #6272 from tsara27/fix-alignment-order
Align center order adjustment and order total title
2020-11-05 18:33:08 +01:00
Matt-Yorkley
0668dd2591 Merge pull request #6307 from efgalvao/issue#6262
Fixes issue #6262.
2020-11-05 18:31:49 +01:00
Matt-Yorkley
d8f9dead8b Merge pull request #6270 from Matt-Yorkley/paperclip-handlers
Remove Paperclip URL handlers
2020-11-05 18:29:20 +01:00
Matt-Yorkley
bc96ad9515 Merge pull request #6299 from Matt-Yorkley/admin-image-edit
Fix display issue in product image edit page
2020-11-05 18:28:10 +01:00
Luis Ramos
bd4da3b5ce Merge pull request #6247 from cillian/deep-munge-issue
Patch Rails :deep_munge issue so empty array parameters don't get converted to nil
2020-11-05 13:25:39 +00:00
Pau Pérez Fabregat
8e3f0d2152 Merge pull request #6134 from Matt-Yorkley/webmock-helper
Improve Webmock debugging
2020-11-05 13:11:02 +01:00
Pau Pérez Fabregat
1ea503ed5d Merge pull request #6306 from SerenaWhite/update-handbook-reference
Update reference to OFN Handbook in README.md
2020-11-05 13:05:39 +01:00
Transifex-Openfoodnetwork
719007ecb4 Updating translations for config/locales/es.yml 2020-11-05 22:57:29 +11:00
Transifex-Openfoodnetwork
bd06f898a3 Updating translations for config/locales/ca.yml 2020-11-05 22:55:21 +11:00
Transifex-Openfoodnetwork
246a1f368b Updating translations for config/locales/de_DE.yml 2020-11-05 21:59:09 +11:00
Transifex-Openfoodnetwork
f6443f00e5 Updating translations for config/locales/en_FR.yml 2020-11-05 19:23:26 +11:00
Transifex-Openfoodnetwork
fd52800d2c Updating translations for config/locales/fr.yml 2020-11-05 19:21:40 +11:00
Maikel Linke
4b1f5ae060 Avoid loading variant overrides for no reason 2020-11-05 14:31:19 +11:00
Transifex-Openfoodnetwork
31a34fc9d2 Updating translations for config/locales/en_NZ.yml 2020-11-05 10:00:28 +11:00
Transifex-Openfoodnetwork
3fc0d1bcb9 Updating translations for config/locales/en_NZ.yml 2020-11-05 09:57:27 +11:00
Luis Ramos
bb89557beb Bump acts_as_list to 0.3.0 2020-11-04 22:13:24 +00:00
Luis Ramos
0ae3bf985a Fix some missing translations in orders edit page 2020-11-04 21:54:27 +00:00
Luis Ramos
387326b9b4 Merge pull request #5978 from luisramos0/bye_bye_spree
Bye bye spree - final PR 🎉
2020-11-04 21:27:28 +00:00
Luis Ramos
cb80f67dc6 Merge pull request #5885 from luisramos0/variants
[Bye bye Spree] Bring models product, variant, price from spree_core
2020-11-04 21:26:07 +00:00
efgalvao
5260c01f16 Update registration.html.haml
Removed spaces.
2020-11-04 17:37:11 -03:00
Matt-Yorkley
3170db9532 Remove Paperclip URL handlers
See ofn-security issue #33 for details.
2020-11-04 16:49:01 +00:00
efgalvao
42d5f377e0 Fixes issue #6262. 2020-11-04 13:11:37 -03:00
Ren White
f513d888a3 Update reference to OFN handbook in README.md 2020-11-04 06:57:06 -07:00
Luis Ramos
5cde085241 Fix a number of spree translations 2020-11-04 13:55:36 +00:00
Luis Ramos
23956726e9 Add missing translation 2020-11-04 12:37:55 +00:00
efgalvao
1f1da3eb6d Fixed issue #6292. 2020-11-04 09:37:51 -03:00
Luis Ramos
f6d0905517 Add s3_support require to image.rb 2020-11-04 12:15:45 +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
3beea43143 Switch to a version of better_paypal_express that does not define
routes and define those routes on the OFN side
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
eada388534 Add handle_extensions to get Spree.translations (archaic spree js translations) in handlebars templates
This is all legacy from spree that can be cleaned up at some point, we only have two handlebars templates in OFN
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
5c4ea1a6be Fix tax rates spec 2020-11-04 12:15:45 +00:00
Luis Ramos
72c454a211 Fix reference to Spree bug 2020-11-04 12:15:45 +00:00
Luis Ramos
543a9592c7 Adapt spec to routes without spree 2020-11-04 12:15:45 +00:00
Luis Ramos
2ce96f4bbe Registration path is working correctly again without spree 2020-11-04 12:15:45 +00:00
Luis Ramos
00d121ebfc Add misssing translation 2020-11-04 12:15:45 +00:00
Luis Ramos
c785d0d1d7 Make engine's routes append to main app instead of prepend 2020-11-04 12:15:45 +00:00
Luis Ramos
80cbe6b30f Add route helper to call to sort_link so that it can find the necessary routes 2020-11-04 12:15:45 +00:00
Luis Ramos
09aef524f3 Make route helpers use spree helper 2020-11-04 12:15:45 +00:00
Luis Ramos
805b4d243e Fix missing translations 2020-11-04 12:15:45 +00:00
Luis Ramos
a07029f660 Add require so that model is available when needed 2020-11-04 12:15:45 +00:00
Luis Ramos
ccab133d63 Make sample data use OFN's calculators 2020-11-04 12:15:45 +00:00
Luis Ramos
a51645f316 Remove deleted file 2020-11-04 12:15:45 +00:00
Luis Ramos
4125fe1690 Fix problem with string matchers 2020-11-04 12:15:45 +00:00
Luis Ramos
6950d7717f Add missing translation 2020-11-04 12:15:45 +00:00
Luis Ramos
ab53db0c61 Merge ability and ability decorator 2020-11-04 12:15:45 +00:00
Luis Ramos
1b4a4a8113 Bring code from spree_paypal_express to make it use spree url_helper 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
79a7cf9b39 Add default spree logo 2020-11-04 12:15:45 +00:00
Luis Ramos
a18a198812 Fix locations of requires in admin js all.js 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
b7aa04353c Fix requires of product duplicator 2020-11-04 12:15:45 +00:00
Luis Ramos
bfeebccbc5 Load Spree engine before configuring it 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
Luis Ramos
9bbeec5031 Require code from spree/core explicitly 2020-11-04 12:15:45 +00:00
Luis Ramos
af3057f55f Remove spree requires that are not needed in OFN 2020-11-04 12:15:45 +00:00
Luis Ramos
e8381304f9 Remove spree_core dependency 2020-11-04 12:15:45 +00:00
Luis Ramos
58a476751b Remove code from the spree engine that is not needed in OFN 2020-11-04 12:15:45 +00:00
Luis Ramos
3320a3f0bc Fix some more rubocop issues 2020-11-04 12:15:45 +00:00
Luis Ramos
4c6708267a Run rubocop -a 2020-11-04 12:15:45 +00:00
Luis Ramos
2f0d61d54f Bring Spree engine.rb from spree_core 2020-11-04 12:15:45 +00:00
Luis Ramos
451d8488d9 Run rubocop -a 2020-11-04 12:15:45 +00:00
Luis Ramos
bcca2eee9d Bring user and ability related files from spree_core 2020-11-04 12:15:45 +00:00
Luis Ramos
1bce516a45 Make specs load product duplicator
This makes the ofn version of the product duplicator be used instead of the spree one
2020-11-04 12:15:45 +00:00
Luis Ramos
f6195f1159 Remove duplicate_extra logic from ProductDuplicator 2020-11-04 12:15:23 +00:00
Luis Ramos
503c17f896 Move Spree::ProductDuplicator to Spree::Core namespace 2020-11-04 12:15:23 +00:00
Luis Ramos
795b7101ab Remove spree requires that are not needed in OFN 2020-11-04 12:15:23 +00:00
Luis Ramos
9d4a15b0e0 Add required product scopes from spree_core product_scopes 2020-11-04 12:15:23 +00:00
Luis Ramos
459959c068 Remove code related to spree promotions 2020-11-04 12:15:23 +00:00
Luis Ramos
ba16de6627 Move product duplicator to lib/spree/core, it's where spree_core is currently loading it from 2020-11-04 12:15:23 +00:00
Luis Ramos
72a39fdf54 Add required factory from spree_core 2020-11-04 12:15:23 +00:00
Luis Ramos
4b8515358c Remove reference to FactoryGirl, it's FactoryBot that is used in OFN 2020-11-04 12:15:23 +00:00
Luis Ramos
cf7d8067df Fix easy rubocop issues 2020-11-04 12:15:23 +00:00
Luis Ramos
d4e4669e49 Run transpec 2020-11-04 12:15:23 +00:00
Luis Ramos
e9f76cb339 Remove some dead code (Config.track_inventory_levels), remove variant.cost_price= so that localized number is seen, and fix specs 2020-11-04 12:15:23 +00:00
Luis Ramos
b68c5ee0f9 Remove dead code (prototypes) and fix specs 2020-11-04 12:15:23 +00:00
Luis Ramos
072cd2bd54 Run rubocop autocorrect in specs 2020-11-04 12:15:23 +00:00
Luis Ramos
2f8198eecc Fix some easy rubocop issues 2020-11-04 12:15:23 +00:00
Luis Ramos
f85044e035 Run rubocop autocorrect 2020-11-04 12:15:23 +00:00
Luis Ramos
751beceb34 Merge decorators with original spree files 2020-11-04 12:15:23 +00:00
Luis Ramos
8cb75fc6d8 Bring models from spree_core: Spree::Product and Spree::Variant!
EPIC COMMIT ALERT :-)
2020-11-04 12:15:23 +00:00
Matt-Yorkley
d147996af6 Fix display issue in product image edit page 2020-11-03 18:41:09 +00:00
Transifex-Openfoodnetwork
daff0a250c Updating translations for config/locales/pt_BR.yml 2020-11-04 03:32:20 +11:00
Transifex-Openfoodnetwork
65bccb9236 Updating translations for config/locales/ru.yml 2020-11-03 20:36:52 +11:00
Transifex-Openfoodnetwork
efe5a4700a Updating translations for config/locales/en_FR.yml 2020-11-03 19:13:11 +11:00
Transifex-Openfoodnetwork
0103cc3a2f Updating translations for config/locales/fr.yml 2020-11-03 19:13:06 +11:00
Transifex-Openfoodnetwork
2a2c7bdc4e Updating translations for config/locales/es.yml 2020-11-03 08:49:53 +11:00
Transifex-Openfoodnetwork
ad76f3e91e Updating translations for config/locales/ca.yml 2020-11-03 08:48:11 +11:00
Pau Pérez Fabregat
201c9c109d Merge pull request #6281 from Matt-Yorkley/missing-translation-ordering
Add missing translation key for enterprise taxon ordering
2020-11-02 22:15:43 +01:00
Pau Pérez Fabregat
4911bb6613 Merge pull request #6274 from luisramos0/rubocop
Use rubocop auto correct to fix a number of issues
2020-11-02 22:13:36 +01:00
Luis Ramos
c07215552e Add log entries to log 2020-11-02 20:59:57 +00:00
Luis Ramos
2b01c80c54 Add subs debug task that prints out basic info about a specific Order Cycle 2020-11-02 20:59:57 +00:00
Pau Pérez Fabregat
9de74500cd Merge pull request #6288 from andrewpbrett/fix-cookies-banner
update template path for cookies banner, fix #6284
2020-11-02 20:52:46 +01:00
Andy Brett
04f5249176 update template path for cookies banner, fix #6284 2020-11-02 07:45:30 -08:00
Transifex-Openfoodnetwork
5c81f645c9 Updating translations for config/locales/fr.yml 2020-11-02 20:38:38 +11:00
Transifex-Openfoodnetwork
6ff8cadb26 Updating translations for config/locales/en_FR.yml 2020-11-02 20:27:13 +11:00
Transifex-Openfoodnetwork
04358dfa39 Updating translations for config/locales/en_FR.yml 2020-11-02 20:24:09 +11:00
Transifex-Openfoodnetwork
b23d6674b5 Updating translations for config/locales/ru.yml 2020-11-02 18:59:12 +11:00
Transifex-Openfoodnetwork
8904273bea Updating translations for config/locales/ru.yml 2020-11-02 18:56:03 +11:00
Luis Ramos
1bb7fd9ec8 Merge pull request #6280 from Matt-Yorkley/eastern-slavic-plurals
Add missing translation keys for Eastern Slavic plurals
2020-10-31 23:13:54 +00:00
Matt-Yorkley
0af20e48b0 Add missing translation key for enterprise taxon ordering 2020-10-31 19:17:19 +00:00
Matt-Yorkley
bc40088eaf Add missing translation keys for Eastern Slavic plurals
There are multiple forms of pluralisation here, with different translations for each.

перевод сложен !
2020-10-31 16:58:15 +00:00
Luis Ramos
fa77204e14 Adapt spec to the move of the controller, in prod the call to request.env['PATH_INFO'] will work correctly 2020-10-31 10:44:19 +00:00
Luis Ramos
af713385d8 Add frozen string literal 2020-10-31 10:16:37 +00:00
Luis Ramos
c9972189d0 Change usage of Spree::Admin::BaseController to Admin::BaseController 2020-10-31 09:56:59 +00:00
Luis Ramos
eb07a91acb Adapt code from Spree::Admin::BaseController to Admin::BaseController 2020-10-31 09:52:34 +00:00
Luis Ramos
66ba9ff73d Move Spree::Admin::BaseController to Admin::BaseController 2020-10-31 09:51:37 +00:00
Pau Perez
1abdd0112e Update all locales with the latest Transifex translations 2020-10-31 10:46:12 +01:00
Pau Pérez Fabregat
bc6ffe3b0c Merge pull request #6242 from openfoodfoundation/transifex
Transifex
2020-10-31 10:36:12 +01:00
Luis Ramos
eea73aa989 Merge pull request #5919 from luisramos0/injector_refactor_for_rails41
[Rails 4.1, works in master] Convert relations with to_a so that they work in rails 4.1
2020-10-31 09:33:27 +00:00
Pau Pérez Fabregat
03b0ce430d Merge branch 'master' into transifex 2020-10-31 10:05:27 +01:00
Luis Ramos
bfce012a4b Update manual rubocop todo 2020-10-30 17:56:13 +00:00
Luis Ramos
fb3dd0aa18 Update rubocop manual list for MethodLength and AbcSize cops 2020-10-30 17:46:49 +00:00
Luis Ramos
01320105ea Update rubocop_todo 2020-10-30 17:32:47 +00:00
Luis Ramos
c2c12b34f9 Fix more rubocop issues with auto correct 2020-10-30 17:10:23 +00:00
Luis Ramos
c71ebc38bb Fix Layout/ArgumentAlignment 2020-10-30 17:06:08 +00:00
Luis Ramos
4b03dec119 Update manual todo for Line Length 2020-10-30 17:01:38 +00:00
Luis Ramos
ca1373a366 Fix Style/RescueStandardError and Style/RegexpLiteral 2020-10-30 16:50:37 +00:00
Luis Ramos
b0e889be2a Fix Style/RandomWithOffset 2020-10-30 16:50:37 +00:00
Luis Ramos
b3196295e6 Fix Style/RaiseArgs 2020-10-30 16:50:37 +00:00
Luis Ramos
75cec3b606 Fix issue Style/HashSyntax 2020-10-30 16:50:37 +00:00
Luis Ramos
92417d849c Fix rubocop issue Rails/DynamicFindBy 2020-10-30 16:50:37 +00:00
Luis Ramos
bf5fcde885 Fix Lint/UnusedMethodArgument 2020-10-30 16:50:37 +00:00
Luis Ramos
40f8c785a2 Fix Lint/UnusedBlockArgument 2020-10-30 16:50:37 +00:00
Luis Ramos
403384dbb1 Fix rubocop isssues, trailing whitespaces and empty lines 2020-10-30 16:50:37 +00:00
Luis Ramos
c30cba8bfe Fix issue Layout/SpaceInsideHashLiteralBraces 2020-10-30 16:50:37 +00:00
Luis Ramos
e8138e8c23 Fix rubocop issues in models/payment_spec 2020-10-30 16:50:37 +00:00
Luis Ramos
4845cde20f Fix rubocop issue Layout/HashAlignment 2020-10-30 16:50:37 +00:00
Luis Ramos
a8265aff89 Fix rubocop issue Layout/FirstHashElementIndentation 2020-10-30 16:50:37 +00:00
Luis Ramos
9cb3b0b14a Fix rubocop issue Layout/FirstArrayElementIndentation 2020-10-30 16:50:37 +00:00
Luis Ramos
06433b1be3 Fix rubocop issue Layout/ExtraSpacing 2020-10-30 16:50:37 +00:00
Luis Ramos
d4c52ce122 Fix rubocop issue Layout/EmptyLinesAroundBlockBody 2020-10-30 16:50:37 +00:00
Luis Ramos
eb4e732c1a Fix rubocop issue Layout/EmptyLines 2020-10-30 16:50:37 +00:00
Luis Ramos
3fe2684270 Fix rubocop issue Layout/BlockAlignment 2020-10-30 16:50:37 +00:00
Luis Ramos
3e6e338e3d Fix rubocop issue Layout/ArgumentAlignment 2020-10-30 16:50:37 +00:00
Luis Ramos
ad14f7f9b0 Merge pull request #6203 from luisramos0/rubocop_fix
Fix ~80 rubocop issues in serializers/api/admin
2020-10-30 16:48:22 +00:00
Luis Ramos
7cc7c62232 Fix long lines 2020-10-30 16:14:39 +00:00
Luis Ramos
b6dc46a911 Fix rubocop issue by nesting module and class declarations
No file contents changed
2020-10-30 16:14:34 +00:00
Luis Ramos
0b70c67908 Merge pull request #5994 from openfoodfoundation/tcs_checkbox
Terms and Conditions checkbox on checkout
2020-10-30 15:10:06 +00:00
Luis Ramos
71a181341b Fix bug in terms_and_conditions_helper related to guest checkout where current_user is nil and T&Cs must be shown all the time 2020-10-30 15:09:13 +00:00
Luis Ramos
cf3f511f4d Add directive spec to validate the dialog template is loaded on element click 2020-10-30 15:09:13 +00:00
Luis Ramos
1d1067ebc1 Add coverage to T&Cs file opening on a new tab and also for the upload timestamp now displayed in the page 2020-10-30 15:09:13 +00:00
Luis Ramos
bd4d0ba5d3 Make the warning message work for first upload and for changes 2020-10-30 15:09:13 +00:00
Luis Ramos
3b682bc47f Add warning when uploading a file 2020-10-30 15:09:13 +00:00
Luis Ramos
be35f97622 Add tooltip icon to terms and conditions 2020-10-30 15:09:13 +00:00
Luis Ramos
ca79270ba3 Show T&Cs warning when uploading a new file 2020-10-30 15:09:13 +00:00
Luis Ramos
2cf7b1b36c Make label translatable 2020-10-30 15:09:13 +00:00
Luis Ramos
f7c07f492c Make TCs file input onoy accept pdf files 2020-10-30 15:09:13 +00:00
Luis Ramos
9f17e4fd8f Add upload timestamp to TCs upload form in enterprise business details 2020-10-30 15:09:13 +00:00
Luis Ramos
c980d22826 Make TCs link open in a new tab in the backoffice 2020-10-30 15:09:13 +00:00
Luis Ramos
ceee89fad0 Make Checkout form submit read terms_and_conditions_accepted from the checkout form checkbox 2020-10-30 15:09:13 +00:00
Luis Ramos
a942218708 Fix post checkout actions spec 2020-10-30 15:09:13 +00:00
Luis Ramos
26946ec102 Fix edge case and some specs in post checkout actions 2020-10-30 15:09:13 +00:00
Luis Ramos
dd31cbe014 Cover case where enterprise uploads new T&Cs file and customer has already accepted before 2020-10-30 15:09:13 +00:00
Luis Ramos
46733d0c0d Add feature spec to cover T&Cs ticked by default if customer has already accepted them 2020-10-30 15:09:13 +00:00
Luis Ramos
57a9d6e1e2 Make customer terms_and_conditions_accepted_at be set to current time
after a successful checkout
2020-10-30 15:09:13 +00:00
Luis Ramos
ad592785cf Rename methods to follwo ruby convention and improve readability 2020-10-30 15:09:13 +00:00
Luis Ramos
f3ba0ebdbb Move code to a new helper 2020-10-30 15:09:13 +00:00
Luis Ramos
4d64bf6ece Add column to customers table to register last time enterprise terms and
conditions were accepted so customer doesnt have to accept terms on all
checkouts but only when the enterprise updates the terms file
2020-10-30 15:09:13 +00:00
Luis Ramos
3c9c5862d1 Verify terms and conditions updated_at timestamp is touched every time the file name changes.
We will need this to check if user already accepted the terms and
conditions of this enterprise.
2020-10-30 15:08:26 +00:00
Luis Ramos
78a8f53d8d Change default translations to what's been requested on the issue 2020-10-30 15:08:26 +00:00
Luis Ramos
806c8b943d Move small class to label so that rule is actually applied 2020-10-30 15:08:26 +00:00
Luis Ramos
85096a997f Add a checkbox to checkout to tick for Terms and Conditions
Checkout button should be disabled if checkbox is not ticked
2020-10-30 15:08:26 +00:00
Transifex-Openfoodnetwork
19b6cb13f1 Updating translations for config/locales/pt_BR.yml 2020-10-31 01:36:45 +11:00
Transifex-Openfoodnetwork
dd228cc750 Updating translations for config/locales/ar.yml 2020-10-30 22:39:44 +11:00
Cillian O'Ruanaidh
5aa8c783b1 Use Rspec syntax instead of Test::Unit in ActionDispatch::Request spec. 2020-10-30 11:12:36 +00:00
Cillian O'Ruanaidh
5a66c855bc Add :frozen_string_literal magic comment and underscore prefix to unused block argument for Rubocop 2020-10-30 11:12:36 +00:00
Cillian O'Ruanaidh
ea3c456d3b Patch Rails :deep_munge issue so empty array parameters don't get converted to nil
Before people were unable to remove coordinator fees from an order cycle because Rails was converting the empty :coordinator_fee_ids array paramter into nil. This issue was introduced to Rails in v4.0.0.beta1 and isn't fixed until v5.0.0.beta1

Another way to fix this could be to do something like 'params[:coordinator_fee_ids] ||= []' but it seems like this issue could problems in other parts of the app so a more general fix might be better.

Fixes #6224
2020-10-30 11:12:36 +00:00
Luis Ramos
586e8a9abe Fix some more rubocop issues 2020-10-30 10:13:16 +00:00
Luis Ramos
1847b62cf4 Fix some rubocop issues 2020-10-30 10:12:56 +00:00
Luis Ramos
0618c9e4dd Fix line_items_decorator spec 2020-10-30 10:12:56 +00:00
Luis Ramos
d15301021a Rename inject_json_list to inject_json_array 2020-10-30 10:12:56 +00:00
Luis Ramos
55e8dace44 Fix sort_by issue on relation by calling to_a 2020-10-30 10:12:56 +00:00
Luis Ramos
9a9b455e66 Fix problem in default_tax related to sum in active record 2020-10-30 10:12:56 +00:00
Luis Ramos
399fe2c01b Make code work for relations and arrays 2020-10-30 10:12:56 +00:00
Luis Ramos
3aeb87debc Make it work with both relations and arrays 2020-10-30 10:12:56 +00:00
Luis Ramos
7b06fdd943 Convert to array before using sort_by! 2020-10-30 10:12:56 +00:00
Luis Ramos
6755354196 Convert relation to_a to be able to use sum 2020-10-30 10:12:56 +00:00
Luis Ramos
440e69e156 Convert relation to array to be able to use sum 2020-10-30 10:12:47 +00:00
Luis Ramos
a53223aefc Convert relation to array before using array only method sort_by! 2020-10-30 10:10:54 +00:00
Luis Ramos
cc1b4123b7 Make model_set handle collections that are relations and not arrays 2020-10-30 10:10:54 +00:00
Luis Ramos
65ce183830 Make checkout_adjustments_for handle adjustments if a relation is given 2020-10-30 10:10:54 +00:00
Luis Ramos
7e606471e4 Make tag_rulee_applicator and available_payment_methods_filter handle case where a relation is given instead of an array 2020-10-30 10:10:54 +00:00
Luis Ramos
1dace1f0e3 Make quantifier use stock_items relation and not an array because sum will behave differently with an array in rails 4.1 2020-10-30 10:10:54 +00:00
Luis Ramos
08d26102d2 Separate injection methods so that we can have a separate behaviour for lists without having to check their types
This change is required for rails 4.1 where the relations api changed
2020-10-30 10:10:54 +00:00
Transifex-Openfoodnetwork
35790b3cca Updating translations for config/locales/en_FR.yml 2020-10-30 19:29:20 +11:00
Transifex-Openfoodnetwork
2ce05d48bf Updating translations for config/locales/fr.yml 2020-10-30 19:29:05 +11:00
Tsara Sudrajat
f4c7a0b2a2 Align center order adjustment and order total title 2020-10-30 11:29:38 +07:00
Luis Ramos
6b826423c1 Merge pull request #6145 from andrewpbrett/instance-unit-picker
Allow instances to choose available units for products/variants
2020-10-29 22:22:33 +00:00
Luis Ramos
412457bb19 Merge pull request #6122 from luisramos0/customer_total
Add Customer balance to customer list
2020-10-29 22:06:05 +00:00
Andy Brett
2605b9cdf0 refactor unitScales function 2020-10-29 09:18:24 -07:00
Andy Brett
867947f6b2 refactor availableUnitScales into unitScales 2020-10-29 09:18:24 -07:00
Andy Brett
8d9b33abe8 update spec with new param structure 2020-10-29 09:18:24 -07:00
Andy Brett
57fe1db10e guard against nil params[:available_units] 2020-10-29 09:18:24 -07:00
Andy Brett
18d2599075 indicate block argument is unused 2020-10-29 09:18:24 -07:00
Andy Brett
292b33b4ea simplify available units params (and remove regex!) 2020-10-29 09:18:24 -07:00
Andy Brett
8591934c19 extract availableUnits to separate method 2020-10-29 09:18:24 -07:00
Andy Brett
9bf84bd5a8 provide default availableUnits to specs 2020-10-29 09:18:24 -07:00
Andy Brett
67a603f77f inject available_units for new variant creation 2020-10-29 09:18:24 -07:00
Andy Brett
331ac28b71 inject available units to edit variants page 2020-10-29 09:18:24 -07:00
Andy Brett
3ead050a56 provide availableUnits to VariantUnitManager spec 2020-10-29 09:18:24 -07:00
Andy Brett
23dd09eaad remove extra debugger statement 🤦 2020-10-29 09:18:23 -07:00
Andy Brett
8585e6c7f0 add available units injection to BOM page 2020-10-29 09:18:19 -07:00
Andy Brett
866452383d rubocop fix 2020-10-29 09:17:49 -07:00
Andy Brett
402fc902ff remove non-default units from expected options array 2020-10-29 09:17:49 -07:00
Andy Brett
8f21b66b96 add controller spec for updating available units 2020-10-29 09:17:49 -07:00
Andy Brett
c9b540677c refactor general settings controller to handle available_units params 2020-10-29 09:17:49 -07:00
Andy Brett
4f579facfe move all_units to admin helper 2020-10-29 09:17:49 -07:00
Andy Brett
fa62ec0bff only show available units for products 2020-10-29 09:17:49 -07:00
Andy Brett
cb3ea133e9 add available units to instance prefs page 2020-10-29 09:17:31 -07:00
Luis Ramos
10490536e2 Merge pull request #6244 from cillian/configurable-geocoder-service
Allow Geocoder to be configured to use different APIs
2020-10-29 16:12:52 +00:00
Yih Yang
b477ed4a0a added products variable 2020-10-29 23:37:56 +08:00
Yih Yang
f7ee08855a updated implementation 2020-10-29 22:07:11 +08:00
Yih Yang
e3d1f5256b added product sorting 2020-10-29 22:06:35 +08:00
Luis Ramos
a43737af8b Merge pull request #6266 from jhsu802701/rubocop_web_helper
Exempted spec/support/request/web_helper.rb from Metrics/AbcSize
2020-10-29 13:52:15 +00:00
Luis Ramos
0138f04506 Add spec to cover new customer balances on customers list 2020-10-29 13:38:36 +00:00
Luis Ramos
4a2684e3d9 Fix rubocop issues 2020-10-29 13:38:36 +00:00
Luis Ramos
e860e2ca57 Add label to customer balance so it's clear to the manager what's the balance status: credit owed or balance due 2020-10-29 13:38:36 +00:00
Luis Ramos
da69dca471 Make customer balance serialize with the currency 2020-10-29 13:38:36 +00:00
Luis Ramos
e4f3aae7c0 Add customer balance to customer list 2020-10-29 13:38:36 +00:00
Luis Ramos
72ae7ea8a2 Merge pull request #6267 from jhsu802701/rubocop_shopworkflow_2
Removed variant argument from click_add_bulk_max_to_cart
2020-10-29 13:36:58 +00:00
Jason Hsu
8f95de10bc Removed variant argument from click_add_bulk_max_to_cart; updated spec/features/consumer/shopping/shopping_spec.rb to reflect this 2020-10-29 00:35:49 -05:00
Jason Hsu
cbe1b53189 Exempted spec/support/request/web_helper.rb from Metrics/AbcSize; reduces the number of offenses from 122 to 121 2020-10-29 00:23:30 -05:00
Transifex-Openfoodnetwork
9c30c3c0ed Updating translations for config/locales/ar.yml 2020-10-29 11:15:12 +11:00
Luis Ramos
9a03428412 Merge pull request #6197 from cillian/reset-on-demand-on-absent-products
When resetting stock to 0 on absent products in product import also reset the on demand setting
2020-10-29 00:09:49 +00:00
Luis Ramos
76afc0b407 Merge pull request #6202 from cillian/sort-admin-products-by-name-fix
Fix sorting of admin products by name
2020-10-29 00:09:31 +00:00
Luis Ramos
200e9c5078 Merge pull request #6246 from tsara27/fix-shipping-method-translation
Add new translation for shipping method
2020-10-29 00:09:14 +00:00
Luis Ramos
caea5b2aa8 Merge pull request #6264 from openfoodfoundation/dependabot/bundler/bugsnag-6.18.0
Bump bugsnag from 6.17.0 to 6.18.0
2020-10-28 21:11:15 +00:00
Luis Ramos
3730d76b44 Merge pull request #6155 from arku/perf/model-specs
Improve model specs' performance
2020-10-28 21:06:10 +00:00
Transifex-Openfoodnetwork
28c25cff2c Updating translations for config/locales/en_IE.yml 2020-10-29 07:08:18 +11:00
Pau Pérez Fabregat
20edcfab26 Merge pull request #6217 from santakadev/docker-open-db-port
Open PostgreSQL port in docker-compose
2020-10-28 17:56:49 +01:00
Pau Pérez Fabregat
642787b95a Merge branch 'master' into reset-on-demand-on-absent-products 2020-10-28 17:28:53 +01:00
Transifex-Openfoodnetwork
a1438d3b2e Updating translations for config/locales/ru.yml 2020-10-29 02:23:55 +11:00
dependabot-preview[bot]
fc8e3d1ece Bump bugsnag from 6.17.0 to 6.18.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.17.0 to 6.18.0.
- [Release notes](https://github.com/bugsnag/bugsnag-ruby/releases)
- [Changelog](https://github.com/bugsnag/bugsnag-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bugsnag/bugsnag-ruby/compare/v6.17.0...v6.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-27 17:41:49 +00:00
Transifex-Openfoodnetwork
21991515df Updating translations for config/locales/ar.yml 2020-10-27 22:56:03 +11:00
Luis Ramos
3534559fbf Merge pull request #6235 from Matt-Yorkley/flaky-tag-rules
[Flaky Specs] Fix tag_rules and select2 issues
2020-10-27 11:40:04 +00:00
Matt-Yorkley
f1373b902c Merge pull request #6256 from luisramos0/rubocop_specs
Relax ModuleLength rubocop rule for specs
2020-10-26 22:41:30 +01:00
Luis Ramos
e5e67fbdf0 Merge pull request #6255 from jhsu802701/fix_docker_up
Added yarn install to docker-compose up
2020-10-26 21:16:09 +00:00
Transifex-Openfoodnetwork
f1e80e92de Updating translations for config/locales/it.yml 2020-10-27 07:18:57 +11:00
Luis Ramos
c5186c2412 Fix rubocop_specs file path 2020-10-26 17:27:38 +00:00
Luis Ramos
52f56baa8c Remove specs with more than 100 lines but less than 300 from rubocop exceptions list 2020-10-26 17:03:54 +00:00
Luis Ramos
0b51d8b297 Add rubocop config to allow specs to be 300 lines long 2020-10-26 17:03:50 +00:00
Luis Ramos
0f5aa11f05 Nest spec in module declaration 2020-10-26 16:50:29 +00:00
Jason Hsu
00624d1b96 Added yarn install to docker-compose up; allows the app to work properly in the Docker environment 2020-10-26 11:07:01 -05:00
Transifex-Openfoodnetwork
7e8aaaa5f9 Updating translations for config/locales/fr.yml 2020-10-27 01:27:40 +11:00
Transifex-Openfoodnetwork
49b8dcb880 Updating translations for config/locales/en_FR.yml 2020-10-27 01:24:49 +11:00
Transifex-Openfoodnetwork
479520bf97 Updating translations for config/locales/fr.yml 2020-10-27 01:24:35 +11:00
Luis Ramos
b66b50cd56 Merge pull request #6125 from tsara27/fix-translation
Fix translation for password reset instruction mailer subject
2020-10-26 12:01:47 +00:00
Matt-Yorkley
a296710f78 Update all locales *again* with the latest translations, before publishing 2020-10-26 10:55:17 +00:00
Transifex-Openfoodnetwork
50cbc971a1 Updating translations for config/locales/pt_BR.yml 2020-10-26 10:13:53 +11:00
Transifex-Openfoodnetwork
7178a69a54 Updating translations for config/locales/pt_BR.yml 2020-10-26 10:10:47 +11:00
Luis Ramos
ebd7e9599b Merge pull request #6248 from Matt-Yorkley/s3-credentials
Fix #s3_credentials
2020-10-25 19:47:57 +00:00
Matt-Yorkley
df3ac0394c Fix #s3_credentials 2020-10-25 14:04:33 +00:00
Matt-Yorkley
822c82fa9d Merge pull request #6204 from jhsu802701/remove_docker_md
Removed DOCKER.md (redundant)
2020-10-25 13:20:35 +01:00
Matt-Yorkley
e06e8fc460 Improve flaky form interaction process in #fill_in_tag 2020-10-25 10:17:16 +00:00
Matt-Yorkley
ee402db734 Refactor and DRY tag-rule-filling-in to #fill_in_tag method 2020-10-25 09:01:04 +00:00
Matt-Yorkley
3f1e496731 Fix select2 capybara issues 2020-10-24 23:53:02 +01:00
Matt-Yorkley
f22c7fcdfb Merge pull request #6151 from luisramos0/stripe_save_cards
Stripe Feature Tests: checkout with saved a card
2020-10-24 23:29:29 +02:00
Transifex-Openfoodnetwork
494f0d8ff6 Updating translations for config/locales/ru.yml 2020-10-24 23:18:00 +11:00
Transifex-Openfoodnetwork
15715f9bb4 Updating translations for config/locales/it.yml 2020-10-24 22:28:59 +11:00
Tsara Sudrajat
4baf53a0a9 Add new translation for shipping method 2020-10-24 17:06:19 +07:00
Transifex-Openfoodnetwork
8041111886 Updating translations for config/locales/ar.yml 2020-10-24 07:34:19 +11:00
Transifex-Openfoodnetwork
adc2bcb442 Updating translations for config/locales/es.yml 2020-10-24 01:40:48 +11:00
Transifex-Openfoodnetwork
8a51c5cb5d Updating translations for config/locales/es.yml 2020-10-24 01:37:39 +11:00
Transifex-Openfoodnetwork
e114d58ff2 Updating translations for config/locales/ca.yml 2020-10-24 01:36:14 +11:00
Transifex-Openfoodnetwork
b7fc3df86a Updating translations for config/locales/fr_CA.yml 2020-10-23 23:18:11 +11:00
Transifex-Openfoodnetwork
01fe12e72b Updating translations for config/locales/fr_CA.yml 2020-10-23 23:15:02 +11:00
Cillian O'Ruanaidh
c5e125747f Allow Geocoder to be configured to use different APIs.
This gives instances the option to use other geocoding services, for example MapBox because instances may not have a Google Maps API key if they are using Open Street Map for their map instead of Google.
2020-10-23 13:09:59 +01:00
Transifex-Openfoodnetwork
3baaa5cc40 Updating translations for config/locales/en_CA.yml 2020-10-23 23:06:57 +11:00
Cillian O'Ruanaidh
e29d6048c2 Add a test for sorting admin products by name 2020-10-23 10:53:30 +01:00
Matt-Yorkley
9b72f7e45c Merge pull request #6234 from Matt-Yorkley/fix-ordercyle-layout
Fix minor ordercyle selector layout regression
2020-10-23 10:52:25 +02:00
Transifex-Openfoodnetwork
c4ba8db7ed Updating translations for config/locales/en_FR.yml 2020-10-23 19:12:20 +11:00
Transifex-Openfoodnetwork
764169c9ca Updating translations for config/locales/fr.yml 2020-10-23 19:12:17 +11:00
Transifex-Openfoodnetwork
30a1832302 Updating translations for config/locales/en_FR.yml 2020-10-23 19:09:10 +11:00
Transifex-Openfoodnetwork
a07f64f8a8 Updating translations for config/locales/fr.yml 2020-10-23 19:09:07 +11:00
Matt-Yorkley
21a48f14f4 Update all locales with the latest Transifex translations 2020-10-22 21:03:11 +01:00
Matt-Yorkley
7d604884bf Merge pull request #6201 from openfoodfoundation/transifex
Transifex
2020-10-22 22:01:20 +02:00
Matt-Yorkley
5edd562691 Merge pull request #6238 from openfoodfoundation/mobile-5-product-listings
Merge Product Listings to master
2020-10-22 21:55:42 +02:00
Transifex-Openfoodnetwork
ec1b5c228d Updating translations for config/locales/nb.yml 2020-10-23 05:58:25 +11:00
Matt-Yorkley
176021b201 Fix minor ordercyle selector layout regression 2020-10-22 19:57:32 +01:00
Transifex-Openfoodnetwork
828df9fd43 Updating translations for config/locales/ar.yml 2020-10-23 03:14:52 +11:00
Matt-Yorkley
28590fdad4 Merge pull request #6223 from luisramos0/image_default_styles
Update image default styles
2020-10-22 17:54:32 +02:00
Luis Ramos
61cfdb4038 Merge pull request #6114 from mbudm/issue/6031
Add matomo tag to admin pages
2020-10-22 15:24:34 +01:00
Matt-Yorkley
489529d30e Merge pull request #5729 from luisramos0/image_settings
Remove Image settings page and standardise Paperclip styles
2020-10-22 15:58:14 +02:00
Luis Ramos
a4f21be99a Merge pull request #6237 from openfoodfoundation/dependabot/bundler/ddtrace-0.42.0
Bump ddtrace from 0.41.0 to 0.42.0
2020-10-22 13:48:15 +01:00
Matt-Yorkley
4dbe966fcf Add subtle hover effect on clickable image 2020-10-22 10:37:11 +01:00
Matt-Yorkley
857ecaf680 Update "noimage" placeholder for :small size to 227x227px 2020-10-22 10:02:59 +01:00
Matt-Yorkley
01adf459b1 Replace top padding on product list 2020-10-22 09:59:16 +01:00
Matt-Yorkley
fb482fc1c7 Quickfix: unwanted border-right on bulk buy buttons 2020-10-22 15:46:49 +11:00
Maikel Linke
db53848092 Enable switching language of "Price breakdown"
And move translation to its own context.
2020-10-22 15:46:49 +11:00
Maikel Linke
2887751098 Move translation to its own section 2020-10-22 15:46:49 +11:00
Maikel Linke
e0a7f50626 Standardise new grey colour 2020-10-22 15:46:49 +11:00
Maikel Linke
db321da02a Fade "From" producer label 2020-10-22 15:46:49 +11:00
Maikel Linke
d5f0fb10f4 Distinguish unit size more from variant name 2020-10-22 15:46:49 +11:00
Maikel Linke
f6f029666a Remove gaps in multi-line variant name 2020-10-22 15:46:49 +11:00
Maikel Linke
23454ba3bf Show product property description nub on mobile 2020-10-22 15:46:49 +11:00
Maikel Linke
a3e83f2f70 Grey out disabled bulk quantity buttons
Since they are further away from each other, the colour difference has
to be stronger to be recognised.
2020-10-22 15:46:49 +11:00
Maikel Linke
ec1887544e Reduce bulk input modal size
This brings the related elements closer together.
2020-10-22 15:46:49 +11:00
Maikel Linke
e37fedc435 Add bulk ribbon to bulk products 2020-10-22 15:46:49 +11:00
Maikel Linke
ed902e7489 Reduce price breakdown size
It doesn't need as much space. This brings related text closer together
and hides less of the page, e.g. the add-to-cart button.
2020-10-22 15:46:49 +11:00
Maikel Linke
68777039bf Adjust padding in the price breakdown modal 2020-10-22 15:46:48 +11:00
Maikel Linke
bbe2ce9cba Add "Price breakdown" heading to pop-up
The translation key was already present even though it was unused.
2020-10-22 15:46:48 +11:00
Maikel Linke
450e5cc5e3 Remove indent of product description on iPhone
Our HTML formatting plugin for product descriptions adds whitespace to
the beginning of the description text. While that shouldn't be rendered
in HTML, Safari on iPhone was showing a whitespace and therefore moving
the text a bit to the right.
2020-10-22 15:46:48 +11:00
Maikel Linke
36ead3fdba Remove margin between products and search bar on mobile 2020-10-22 15:46:48 +11:00
Maikel Linke
30bfb1a7bd Fix clickable area when opening price breakdown
Once a price breakdown has been opened, the nub was over the bottom half
of the pie button. It made half of the pie unclickable.

And when you closed the breakdown, it became invisible but stayed
present, absorbing all clicks in that area. So other pie buttons were
unclickable as well.
2020-10-22 15:46:48 +11:00
Maikel Linke
0268782b5e Align price pie with product name
Moving it a bit to the right on mobile.
And giving the variant name a bit more space.
2020-10-22 15:46:48 +11:00
Maikel Linke
152835335d Pre-calculate product image size in layout
Giving a percentage is simpler than the whole formula.
2020-10-22 15:46:48 +11:00
Maikel Linke
fd14d61213 Adjust product separator color
The original design contains grey-100: e6e6e6

Also removed not needed comment.
2020-10-22 15:46:48 +11:00
Maikel Linke
05add9e530 Enlarge product pictures flexibly for devices
This change will need a change of the `small` image size. The new format
should be `227x227#`. The `#` crops the center of an image to make it
square if necessary. All old images should then be regenerated:

  rake paperclip:refresh:thumbnails CLASS=Spree::Image
2020-10-22 15:46:48 +11:00
Maikel Linke
de9b10b227 Darken add-button on hover 2020-10-22 15:46:48 +11:00
Maikel Linke
41ab84c8f9 Add padding to product tags 2020-10-22 15:46:48 +11:00
Maikel Linke
cb5089a69a Increase space for variant name on mobile 2020-10-22 15:46:48 +11:00
Maikel Linke
15c7dad5f2 Left-align prices on mobile 2020-10-22 15:46:48 +11:00
Maikel Linke
b57c912aa0 Add space between products and filters 2020-10-22 15:46:48 +11:00
Maikel Linke
66d5f8d5c1 Align first product flush to the search bar 2020-10-22 15:46:47 +11:00
Maikel Linke
1e3ff141f0 Reduce margin below product description 2020-10-22 15:46:47 +11:00
Maikel Linke
c053ae951b Style product header
Reduce font size.
Adjust margins.
2020-10-22 15:46:47 +11:00
Maikel Linke
3a3ec4e45e Close price breakdown on click outside 2020-10-22 15:46:47 +11:00
Maikel Linke
6bb48c0954 Adjust active colour of price breakdown button 2020-10-22 15:46:47 +11:00
Maikel Linke
1fd4dc471a Position the price breakdown below the button 2020-10-22 15:46:47 +11:00
Maikel Linke
2ce65472ec Remove obsolete styles
I think that this was overlooked when replacing the cart code in
be8c0f3600.
2020-10-22 15:46:47 +11:00
Maikel Linke
230d3e76a1 Label plus and minus symbols as special 2020-10-22 15:46:47 +11:00
Maikel Linke
650686c262 Adjust alignment of variant name with unit 2020-10-22 15:46:47 +11:00
Maikel Linke
cdbbcfd1fe Better naming for translation keys 2020-10-22 15:46:47 +11:00
Maikel Linke
e45941276e Better naming of translation keys
Also splitting one key for two different uses.
2020-10-22 15:46:47 +11:00
Maikel Linke
d2600b1d40 Avoid translation errors by hardcoding symbols
The fullwidth plus and minus signs are well understood in all countries
(that participate in the development of OFN). It's more likely that a
translator enters a normal plus or minus than that they want to change
the symbol. A normal + or - sign doesn't fill a whole character space
and is therefore not well aligned in the design.
2020-10-22 15:46:47 +11:00
Matt-Yorkley
b79d9bd75b Fix screen-width bug for desktop down
The width of these elements was ~105% of total screen width, adding horizontal scrollbars and whitespace on the left hand side
2020-10-22 15:46:47 +11:00
Matt-Yorkley
6bcf11e308 Adjust layout of variant rows for better use of vertical space 2020-10-22 15:46:47 +11:00
Matt-Yorkley
e39a15ed30 Remove margin-bottom with !important from product 2020-10-22 15:46:46 +11:00
Matt-Yorkley
98e581c059 Remove pad-top class from products from to match alignment with filter sidebar 2020-10-22 15:46:46 +11:00
Matt-Yorkley
e968a091f9 Match right and left row padding on phablet down 2020-10-22 15:46:46 +11:00
Matt-Yorkley
a2f710db1e Improve vertical alignment of variant form elements 2020-10-22 15:46:46 +11:00
Matt-Yorkley
898492c409 Remove borders from graph button 2020-10-22 15:46:46 +11:00
Matt-Yorkley
a89c81a033 Hide description paragraph if product has no description
Improves the appearance of the layout when no description is present
2020-10-22 15:46:46 +11:00
Maikel Linke
9da91576ac Fix height of invisible "in cart" text
While the text "x in cart" isn't visible, the item quantity is not set.
A missing variable leads to longer text that is taken up more space. In
this case it was two lines instead of one line. The resulting extra line
of margin disappeared when adding to the cart and the rest of the page
jumped up.
2020-10-22 15:46:46 +11:00
Maikel Linke
57178659c3 Remove bulk icon as per design 2020-10-22 15:46:46 +11:00
Maikel Linke
81cc951ed4 Name symbols on quantity buttons in specs 2020-10-22 15:46:46 +11:00
Maikel Linke
d337561ea8 Move ShopVariantCtrl to own file and spec it 2020-10-22 15:46:46 +11:00
Maikel Linke
755773e5ad Style code 2020-10-22 15:46:46 +11:00
Maikel Linke
58f4d7393c Make quantity labels translatable 2020-10-22 15:46:46 +11:00
Maikel Linke
01c4882759 Replace bulk buy inputs with add-remove-buttons 2020-10-22 15:46:46 +11:00
Maikel Linke
59c13b97ea Replace quantity input with add-remove buttons
The new mobile friendly design contains a nice "Add" button to add
variants to your cart. Once you have the variant in you cart, it's
replaced by plus and minus buttons to adjust the quantity.

Other languages have longer words than "Add" which need to fit on the
button. Since the add button and the +/- buttons should have the same
width, I widened them a little bit so that they fit the longest words
Aggiungi and Добавить.
2020-10-22 15:46:46 +11:00
Maikel Linke
35747dc2b1 Emphasize first identifying name of a variant
That can be a variant name or the unit if the name is missing. Putting
the second and third element in the background consistently.
2020-10-22 15:46:45 +11:00
Maikel Linke
7660116792 Display variant name only when set
The previous method was falling back to the product name which is
displayed already.
2020-10-22 15:46:45 +11:00
Maikel Linke
8734fb1776 Override *active* states for product properties w/o tooltip 2020-10-22 15:46:45 +11:00
Maikel Linke
9379e21bca Increase margin between product summary and variants 2020-10-22 15:46:45 +11:00
Maikel Linke
4ab2375832 Reduce margin on the right of product listing 2020-10-22 15:46:45 +11:00
Maikel Linke
1fb544b803 Remove margin of product listing on mobile and tablet 2020-10-22 15:46:45 +11:00
Maikel Linke
96cd5ca1fe Fix "Place price-breakdown and price in the middle" 2020-10-22 15:46:45 +11:00
Maikel Linke
e1a3c351e5 Fix "Removal of category icon" 2020-10-22 15:46:45 +11:00
Maikel Linke
4f6e900327 Fix "Remove background and border colors from product list" 2020-10-22 15:46:45 +11:00
Maikel Linke
615678db56 Align inline graph vertically 2020-10-22 15:46:45 +11:00
Maikel Linke
526d4f53ad Remove red overlay and icon on product image hover 2020-10-22 15:46:45 +11:00
Maikel Linke
ca1cb50314 Adjust margins 2020-10-22 15:46:45 +11:00
Maikel Linke
8006870b66 Adjust column widths 2020-10-22 15:46:45 +11:00
Maikel Linke
d02ab109f2 Show product images on mobile 2020-10-22 15:46:45 +11:00
Maikel Linke
fe1618cada Add description to product listing
It's truncated to one line and a click reveals the modal.
2020-10-22 15:46:45 +11:00
Maikel Linke
afed46531c Remove second line between products, leave one 2020-10-22 15:46:44 +11:00
Maikel Linke
893b6660fc Change price-breakdown colour to grey 2020-10-22 15:46:44 +11:00
Maikel Linke
3e789fdb84 Show only tabular price breakdown, no graph 2020-10-22 15:46:44 +11:00
Maikel Linke
065314f0e4 Revert "Remove popover indicator"
This reverts commit 0bef97a46710c50b8519752009ca9e8c811f8326.
2020-10-22 15:46:44 +11:00
Maikel Linke
952c39f736 Remove popover indicator 2020-10-22 15:46:44 +11:00
Maikel Linke
2b982cfc2e Show price breakdown on all screens 2020-10-22 15:46:44 +11:00
Maikel Linke
e29be51c45 Place price-breakdown and price in the middle 2020-10-22 15:46:44 +11:00
Maikel Linke
c15828061f Move unit under name 2020-10-22 15:46:44 +11:00
Maikel Linke
52c8c19dfc Remove black background from variant name on mobile
table-cell gave it a black background.
Also display it on the same line as the quantity input.
2020-10-22 15:46:44 +11:00
Maikel Linke
61d55ff16f Remove per-variant subtotal from mobile view 2020-10-22 15:46:44 +11:00
Maikel Linke
25e309b8cc Update link colors to orange and teal 2020-10-22 15:46:44 +11:00
Maikel Linke
9f5cec6d08 Remove tractor in front of producer name 2020-10-22 15:46:44 +11:00
Maikel Linke
03d8ccfe2e Remove modal open indicator 2020-10-22 15:46:44 +11:00
Maikel Linke
f05563b30f Removal of category icon 2020-10-22 15:46:44 +11:00
Maikel Linke
b34449832b Remove background and border colors from product list 2020-10-22 15:46:43 +11:00
Maikel Linke
0febc9e8c2 Remove unused mixin styles 2020-10-22 15:46:43 +11:00
dependabot-preview[bot]
20777bb80f Bump ddtrace from 0.41.0 to 0.42.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.41.0 to 0.42.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.41.0...v0.42.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-22 01:14:35 +00:00
Luis Ramos
032075c04a Merge pull request #6119 from arku/chore/fire-event-removal
Remove fire_event method usage
2020-10-21 21:21:35 +01:00
Transifex-Openfoodnetwork
6e6dd233e8 Updating translations for config/locales/ru.yml 2020-10-22 02:30:07 +11:00
Matt-Yorkley
eb026f2e22 Use "sRBG" colourspace.
This seems to be the correct setting, and fixes a bug with the colouring of uploaded images. Further details:
https://imagemagick.org/script/color-management.php
https://www.imagemagick.org/discourse-server/viewtopic.php?t=20501
2020-10-21 14:26:26 +01:00
Matt-Yorkley
92d6168a14 Don't restrict image filetypes to JPG 2020-10-21 13:42:07 +01:00
Luis Ramos
78651012bb Merge pull request #6177 from santakadev/fix-docker-setup
Fix docker local environment setup
2020-10-21 08:45:07 +01:00
Luis Ramos
d01f9b7aa1 Merge pull request #6227 from jhsu802701/fix_docker_scripts
docker-compose run --rm web -> docker-compose run web
2020-10-21 08:44:37 +01:00
Transifex-Openfoodnetwork
af9aa6a8db Updating translations for config/locales/en_FR.yml 2020-10-21 18:35:58 +11:00
Transifex-Openfoodnetwork
2539507df9 Updating translations for config/locales/en_FR.yml 2020-10-21 18:32:58 +11:00
Transifex-Openfoodnetwork
d8b36c5966 Updating translations for config/locales/fr.yml 2020-10-21 18:30:35 +11:00
Jason Hsu
a9feb53294 docker-compose run --rm web -> docker-compose run web 2020-10-20 17:48:46 -05:00
Matt-Yorkley
f5ce0d501d Merge pull request #5870 from luisramos0/prefs
[Bye bye Spree] Bring models app_configuration and preference from spree_core
2020-10-20 21:12:54 +02:00
Luis Ramos
b267f542d1 Merge pull request #5980 from luisramos0/spree_clean_up
[Bye bye spree] Some clean up fixes to make it all work without spree
2020-10-20 18:52:54 +01:00
Luis Ramos
9f568c1e9d Merge pull request #5928 from luisramos0/spree_core_js
[Bye bye spree] Bring final bits of js and css from spree_core
2020-10-20 13:20:41 +01:00
Luis Ramos
3dc3e0970e Update image default styles 2020-10-20 11:31:01 +01:00
Luis Ramos
10ed1f04c1 Revert default styles to what they were before, we can do this in a separate PR 2020-10-20 11:25:55 +01:00
Luis Ramos
16f9ef4ace Simplify method 2020-10-20 11:20:37 +01:00
Luis Ramos
f4d8bdc17e Fix easy rubocop issues 2020-10-20 11:20:37 +01:00
Luis Ramos
f3490e5668 Replace Spree::Image with self 2020-10-20 11:20:37 +01:00
Luis Ramos
7cf6518175 Set default values for styles directly in the attachment property without using Spree::Config
Only use ENV vars for attachment path and url coming from ofn-install
2020-10-20 11:20:37 +01:00
Luis Ramos
d15abe14d1 Join reformat styles and set attachement definitions and explain why we need to run them every time Spree::Image is loaded although this is also done in the spree initializer 2020-10-20 11:20:37 +01:00
Luis Ramos
6151c7420b Move S3 attachment definitions to Spree::Image 2020-10-20 11:20:37 +01:00
Luis Ramos
fdd7049857 Reuse Spree::Image.set_attachment_definitions 2020-10-20 11:20:37 +01:00
Luis Ramos
b66ad71017 Move image settings config out of Spree::config initialization 2020-10-20 11:20:37 +01:00
Luis Ramos
98c5fdcf26 Reuse some code from Spree::Image in the spree initializer and extract some code to a class method so we can reuse afterwards 2020-10-20 11:20:37 +01:00
Luis Ramos
25ab5f7f24 Move reformat_styles to initializer, it's the only place where it is used 2020-10-20 11:20:37 +01:00
Luis Ramos
a5a55b3c10 Add settings initialization from previous image settings controller to spree initializer 2020-10-20 11:20:37 +01:00
Luis Ramos
0f06195baa Remove Image settings page, these settings will come from ofn-install now 2020-10-20 11:20:37 +01:00
Luis Ramos
bebffcc90f Set new S3 and attachments configs from ofn-install 2020-10-20 11:20:37 +01:00
Luis Ramos
c291639962 Merge pull request #6156 from razanjoshi/add_simplecov
Add coverage threshold for simplecov.
2020-10-20 09:40:07 +01:00
Transifex-Openfoodnetwork
de4aab6cf7 Updating translations for config/locales/en_US.yml 2020-10-20 02:03:21 +11:00
Luis Ramos
c0880a1b9a Merge pull request #6191 from mkllnk/draft-release
Add script to draft release notes
2020-10-19 12:22:24 +01:00
Arun Kumar Mohan
b0fa1464f8 Remove fire_event method usage 2020-10-18 20:36:38 -05:00
Luis Ramos
e6baca37c4 Merge pull request #6215 from Matt-Yorkley/states-filepath
Fix deployments
2020-10-18 23:16:53 +01:00
Matt-Yorkley
58c0d90575 Fix error in countries.rb 2020-10-18 19:49:48 +01:00
Matt-Yorkley
dc06f60d2c Merge pull request #6211 from openfoodfoundation/dependabot/bundler/webmock-3.9.3
Bump webmock from 3.9.2 to 3.9.3
2020-10-18 12:22:07 +02:00
Daniel Santamaría
ca2d66eacf Open PostgreSQL port in docker-compose 2020-10-18 08:45:08 +02:00
Arun Kumar Mohan
c65108731c Define supplier_ids in inventory_reset_strategy specs for clarity 2020-10-17 20:12:14 -05:00
Arun Kumar Mohan
5928eba767 Use build to validate objects from the shipping method factory 2020-10-17 19:59:21 -05:00
Arun Kumar Mohan
874d33caaa Convert multiline blocks to single-line ones 2020-10-17 19:44:57 -05:00
Matt-Yorkley
4cd645b60e Merge pull request #6150 from openfoodfoundation/luisramos0-patch-1
Make the release notes intructions a bit more clear so new contributors make them short
2020-10-18 00:44:06 +02:00
Matt-Yorkley
961fbd22cf Merge pull request #6183 from openfoodfoundation/dependabot/bundler/activerecord-import-1.0.7
Bump activerecord-import from 1.0.6 to 1.0.7
2020-10-18 00:42:17 +02:00
Matt-Yorkley
b7c8bae9e8 Merge pull request #6185 from openfoodfoundation/dependabot/bundler/i18n-js-3.8.0
Bump i18n-js from 3.7.1 to 3.8.0
2020-10-18 00:41:09 +02:00
Matt-Yorkley
3612386463 Make loading of Zones in db:seed idempotent (and avoid fatal errors if run twice) 2020-10-17 18:08:28 +01:00
Matt-Yorkley
e9e7bdc6cd Set Spree::Config[:default_country_id]` from ENV vars if default country specified. 2020-10-17 17:54:48 +01:00
Matt-Yorkley
d1c066d360 Move states.yml back to it's former filepath 2020-10-17 17:14:26 +01:00
Rajan Joshi
13fe8b6198 Add more directories to filter. 2020-10-17 15:55:22 +01:00
Tsara Sudrajat
66be86cca9 Fix translation on reset password mailer 2020-10-17 17:59:54 +07:00
dependabot-preview[bot]
b2e14b36dd Bump webmock from 3.9.2 to 3.9.3
Bumps [webmock](https://github.com/bblimke/webmock) from 3.9.2 to 3.9.3.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.9.2...v3.9.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-17 07:47:24 +00:00
Jason Hsu
f9f054c611 Removed DOCKER.md (redundant) 2020-10-16 11:31:48 -05:00
Paolo Rossi
4a60d7ef0e Update the base Ubuntu Docker image from 18.04 to 20.04 2020-10-16 17:26:08 +02:00
Transifex-Openfoodnetwork
9445093ea8 Updating translations for config/locales/en_FR.yml 2020-10-17 01:26:13 +11:00
Transifex-Openfoodnetwork
a4f00f0152 Updating translations for config/locales/fr.yml 2020-10-17 01:25:38 +11:00
Cillian O'Ruanaidh
35110eaf4a Make sure :sorting parameter is nested inside the :q parameter to fix sorting of admin products
Fixes #6105.
2020-10-16 15:21:15 +01:00
Luis Ramos
2711139420 Re-use existing stripe stub 2020-10-16 12:37:44 +01:00
Luis Ramos
cf319d3f05 Extract customers stripe stub to StripeStubs helper 2020-10-16 12:37:44 +01:00
Luis Ramos
f5f9a733fb Fix rubocop issue, long module, by extracting StripeStubs to a separate helper module 2020-10-16 12:37:42 +01:00
Cillian O'Ruanaidh
c62f1bd550 Exclude products_reset_strategy_spec.rb from Rubocop's Metrics/ModuleLength check 2020-10-16 12:13:55 +01:00
Luis Ramos
05bb75db00 Merge pull request #6089 from luisramos0/seed_data
[Bye bye spree] Prepare seed data for bye bye spree
2020-10-16 11:55:27 +01:00
Cillian O'Ruanaidh
2cc751cb30 When resetting stock to 0 on absent products in product import also reset the on demand setting
Before when you imported products and clicked the 'Set stock to zero for all existing products not present in the file' option it would set the on hand stock to 0 but if the variant was also set to be on demand the product would still be available for sale. This change makes sure the on demand setting is turned off too.

Fixes #6064.
2020-10-16 11:38:49 +01:00
Luis Ramos
487aaf4862 Extract stub to StripeHelper 2020-10-16 11:12:44 +01:00
Luis Ramos
f13ebf8f21 DRY StripeHelper 2020-10-16 11:09:52 +01:00
Luis Ramos
7e80ddf1e5 Add step to checkout with the previously saved card 2020-10-16 10:24:49 +01:00
Luis Ramos
7efc52075e First attempt at adding a spec to checkout and save a credit card 2020-10-16 09:26:19 +01:00
Luis Ramos
22bd0f3a52 Merge pull request #6187 from jhsu802701/spec_support_request_stripe_helper
Updated RuboCop (spec/support/request/stripe_helper.rb)
2020-10-16 08:49:17 +01:00
Luis Ramos
94713522e5 Merge pull request #6189 from jhsu802701/update_db_schema
Updated db/schema.rb by running database migrations
2020-10-16 08:40:18 +01:00
Luis Ramos
49947614b3 Merge pull request #6190 from jhsu802701/rubocop_calculator_factory
Updated spec/factories/calculator_factory.rb for RuboCop
2020-10-16 08:36:53 +01:00
Jason Hsu
c39e238e83 Updated spec/factories/calculator_factory.rb to remove unnecessary space; reduces number of RuboCop offenses from 91 to 90 2020-10-16 00:08:19 -05:00
Maikel Linke
6c1139c296 Add script to draft release notes 2020-10-16 16:03:26 +11:00
Jason Hsu
0119d9d0eb Updated db/schema.rb by running bundle exec rake db:migrate 2020-10-15 23:56:43 -05:00
Maikel Linke
3679e0fac9 Copy all translations from Transifex 2020-10-16 15:34:24 +11:00
Maikel
960da1e7e9 Merge pull request #6179 from openfoodfoundation/transifex
Transifex
2020-10-16 15:33:11 +11:00
Maikel
8c65498661 Merge pull request #5998 from andrewpbrett/shipping-per-pound
Per-pound shipping calculator
2020-10-16 15:27:57 +11:00
Maikel
07780c5663 Merge pull request #6146 from openfoodfoundation/dependabot/bundler/geocoder-1.6.4
Bump geocoder from 1.6.3 to 1.6.4
2020-10-16 15:26:41 +11:00
Jason Hsu
bdf0cb1364 Exclude spec/support/request/stripe_helper.rb from Metrics/ModuleLength cop; reduces number of offenses from 90 to 89 2020-10-15 23:25:32 -05:00
Matt-Yorkley
f260a2d114 Merge pull request #6141 from Matt-Yorkley/mobile-shops-list
Make shops index page usable on mobile
2020-10-16 03:21:32 +02:00
Matt-Yorkley
25ee38cb9a Merge pull request #6128 from luisramos0/stripe_bo
Add feature specs to stripe payments in the BackOffice
2020-10-16 02:53:42 +02:00
Matt-Yorkley
248633e14f Merge pull request #6161 from Matt-Yorkley/add-polish-momentjs
Add polish translations with momentjs
2020-10-16 01:49:51 +02:00
dependabot-preview[bot]
66cde06cf8 Bump i18n-js from 3.7.1 to 3.8.0
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.7.1 to 3.8.0.
- [Release notes](https://github.com/fnando/i18n-js/releases)
- [Changelog](https://github.com/fnando/i18n-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fnando/i18n-js/compare/v3.7.1...v3.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-15 23:24:41 +00:00
dependabot-preview[bot]
4fa6070353 Bump activerecord-import from 1.0.6 to 1.0.7
Bumps [activerecord-import](https://github.com/zdennis/activerecord-import) from 1.0.6 to 1.0.7.
- [Release notes](https://github.com/zdennis/activerecord-import/releases)
- [Changelog](https://github.com/zdennis/activerecord-import/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zdennis/activerecord-import/compare/v1.0.6...v1.0.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-15 23:14:21 +00:00
Luis Ramos
6bacc2f627 Fix group_buy_report_spec by avoiding orders with duplicate line items 2020-10-15 18:33:56 +01:00
Luis Ramos
4c9e4ee926 Fix problem in calculator spec
I am not sure why this started failing on this branch only and not in master but this fix is correct because line_items are created with order defined already, an order.reload is enough to load them into the order
2020-10-15 17:19:39 +01:00
Matt-Yorkley
7de98e74b8 Use #setup_stripe helper in tests to ensure Stripe keys are present 2020-10-15 17:09:24 +01:00
Luis Ramos
5141723b21 Re-add restart checkout specs
These were breaking because of the class_evals on the checkout_spec
2020-10-15 16:06:27 +01:00
Luis Ramos
fb3f35100f Remove specs related to subsclassing the order class
This is not something we will  do
2020-10-15 16:06:27 +01:00
Luis Ramos
249b4d124f Remove more specs related to dynamic order checkout workflow 2020-10-15 16:06:27 +01:00
Luis Ramos
07b3c100e8 Remove code and specs related to dynamic checkout workflow, we have a static workflow defines in the Order class 2020-10-15 16:06:27 +01:00
Andy Brett
ca24068d37 use case-insensitive sql query 2020-10-15 07:55:19 -07:00
Transifex-Openfoodnetwork
5bd7000f58 Updating translations for config/locales/en_US.yml 2020-10-16 01:19:20 +11:00
Transifex-Openfoodnetwork
d9c107f282 Updating translations for config/locales/en_US.yml 2020-10-16 01:16:13 +11:00
Luis Ramos
6046b0f6e4 Fix typo 2020-10-15 14:54:42 +01:00
Luis Ramos
62a54e5f17 Add spec to cover stripe SCA refunds in the backoffice 2020-10-15 14:54:42 +01:00
Luis Ramos
bce81d27dd Move spec to end of file so we can extend this case with refunds and cancelations 2020-10-15 14:54:42 +01:00
Luis Ramos
a6ed003cb9 Extract redirect stub to stripe_helper 2020-10-15 14:54:42 +01:00
Luis Ramos
b341f593e7 Improve method names 2020-10-15 14:54:42 +01:00
Luis Ramos
59b4e425b6 Fix some rubocop issues 2020-10-15 14:54:42 +01:00
Luis Ramos
4ab2a8ddd1 Add spec to cover stripe payment that fails on card registration with a request/redirect for extra SCA authorization 2020-10-15 14:54:42 +01:00
Luis Ramos
a5dbdaf228 Add spec to cover stripe payment that fails on capture 2020-10-15 14:54:42 +01:00
Luis Ramos
76a9271d9e Add spec to cover payments in the backoffice for an order in the payment state 2020-10-15 14:54:42 +01:00
Luis Ramos
0178d3f1e6 Add spec that takes a stripe payment in the BO 2020-10-15 14:54:42 +01:00
Luis Ramos
cfed6a7048 Split payments_spec so that we can add more stripe specific specs 2020-10-15 14:54:42 +01:00
Luis Ramos
c664181266 Update PULL_REQUEST_TEMPLATE.md 2020-10-15 14:39:20 +01:00
Luis Ramos
945ea476fc Merge pull request #6176 from openfoodfoundation/dependabot/bundler/timecop-0.9.2
Bump timecop from 0.9.1 to 0.9.2
2020-10-15 13:50:53 +01:00
Luis Ramos
9e4e72bec3 Merge pull request #6167 from jhsu802701/rubocop_spec_support_request
Updated files in the spec/support/request directory for RuboCop compliance
2020-10-15 13:48:12 +01:00
Daniel Santamaría
3fe7638dd6 Fix docker local environment setup 2020-10-15 12:28:07 +02:00
Pau Pérez Fabregat
981c17b6a5 Merge pull request #6169 from luisramos0/rubocop_refresh
Refresh Rubocop exception files
2020-10-15 12:06:41 +02:00
Pau Pérez Fabregat
55b6e7fa89 Merge pull request #6164 from openfoodfoundation/dependabot/bundler/webmock-3.9.2
Bump webmock from 3.9.1 to 3.9.2
2020-10-15 10:23:46 +02:00
Luis Ramos
d54ddacc05 Merge pull request #5887 from luisramos0/orders
[Bye bye Spree] Bring models order, line_item and other related from spree_core
2020-10-15 08:49:05 +01:00
dependabot-preview[bot]
b009c8675b Bump timecop from 0.9.1 to 0.9.2
Bumps [timecop](https://github.com/travisjeffery/timecop) from 0.9.1 to 0.9.2.
- [Release notes](https://github.com/travisjeffery/timecop/releases)
- [Changelog](https://github.com/travisjeffery/timecop/blob/master/History.md)
- [Commits](https://github.com/travisjeffery/timecop/compare/v0.9.1...v0.9.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-14 17:34:03 +00:00
Luis Ramos
2b6b2c1b65 Update rubocop manual according to latest state of the codebase 2020-10-14 10:11:56 +01:00
Luis Ramos
6ea021a561 Update rubocop_todo.yml 2020-10-14 09:59:08 +01:00
Jason Hsu
a8eaabc5da Used guard clause in spec/support/request/checkout_helper.rb instead of an if statement with two actions; reduces the number of RuboCop offenses from 108 to 107 2020-10-13 12:14:15 -05:00
Jason Hsu
0d051b7c7d Added '# frozen_string_literal: true' to spec/support/request/checkout_helper.rb; reduces number of RuboCop offenses from 109 to 108 2020-10-13 12:05:50 -05:00
Jason Hsu
c6d6b6f65a Removed empty trailing line in spec/support/request/stripe_helper.rb; reduces RuboCop offenses from 110 to 109 2020-10-13 12:01:11 -05:00
Luis Ramos
dbd41e9d31 Use ruby 2.4 as github actions do not support ruby 2.3. 2020-10-13 10:31:26 +01:00
Luis Ramos
87327dcf57 Add brakeman config 2020-10-13 10:31:13 +01:00
dependabot-preview[bot]
7c3da77ad6 Bump webmock from 3.9.1 to 3.9.2
Bumps [webmock](https://github.com/bblimke/webmock) from 3.9.1 to 3.9.2.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.9.1...v3.9.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-13 09:07:36 +00:00
Pau Pérez Fabregat
f1e2040ce3 Merge pull request #6061 from arku/fix/sleep-removal
Remove sleep calls from select2 helper
2020-10-13 09:42:25 +02:00
Pau Pérez Fabregat
536f54d6a7 Merge pull request #6092 from jhsu802701/docker_scripts
Added Docker scripts in the new Docker directory
2020-10-13 09:36:12 +02:00
Arun Kumar Mohan
2ec35b6306 Remove unnecessary let declaration 2020-10-13 01:22:11 -05:00
Arun Kumar Mohan
e963ab4bd4 Replace FactoryBot.create with create 2020-10-13 01:21:47 -05:00
Matt-Yorkley
32999e6be4 Add polish translations with momentjs 2020-10-12 23:05:43 +01:00
Jason Hsu
03b33e99cf Merge branch 'master' into docker_scripts 2020-10-12 11:36:49 -05:00
Luis Ramos
9545c57969 Merge pull request #6049 from luisramos0/momentjs
Use yarn and move Momentjs from gemfile to yarn
2020-10-12 15:28:23 +01:00
Luis Ramos
9288250194 Merge pull request #5981 from luisramos0/spree_ability
[Bye bye spree] Bring classes related to abilities to OFN
2020-10-12 15:26:30 +01:00
Rajan Joshi
8b64fbe80e Reduce coverage threshold to 54 inorder to pass CI. 2020-10-11 19:18:24 +01:00
Rajan Joshi
fbadf25043 Add coverage threshold for simplecov. 2020-10-11 17:18:50 +01:00
Arun Kumar Mohan
14eee1c9e4 Improve product specs' performance 2020-10-11 01:10:11 -05:00
Arun Kumar Mohan
ff049d33e7 Improve variant stock specs' performance 2020-10-10 00:43:27 -05:00
Arun Kumar Mohan
b02e25af0e Improve shipment specs' performance 2020-10-09 23:28:32 -05:00
Arun Kumar Mohan
76293c335b Improve payment specs' performance 2020-10-09 23:05:14 -05:00
Arun Kumar Mohan
01d2c3cb9e Improve variant specs' performance 2020-10-09 22:11:34 -05:00
Arun Kumar Mohan
80c76606df Improve line items specs' performance 2020-10-09 22:11:34 -05:00
Arun Kumar Mohan
b07fbec8c6 Improve credit card specs' performance 2020-10-09 22:11:34 -05:00
Arun Kumar Mohan
c4205fce34 Improve enterprise specs' performance 2020-10-09 22:11:34 -05:00
Arun Kumar Mohan
a959f8e745 Improve inventory reset strategy specs' performance 2020-10-09 22:11:34 -05:00
Arun Kumar Mohan
437c39f795 Improve taxon specs' performance 2020-10-09 22:11:34 -05:00
Arun Kumar Mohan
27f1aeb803 Improve shipping method specs' performance 2020-10-09 22:11:31 -05:00
Jason Hsu
c53d4cf8ea Corrected typos in docker/seed 2020-10-08 23:24:54 -05:00
Jason Hsu
e5d97e37f1 Moved docker network prune -f command from docker/nukec to docker/nuke 2020-10-08 14:46:12 -05:00
Jason Hsu
71ad109f78 Changed docker/exec to docker/run; updated docker/README.md to reflect this 2020-10-08 14:43:30 -05:00
Jason Hsu
d9476ec87d Corrected the docker-compose commands in docker/cop, docker/seed, and docker/test-log 2020-10-08 14:38:49 -05:00
Jason Hsu
74980401b5 Synced to master; moved section about troubleshooting Docker in Windows to docker/README.md 2020-10-08 14:06:54 -05:00
Arun Kumar Mohan
1c4ef87654 Fix product import date filter spec
The spec was failing because the date in the spec had a couple of
spaces after the month name (October  9, 2020) but in the filter,
the two spaces were converted to a single space (October 9, 2020)
and the select2 helper wasn't able to select the option.
2020-10-08 13:29:23 -05:00
Luis Ramos
559af5076d Make the release notes intructions a bit more clear so new contributors make them short 2020-10-08 10:37:39 +01:00
Luis Ramos
6806035a45 Update all locales with the latest Transifex translations 2020-10-08 10:15:26 +01:00
Luis Ramos
b1dbf4fe0e Merge pull request #6147 from openfoodfoundation/transifex
Transifex
2020-10-08 10:13:00 +01:00
Luis Ramos
0829eaf0fb Merge pull request #6148 from openfoodfoundation/luisramos0-patch-1
Add break line troubleshooting to docker guide
2020-10-08 09:24:27 +01:00
Luis Ramos
da2e3c7cd1 Merge pull request #6144 from arku/fix/adjustment-metadata-spec
Fix adjustment metadata spec
2020-10-08 08:59:52 +01:00
Luis Ramos
d5f793f451 Add break line troubleshooting to docker guide 2020-10-08 08:40:14 +01:00
Transifex-Openfoodnetwork
8269665a7c Updating translations for config/locales/en_NZ.yml 2020-10-08 16:53:14 +11:00
Arun Kumar Mohan
4b7d4ad960 Refactor select2 specs 2020-10-07 21:56:43 -05:00
Arun Kumar Mohan
ead1419583 Remove sleep calls from select2 helper 2020-10-07 21:56:43 -05:00
Luis Ramos
1e7a3d7f46 Merge pull request #6123 from openfoodfoundation/mkllnk-patch-1
Create an initial Code of Conduct placeholder file
2020-10-07 23:36:59 +01:00
dependabot-preview[bot]
4ecfeaee4c Bump geocoder from 1.6.3 to 1.6.4
Bumps [geocoder](https://github.com/alexreisner/geocoder) from 1.6.3 to 1.6.4.
- [Release notes](https://github.com/alexreisner/geocoder/releases)
- [Changelog](https://github.com/alexreisner/geocoder/blob/master/CHANGELOG.md)
- [Commits](https://github.com/alexreisner/geocoder/compare/v1.6.3...v1.6.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-07 22:03:07 +00:00
Luis Ramos
6c95444339 Merge pull request #6020 from andresgutgon/fix/admin-menu-in-multiple-lines
Fixed admin header buttons dropping multiple lines.
2020-10-07 21:24:48 +01:00
Luis Ramos
48ea804615 Merge pull request #6121 from cillian/fix-shop-variant-search
When searching for shop products check the variant :display_name and :display_as fields too
2020-10-07 21:22:46 +01:00
Luis Ramos
8626e7b433 Merge pull request #6094 from andrewpbrett/fix-inventory-import
Fix #6090 (Inventory import fails for products with units other than "g")
2020-10-07 21:21:40 +01:00
Luis Ramos
88b17372af Merge pull request #6131 from Snick555/issue-6118
Show product description in creation form after errors appeared
2020-10-07 21:21:13 +01:00
Luis Ramos
961e559a31 Merge pull request #6083 from luisramos0/shop_tabs_style
Make shop tabs black and capitalized in smaller screens
2020-10-07 14:39:23 +01:00
Pau Pérez Fabregat
85cee9e8cb Merge pull request #6091 from luisramos0/vat_rates_cache
Delete dead code brought from spree
2020-10-07 11:58:26 +02:00
Pau Pérez Fabregat
1e6fa1666c Merge pull request #6113 from openfoodfoundation/dependabot/bundler/knapsack-1.19.0
Bump knapsack from 1.18.0 to 1.19.0
2020-10-07 11:57:12 +02:00
Pau Pérez Fabregat
ce856750aa Merge pull request #6116 from openfoodfoundation/dependabot/bundler/ddtrace-0.41.0
Bump ddtrace from 0.40.0 to 0.41.0
2020-10-07 11:56:45 +02:00
Pau Pérez Fabregat
07e625ec32 Merge pull request #6104 from openfoodfoundation/dependabot/bundler/haml-5.2.0
Bump haml from 5.1.2 to 5.2.0
2020-10-07 11:56:12 +02:00
Arun Kumar Mohan
a20762a1f2 Fix adjustment metadata spec 2020-10-06 19:02:59 -05:00
Andy Brett
0edd341d46 add unit test for inventory import entry_validation 2020-10-06 10:17:30 -07:00
Luis Ramos
c31380cd1d Merge pull request #6132 from Matt-Yorkley/stripe-multiple-payments-spec
Stripe Tests: multiple attempted payments
2020-10-06 17:17:25 +01:00
Jason Hsu
3985e0e4bc Merge branch 'master' into docker_scripts 2020-10-06 10:53:33 -05:00
Matt-Yorkley
a04c2ccd6e Make producers and groups pages usable on mobile 2020-10-06 14:18:41 +01:00
Matt-Yorkley
469e4a4c87 Make shops index page usable on mobile 2020-10-06 14:18:39 +01:00
Luis Ramos
a4c8380d7e Remove removal of transition to confirm as confirm does not exist anymore 2020-10-06 13:00:43 +01:00
Matt-Yorkley
0c109d6384 Merge pull request #6103 from openfoodfoundation/dependabot/bundler/dalli-2.7.11
Bump dalli from 2.7.10 to 2.7.11
2020-10-06 11:15:37 +02:00
Pau Pérez Fabregat
427d1aaeff Merge pull request #6079 from arku/perf/test-prof-setup
Set up test_prof gem
2020-10-06 10:30:43 +02:00
Matt-Yorkley
6d169c1b08 Improve Webmock debugging 2020-10-05 17:11:34 +01:00
Matt-Yorkley
3b130327a5 DRY error_message variable used multiple times 2020-10-05 00:51:01 +01:00
Matt-Yorkley
ced5329835 Add Stripe spec for multiple attempted payments at checkout 2020-10-05 00:50:59 +01:00
dependabot-preview[bot]
ee6f0f7951 Bump ddtrace from 0.40.0 to 0.41.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.40.0 to 0.41.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.40.0...v0.41.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-04 19:18:47 +00:00
dependabot-preview[bot]
6149a79038 Bump knapsack from 1.18.0 to 1.19.0
Bumps [knapsack](https://github.com/ArturT/knapsack) from 1.18.0 to 1.19.0.
- [Release notes](https://github.com/ArturT/knapsack/releases)
- [Changelog](https://github.com/ArturT/knapsack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ArturT/knapsack/compare/v1.18.0...v1.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-04 19:15:57 +00:00
ivoloshy
7321e4ef89 show product description in creation form after errors appeared 2020-10-04 20:44:57 +03:00
Matt-Yorkley
76def3a74f Merge pull request #6124 from luisramos0/stripe_specs
Add more checkout feature specs covering stripe SCA cases
2020-10-03 18:24:06 +02:00
Luis Ramos
a5309627b7 Fix a typo 2020-10-03 15:46:29 +01:00
Luis Ramos
80ea80f26e DRY stripe spec 2020-10-03 11:50:04 +01:00
Luis Ramos
14f5ecfe0b Add spec to cover StripeSCA extra auth with redirect and failed auth 2020-10-03 11:39:56 +01:00
Luis Ramos
df4ec67974 Add feature spec that covers stripe_sca redirect case 2020-10-03 11:09:24 +01:00
Maikel
4b1e1afa69 Create an initial Code of Conduct placeholder file 2020-10-03 08:48:15 +10:00
Luis Ramos
ef70c1fc5c Make helper more flexible and use it in a spec 2020-10-02 19:20:32 +01:00
Luis Ramos
83456f94e3 Simplify test by re-using helper stripe mock 2020-10-02 19:12:56 +01:00
Luis Ramos
ff9f374950 Merge pull request #6050 from Matt-Yorkley/stripe-checkout-spec
Stripe checkout spec
2020-10-02 18:57:22 +01:00
Cillian O'Ruanaidh
6c22ee43a7 When searching for shop products check the variant :display_name and :display_as fields too.
Fixes #5757
2020-10-02 16:05:48 +01:00
Luis Ramos
6a2e49b9e7 Update all locales with the latest Transifex translations 2020-10-02 12:54:45 +01:00
Luis Ramos
ab0ecfb203 Merge pull request #6106 from openfoodfoundation/transifex
Transifex
2020-10-02 12:46:56 +01:00
Luis Ramos
db2e760c4c Merge pull request #6120 from luisramos0/restart_checkout
Comment 2 broken specs until we manage to fix them
2020-10-02 12:39:04 +01:00
Luis Ramos
da82df39c2 Comment 2 broken specs until we manage to fix them 2020-10-02 11:59:38 +01:00
Luis Ramos
98fb60a5e0 Merge pull request #6110 from filipefurtad0/content_spec.rb
content_spec.rb improvement
2020-10-01 23:22:04 +01:00
Andy Brett
854916907e add feature spec for inventory import in kg 2020-10-01 13:27:57 -07:00
Matt-Yorkley
1cc950a4d9 DRY StripeHelper methods 2020-10-01 15:54:16 +01:00
Steve Roberts
8679e438e8 Add matomo tag to admin pages 2020-10-01 21:37:05 +10:00
Arun Kumar Mohan
4858f5fb80 Improve order specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
350a3c0e1e Improve order checkout specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
b850f10d2e Improve classification specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
362ab8a605 Improve variant override specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
f5985de802 Improve order cycle specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
6c27ac5f99 Improve filter shipping methods tag rule specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
bb38523767 Improve filter products tag rule specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
e109ed6be7 Improve filter payment methods tag rule specs' performance 2020-10-01 01:43:08 -05:00
Arun Kumar Mohan
780f31f98e Improve filter order cycles tag rule specs' performance 2020-10-01 01:43:05 -05:00
François Turbelin
eda904337b Merge pull request #5810 from pacodelaluna/improve-dfc-standard-integration
Improve DFC Provider engine to support version 1.3
2020-09-30 11:13:03 +02:00
filipefurtad0
a85e500bb1 moves content_spec.rb into /configuration and adds an href string, incresing Redcarpet test coverage 2020-09-29 22:39:05 +01:00
Transifex-Openfoodnetwork
8480e16cac Updating translations for config/locales/tr.yml 2020-09-29 22:33:21 +10:00
Transifex-Openfoodnetwork
2eeba0483c Updating translations for config/locales/tr.yml 2020-09-29 22:30:18 +10:00
Transifex-Openfoodnetwork
e2ae566e88 Updating translations for config/locales/pl.yml 2020-09-29 22:08:01 +10:00
Transifex-Openfoodnetwork
01c6d5bc9c Updating translations for config/locales/ru.yml 2020-09-29 20:47:26 +10:00
Transifex-Openfoodnetwork
856ad24c6f Updating translations for config/locales/ru.yml 2020-09-29 20:44:21 +10:00
dependabot-preview[bot]
678e7acde0 Bump haml from 5.1.2 to 5.2.0
Bumps [haml](https://github.com/haml/haml) from 5.1.2 to 5.2.0.
- [Release notes](https://github.com/haml/haml/releases)
- [Changelog](https://github.com/haml/haml/blob/main/CHANGELOG.md)
- [Commits](https://github.com/haml/haml/compare/v5.1.2...v5.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-29 09:32:15 +00:00
dependabot-preview[bot]
4914a0d3a8 Bump dalli from 2.7.10 to 2.7.11
Bumps [dalli](https://github.com/petergoldstein/dalli) from 2.7.10 to 2.7.11.
- [Release notes](https://github.com/petergoldstein/dalli/releases)
- [Changelog](https://github.com/petergoldstein/dalli/blob/master/History.md)
- [Commits](https://github.com/petergoldstein/dalli/compare/v2.7.10...v2.7.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-29 09:29:14 +00:00
Pau Pérez Fabregat
e79187c1df Merge pull request #6097 from openfoodfoundation/transifex
Transifex
2020-09-29 09:22:59 +02:00
Matt-Yorkley
c518e7e0dd Extract Stripe credit card form filling 2020-09-28 19:59:26 +01:00
Matt-Yorkley
2babfa9a7b Add rejected card test 2020-09-28 19:55:52 +01:00
Transifex-Openfoodnetwork
c7d6b2782c Updating translations for config/locales/nb.yml 2020-09-28 22:29:05 +10:00
Transifex-Openfoodnetwork
3d71c2c0b8 Updating translations for config/locales/en_GB.yml 2020-09-28 21:31:02 +10:00
Pau Pérez Fabregat
807f91b0b8 Merge pull request #6093 from openfoodfoundation/RachL-patch-1
Hacktoberfest
2020-09-28 12:04:55 +02:00
Jason Hsu
881ace6a85 Merge branch 'master' into docker_scripts 2020-09-27 13:39:40 -05:00
Arun Kumar Mohan
6a722f2bbd Set up test-prof gem 2020-09-26 15:22:43 -05:00
Luis Ramos
d5ab3b47eb Merge pull request #6065 from arku/perf/address-specs
Replace `create` with `build_stubbed` in address model specs
2020-09-26 21:19:28 +01:00
Luis Ramos
0100963a39 Delete dead code brought from spree 2020-09-26 21:16:27 +01:00
Arun Kumar Mohan
06a3e55348 Replace create with build_stubbed in address model specs 2020-09-25 22:54:58 -05:00
Jason Hsu
ea9d5f7c5a Removed testc and testm; made the requested changes to the order of the scripts in the summary section 2020-09-25 20:35:24 -05:00
Luis Ramos
bbef0bac5f Make font size 1em for larger screens 2020-09-25 21:28:22 +01:00
Rachel Arnould
dbe6c316f8 Change typo
"participating in" instead of "participating to"
2020-09-25 19:07:33 +02:00
Rachel Arnould
21eef7187b Hacktoberfest
A proposal for the banner on Hacktoberfest.
2020-09-25 18:13:00 +02:00
Andy Brett
4f942db0ba convert entry's unscaled_units to a float
This was coming in as a string, e.g. "1", so when we did "1" * 1000 it returned "11111111111111....." :)
2020-09-25 09:12:19 -07:00
Jason Hsu
2b5a875bac Added script summary to docker/README.md 2020-09-25 11:00:54 -05:00
Jason Hsu
d2523abe34 Moved contents of DOCKER.md to docker/README.md; removed DOCKER.md; updated link to Docker page in GETTING_STARTED.md 2020-09-25 00:49:44 -05:00
Jason Hsu
97a38865a2 Added docker/testm 2020-09-25 00:30:20 -05:00
Jason Hsu
a46683ef01 Added docker/testc 2020-09-25 00:24:24 -05:00
Jason Hsu
2a902f29bb Added comments to scripts 2020-09-25 00:12:27 -05:00
Jason Hsu
dff6e5ce38 Merge branch 'master' into docker_scripts 2020-09-24 23:43:28 -05:00
Jason Hsu
423a766463 Added docker/exec 2020-09-24 23:42:00 -05:00
Luis Ramos
9b5bd7bb1c Merge pull request #6066 from arku/perf/variant-override-specs
Replace `create` with `build_stubbed` in variant override model specs
2020-09-24 18:47:08 +01:00
Luis Ramos
c377e316d5 Merge pull request #6068 from arku/perf/coordinator-specs
Replace `create` with `build_stubbed` in coordinator model specs
2020-09-24 18:46:45 +01:00
Luis Ramos
aa74b58810 Merge pull request #6067 from arku/perf/tag-rule-specs
Remove unnecessary create call in tag rule model specs
2020-09-24 18:45:18 +01:00
Luis Ramos
8919adb6bf Merge pull request #6074 from arku/perf/shipping-rate-specs
Replace `create` with `build_stubbed` in shipping rate model specs
2020-09-24 18:42:30 +01:00
Luis Ramos
e04b85e900 Merge pull request #6078 from arku/perf/per-item-flexi-rate-specs
Replace `build` with `build_stubbed` in flexi rate and per item model specs
2020-09-24 18:41:29 +01:00
Luis Ramos
b8fae8e3a3 Merge pull request #6077 from arku/perf/calculator-price-sack-specs
Replace `build` with `build_stubbed` in price sack model specs
2020-09-24 18:41:19 +01:00
Luis Ramos
01fdee9dba Merge pull request #6076 from arku/perf/calculator-flat-percent-item-total-specs
Replace `build` with `build_stubbed` in flat percent item total specs
2020-09-24 18:40:55 +01:00
Luis Ramos
dfd54c1cbc Merge pull request #6075 from arku/perf/calculator-weight-specs
Replace `create` with `build_stubbed` in calculator weight model specs
2020-09-24 18:40:31 +01:00
Andy Brett
84eb8e964d add specs for weight calculators using lbs 2020-09-24 07:03:57 -07:00
Luis Ramos
74161267fd Prepare seed data for bye bye spree 2020-09-24 12:54:43 +01:00
Jason Hsu
5ced17a94e Added docker/test and docker/test-log 2020-09-23 23:36:13 -05:00
Jason Hsu
c6fbc1e136 Added docker/cop 2020-09-23 23:27:51 -05:00
Jason Hsu
792127745a Added docker/server scripts 2020-09-23 23:22:38 -05:00
Jason Hsu
8125a860ea Merge branch 'master' into docker_scripts 2020-09-23 23:09:26 -05:00
Luis Ramos
1b4e19b32d Remore preferences not used in OFN 2020-09-23 22:16:56 +01:00
Luis Ramos
3074d3a17a Customize some defaults to OFN 2020-09-23 22:13:36 +01:00
Luis Ramos
5bf91cb140 Remove unused spree code 2020-09-23 22:13:36 +01:00
Luis Ramos
ce2f0a5b9e Transpec specs 2020-09-23 22:13:36 +01:00
Luis Ramos
d6862cdbce Revert rubocop autocorrect change, it breaks some of the tests 2020-09-23 22:13:36 +01:00
Luis Ramos
b9319239d5 Remove configurations that are no longer used as we have moved the code to OFN and fix specs 2020-09-23 22:13:36 +01:00
Luis Ramos
9ebb689370 Fix easy rubocop issues 2020-09-23 22:13:36 +01:00
Luis Ramos
024a64b73a Fix single rubocop rule: Use nested module definitions instead of compact style 2020-09-23 22:13:36 +01:00
Luis Ramos
25e61897aa Run rubocop autocorrect 2020-09-23 22:13:36 +01:00
Luis Ramos
ed81ceaffe Merge decorator with original file 2020-09-23 22:13:36 +01:00
Luis Ramos
8b42543ca3 Bring configuration and preferences code from spree_core 2020-09-23 22:13:36 +01:00
Pau Pérez Fabregat
54a51a4995 Merge pull request #5988 from openfoodfoundation/dependabot/bundler/stripe-5.25.0
Bump stripe from 5.22.0 to 5.25.0
2020-09-23 21:14:32 +02:00
Pau Perez
37d113ed78 Update all locales with the latest Transifex translations 2020-09-23 21:09:49 +02:00
Pau Pérez Fabregat
8f6e527f8a Merge pull request #6044 from openfoodfoundation/transifex
Transifex
2020-09-23 21:06:44 +02:00
Jason Hsu
6a6f9be18e Added build and seeding scripts 2020-09-23 13:55:58 -05:00
Pau Pérez Fabregat
0d259b217e Merge pull request #6017 from Matt-Yorkley/tidyup
Remove old code
2020-09-23 20:47:33 +02:00
Pau Pérez Fabregat
2e5b5eaac5 Merge pull request #6043 from andrewpbrett/imperial-units-product-import
Add oz and lb as allowed units in product import
2020-09-23 20:46:54 +02:00
Pau Pérez Fabregat
faaf391892 Merge pull request #6051 from luisramos0/russian
Adding the russian language to github
2020-09-23 20:43:22 +02:00
Transifex-Openfoodnetwork
feed9376dd Updating translations for config/locales/es.yml 2020-09-24 04:36:06 +10:00
Transifex-Openfoodnetwork
b829fea0c2 Updating translations for config/locales/ca.yml 2020-09-24 04:36:01 +10:00
Jason Hsu
06d54a3f4d Added docker directory and scripts for resetting Docker 2020-09-23 12:46:08 -05:00
Luis Ramos
fb9bcdee7c Load spree js on OFN side, not the one on Spree's side 2020-09-23 12:45:30 +01:00
Luis Ramos
3af5482960 Make date picker work with karma tests where the old Spree.translations js translations object is not defined 2020-09-23 12:45:30 +01:00
Luis Ramos
bfd4164c0b Remove handlebar extensions and some dead translations
This is not needed, these translations are always used through Spree.translations and this system is deprecated anyway
2020-09-23 12:45:30 +01:00
Luis Ramos
d5d2ae3ce0 Remove some dead code and broken links from comments 2020-09-23 12:45:29 +01:00
Luis Ramos
496f9c106e Bring the very last bits of js and css from spree_core 2020-09-23 12:45:29 +01:00
Luis Ramos
a2610279d9 Merge pull request #5976 from luisramos0/address_form
Fix address state selector and "use billing address" checkbox in order customer details page
2020-09-23 12:42:37 +01:00
Luis Ramos
2234ea6f5a Make shop tabs black and capitalized 2020-09-22 16:59:42 +01:00
Matt-Yorkley
25a8c44c22 Merge pull request #6018 from Matt-Yorkley/tax-display
Tax display
2020-09-22 17:53:04 +02:00
Luis Ramos
7ebdc1d0da Merge pull request #6059 from andresgutgon/fix/sticky-search-bar-disapears-when-cart-is-open
Fix sticky search bar disappearing when cart is open.
2020-09-22 10:52:33 +01:00
Arun Kumar Mohan
bc77b8bcb2 Replace build with build_stubbed in per item model specs 2020-09-21 21:24:38 -05:00
Arun Kumar Mohan
38ab95a9a4 Replace build with build_stubbed in flexi rate model specs 2020-09-21 21:22:59 -05:00
Arun Kumar Mohan
698d8b35fa Replace build with build_stubbed in price sack model specs 2020-09-21 21:18:36 -05:00
Arun Kumar Mohan
a257a9e9d2 Replace build with build_stubbed in calculator weight model specs 2020-09-21 21:12:30 -05:00
Arun Kumar Mohan
231fbcd11a Replace build with build_stubbed in flat percent item total specs 2020-09-21 21:04:16 -05:00
Arun Kumar Mohan
c098ba0ce3 Replace create with build_stubbed in calculator weight model specs 2020-09-21 20:46:50 -05:00
Arun Kumar Mohan
f7a9cc63a7 Replace create with build_stubbed in shipping rate model specs 2020-09-21 20:37:35 -05:00
Andy Brett
9ef706a201 update styles on enterprise fee UI 2020-09-21 15:21:18 -07:00
Luis Ramos
5c25d92354 Merge pull request #6069 from arku/perf/adjustment-metadata-specs
Replace `create` with `build` in adjustment metadata model specs
2020-09-21 12:22:24 +01:00
Arun Kumar Mohan
0aa5ee081e Replace create with build in adjustment metadata model specs 2020-09-21 01:54:46 -05:00
Arun Kumar Mohan
317618595c Replace create with build_stubbed in coordinator model specs 2020-09-21 01:47:19 -05:00
Arun Kumar Mohan
289fd09e20 Remove unnecessary create call in tag rule model specs 2020-09-21 01:09:14 -05:00
Arun Kumar Mohan
239b6e7577 Replace create with build_stubbed in variant override model specs 2020-09-21 00:45:35 -05:00
Matt-Yorkley
5bca561c4a Refactor Stripe request stubbing to helper 2020-09-20 17:06:03 +01:00
Transifex-Openfoodnetwork
82cf2afec9 Updating translations for config/locales/en_CA.yml 2020-09-20 23:27:52 +10:00
Transifex-Openfoodnetwork
8ea7614353 Updating translations for config/locales/fr_CA.yml 2020-09-20 23:25:11 +10:00
Luis Ramos
714bfafede Merge pull request #6037 from arku/fix/hash-diff-deprecation
Remove Hash#diff from cancan helper
2020-09-19 20:21:24 +01:00
Luis Ramos
8f98fb830a Merge pull request #6053 from jhsu802701/bundler_1_17_3
Upgraded the bundler version in the Dockerfile
2020-09-19 19:33:48 +01:00
Matt-Yorkley
6737270ab7 Rename partial 2020-09-19 15:49:14 +01:00
Matt-Yorkley
70bd2161ba Rename Stripe Connect factory for clarity 2020-09-19 12:55:31 +01:00
Matt-Yorkley
1d01fc955d Include StripeJS fixture and refactor to partial 2020-09-19 12:20:55 +01:00
Matt-Yorkley
4080e7daa4 Add comments in StripeJS mock 2020-09-19 12:20:55 +01:00
Matt-Yorkley
cca8f9faf6 Add missing behaviour in StripeJS mock 2020-09-19 12:20:55 +01:00
andresgutgon
636da229ad Fix sticky search bar disappearing when cart is open.
So I think the issue is that all the HTML is wrapped on an
`off-canvas-wrap` class that is used for doing the sidebar car open over
main content. The problem is that when this car sidebar is open body of
HTML overflow is changed to `overflow: hidden` and search bar use CSS
`position: sticky;` which doesn't work  when its parent has overflow
hidden. The issue was that `off-canvas-wrap` had an `overflow: inherit`
which means when body is set to overflow hidden this div inherits it and
break search bar position sticky when cart sidebar is opened. The
solution is to use `position: initial` which means use what a div has as
default value for `overflow` which I think it's `visible`. This class is
overriding the same class that comes from Foundation Framework that set
this div to be `overflow: hidden`. The override was added when [we added
search sticky](ff69389bb0)

More info about the problem with [position:sticky and its parent having
overflow hidden](https://css-tricks.com/dealing-with-overflow-and-position-sticky/) also info about [position initial vs inherit](https://stackoverflow.com/a/29661356)
2020-09-19 12:21:24 +02:00
andresgutgon
ef85ac3e27 Fixed admin header buttons dropping multiple lines. 2020-09-19 11:37:09 +02:00
Matt-Yorkley
368772dad2 Add another missing method to StripeJS mock
Our Angular code calls this method in some tests and expects a Promise object with a hash describing a payment method.
2020-09-19 00:39:39 +01:00
Matt-Yorkley
857f4e3a37 Add missing method to StripeJS mock
Our Angular code calls this method for interacting with live form validations and messages. We don't really need to use in tests, it just needs to exist otherwise the specs fail.
2020-09-19 00:39:39 +01:00
Matt-Yorkley
67d136548f Update form elements to more accurately reflect actual Stripe form
These attributes more closely reflect the actual form injected by Stripe. The additional attributes are also useful for selecting elements in tests
2020-09-19 00:39:39 +01:00
Matt-Yorkley
4c77c41533 Remove unused postal field from form 2020-09-19 00:39:39 +01:00
Matt-Yorkley
49bd9bd778 Import StripeJS mock from fake_stripe gem
This is the original from https://github.com/thoughtbot/fake_stripe/blob/v0.3.0/lib/fake_stripe/assets/v3.js
2020-09-19 00:39:39 +01:00
Matt-Yorkley
0ba3977422 Add new Stripe checkout spec 2020-09-19 00:39:32 +01:00
Andy Brett
edefe1d4bc use correct cache key for old preference 2020-09-18 14:35:51 -07:00
Matt-Yorkley
4ed34bb942 Add javascript debug option to test suite 2020-09-18 21:20:47 +01:00
Jason Hsu
560577827f Upgraded the bundler version in the Dockerfile to be consistent with that specified in Gemfile.lock 2020-09-18 15:07:44 -05:00
Andy Brett
b9ee945062 fix nomethod error by interpolating integer inside string 2020-09-18 10:10:27 -07:00
Andy Brett
dc7b9ed8fa use sql query to update weight calculator prefs 2020-09-18 09:55:29 -07:00
Luis Ramos
9c1a7c13dc Adding the russian language 2020-09-18 16:43:57 +01:00
Luis Ramos
fe7d7b54d1 Make version number 1.0.0 as we dont want to mantain the app version here and update AGPL to v3 2020-09-18 16:20:09 +01:00
Luis Ramos
2fae7e0df3 Use moment js min and locale files from node_modules
In this commit fil and nl-be are also added

We could use moment/min/locales.min.js but that would add all locales available in moment which would be a move in size from current 30k in moment locales to 300k
2020-09-18 16:18:24 +01:00
Luis Ramos
d4c4bcaa50 Make node_modules available for code in app/assets 2020-09-18 15:53:34 +01:00
Luis Ramos
5b3f700fb4 Move momentjs from a Gemfile dependeny to a package.jons dependency and upgrade it from 2.20.1 to 2.28.0 2020-09-18 15:29:38 +01:00
Luis Ramos
a872667912 Add yarn.lock after yarn was added in ofn-install and installed in all servers, every ofn deploy will run yarn install now 2020-09-18 15:28:43 +01:00
Transifex-Openfoodnetwork
9cb7275250 Updating translations for config/locales/ar.yml 2020-09-18 19:49:55 +10:00
Transifex-Openfoodnetwork
3bf98e295d Updating translations for config/locales/en_FR.yml 2020-09-18 17:36:38 +10:00
Transifex-Openfoodnetwork
678e0be0a5 Updating translations for config/locales/fr.yml 2020-09-18 17:36:29 +10:00
Andy Brett
843f43eb78 delete cached per_kg preference for all weight calculators 2020-09-17 17:30:43 -07:00
Andy Brett
96fb65600e refactor views to oneliners without single letter variable names 2020-09-17 16:45:55 -07:00
Andy Brett
fdb1019ee2 fix styles per rubocop 2020-09-17 16:41:49 -07:00
Andy Brett
0ef4dec15e specs for product import using pounds and ounces 2020-09-17 09:34:22 -07:00
Andy Brett
bd25e8b40d Revert "schema update"
This reverts commit 73149dc695.
2020-09-17 08:46:03 -07:00
Andy Brett
66099239aa add translation for calculator preferred unit error 2020-09-17 08:42:08 -07:00
Andy Brett
988abf7a8c update preference field interface to be more clear 2020-09-17 08:27:45 -07:00
Transifex-Openfoodnetwork
880ef9cf4f Updating translations for config/locales/es.yml 2020-09-18 01:01:34 +10:00
Transifex-Openfoodnetwork
095633f21e Updating translations for config/locales/ca.yml 2020-09-18 00:59:40 +10:00
Pau Pérez Fabregat
3a894a1cdb Merge pull request #6002 from openfoodfoundation/dependabot/bundler/unicorn-5.7.0
Bump unicorn from 5.6.0 to 5.7.0
2020-09-17 16:57:16 +02:00
Transifex-Openfoodnetwork
ee862891c1 Updating translations for config/locales/en_FR.yml 2020-09-18 00:51:30 +10:00
Transifex-Openfoodnetwork
9dccb641c7 Updating translations for config/locales/fr.yml 2020-09-18 00:50:02 +10:00
Andy Brett
73149dc695 schema update 2020-09-17 07:36:38 -07:00
Andy Brett
977e4e46f3 remove explicit raise from convert_weight 2020-09-17 07:36:28 -07:00
Andy Brett
6466829bdc fix typo in weight calculator migration 2020-09-17 07:17:25 -07:00
Andy Brett
d1a87f7ba0 add oz and lb as allowed units in product import 2020-09-17 06:34:07 -07:00
Luis Ramos
455111093d Fix easy rubocop issues 2020-09-17 14:18:51 +01:00
Luis Ramos
ecdba1fa4e For some reason the factory create(:admin_user) is not working here, this new version works 2020-09-17 14:18:51 +01:00
Luis Ramos
8234ad0906 Ensure test order cycle coordinator is really an enterprise not managed by the user instead of relying on the factory logic 2020-09-17 14:18:51 +01:00
Luis Ramos
60ef32300b No need to test code with different ability setup, this was a good spec for spree, in ofn we use and test the static auth config in Ability 2020-09-17 14:18:51 +01:00
Luis Ramos
405b317726 Merge ability and ability decorator 2020-09-17 14:18:45 +01:00
Luis Ramos
22eac6200c Add needed fake ability 2020-09-17 14:10:37 +01:00
Luis Ramos
32649cb25a Transpec ability_spec 2020-09-17 14:10:37 +01:00
Luis Ramos
895ab62ba9 Bring ability helpers from spree_core and fix ability_spec 2020-09-17 14:10:37 +01:00
Luis Ramos
37c7d254e1 Fix rubocop issues 2020-09-17 14:10:37 +01:00
Luis Ramos
051ee0fd14 Run rubocop -a 2020-09-17 14:10:37 +01:00
Luis Ramos
c00c03737e Bring user and ability related files from spree_core 2020-09-17 14:10:37 +01:00
Luis Ramos
a16dc4d720 Move ability decorator specs to specific file 2020-09-17 14:10:36 +01:00
Luis Ramos
4b597ada12 Fix easy rubocop issues 2020-09-17 14:06:51 +01:00
Luis Ramos
fe7cf0cf44 Remove reference to FactoryGirl 2020-09-17 14:06:51 +01:00
Luis Ramos
f81d4596aa Use correct updater 2020-09-17 14:06:51 +01:00
Luis Ramos
e0d731b92b Remove unused email validator 2020-09-17 14:06:51 +01:00
Luis Ramos
a5ff4d6853 Remove unneeded setup code and remove unnecessary reference to FactoryGirl 2020-09-17 14:06:51 +01:00
Luis Ramos
03419bbc35 Remove all and use find_each instead! 2020-09-17 14:06:51 +01:00
Luis Ramos
c49dbec85a Adapt order_spec to new updater code 2020-09-17 14:06:51 +01:00
Luis Ramos
7884dbfeb1 Revert rubocop autocorrect, each is needed here for find_each is not available for Arrays 2020-09-17 14:06:51 +01:00
Luis Ramos
4215dcb927 Run transpec on the new specs from spree_core 2020-09-17 14:06:50 +01:00
Luis Ramos
31f9cd3caf Fix spec/models/spree/order specs 2020-09-17 14:06:50 +01:00
Luis Ramos
8643cbd8ce Delete unused order.merge! and fix specs 2020-09-17 14:06:50 +01:00
Luis Ramos
2753e86325 Run rubocop autocorrect 2020-09-17 14:06:50 +01:00
Luis Ramos
2cd066237d Fix easy rubocop issues 2020-09-17 14:06:50 +01:00
Luis Ramos
94ad02abbe Run rubocop autocorrect 2020-09-17 14:06:50 +01:00
Luis Ramos
3c5a35df27 Remove original email validator and keep only previous OFN validator 2020-09-17 14:06:50 +01:00
Luis Ramos
82a116a92f We always define Spree.user_class 2020-09-17 14:06:50 +01:00
Luis Ramos
cc87e8c9a2 Remove code related to promotions 2020-09-17 14:06:50 +01:00
Luis Ramos
2a6d83b4dd Remove confirm checkout step and it's additional removal 2020-09-17 14:06:50 +01:00
Luis Ramos
6900f7a46f Merge decorators with original files from spree_core
EPIC COMMIT ALERT :-)
2020-09-17 14:06:50 +01:00
Luis Ramos
47d2f698ef Bring models related to Order from spree_core
EPIC COMMIT ALERT :-)
2020-09-17 14:05:29 +01:00
Matt-Yorkley
77eaebc2a7 Merge pull request #5888 from andrewpbrett/imperial-auto-units
Allow US units on products/variants
2020-09-17 15:04:15 +02:00
Luis Ramos
1a513567f2 Fix easy rubocop issues 2020-09-17 13:59:41 +01:00
Luis Ramos
1df7890a0d Use spree url_helpers 2020-09-17 13:59:41 +01:00
Luis Ramos
a2435d29af Add missing translation 2020-09-17 13:59:41 +01:00
Luis Ramos
d5d62894a5 Use spree url helpers 2020-09-17 13:59:41 +01:00
Luis Ramos
da19fa5f80 Add missing translations 2020-09-17 13:59:41 +01:00
Luis Ramos
a34c18451c Add spree helper 2020-09-17 13:59:41 +01:00
Luis Ramos
27fa04114e Add require for gateway error 2020-09-17 13:59:41 +01:00
Luis Ramos
ec8dfd668d Use ofn's calculator in all tests and add missing translation 2020-09-17 13:59:41 +01:00
Luis Ramos
bec6e8e604 Add missing translation 2020-09-17 13:59:41 +01:00
Luis Ramos
66f27aad32 Explicitly use spree url helpers for spree routes 2020-09-17 13:59:41 +01:00
Luis Ramos
739917ca46 Add require for spree responder 2020-09-17 13:58:45 +01:00
Luis Ramos
e0cb7a29bf Add helper prefix to helper calls 2020-09-17 13:58:45 +01:00
Luis Ramos
b6a374ab66 Remove spree require that is not needed in OFN 2020-09-17 13:58:10 +01:00
Luis Ramos
37f3861233 Remove require of a file no longer needed 2020-09-17 13:58:10 +01:00
Luis Ramos
a5dd1526f7 Delete dead code ProductFilters 2020-09-17 13:58:10 +01:00
Luis Ramos
8707f51214 Remove unused helper 2020-09-17 13:58:10 +01:00
Luis Ramos
b84212023b Require code from spree/core explicitly 2020-09-17 13:58:10 +01:00
Luis Ramos
01daf63fc6 Fix some problems with code that was relying on spree code 2020-09-17 13:57:05 +01:00
Matt-Yorkley
3ececb04c5 Update all locales with the latest Transifex translations 2020-09-17 13:33:53 +01:00
Matt-Yorkley
0aa515101b Merge pull request #6015 from openfoodfoundation/transifex
Transifex
2020-09-17 14:31:41 +02:00
Luis Ramos
c6139a975a Merge pull request #6028 from openfoodfoundation/dependabot/bundler/webmock-3.9.1
Bump webmock from 3.8.3 to 3.9.1
2020-09-17 12:19:08 +01:00
Luis Ramos
212820b3da Merge pull request #5912 from luisramos0/tcs
Terms and Conditions - upload PDF in the Enterprise Business Details and read them on Checkout
2020-09-17 12:01:45 +01:00
Luis Ramos
f1358dfa9a Merge pull request #5722 from rioug/4206-back-from-Edit-Product-removed-filters-products-page
4206 back from edit product removed filters products page
2020-09-17 11:51:58 +01:00
Luis Ramos
f061545a92 Merge pull request #5995 from andresgutgon/fix/datetime-picker-ui-pick-the-right-translations-on-order-cycles
Fix date time picker translations on Order cycles screen
2020-09-17 11:50:37 +01:00
Luis Ramos
e99fdeb972 Merge pull request #5996 from andresgutgon/fix/iframe-shop-failing-because-jquery-is-not-loaded
Fix embedded shops failing javascript because jQuery is try to be accessed before being loaded
2020-09-17 11:32:08 +01:00
Transifex-Openfoodnetwork
875eb292be Updating translations for config/locales/ar.yml 2020-09-17 08:42:12 +10:00
Arun Kumar Mohan
08604ae8fd Remove Hash#diff usage from cancan helper 2020-09-16 12:14:37 -05:00
Luis Ramos
87d6a73e54 Merge pull request #5878 from luisramos0/shipping
[Bye bye Spree] Bring models shipping_method, shipping_rates, address and shipping_category from spree_core
2020-09-16 14:58:39 +01:00
Luis Ramos
f566c2127d Merge pull request #5924 from luisramos0/basic_spree_core
[Bye bye spree] Bring base_helper and log_entry from spree core
2020-09-16 14:57:41 +01:00
Transifex-Openfoodnetwork
2573e3b7c5 Updating translations for config/locales/es_CO.yml 2020-09-16 23:24:39 +10:00
Transifex-Openfoodnetwork
7fe876266e Updating translations for config/locales/es_CO.yml 2020-09-16 23:21:34 +10:00
Luis Ramos
8d5ed630d6 Merge pull request #6035 from arku/fix/adjustment-metadata-spec
Fix uninitialized constant error when running model specs
2020-09-16 10:15:46 +01:00
Luis Ramos
66d206ecb3 Merge pull request #6036 from arku/fix/pr-template
Fix typo in the PR template
2020-09-16 10:15:00 +01:00
Arun Kumar Mohan
fd0a7971e9 Fix typo in the PR template 2020-09-15 20:30:23 -05:00
Arun Kumar Mohan
ed3cb56c11 Fix uninitialized constant error when running model specs 2020-09-15 20:23:05 -05:00
Transifex-Openfoodnetwork
a367c3720c Updating translations for config/locales/en_US.yml 2020-09-16 10:21:50 +10:00
Luis Ramos
6eb43053e9 Merge pull request #5925 from luisramos0/spree_core_user
[Bye bye spree] Bring classes related to users to OFN
2020-09-15 17:13:27 +01:00
Pau Pérez Fabregat
7006b0af4c Merge pull request #6021 from Matt-Yorkley/concerns
Move concern to concerns directory
2020-09-15 17:45:24 +02:00
Transifex-Openfoodnetwork
d86b879972 Updating translations for config/locales/nb.yml 2020-09-15 20:46:33 +10:00
Transifex-Openfoodnetwork
fd339488e6 Updating translations for config/locales/es.yml 2020-09-15 20:38:08 +10:00
Transifex-Openfoodnetwork
b6f5eab6e1 Updating translations for config/locales/ca.yml 2020-09-15 20:37:51 +10:00
dependabot-preview[bot]
ced29c1f3d Bump webmock from 3.8.3 to 3.9.1
Bumps [webmock](https://github.com/bblimke/webmock) from 3.8.3 to 3.9.1.
- [Release notes](https://github.com/bblimke/webmock/releases)
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bblimke/webmock/compare/v3.8.3...v3.9.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-15 09:49:14 +00:00
Pau Pérez Fabregat
27ffe9edb2 Merge pull request #5971 from luisramos0/testing
Remove some old spree test helpers that are not needed
2020-09-15 09:13:20 +02:00
Luis Ramos
0d7b5cd32c Merge pull request #5868 from luisramos0/taxonomies
[Bye bye Spree] Bring models taxon and taxonomy from spree_core
2020-09-14 20:45:04 +01:00
Matt-Yorkley
276fea6942 Fix rubocop offenses 2020-09-14 15:14:16 +01:00
Matt-Yorkley
c45dcad975 Move concern to concerns directory 2020-09-14 13:23:21 +01:00
Andy Brett
246934d8ba update preference name in factor and specs 2020-09-12 14:49:42 -07:00
Andy Brett
37cfe65688 migrate existing weight calculators 2020-09-12 12:32:06 -07:00
Andy Brett
4123eb7c10 update specs; add specs to validate weight calculator preference is kg or lb 2020-09-12 11:53:45 -07:00
Transifex-Openfoodnetwork
f32d8e2678 Updating translations for config/locales/en_GB.yml 2020-09-13 04:29:16 +10:00
Andy Brett
d32ed6b48f improve styling on calculators UI 2020-09-12 10:43:14 -07:00
Transifex-Openfoodnetwork
a9a05debba Updating translations for config/locales/en_CA.yml 2020-09-13 02:30:11 +10:00
Matt-Yorkley
9481876595 Fix line_item tax sum in OrderTaxAdjustmentsFetcher 2020-09-12 15:41:29 +01:00
Matt-Yorkley
cdf4e88e21 Add failing spec for OrderTaxAdjustmentsFetcher with multiple line items 2020-09-12 15:40:06 +01:00
Matt-Yorkley
7ddc53bb5b Remove temporary debugging helpers added during the Rails 4 upgrade. 2020-09-12 12:25:43 +01:00
Transifex-Openfoodnetwork
b9f6dc6de5 Updating translations for config/locales/en_FR.yml 2020-09-12 00:25:49 +10:00
Transifex-Openfoodnetwork
811985cf0f Updating translations for config/locales/fr.yml 2020-09-12 00:25:36 +10:00
Luis Ramos
175b78b51f Merge pull request #5827 from jeduardo824/bug/remove-environment-column-when-user-is-not-super-admin
Bug/4592 - Hide Environment column on Payment Methods page when user is not admin
2020-09-11 10:47:10 +01:00
Maikel Linke
e82aa0c89a Update translations 2020-09-11 15:25:52 +10:00
Maikel Linke
8be05e94bd Update release issue template 2020-09-11 15:25:24 +10:00
Maikel
7317347fd6 Merge pull request #6012 from openfoodfoundation/transifex
Transifex
2020-09-11 15:25:04 +10:00
Maikel
c5c542069f Merge pull request #5951 from mkllnk/5785-js-error-reporting
5785 Notify Bugsnag when sending card to Stripe fails during checkout
2020-09-11 15:12:47 +10:00
Maikel
dc9e3aa1a0 Merge pull request #6010 from mkllnk/fix-module-declaration
Fix module declaration
2020-09-11 09:12:08 +10:00
Luis Ramos
a48b57f7a7 Merge pull request #5883 from luisramos0/taxs
[Bye bye Spree] Bring models tax_rate, tax_categories, adjustments and calculator from spree_core
2020-09-10 23:10:26 +01:00
Luis Ramos
6f59158153 Remove useless TODOs 2020-09-10 17:36:25 +01:00
Transifex-Openfoodnetwork
f501d48caa Updating translations for config/locales/fr.yml 2020-09-11 01:54:06 +10:00
Pau Pérez Fabregat
2429b186ce Merge pull request #6008 from openfoodfoundation/dependabot/bundler/ddtrace-0.40.0
Bump ddtrace from 0.39.0 to 0.40.0
2020-09-10 17:10:56 +02:00
Pau Pérez Fabregat
7df2759475 Merge pull request #5907 from Matt-Yorkley/data-cleanup
Data cleanup
2020-09-10 17:06:20 +02:00
Pau Pérez Fabregat
681cb34c48 Merge pull request #6009 from openfoodfoundation/transifex
Transifex
2020-09-10 14:01:49 +02:00
Maikel Linke
94b903179e Fix module declaration
Running script/prepare_imported_db.rb failed because
Spree::PaymentMethodDistributors couldn't be found. This problem is
described in the Rubocop docs:
https://rubystyle.guide/#namespace-definition
2020-09-10 16:12:17 +10:00
Maikel Linke
59070712d9 Update rubocop todo list 2020-09-10 16:08:18 +10:00
Transifex-Openfoodnetwork
76aebf329e Updating translations for config/locales/ar.yml 2020-09-10 02:13:08 +10:00
dependabot-preview[bot]
b2b5606f2e Bump ddtrace from 0.39.0 to 0.40.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.39.0 to 0.40.0.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.39.0...v0.40.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-09 15:32:14 +00:00
Pau Perez
f890c4a31d Fix LogEntry spec 2020-09-08 14:12:17 +02:00
Pau Pérez Fabregat
b087f8da19 Merge pull request #6001 from openfoodfoundation/transifex
Transifex
2020-09-08 13:19:28 +02:00
Pau Perez
e3c1159c17 Start with 6 months data retention
As discussed in code review.
2020-09-08 12:49:58 +02:00
Pau Perez
14054f0e70 Move retention period to constant
There's no need to reevaluate the date 3 times, potentially leading to
edge cases.
2020-09-08 12:48:30 +02:00
Pau Perez
d525ddfe14 Move missing statements to where + delete_all
And fix the specs
2020-09-08 12:47:42 +02:00
Pau Pérez Fabregat
df0b997258 Use where + delete_all to increase readability
Co-authored-by: Maikel <maikel@email.org.au>
2020-09-08 12:26:47 +02:00
Pau Pérez Fabregat
ffbb0d26a4 Unhardcode class name 2020-09-08 12:26:21 +02:00
dependabot-preview[bot]
5eb64f431a Bump unicorn from 5.6.0 to 5.7.0
Bumps [unicorn](https://yhbt.net/unicorn/) from 5.6.0 to 5.7.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-08 09:20:12 +00:00
Andy Brett
c618ba3b2c style fixes 2020-09-07 13:44:42 -07:00
Andy Brett
5a5cbbd318 add drop down list for unit preference 2020-09-07 13:26:09 -07:00
Transifex-Openfoodnetwork
3da14233bf Updating translations for config/locales/en_US.yml 2020-09-08 02:55:31 +10:00
Pau Pérez Fabregat
940c067b60 Merge pull request #5992 from openfoodfoundation/transifex
Transifex
2020-09-07 18:46:48 +02:00
Andy Brett
adb29a9c8f add preferred_unit to weight shipping calculator 2020-09-07 08:41:48 -07:00
Andy Brett
5793f0103d Revert "Add a per-pound calculator and a spec for it"
This reverts commit e8eadcbf39.
2020-09-07 07:50:59 -07:00
Andy Brett
e8eadcbf39 Add a per-pound calculator and a spec for it 2020-09-06 09:03:06 -07:00
andresgutgon
2297e20c78 Fix embedded shops failing javascript because jQuery is try to be
accessed before being loaded
Show we check for $.ready when jQuery is not downloaded yet in the
browser. The solution is to check if document is ready with plain DOM
javascript event `DOMContentLoaded`
2020-09-06 15:24:22 +02:00
andresgutgon
d1331ac78a Fix datetime picker translations on Order cycles screen
So the thing is we initialize jQuery plugin on `admin/util.js.erb` but
then we override those defaults on order_cycles.js.erb.coffe. Now both
plugin initializations use the same defaults. Also added 3 missing
translations for `Done`, `Now` and `Time` copies on that timepicker popover
2020-09-06 13:43:35 +02:00
Luis Ramos
6e8fe080cb Fix easy rubocop issues 2020-09-05 18:39:56 +01:00
Luis Ramos
5521b4bb04 Remove unused product filters 2020-09-05 16:43:27 +01:00
Luis Ramos
4183dda27e Fix long line 2020-09-05 16:43:27 +01:00
Luis Ramos
fcbb883244 Transpec taxon_spec 2020-09-05 16:43:27 +01:00
Luis Ramos
c35b330d25 Fix taxon_spec 2020-09-05 16:43:27 +01:00
Luis Ramos
57e74a4980 Fix rubocop issues 2020-09-05 16:43:27 +01:00
Luis Ramos
a1b64fe27b Rubocop auto-correct 2020-09-05 16:43:27 +01:00
Luis Ramos
49060892e8 Merge decorators into original files from spree_core 2020-09-05 16:43:27 +01:00
Luis Ramos
9175504bc1 Bring taxon, taxonomy and classification from spree_core 2020-09-05 16:43:27 +01:00
Luis Ramos
8867ec977c Bring missing factory from spree_core and use ofn's calculator 2020-09-05 16:38:37 +01:00
Luis Ramos
4931edc67c Remove code related to promotions, we dont have promotions in OFN 2020-09-05 16:38:37 +01:00
Luis Ramos
51ed9a6b78 Fix comment and point out that it's a fix to a spree issue 2020-09-05 16:38:36 +01:00
Luis Ramos
e96428e7e2 Transpec adjustment_spec 2020-09-05 16:38:36 +01:00
Luis Ramos
b629a4f912 Make new specs pass 2020-09-05 16:38:36 +01:00
Luis Ramos
967380c542 Fix easy rubocop issues 2020-09-05 16:38:36 +01:00
Luis Ramos
ff0aa377a1 Run rubocop autocorrect 2020-09-05 16:38:36 +01:00
Luis Ramos
da683e3ecf Merge decorators with original code from spree_core 2020-09-05 16:38:36 +01:00
Luis Ramos
aa46a4b5da Bring models related to taxes and adjustments from spree_core 2020-09-05 16:38:36 +01:00
Transifex-Openfoodnetwork
61dad61ef7 Updating translations for config/locales/en_GB.yml 2020-09-05 02:37:15 +10:00
Luis Ramos
60e241b2c8 Merge pull request #5984 from openfoodfoundation/transifex
Transifex
2020-09-04 17:19:37 +01:00
Luis Ramos
d8165aeec1 Merge pull request #5987 from luisramos0/spree_core_without_ctrl_hlpers
Depend on version of spree without controller helpers
2020-09-04 17:18:17 +01:00
Pau Pérez Fabregat
c7bcd61755 Merge pull request #5990 from coopdevs/dont-require-overrides
Do not require view overrides
2020-09-04 17:20:04 +02:00
Luis Ramos
9c0c324835 Add some requires now required as spree does not contain controller helpers 2020-09-04 14:30:17 +01:00
Luis Ramos
874cb78809 Depend on version of spree without controller helpers, which are already on OFN side. This way we avoid conflicts 2020-09-04 12:48:22 +01:00
Eduardo
71876ca23a change spec to use new authentication helper and user factory 2020-09-04 08:48:16 -03:00
Eduardo
07e5f8ed8d fix typo on title of specs 2020-09-04 08:45:58 -03:00
Eduardo
11684dae65 hide environment on payment methods when user is not admin 2020-09-04 08:45:57 -03: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
e44efd3db2 Change test of attachment from present? to file? 2020-09-04 10:06:41 +01:00
Luis Ramos
4fe24da3ec Merge pull request #5748 from mbudm/issue/5072
Add redirect to shop on order cycle change
2020-09-04 10:03:07 +01:00
dependabot-preview[bot]
cb61c83688 Bump stripe from 5.22.0 to 5.25.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.22.0 to 5.25.0.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-ruby/compare/v5.22.0...v5.25.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-03 17:49:28 +00:00
Luis Ramos
d80a44ade0 Merge pull request #5867 from luisramos0/stock
[Bye bye Spree] Bring models stock_location and stock_movement from spree_core
2020-09-03 18:35:55 +01:00
Transifex-Openfoodnetwork
42d90465b1 Updating translations for config/locales/fr_CA.yml 2020-09-04 03:21:50 +10:00
Transifex-Openfoodnetwork
457dfdd18a Updating translations for config/locales/en_CA.yml 2020-09-04 03:13:22 +10:00
Luis Ramos
e413920335 Move both OptionValueNamer and VariantAndLineItemNaming to app/services/variant_units 2020-09-03 09:11:00 -07:00
Luis Ramos
83ae13d7c7 Extract method to make code easier to read 2020-09-03 09:11:00 -07:00
Luis Ramos
9204687e4d Fix rubocop issues 2020-09-03 09:11:00 -07:00
Luis Ramos
c6741dda36 Fix rubocop complexity issues by making code easier to read 2020-09-03 09:11:00 -07:00
Andy Brett
55f9fef2c3 denote that weight is in grams on the bulk order management page 2020-09-03 09:11:00 -07:00
Andy Brett
4bc3101f4d Add specs for shipping weight calculations using lbs and oz 2020-09-03 09:11:00 -07:00
Andy Brett
404d7bbc43 add test for options_text using g/lb 2020-09-03 09:11:00 -07:00
Andy Brett
55e448897f use fewer sigfigs for ounces; add spec to option_value_namer 2020-09-03 09:11:00 -07:00
Andy Brett
2fe9f4abc8 style updates for rubocop 2020-09-03 09:11:00 -07:00
Andy Brett
d7a8873ee9 return empty string for unitName if no scale matches 2020-09-03 09:11:00 -07:00
Andy Brett
a2993652c1 get only compatible scales in option_value_namer.js.coffee 2020-09-03 09:11:00 -07:00
Andy Brett
08e6e5a459 add compatibleUnitScales function and spec 2020-09-03 09:11:00 -07:00
Andy Brett
0018ef6eb4 refactor variant_unit_manager.coffee and add systems to scales 2020-09-03 09:11:00 -07:00
Andy Brett
9b9b6ded09 add each scales system in option_value_namer.rb 2020-09-03 09:11:00 -07:00
Andy Brett
e5e7e12a32 green tests for sorted scales 2020-09-03 09:11:00 -07:00
Andy Brett
2f216039ac update variantunitmanager test expectation 2020-09-03 09:11:00 -07:00
Andy Brett
e99799bca2 add ounces and round up for lbs 2020-09-03 09:11:00 -07:00
Zee Spencer
f5e300a5de Presenting a line item or variants options_text uses overriden values
This changes how we display the description of weight, but it doesn't
change the `Spree::OptionValue`s that are being created when someone
adds a product to their cart.

This takes us closer by making the UI look more correct; but it feels
odd compared to settiong the `Spree::OptionValue` to the correct
unit on creation.

But on the other hand, that could possibly make things worse for the
shipping calculation bits.
2020-09-03 09:10:59 -07:00
Zee Spencer
ae0b76e610 Support imperial units when scaling the unit value
We are pretty sure this is not the correct final implementation, but
we wanted to get some tests failing so we can start to fix them.
2020-09-03 09:10:59 -07:00
Zee Spencer
cb09c935dc WIP: Products may be created with pounds for their weight unit_converter
See: https://community.openfoodnetwork.org/t/hubs-managers-can-choose-the-adapted-weight-and-measure-units-for-their-shops-given-their-own-local-situation/1289/11

We're not entirely sure what needs to be changed in order for this to
accurately work with shipping and other parts of the eCommerce platform.

We are assuming that so long as we canonically store the weight scale
in grams, that the shipping calculation will be able to do what it needs
to. So if we put in values for "oz" as grams, we may not need to do
much else in order to let product(s) be sold by the pound (or ounce).

Next steps appear to be:

- [ ] When looking at an order as a customer, do we want to show pounds
      instead of grams? (See: http://localhost:3000/orders/R125684626)
- [ ] Compile a list of tests that are worth writing (because we have
      no confidence that we know what we are supposed to be doing in
      order for this feature to be "ready" to be used by people.)
- [ ] Write a test that demonstrates when we create a product with a
      variant in pound that the product's shipping weight is correctly
      calculated?
- [ ] Do we want to think about i18n?
2020-09-03 09:10:59 -07:00
Transifex-Openfoodnetwork
8f896a806a Updating translations for config/locales/es.yml 2020-09-03 23:36:07 +10:00
Transifex-Openfoodnetwork
71b1c5a3b3 Updating translations for config/locales/ca.yml 2020-09-03 23:35:02 +10:00
Luis Ramos
8256a20aea Update all locales with the latest Transifex translations 2020-09-03 13:27:16 +01:00
Luis Ramos
07e17d7931 Merge pull request #5979 from mkllnk/fix-locale-for-transifex
Add required plural form to locale
2020-09-03 13:21:13 +01:00
Luis Ramos
e177ba5e29 Merge pull request #5977 from openfoodfoundation/transifex
Transifex
2020-09-03 13:19:33 +01:00
Transifex-Openfoodnetwork
d3f48bf684 Updating translations for config/locales/nb.yml 2020-09-03 22:16:04 +10:00
Transifex-Openfoodnetwork
63a6ceede3 Updating translations for config/locales/en_NZ.yml 2020-09-03 19:57:50 +10:00
François Turbelin
52d82d0a96 Use not found instead of 404 for spec descriptions 2020-09-03 00:59:21 +02:00
François Turbelin
d11d67561f Remove extra delegation in serializers 2020-09-03 00:58:54 +02:00
François Turbelin
d2c147109d Use Persons instead of People 2020-09-03 00:56:42 +02:00
Luis Ramos
185c246a83 Merge pull request #5965 from coopdevs/ignore-pyenv-file
Gitignore pyenv's Python version file
2020-09-02 23:50:42 +01:00
François Turbelin
b60c1c9003 Dry current_enterprise emtod with enterprise_id_param_name 2020-09-03 00:50:23 +02:00
Luis Ramos
83361255aa Merge pull request #5969 from luisramos0/fungi
Replace beef with fungi in sample data 🐮
2020-09-02 23:47:43 +01:00
Luis Ramos
f28241cc5e Merge duplicate Spree::User#superadmin? into existing Spree::admin? 2020-09-02 22:41:42 +01:00
Luis Ramos
ebf4175662 MErge user class extensions into the User class 2020-09-02 22:41:39 +01:00
Luis Ramos
737fc699ed Fix rubocop issues 2020-09-02 22:40:46 +01:00
Luis Ramos
caf61e3a7e Run rubocop -a 2020-09-02 22:40:28 +01:00
Luis Ramos
dfa00a770a Bring user and ability related files from spree_core 2020-09-02 22:37:27 +01:00
François Turbelin
59fb2abc5d Fix inheritance issue with specs on Semaphore 2020-09-02 23:08:47 +02:00
François Turbelin
6508897e3d Introduce current_enterprise with memoization 2020-09-02 22:28:12 +02:00
François Turbelin
1baba5b61c Introduce current_user with memoization 2020-09-02 22:18:56 +02:00
François Turbelin
4f2b7094d0 Use before_action instead of before_filter 2020-09-02 21:48:13 +02:00
Luis Ramos
b4759ff869 Merge pull request #5869 from luisramos0/images
[Bye bye Spree] Bring models image and asset from spree_core
2020-09-02 19:44:40 +01:00
Transifex-Openfoodnetwork
5bc0eca493 Updating translations for config/locales/en_FR.yml 2020-09-02 23:08:34 +10:00
Transifex-Openfoodnetwork
f6eb05a6f1 Updating translations for config/locales/fr.yml 2020-09-02 23:07:46 +10:00
Maikel Linke
cd940bd140 Rewrite error message for failed credit card sending 2020-09-02 15:22:23 +10:00
Maikel Linke
09f0035bbd Add required plural form to locale
Transifex complained:

> Key 'spree.activerecord.models.spree/payment' has the wrong number of plurals

While our application may not need that translation, Transifex won't
accept the source file and our updates were broken.
2020-09-02 15:06:15 +10:00
Luis Ramos
2cb6124b7a Use existing product factory, the custom product is not needed here 2020-09-01 17:13:07 +01:00
Luis Ramos
653b71dbd4 Remove duplicated spec 2020-09-01 17:10:51 +01:00
Luis Ramos
b36d0bc4f3 Fix easy rubocop isssues 2020-09-01 17:09:22 +01:00
Luis Ramos
b2cf414fb8 Use exiting translation 2020-09-01 17:09:22 +01:00
Luis Ramos
5958c2f68c Rubocop autocorrect 2020-09-01 17:09:22 +01:00
Luis Ramos
13f0a46bc2 Merge decorator with original file from spree 2020-09-01 17:09:22 +01:00
Luis Ramos
b9f7a98c46 Bring image, asset and images_helper from spree_core 2020-09-01 17:09:22 +01:00
Transifex-Openfoodnetwork
a65bd8edac Updating translations for config/locales/en_US.yml 2020-09-02 01:28:57 +10:00
Luis Ramos
ea053552b9 Merge pull request #5938 from cillian/bulk-coop-report-filter-fixes
Fix the bulk coop report date and distributor filters.
2020-09-01 16:21:31 +01:00
Luis Ramos
52fb3c92f0 Merge pull request #5954 from romale/patch-10
Missing translation key en.credit_owed and en.new_adjustment
2020-09-01 16:21:22 +01:00
Luis Ramos
ffac38d934 Remove option to enter state_name for countries without states
Thisis not supported in OFN
2020-09-01 16:06:49 +01:00
Luis Ramos
5716ea8611 Fix rubocop issue 2020-09-01 15:55:46 +01:00
Luis Ramos
88d90a37e8 Run transpec 2020-09-01 15:53:18 +01:00
Luis Ramos
ed114f4c4c Fix rubocop issues 2020-09-01 15:52:36 +01:00
Luis Ramos
ffa0d202be Add states api endpoint to support existing code on the customer details page when user changes country 2020-09-01 15:46:22 +01:00
Luis Ramos
41d797489d Make onchange code simpler 2020-09-01 14:52:18 +01:00
Luis Ramos
46623242f7 Make use_billing checkbox work again, missign js code from spree 2020-09-01 14:28:45 +01:00
Luis Ramos
1a39a55009 Fix problem of converting from erb to haml 2020-09-01 14:09:06 +01:00
Luis Ramos
56fb09c006 Remove unused class 2020-09-01 14:03:20 +01:00
Luis Ramos
e4dee8a2fb Replace hash rockets 2020-09-01 13:57:57 +01:00
Luis Ramos
04f9c5ec5e Convert address form from erb to haml 2020-09-01 13:53:19 +01:00
Luis Ramos
8c322c1a0f Move shared address_form partial to the only place where it is used, order customer_details 2020-09-01 13:49:17 +01:00
Luis Ramos
5e49e03477 Merge pull request #5964 from coopdevs/fix-flaky-product-update-spec
Check taxon's attribute instead of object identity
2020-09-01 12:06:02 +01:00
Luis Ramos
b35d579f64 Bring stock_movement factory from spree_core 2020-09-01 10:20:51 +01:00
Luis Ramos
3198bbd3cb Bring required factory from spree_core 2020-09-01 10:17:45 +01:00
Luis Ramos
865a4b3063 Fix base helper spec 2020-09-01 09:46:41 +01:00
Luis Ramos
b413f856a5 Clarify that it's a Spree issue number 2020-09-01 09:46:41 +01:00
Luis Ramos
2f93a06dd5 Run rubocop -a on files brought from spree_core 2020-09-01 09:46:41 +01:00
Luis Ramos
c151195e3a Merge decorator with original class and delete dead code 2020-09-01 09:46:41 +01:00
Luis Ramos
7ec00cf40a Bring base files from spree_core 2020-09-01 09:45:11 +01:00
Luis Ramos
bf81b5a305 Remove unnecessary setup code in spec, propagate_all_variants is always true in OFN 2020-09-01 09:42:24 +01:00
Luis Ramos
d87d5d3537 Fix stock_movement and stock_location specs brought from spree_core
propagate_all_variants is always true in OFN
2020-09-01 09:42:24 +01:00
Luis Ramos
e0ea25b7a3 track_inventory_levels is always true in OFN 2020-09-01 09:42:24 +01:00
Luis Ramos
8f19ad0646 Delete dead code 2020-09-01 09:42:24 +01:00
Luis Ramos
e89eb8f76c Fix simepl rubocop issues 2020-09-01 09:42:24 +01:00
Luis Ramos
0b053c18af Merge decoorator with original file from spree 2020-09-01 09:42:24 +01:00
Luis Ramos
d13bd86e4c Bring stocck movement and stock location from spree 2020-09-01 09:42:24 +01:00
Pau Pérez Fabregat
c56962b949 Merge pull request #5966 from openfoodfoundation/dependabot/bundler/bugsnag-6.17.0
Bump bugsnag from 6.16.0 to 6.17.0
2020-09-01 09:55:11 +02:00
Luis Ramos
208be3ede6 Fix rubocop issues 2020-08-31 20:00:08 +01:00
Luis Ramos
de061b4c54 Make it a keyword argument so it's easier to read 2020-08-31 18:47:24 +01:00
Luis Ramos
c7a5dd65cf Ensure all specs that change stripe_connect_enable set the value back to what it was before, which should be the default value false
This will speed up specs as it ensures the stripe is always disabled and its JS script is not loaded
2020-08-31 18:38:50 +01:00
Luis Ramos
d9a228e5ec Replace before and after hook with an around hook 2020-08-31 17:47:41 +01:00
Luis Ramos
8a75fe777c Refactor enterprises controller to reduce code duplication 2020-08-31 17:40:34 +01:00
Luis Ramos
66587ccc00 Allow user to remove terms and conditions file 2020-08-31 17:40:34 +01:00
Luis Ramos
24cdd0c467 Refactor enterprise controller to reduce code duplication 2020-08-31 17:40:34 +01:00
Luis Ramos
a3e9226878 Add option to remove existing terms and conditions file 2020-08-31 17:40:34 +01:00
Luis Ramos
0974c4b2ac Move enterprise images translations to the correct place using lazylookup on the server and to main js: namespace for js translations 2020-08-31 17:40:34 +01:00
Luis Ramos
5a10a2861e Reduce the size of the terms and conditions message on the checkout page 2020-08-31 17:40:34 +01:00
Luis Ramos
aedc12e0e3 Add top padding to terms file upload input in enterprises form 2020-08-31 17:40:34 +01:00
Luis Ramos
fc4cc65e07 Merge typography files in css admin 2020-08-31 17:40:34 +01:00
Luis Ramos
07cee32f04 Move enterprisse_console to pages/enterprise_form 2020-08-31 17:40:34 +01:00
Luis Ramos
42d5344179 Fix checkout spec by fixing wrong default value 2020-08-31 17:40:34 +01:00
Luis Ramos
12d18b2825 Add specs to checkout_spec to validate terms and conditions link 2020-08-31 17:40:34 +01:00
Luis Ramos
ad111e837e Add spec to test terms and conditions link on checkout page 2020-08-31 17:40:34 +01:00
Luis Ramos
746533d3f6 Improve spec titles 2020-08-31 17:40:34 +01:00
Luis Ramos
4ef4a58532 Merge two describe sections with same before method and call it what it is: guest checkout 2020-08-31 17:40:34 +01:00
Luis Ramos
685a5465f1 Simplify checkout stripe spec 2020-08-31 17:40:34 +01:00
Luis Ramos
70e9ef93bb Extract stripe spec from checkout spec so we can expand stripe tests in checkout 2020-08-31 17:40:34 +01:00
Luis Ramos
86ad31eb5c Reuse checkout form filling code from CheckoutHelper in checkout paypal spec 2020-08-31 17:40:34 +01:00
Luis Ramos
edfd0fd95c Move checkout helpers to checkout_helper 2020-08-31 17:40:34 +01:00
Luis Ramos
d1f5828d13 Rename checkout_workflow to checkout_helper 2020-08-31 17:40:34 +01:00
Luis Ramos
785f8ada4d Refactor checkout_spec by removing unnecessary initial describe section 2020-08-31 17:40:34 +01:00
Luis Ramos
b9511d4f07 Show terms and conditions on checkout if enterprise has an associated PDF file 2020-08-31 17:40:34 +01:00
Luis Ramos
16a475d8af Fix some rubocop issues 2020-08-31 17:40:34 +01:00
Luis Ramos
1a734aacf8 Allow user to upload terms and conditions PDF file to an enterprise 2020-08-31 17:40:34 +01:00
Luis Ramos
cfdfd82d9a Replace api controller test helpers with easier existing alternatives 2020-08-31 17:05:51 +01:00
Luis Ramos
b872bf49c5 Replace usage of helper method with a more simple approach 2020-08-31 16:56:48 +01:00
Luis Ramos
3df5a0644f Make sample data vegetarian 2020-08-31 10:57:07 +01:00
Pau Perez
6bb37a3942 Check taxon's attribute instead of object identity
We don't care about the Ruby object instance but the actual DB record it
represents.
2020-08-31 11:05:12 +02:00
Maikel
a029a86f0d Merge pull request #5893 from arku/chore/resend-button-removal
Remove resend button on the orders edit page
2020-08-31 11:18:05 +10:00
François Turbelin
d5800642e7 Map DFC SuppliedProduct with OFN Variant 2020-08-30 23:11:59 +02:00
Luis Ramos
c9758b8b0b Merge pull request #5957 from coopdevs/improve-stripe-connection-spec
Improve StripeAccountsController#connect spec
2020-08-30 22:02:22 +01:00
Arun Kumar Mohan
bf07da6267 Fix the order resend message translation 2020-08-29 20:47:28 -05:00
Arun Kumar Mohan
bb9ab57699 Remove resend button on the orders edit page 2020-08-29 20:47:28 -05:00
dependabot-preview[bot]
7e274868fa Bump bugsnag from 6.16.0 to 6.17.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.16.0 to 6.17.0.
- [Release notes](https://github.com/bugsnag/bugsnag-ruby/releases)
- [Changelog](https://github.com/bugsnag/bugsnag-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bugsnag/bugsnag-ruby/compare/v6.16.0...v6.17.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-28 15:16:12 +00:00
Pau Pérez Fabregat
7cb49ac9a8 Merge pull request #5866 from luisramos0/ctry_zone
[Bye bye Spree] Bring models country, zone and zone_member from spree_core
2020-08-28 13:23:59 +02:00
Cillian O'Ruanaidh
9efee1b0be In bulk coop report service spec just check array has the same elements but don't check the order.
The #table_items methos seems to return line items in different order sometimes making this test a bit flaky. The test passed on Semaphore previously and is passing in development. I don't think the order matters so using :match_array instead of :eq.
2020-08-28 12:20:47 +01:00
Pau Perez
96cd40e446 Gitignore pyenv's Python version file
I use pyenv to manage the Python version to run the Transifex client.
That's the only bit of Python I use in this repo.

Without this I have to select the version each time and remove the file
after preparing the release. Annoying.
2020-08-28 12:56:17 +02:00
Pau Perez
37bfdf69a9 Bring required state factory
It was removed from master in
2abbfad18c
but it's still required by the zone_specs and the address factory.
2020-08-28 12:44:30 +02:00
Cillian O'Ruanaidh
a441979649 Pass in :report_type parameter correctly to bulk coop report so different report types are generated
Also add tests for each of the different report types. I didn't make these JavaScript tests because not sure that is necessary and they would be slower.
2020-08-28 11:09:34 +01:00
Pau Pérez Fabregat
4984cc9758 Merge branch 'master' into ctry_zone 2020-08-28 09:21:57 +02:00
Pau Perez
6e3cfe9c54 Improve StripeAccountsController#connect spec
We are manually testing this while this is already covering the
connection of a Stripe account to an OFN instance. This makes it a bit
more comprehensive.
2020-08-27 13:43:54 +02:00
romale
8583ac5573 Update en.yml 2020-08-27 14:38:10 +03:00
romale
8f59b048f3 Update en.yml 2020-08-27 13:53:13 +03:00
Steve Roberts
ef0038a661 Change trigger to update filters after ProductsCtrl is loaded. 2020-08-27 18:02:01 +10:00
Steve Roberts
4e635e114c Merge branch 'master' of https://github.com/openfoodfoundation/openfoodnetwork into issue/5072 2020-08-27 14:48:51 +10:00
Maikel Linke
5d48da72c7 Notify Bugsnag on Stripe payment errors 2020-08-27 11:09:16 +10:00
Maikel Linke
9d07295480 DRY error reporting during payment 2020-08-27 11:03:13 +10:00
Maikel Linke
f435039061 Simplify using loading and flash messages together 2020-08-27 11:03:13 +10:00
Luis Ramos
5b3e350204 Rename zone.country_list to zone.countries 2020-08-26 23:12:48 +01:00
Luis Ramos
53de04121c Fix rubocop issue 2020-08-26 23:09:41 +01:00
Cillian O'Ruanaidh
cdd09e8f97 Fix the bulk coop report date and distributor filters.
Before the date and distributor filters would have no effect. This is because the BulkCoopReport is still generated using an older style method, and isn't generated using the newer method like in the EnterpriseFeeSummaryReport. This older style report expects to receive a :q parameter but it actually received the newer style :report parameter so the filters were not being applied.

This keeps the newer style report params but converts them, after they are authorised as safe, into the older style in the controller.
2020-08-21 15:08:58 +01:00
Gaetan Riou
6564ea7b00 rename ProductFiltersService to ProductFiltersUrl 2020-08-21 12:13:16 +10:00
Gaetan Riou
f71013c514 rename query filter where it was missed, fix bulk_update_product spec 2020-08-21 11:46:36 +10:00
Gaetan Riou
44487af2c8 remove dead filter code 2020-08-21 11:40:48 +10:00
Gaetan Riou
c3279941f5 Remove product filter helper spec as it's not needed anymore 2020-08-21 10:42:02 +10:00
Gaetan Riou
7356d0fe77 move url filter functionality to service ProductFiltersService 2020-08-21 10:42:02 +10:00
Gaetan Riou
bba683469b add product filter parameters on the group buy options and search pages, so that the bulk import product page filters can be preserved 2020-08-21 10:39:43 +10:00
Gaetan Riou
c6e1f458cc add product filter parameters on the various product properties pages, so that the bulk import product page filters can be preserved 2020-08-21 10:39:43 +10:00
Gaetan Riou
9bc928fd48 update product variants feature test to use ulr helpers 2020-08-21 10:39:43 +10:00
Gaetan Riou
a6444e76a5 add product filter parameters on the various product image pages, so that the bulk import product page filters can be preserved 2020-08-21 10:29:07 +10:00
Gaetan Riou
9b26ff2fa4 move product filter helper to a service 2020-08-21 10:29:07 +10:00
Gaetan Riou
684ae2ca22 update product feature test to use ulr helpers 2020-08-21 10:29:07 +10:00
Gaetan Riou
459708dbc8 add product filter parameters on the various product variants pages, so that the bulk import product page filters can be preserved 2020-08-21 10:29:07 +10:00
Gaetan Riou
f75aaf0b45 extract product filter functionality to a helper 2020-08-21 10:19:53 +10:00
Gaetan Riou
1a186affcf refactor create and update to get rid of respond_override 2020-08-21 10:19:53 +10:00
Gaetan Riou
6e5c168d3b add filter parameters to link leading back to bulk import product page and preserve filter parameters when updating product 2020-08-21 10:19:53 +10:00
Gaetan Riou
39564e612f on admin product page, add selected filter to url and apply filter from url on page load 2020-08-21 10:19:53 +10:00
Matt-Yorkley
97ae4def98 Schedule cleanup task to run once per month 2020-08-15 11:39:55 +01:00
Matt-Yorkley
91501f05f2 DRY date usage 2020-08-15 11:19:24 +01:00
Matt-Yorkley
93601ca556 Extract #remove_transient_data from TruncateData 2020-08-15 11:19:24 +01:00
François Turbelin
c3cf08156d Add People controller 2020-08-13 11:49:45 +02:00
François Turbelin
8d4587506b Add SuppliedProducts controller 2020-08-13 11:46:48 +02:00
François Turbelin
99e905c768 Simplify enterprise check logic 2020-08-13 11:02:31 +02:00
François Turbelin
46d38930d9 Add some ajustements 2020-08-12 20:53:02 +02:00
François Turbelin
a4e8982351 Rename ProductsController into CatalogItemsController 2020-08-12 19:51:12 +02:00
François Turbelin
13e15f823e Add Read action for Enterprise and CatalogItem 2020-08-12 19:43:20 +02:00
François Turbelin
508ecd6bf7 Adjust with Rubocop suggestions 2020-08-12 13:46:23 +02:00
François Turbelin
d10fda6227 Put context inside serializer 2020-08-12 13:37:48 +02:00
François Turbelin
2a8268ca73 Use ActiveModelSerializer for DFC serialization 2020-08-12 13:37:01 +02:00
Luis Ramos
2d3578bb30 Fix address_spec 2020-08-07 14:05:36 +01:00
Luis Ramos
02f50774bb Run transpec 2020-08-07 12:47:44 +01:00
Luis Ramos
ff8735d7a4 Make new specs pass 2020-08-07 12:45:06 +01:00
Luis Ramos
51a499d5c9 Revert rubocop autocorrect so that spec keeps working 2020-08-07 10:45:15 +01:00
Luis Ramos
086c521a27 Fix easy rubocop issues 2020-08-07 10:28:41 +01:00
Luis Ramos
7cefdda579 Run rubocop autocorrect 2020-08-07 10:21:09 +01:00
Luis Ramos
ba859111de Merge decorators with original files brought from spree 2020-08-07 10:17:30 +01:00
Luis Ramos
fd9479f720 Bring modesl from spree_core 2020-08-07 10:06:08 +01:00
Luis Ramos
0c7a0e3e96 Bring modesl from spree_core 2020-08-07 10:06:04 +01:00
Luis Ramos
6f17b80bb8 Move address factory modification to address_factory file and make it always create a state and country in the address if they dont exist in the DB 2020-08-06 10:11:47 +01:00
Luis Ramos
43e64f3555 Delete dead code 2020-08-06 01:41:28 +01:00
Luis Ramos
73e1530a30 Fix specs 2020-08-06 01:35:09 +01:00
Luis Ramos
b09a9c5b8b Fix easy rubocop issues 2020-08-06 01:22:31 +01:00
Luis Ramos
00ae3a25f7 Fix easy rubocop issues 2020-08-06 01:18:43 +01:00
Luis Ramos
14358256ed Bring country, zone, state and zone_member from spree together with respective specs 2020-08-06 01:09:35 +01:00
François Turbelin
8687e0199d Apply cosmetics 2020-08-05 08:20:14 +02:00
François Turbelin
2549d454ab Maintain specs 2020-07-23 09:28:32 +02:00
François Turbelin
645b4a9505 Use multiple serializers 2020-07-22 22:45:50 +02:00
François Turbelin
9f02ee3874 Use new serialization 2020-07-22 21:08:25 +02:00
François Turbelin
21fc14a9fe Use a better products list for catalog 2020-07-22 21:08:25 +02:00
Steve Roberts
429c88c000 Add watcher to update filter after products are loaded
Also remove the other redundant trigger
2020-07-16 12:06:26 +10:00
Steve Roberts
79abc191ff Move location change to PageSelection controller 2020-07-15 15:51:33 +10:00
Steve Roberts
3a722bc697 Merge branch 'master' of https://github.com/openfoodfoundation/openfoodnetwork into issue/5072 2020-07-14 13:31:53 +10:00
Steve Roberts
7e195c3856 Add redirect to shop on order cycle change 2020-07-08 20:18:21 +10:00
1665 changed files with 76217 additions and 25820 deletions

View File

@@ -2,9 +2,9 @@ version: "2"
plugins:
rubocop:
enabled: true
channel: "rubocop-0-76"
channel: "rubocop-1-12"
config:
file: ".rubocop_styleguide.yml"
file: ".rubocop.yml"
scss-lint:
enabled: true
checks:
@@ -20,6 +20,9 @@ plugins:
enabled: false
DeclarationOrder:
enabled: false
NestingDepth:
enabled: false
duplication:
enabled: true
exclude_patterns:

View File

@@ -9,10 +9,11 @@ assignees: ''
Steps:
- [ ] Include translations
- [ ] Include translations: `tx pull --force`
- [ ] [Draft new release]
- [ ] Notify #instance-managers of user-facing changes.
- [ ] Test: https://semaphoreci.com/openfoodfoundation/openfoodnetwork-2/branches/master <!-- replace the URL -->
- [ ] Update translations if necessary
- [ ] Publish and notify #global-community
- [ ] Deploy and notify #instance-managers
- [ ] Nudge next release manager

View File

@@ -13,21 +13,11 @@ Provide context for others to understand it. -->
#### Release notes
<!-- Write a line or two to be included in the release notes.
Everything is worth mentioning, because you did it for a reason. -->
<!-- Write a one liner description of the change to be included in the release notes.
Every PR is worth mentioning, because you did it for a reason. -->
<!-- Please assign one category to your PR and delete the others.
The categories are based on https://keepachangelog.com/en/1.0.0/. -->
Changelog Category: Added | Changed | Deprecated | Removed | Fixed | Security
#### Discourse thread
<!-- Is there a discussion about this in Discourse?
Add the link or remove this section. -->
<!-- Please select one for your PR and delete the other. -->
Changelog Category: User facing changes | Technical changes
@@ -38,6 +28,5 @@ Add the link or remove this section. -->
#### Documentation updates
<!-- Are their any wiki pages that need updating after merging this PR?
<!-- Are there any wiki pages that need updating after merging this PR?
List them here or remove this section. -->

5
.github/codecov.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
coverage:
status:
project:
default:
informational: true

13
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,13 @@
version: 2
updates:
- package-ecosystem: "bundler"
directory: "/"
schedule:
interval: "daily"
open-pull-requests-limit: 10
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"

44
.github/workflows/brakeman-analysis.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
# This workflow integrates Brakeman with GitHub's Code Scanning feature
# Brakeman is a static analysis security vulnerability scanner for Ruby on Rails applications
name: Brakeman Scan
# This section configures the trigger for the workflow. Feel free to customize depending on your convention
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
jobs:
brakeman-scan:
name: Brakeman Scan
runs-on: ubuntu-latest
steps:
# Checkout the repository to the GitHub Actions runner
- name: Checkout
uses: actions/checkout@v2
# Customize the ruby version depending on your needs
- name: Setup Ruby
uses: actions/setup-ruby@v1
with:
ruby-version: '2.7'
- name: Setup Brakeman
env:
BRAKEMAN_VERSION: '4.10' # SARIF support is provided in Brakeman version 4.10+
run: |
gem install brakeman --version $BRAKEMAN_VERSION
# Execute Brakeman CLI and generate a SARIF output with the security issues identified during the analysis
- name: Scan
continue-on-error: true
run: |
brakeman -f sarif -o output.sarif.json .
# Upload the SARIF file generated in the previous step
- name: Upload SARIF
uses: github/codeql-action/upload-sarif@v1
with:
sarif_file: output.sarif.json

325
.github/workflows/build.yml vendored Normal file
View File

@@ -0,0 +1,325 @@
name: Build
on:
workflow_dispatch:
push:
pull_request:
env:
DISABLE_KNAPSACK: true
TIMEZONE: UTC
COVERAGE: true
jobs:
test-controllers-and-serializers:
runs-on: ubuntu-18.04
services:
postgres:
image: postgres:10
ports: ["5432:5432"]
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
POSTGRES_DB: open_food_network_test
POSTGRES_USER: ofn
POSTGRES_PASSWORD: f00d
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- uses: actions/setup-node@v2
with:
node-version: '14.15.5'
- name: Install JS dependencies
run: yarn install --frozen-lockfile
- name: Set up application.yml
run: cp config/application.yml.example config/application.yml
- name: Set up database
run: |
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
- name: Run controller tests
run: bundle exec rspec --profile -- spec/controllers spec/serializers
- name: Codecov
uses: codecov/codecov-action@v1.3.1
test-models:
runs-on: ubuntu-18.04
services:
postgres:
image: postgres:10
ports: ["5432:5432"]
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
POSTGRES_DB: open_food_network_test
POSTGRES_USER: ofn
POSTGRES_PASSWORD: f00d
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- uses: actions/setup-node@v2
with:
node-version: '14.15.5'
- name: Install JS dependencies
run: yarn install --frozen-lockfile
- name: Set up application.yml
run: cp config/application.yml.example config/application.yml
- name: Set up database
run: |
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
- name: Run tests
run: bundle exec rspec --profile -- spec/models
- name: Codecov
uses: codecov/codecov-action@v1.3.1
test-admin-features-1:
runs-on: ubuntu-18.04
services:
postgres:
image: postgres:10
ports: ["5432:5432"]
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
POSTGRES_DB: open_food_network_test
POSTGRES_USER: ofn
POSTGRES_PASSWORD: f00d
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- uses: actions/setup-node@v2
with:
node-version: '14.15.5'
- name: Install JS dependencies
run: yarn install --frozen-lockfile
- name: Set up application.yml
run: cp config/application.yml.example config/application.yml
- name: Set up database
run: |
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
- name: Run admin feature tests
run: bundle exec rspec --profile -- spec/features/admin/[a-o0-9]*_spec.rb
- name: Codecov
uses: codecov/codecov-action@v1.3.1
test-admin-features-2:
runs-on: ubuntu-18.04
services:
postgres:
image: postgres:10
ports: ["5432:5432"]
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
POSTGRES_DB: open_food_network_test
POSTGRES_USER: ofn
POSTGRES_PASSWORD: f00d
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- uses: actions/setup-node@v2
with:
node-version: '14.15.5'
- name: Install JS dependencies
run: yarn install --frozen-lockfile
- name: Set up application.yml
run: cp config/application.yml.example config/application.yml
- name: Set up database
run: |
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
- name: Run admin feature tests
run: bundle exec rspec --profile -- spec/features/admin/[p-z]*_spec.rb
- name: Codecov
uses: codecov/codecov-action@v1.3.1
test-consumer-features:
runs-on: ubuntu-18.04
services:
postgres:
image: postgres:10
ports: ["5432:5432"]
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
POSTGRES_DB: open_food_network_test
POSTGRES_USER: ofn
POSTGRES_PASSWORD: f00d
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- uses: actions/setup-node@v2
with:
node-version: '14.15.5'
- name: Install JS dependencies
run: yarn install --frozen-lockfile
- name: Set up application.yml
run: cp config/application.yml.example config/application.yml
- name: Set up database
run: |
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
- name: Run consumer feature tests
run: bundle exec rspec --profile -- spec/features/consumer
- name: Codecov
uses: codecov/codecov-action@v1.3.1
test-engines-etc:
runs-on: ubuntu-18.04
services:
postgres:
image: postgres:10
ports: ["5432:5432"]
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
POSTGRES_DB: open_food_network_test
POSTGRES_USER: ofn
POSTGRES_PASSWORD: f00d
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- uses: actions/setup-node@v2
with:
node-version: '14.15.5'
- name: Install JS dependencies
run: yarn install --frozen-lockfile
- name: Set up application.yml
run: cp config/application.yml.example config/application.yml
- name: Set up database
run: |
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
- name: Run JS tests
run: RAILS_ENV=test bundle exec rake karma:run
# Migration tests need to be run in a separate task.
# See: https://github.com/openfoodfoundation/openfoodnetwork/pull/6924#issuecomment-813056525
- name: Run migration tests
run: bundle exec rspec --pattern "spec/{migrations}/**/*_spec.rb"
- name: Run all other tests
run: bundle exec rake ofn:specs:run:excluding_folders["models,controllers,serializers,features,lib,migrations"]
test-the-rest:
runs-on: ubuntu-18.04
services:
postgres:
image: postgres:10
ports: ["5432:5432"]
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
POSTGRES_DB: open_food_network_test
POSTGRES_USER: ofn
POSTGRES_PASSWORD: f00d
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- uses: actions/setup-node@v2
with:
node-version: '14.15.5'
- name: Install JS dependencies
run: yarn install --frozen-lockfile
- name: Set up application.yml
run: cp config/application.yml.example config/application.yml
- name: Set up database
run: |
bundle exec rake db:create RAILS_ENV=test
bundle exec rake db:schema:load RAILS_ENV=test
- name: Run admin feature folders, engines, lib
run: bundle exec rspec --profile --pattern "engines/*/spec/{,/*/**}/*_spec.rb,spec/features/admin/*/*_spec.rb,spec/lib/{,/*/**}/*_spec.rb"
- name: Codecov
uses: codecov/codecov-action@v1.5.0

3
.gitignore vendored
View File

@@ -1,5 +1,6 @@
.bundle
.rbenv-version
.python-version
.byebug_history
.swp
*.swo
@@ -30,6 +31,7 @@ app/public
public/system
public/stylesheets
public/images
public/files
public/spree
public/assets
config/abr.yml
@@ -45,3 +47,4 @@ coverage
/reports/
!/reports/README.md
bin/
/spec/components/stories/**/*.stories.json

70
.haml-lint.yml Normal file
View File

@@ -0,0 +1,70 @@
# Whether to ignore frontmatter at the beginning of HAML documents for
# frameworks such as Jekyll/Middleman
skip_frontmatter: false
linters:
AltText:
enabled: false
ClassAttributeWithStaticValue:
enabled: true
ClassesBeforeIds:
enabled: true
ConsecutiveComments:
enabled: true
ConsecutiveSilentScripts:
enabled: true
max_consecutive: 2
EmptyScript:
enabled: true
HtmlAttributes:
enabled: true
ImplicitDiv:
enabled: true
LeadingCommentSpace:
enabled: true
LineLength:
enabled: true
max: 80
MultilinePipe:
enabled: true
MultilineScript:
enabled: true
ObjectReferenceAttributes:
enabled: true
RuboCop:
enabled: false
RubyComments:
enabled: true
SpaceBeforeScript:
enabled: true
SpaceInsideHashAttributes:
enabled: true
style: no_space
TagName:
enabled: true
TrailingWhitespace:
enabled: true
UnnecessaryInterpolation:
enabled: true
UnnecessaryStringOutput:
enabled: true

6
.hound.yml Normal file
View File

@@ -0,0 +1,6 @@
rubocop:
config_file: .rubocop_styleguide.yml
scss:
config_file: .scss-lint.yml
haml:
config_file: .haml-lint.yml

View File

@@ -1 +1 @@
5.12.0
14.16.1

2
.rspec
View File

@@ -1,2 +0,0 @@
--colour
--format Fuubar

View File

@@ -10,8 +10,8 @@ inherit_from:
# The automatically generated todo list to ignore all current violations.
- .rubocop_todo.yml
# Our Open Food Network style guide. It's used by Code Climate. If you want to see all violations,
# then use only that configuration (like Code Climate):
# Our Open Food Network style guide. If you want to see all violations,
# then use only that configuration:
#
# bundle exec rubocop -c .rubocop_styleguide.yml
#

View File

@@ -21,6 +21,25 @@
Layout/LineLength:
Max: 100
Exclude:
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/reports_controller.rb
- app/controllers/spree/paypal_controller.rb
- engines/order_management/spec/services/order_management/order/stripe_sca_payment_authorize_spec.rb
- engines/order_management/spec/services/order_management/order/updater_spec.rb
- engines/order_management/spec/services/order_management/reports/bulk_coop/bulk_coop_report_spec.rb
- lib/open_food_network/reports/line_items.rb
- spec/controllers/spree/admin/orders/invoices_spec.rb
- spec/controllers/spree/admin/tax_rates_controller_spec.rb
- spec/controllers/user_passwords_controller_spec.rb
- spec/features/admin/configuration/general_settings_spec.rb
- spec/features/consumer/shopping/unit_price_spec.rb
- spec/helpers/admin/orders_helper_spec.rb
- spec/lib/open_food_network/order_cycle_management_report_spec.rb
- spec/lib/stripe/authorize_response_patcher_spec.rb
- spec/services/bulk_invoice_service_spec.rb
- spec/services/content_sanitizer_spec.rb
- spec/services/process_payment_intent_spec.rb
- spec/support/features/datepicker_helper.rb
- app/controllers/admin/bulk_line_items_controller.rb
- app/controllers/admin/contents_controller.rb
- app/controllers/admin/customers_controller.rb
@@ -33,7 +52,6 @@ Layout/LineLength:
- app/controllers/admin/product_import_controller.rb
- app/controllers/admin/schedules_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/admin/variant_overrides_controller.rb
- app/controllers/api/enterprise_attachment_controller.rb
- app/controllers/api/product_images_controller.rb
- app/controllers/spree/paypal_controller_decorator.rb
@@ -42,7 +60,6 @@ Layout/LineLength:
- app/helpers/angular_form_helper.rb
- app/helpers/checkout_helper.rb
- app/helpers/enterprises_helper.rb
- app/helpers/injection_helper.rb
- app/helpers/markdown_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/orders_helper.rb
@@ -62,30 +79,25 @@ Layout/LineLength:
- app/models/product_import/unit_converter.rb
- app/models/proxy_order.rb
- app/models/schedule.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/app_configuration_decorator.rb
- app/models/spree/calculator/default_tax_decorator.rb
- app/models/spree/classification_decorator.rb
- app/models/spree/concerns/payment_method_distributors.rb
- app/models/spree/app_configuration.rb
- app/models/spree/gateway/stripe_connect.rb
- app/models/spree/line_item_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/payment_method_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/shipping_method_decorator.rb
- app/models/spree/taxon_decorator.rb
- app/models/spree/tax_rate_decorator.rb
- app/models/spree/image.rb
- app/models/spree/order.rb
- app/models/spree/payment_method.rb
- app/models/spree/product.rb
- app/models/spree/user.rb
- app/models/spree/variant.rb
- app/models/subscription.rb
- app/models/variant_override.rb
- app/models/variant_override_set.rb
- app/serializers/api/admin/subscription_line_item_serializer.rb
- app/services/cart_service.rb
- app/services/checkout/post_checkout_actions.rb
- app/services/default_stock_location.rb
- app/services/embedded_page_service.rb
- app/services/order_cycle_form.rb
- app/services/order_factory.rb
- app/services/variant_units/variant_and_line_item_naming.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- engines/order_management/app/services/order_management/subscriptions/validator.rb
- engines/web/app/helpers/web/cookies_policy_helper.rb
- engines/web/config/routes.rb
@@ -103,13 +115,11 @@ Layout/LineLength:
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
- lib/open_food_network/payments_report.rb
- lib/open_food_network/reports/bulk_coop_allocation_report.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/scope_variants_for_search.rb
- lib/open_food_network/variant_and_line_item_naming.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/localized_number.rb
- lib/spree/product_filters.rb
- lib/stripe/credit_card_clone_finder.rb
- lib/tasks/data.rake
- lib/tasks/enterprises.rake
- spec/controllers/admin/bulk_line_items_controller_spec.rb
@@ -134,6 +144,8 @@ Layout/LineLength:
- spec/controllers/api/product_images_controller_spec.rb
- spec/controllers/api/products_controller_spec.rb
- spec/controllers/api/promo_images_controller_spec.rb
- spec/controllers/api/states_controller_spec.rb
- spec/controllers/api/terms_and_conditions_controller_spec.rb
- spec/controllers/api/variants_controller_spec.rb
- spec/controllers/cart_controller_spec.rb
- spec/controllers/checkout_controller_spec.rb
@@ -156,11 +168,15 @@ Layout/LineLength:
- spec/controllers/stripe/callbacks_controller_spec.rb
- spec/controllers/stripe/webhooks_controller_spec.rb
- spec/controllers/user_confirmations_controller_spec.rb
- spec/factories/line_item_factory.rb
- spec/factories/order_factory.rb
- spec/factories.rb
- spec/factories/shipment_factory.rb
- spec/factories/stock_location_factory.rb
- spec/factories/user_factory.rb
- spec/features/admin/adjustments_spec.rb
- spec/features/admin/bulk_order_management_spec.rb
- spec/features/admin/bulk_product_update_spec.rb
- spec/features/admin/configuration/content_spec.rb
- spec/features/admin/customers_spec.rb
- spec/features/admin/enterprise_fees_spec.rb
- spec/features/admin/enterprise_relationships_spec.rb
@@ -169,7 +185,6 @@ Layout/LineLength:
- spec/features/admin/enterprises/index_spec.rb
- spec/features/admin/enterprises_spec.rb
- spec/features/admin/enterprise_user_spec.rb
- spec/features/admin/image_settings_spec.rb
- spec/features/admin/multilingual_spec.rb
- spec/features/admin/order_cycles/complex_creating_specific_time_spec.rb
- spec/features/admin/order_cycles/complex_editing_multiple_product_pages_spec.rb
@@ -193,7 +208,7 @@ Layout/LineLength:
- spec/features/consumer/account/settings_spec.rb
- spec/features/consumer/account_spec.rb
- spec/features/consumer/authentication_spec.rb
- spec/features/consumer/caching/darkwarm_caching_spec.rb
- spec/features/consumer/caching/darkswarm_caching_spec.rb
- spec/features/consumer/caching/shops_caching_spec.rb
- spec/features/consumer/groups_spec.rb
- spec/features/consumer/multilingual_spec.rb
@@ -202,6 +217,7 @@ Layout/LineLength:
- spec/features/consumer/shopping/cart_spec.rb
- spec/features/consumer/shopping/checkout_auth_spec.rb
- spec/features/consumer/shopping/checkout_spec.rb
- spec/features/consumer/shopping/checkout_stripe_spec.rb
- spec/features/consumer/shopping/embedded_groups_spec.rb
- spec/features/consumer/shopping/embedded_shopfronts_spec.rb
- spec/features/consumer/shopping/orders_spec.rb
@@ -220,30 +236,29 @@ Layout/LineLength:
- spec/jobs/subscription_confirm_job_spec.rb
- spec/jobs/subscription_placement_job_spec.rb
- spec/lib/open_food_network/address_finder_spec.rb
- spec/lib/open_food_network/bulk_coop_report_spec.rb
- spec/lib/open_food_network/customers_report_spec.rb
- spec/lib/open_food_network/enterprise_fee_applicator_spec.rb
- spec/lib/open_food_network/enterprise_fee_calculator_spec.rb
- spec/lib/open_food_network/group_buy_report_spec.rb
- spec/lib/open_food_network/lettuce_share_report_spec.rb
- spec/lib/open_food_network/option_value_namer_spec.rb
- spec/lib/open_food_network/order_cycle_form_applicator_spec.rb
- spec/lib/open_food_network/order_cycle_permissions_spec.rb
- spec/lib/open_food_network/order_grouper_spec.rb
- spec/lib/open_food_network/orders_and_fulfillments_report_spec.rb
- spec/lib/open_food_network/packing_report_spec.rb
- spec/lib/open_food_network/permissions_spec.rb
- spec/lib/open_food_network/products_and_inventory_report_spec.rb
- spec/lib/open_food_network/scope_variant_to_hub_spec.rb
- spec/lib/open_food_network/tag_rule_applicator_spec.rb
- spec/lib/open_food_network/user_balance_calculator_spec.rb
- spec/lib/open_food_network/users_and_enterprises_report_spec.rb
- spec/lib/open_food_network/xero_invoices_report_spec.rb
- spec/lib/spree/core/calculated_adjustments_spec.rb
- spec/lib/stripe/account_connector_spec.rb
- spec/lib/stripe/webhook_handler_spec.rb
- spec/mailers/order_mailer_spec.rb
- spec/mailers/producer_mailer_spec.rb
- spec/mailers/subscription_mailer_spec.rb
- spec/models/calculator/flexi_rate_spec.rb
- spec/models/calculator/price_sack_spec.rb
- spec/models/calculator/weight_spec.rb
- spec/models/column_preference_spec.rb
- spec/models/concerns/order_shipment_spec.rb
@@ -255,24 +270,28 @@ Layout/LineLength:
- spec/models/enterprise_relationship_spec.rb
- spec/models/enterprise_spec.rb
- spec/models/exchange_spec.rb
- spec/models/model_set_spec.rb
- spec/models/order_cycle_spec.rb
- spec/models/product_importer_spec.rb
- spec/models/product_import/reset_absent_spec.rb
- spec/models/proxy_order_spec.rb
- spec/models/spree/ability_spec.rb
- spec/models/spree/address_spec.rb
- spec/models/spree/adjustment_spec.rb
- spec/models/spree/calculator/flexi_rate_spec.rb
- spec/models/spree/calculator/price_sack_spec.rb
- spec/models/spree/classification_spec.rb
- spec/models/spree/gateway/stripe_connect_spec.rb
- spec/models/spree/inventory_unit_spec.rb
- spec/models/spree/line_item_spec.rb
- spec/models/spree/order/checkout_spec.rb
- spec/models/spree/order_inventory_spec.rb
- spec/models/spree/order_spec.rb
- spec/models/spree/order/state_machine_spec.rb
- spec/models/spree/payment_method_spec.rb
- spec/models/spree/payment_spec.rb
- spec/models/spree/product_set_spec.rb
- spec/models/spree/product_spec.rb
- spec/models/spree/return_authorization_spec.rb
- spec/models/spree/shipping_method_spec.rb
- spec/models/spree/stock_item_spec.rb
- spec/models/spree/taxon_spec.rb
- spec/models/spree/tax_rate_spec.rb
- spec/models/spree/user_spec.rb
@@ -286,8 +305,8 @@ Layout/LineLength:
- spec/models/variant_override_spec.rb
- spec/performance/orders_controller_spec.rb
- spec/performance/shop_controller_spec.rb
- spec/requests/api/orders_spec.rb
- spec/requests/checkout/failed_checkout_spec.rb
- spec/requests/checkout/stripe_sca_spec.rb
- spec/requests/embedded_shopfronts_headers_spec.rb
- spec/serializers/api/admin/customer_serializer_spec.rb
- spec/serializers/api/admin/exchange_serializer_spec.rb
@@ -300,6 +319,7 @@ Layout/LineLength:
- spec/serializers/api/order_serializer_spec.rb
- spec/services/cart_service_spec.rb
- spec/services/checkout/form_data_adapter_spec.rb
- spec/services/checkout/post_checkout_actions_spec.rb
- spec/services/embedded_page_service_spec.rb
- spec/services/exchange_products_renderer_spec.rb
- spec/services/order_cycle_distributed_products_spec.rb
@@ -307,11 +327,11 @@ Layout/LineLength:
- spec/services/order_cycle_form_spec.rb
- spec/services/order_factory_spec.rb
- spec/services/order_syncer_spec.rb
- spec/services/order_tax_adjustments_fetcher_spec.rb
- spec/services/permissions/order_spec.rb
- spec/services/permitted_attributes/order_cycle_spec.rb
- spec/services/products_renderer_spec.rb
- spec/services/product_tag_rules_filterer_spec.rb
- spec/services/variant_units/option_value_namer_spec.rb
- spec/spec_helper.rb
- spec/support/cancan_helper.rb
- spec/support/delayed_job_helper.rb
@@ -321,25 +341,42 @@ Layout/LineLength:
- spec/support/request/shop_workflow.rb
- spec/support/request/web_helper.rb
- spec/support/seeds.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- spec/controllers/base_controller2_spec.rb
- spec/features/consumer/caching/darkswarm_caching_spec.rb
- spec/models/calculator/flexi_rate_spec.rb
- spec/models/calculator/price_sack_spec.rb
- spec/models/spree/stock_item_spec.rb
- spec/requests/api/orders_spec.rb
- spec/swagger_helper.rb
- spec/views/spree/admin/payment_methods/index.html.haml_spec.rb
Metrics/AbcSize:
Max: 15
Exclude:
- app/controllers/admin/schedules_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/spree/admin/general_settings_controller.rb
- app/controllers/spree/admin/images_controller.rb
- app/controllers/spree/admin/mail_methods_controller.rb
- app/controllers/spree/admin/shipping_methods_controller.rb
- app/controllers/spree/paypal_controller.rb
- app/helpers/spree/base_helper.rb
- app/jobs/subscription_placement_job.rb
- app/models/order_cycle.rb
- app/models/product_import/unit_converter.rb
- app/models/spree/gateway/pay_pal_express.rb
- app/serializers/api/admin/enterprise_serializer.rb
- app/services/order_factory.rb
- app/services/variants_stock_levels.rb
- engines/order_management/app/services/order_management/subscriptions/form.rb
- lib/open_food_network/enterprise_fee_calculator.rb
- lib/open_food_network/order_grouper.rb
- lib/spree/core/controller_helpers/auth.rb
- lib/spree/core/controller_helpers/common.rb
- lib/spree/core/product_duplicator.rb
- lib/stripe/authorize_response_patcher.rb
- lib/stripe/profile_storer.rb
- app/controllers/admin/bulk_line_items_controller.rb
- app/controllers/admin/customers_controller.rb
- app/controllers/admin/enterprise_fees_controller.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/product_import_controller.rb
- app/controllers/admin/resource_controller.rb
- app/controllers/admin/stripe_accounts_controller.rb
- app/controllers/admin/subscription_line_items_controller.rb
- app/controllers/admin/subscriptions_controller.rb
@@ -349,10 +386,10 @@ Metrics/AbcSize:
- app/controllers/api/shipments_controller.rb
- app/controllers/api/taxons_controller.rb
- app/controllers/api/variants_controller.rb
- app/controllers/application_controller.rb
- app/controllers/cart_controller.rb
- app/controllers/discourse_sso_controller.rb
- app/controllers/enterprises_controller.rb
- app/controllers/spree/admin/image_settings_controller.rb
- app/controllers/spree/admin/orders_controller.rb
- app/controllers/spree/admin/orders/customer_details_controller.rb
- app/controllers/spree/admin/overview_controller.rb
@@ -360,12 +397,13 @@ Metrics/AbcSize:
- app/controllers/spree/admin/payments_controller.rb
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/reports_controller.rb
- app/controllers/spree/admin/resource_controller.rb
- app/controllers/spree/admin/search_controller.rb
- app/controllers/spree/admin/taxons_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/controllers/spree/admin/variants_controller.rb
- app/controllers/spree/credit_cards_controller.rb
- app/controllers/spree/orders_controller.rb
- app/controllers/spree/paypal_controller_decorator.rb
- app/controllers/spree/user_passwords_controller.rb
- app/controllers/spree/user_registrations_controller.rb
- app/controllers/spree/users_controller.rb
@@ -375,7 +413,6 @@ Metrics/AbcSize:
- app/controllers/user_passwords_controller.rb
- app/controllers/user_registrations_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
@@ -386,29 +423,40 @@ Metrics/AbcSize:
- app/models/enterprise_group.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
- app/models/model_set.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/proxy_order.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/calculator/default_tax_decorator.rb
- app/models/spree/calculator/flexi_rate_decorator.rb
- app/models/spree/line_item_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/ability.rb
- app/models/spree/address.rb
- app/models/spree/line_item.rb
- app/models/spree/order/checkout.rb
- app/models/spree/order_contents.rb
- app/models/spree/order_inventory.rb
- app/models/spree/order.rb
- app/models/spree/payment/processing.rb
- app/models/spree/payment.rb
- app/models/spree/preference.rb
- app/models/spree/preferences/preferable_class_methods.rb
- app/models/spree/preferences/preferable.rb
- app/models/spree/product.rb
- app/models/spree/return_authorization.rb
- app/models/spree/shipment.rb
- app/models/spree/taxon_decorator.rb
- app/models/spree/tax_rate_decorator.rb
- app/serializers/api/admin/enterprise_serializer.rb
- app/models/spree/taxon.rb
- app/models/spree/tax_rate.rb
- app/models/spree/variant.rb
- app/models/spree/zone.rb
- app/serializers/api/product_serializer.rb
- app/serializers/api/variant_serializer.rb
- app/services/cart_service.rb
- app/services/create_order_cycle.rb
- app/services/sets/model_set.rb
- app/services/order_cycle_form.rb
- app/services/order_syncer.rb
- app/services/variant_units/option_value_namer.rb
- app/services/variant_units/variant_and_line_item_naming.rb
- engines/order_management/app/services/order_management/order/updater.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- engines/order_management/app/services/order_management/stock/package.rb
- engines/order_management/app/services/order_management/stock/packer.rb
@@ -416,16 +464,15 @@ Metrics/AbcSize:
- lib/active_merchant/billing/gateways/stripe_decorator.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/customers_report.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/open_food_network/group_buy_report.rb
- lib/open_food_network/lettuce_share_report.rb
- lib/open_food_network/option_value_namer.rb
- lib/open_food_network/order_and_distributor_report.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
- lib/open_food_network/order_cycle_permissions.rb
- lib/open_food_network/orders_and_fulfillments_report/supplier_totals_report.rb
- lib/open_food_network/packing_report.rb
- lib/open_food_network/payments_report.rb
- lib/open_food_network/permissions.rb
@@ -433,13 +480,17 @@ Metrics/AbcSize:
- lib/open_food_network/reports/line_items.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/users_and_enterprises_report.rb
- lib/open_food_network/variant_and_line_item_naming.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/api/controller_setup.rb
- lib/spree/core/calculated_adjustments.rb
- lib/spree/core/controller_helpers/order.rb
- lib/spree/core/controller_helpers/respond_with.rb
- lib/spree/core/controller_helpers/ssl.rb
- lib/spree/core/delegate_belongs_to.rb
- lib/spree/core/permalinks.rb
- lib/spree/core/s3_support.rb
- lib/spree/localized_number.rb
- lib/spree/money.rb
- lib/stripe/account_connector.rb
- lib/tasks/enterprises.rake
- lib/tasks/sample_data/order_factory.rb
@@ -447,22 +498,18 @@ Metrics/AbcSize:
- spec/features/admin/product_import_spec.rb
- spec/features/admin/reports_spec.rb
- spec/features/admin/subscriptions_spec.rb
- spec/features/consumer/shopping/checkout_paypal_spec.rb
- spec/features/consumer/shopping/shopping_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/models/enterprise_spec.rb
- spec/models/product_importer_spec.rb
- spec/services/order_checkout_restart_spec.rb
- spec/support/i18n_translations_checker.rb
- spec/support/performance_helper.rb
- app/controllers/application_controller.rb
- app/models/spree/order/checkout.rb
- app/models/spree/payment/processing.rb
- app/models/spree/payment.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- spec/support/request/web_helper.rb
Metrics/BlockLength:
Max: 25
ExcludedMethods: [
IgnoredMethods: [
"class_eval",
"collection",
"context",
@@ -476,16 +523,23 @@ Metrics/BlockLength:
"scenario"
]
Exclude:
- spec/features/admin/order_cycles/complex_updating_specific_time_spec.rb
- spec/features/admin/tag_rules_spec.rb
- app/models/spree/order/checkout.rb
- app/models/spree/payment/processing.rb
- app/models/spree/shipment.rb
- lib/spree/core/controller_helpers/common.rb
- lib/spree/core/controller_helpers/ssl.rb
- lib/tasks/data.rake
- spec/controllers/spree/admin/invoices_controller_spec.rb
- spec/factories/address_factory.rb
- spec/factories/enterprise_factory.rb
- spec/factories/order_cycle_factory.rb
- spec/factories/order_factory.rb
- spec/factories/payment_method_factory.rb
- spec/factories/product_factory.rb
- spec/factories.rb
- spec/factories/shipment_factory.rb
- spec/factories/shipping_method_factory.rb
- spec/factories/subscription_factory.rb
- spec/factories/user_factory.rb
@@ -493,76 +547,115 @@ Metrics/BlockLength:
- spec/features/consumer/shopping/embedded_shopfronts_spec.rb
- spec/lib/open_food_network/group_buy_report_spec.rb
- spec/models/tag_rule/discount_order_spec.rb
- spec/requests/api/orders_spec.rb
- spec/spec_helper.rb
- spec/support/delayed_job_helper.rb
- spec/support/matchers/select2_matchers.rb
- spec/support/matchers/table_matchers.rb
- app/models/spree/order/checkout.rb
- app/models/spree/payment/processing.rb
- spec/requests/api/orders_spec.rb
- spec/swagger_helper.rb
Metrics/CyclomaticComplexity:
Max: 6
Exclude:
- app/controllers/admin/resource_controller.rb
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/payments_controller.rb
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/models/product_import/entry_validator.rb
- app/models/spree/order_inventory.rb
- app/models/spree/order.rb
- app/models/spree/shipment.rb
- app/models/spree/tax_rate.rb
- app/models/spree/variant.rb
- engines/order_management/app/services/order_management/reports/enterprise_fee_summary/parameters.rb
- lib/active_merchant/billing/gateways/stripe_decorator.rb
- lib/open_food_network/group_buy_report.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_permissions.rb
- lib/open_food_network/payments_report.rb
- lib/spree/core/controller_helpers/common.rb
- lib/stripe/authorize_response_patcher.rb
- lib/stripe/credit_card_clone_destroyer.rb
- spec/support/i18n_translations_checker.rb
- app/controllers/admin/enterprise_fees_controller.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/spree/admin/taxons_controller.rb
- app/controllers/spree/orders_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/payment_method_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/variant_override_set.rb
- app/models/spree/ability.rb
- app/models/spree/address.rb
- app/models/spree/order/checkout.rb
- app/models/spree/payment_method.rb
- app/models/spree/payment.rb
- app/models/spree/preference.rb
- app/models/spree/preferences/preferable.rb
- app/models/spree/preferences/preferable_class_methods.rb
- app/models/spree/product.rb
- app/models/spree/return_authorization.rb
- app/models/spree/zone.rb
- app/services/cart_service.rb
- app/services/sets/variant_override_set.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/spree/core/calculated_adjustments.rb
- lib/spree/core/controller_helpers/order.rb
- lib/spree/core/controller_helpers/respond_with.rb
- lib/spree/core/controller_helpers/ssl.rb
- lib/spree/localized_number.rb
- spec/models/product_importer_spec.rb
- app/models/spree/order/checkout.rb
- app/models/spree/payment.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
Metrics/PerceivedComplexity:
Max: 7
Exclude:
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/payments_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/models/product_import/entry_validator.rb
- app/models/spree/order_inventory.rb
- app/models/spree/shipment.rb
- app/models/spree/variant.rb
- lib/active_merchant/billing/gateways/stripe_decorator.rb
- lib/open_food_network/group_buy_report.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_permissions.rb
- lib/open_food_network/payments_report.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/api/variants_controller.rb
- app/controllers/spree/admin/taxons_controller.rb
- app/controllers/spree/orders_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/models/enterprise_relationship.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/ability.rb
- app/models/spree/address.rb
- app/models/spree/order/checkout.rb
- app/models/spree/order.rb
- app/models/spree/preferences/preferable_class_methods.rb
- app/models/spree/preferences/preferable.rb
- app/models/spree/product.rb
- app/models/spree/return_authorization.rb
- app/models/spree/zone.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/spree/core/calculated_adjustments.rb
- lib/spree/core/controller_helpers/order.rb
- lib/spree/core/controller_helpers/respond_with.rb
- lib/spree/core/controller_helpers/ssl.rb
- lib/spree/localized_number.rb
- spec/models/product_importer_spec.rb
- app/models/spree/order/checkout.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
Metrics/MethodLength:
Max: 10
@@ -573,6 +666,7 @@ Metrics/MethodLength:
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/manager_invitations_controller.rb
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/resource_controller.rb
- app/controllers/admin/stripe_accounts_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/api/products_controller.rb
@@ -581,20 +675,19 @@ Metrics/MethodLength:
- app/controllers/api/variants_controller.rb
- app/controllers/cart_controller.rb
- app/controllers/shop_controller.rb
- app/controllers/spree/admin/image_settings_controller.rb
- app/controllers/spree/admin/orders_controller.rb
- app/controllers/spree/admin/orders/customer_details_controller.rb
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/payments_controller.rb
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/reports_controller.rb
- app/controllers/spree/admin/resource_controller.rb
- app/controllers/spree/admin/tax_categories_controller.rb
- app/controllers/spree/admin/taxons_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/controllers/spree/admin/variants_controller.rb
- app/controllers/spree/credit_cards_controller.rb
- app/controllers/spree/orders_controller.rb
- app/controllers/spree/user_registrations_controller.rb
- app/controllers/spree/paypal_controller_decorator.rb
- app/controllers/spree/user_sessions_controller.rb
- app/controllers/stripe/callbacks_controller.rb
- app/controllers/user_confirmations_controller.rb
@@ -613,32 +706,47 @@ Metrics/MethodLength:
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/calculator/default_tax_decorator.rb
- app/models/spree/calculator/flexi_rate_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/payment_method_decorator.rb
- app/models/spree/ability.rb
- app/models/spree/address.rb
- app/models/spree/credit_card.rb
- app/models/spree/order/checkout.rb
- app/models/spree/order_contents.rb
- app/models/spree/order_inventory.rb
- app/models/spree/order.rb
- app/models/spree/payment_method.rb
- app/models/spree/payment/processing.rb
- app/models/spree/preference.rb
- app/models/spree/preferences/preferable_class_methods.rb
- app/models/spree/preferences/preferable.rb
- app/models/spree/preferences/store.rb
- app/models/spree/product.rb
- app/models/spree/product_decorator.rb
- app/models/spree/return_authorization.rb
- app/models/spree/shipment.rb
- app/models/spree/taxon.rb
- app/models/spree/tax_rate.rb
- app/models/spree/variant.rb
- app/models/spree/zone.rb
- app/serializers/api/admin/order_cycle_serializer.rb
- app/serializers/api/cached_enterprise_serializer.rb
- app/services/order_cycle_form.rb
- app/services/permitted_attributes/checkout.rb
- app/services/variant_units/option_value_namer.rb
- engines/order_management/app/services/order_management/order/updater.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_allocation_report.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_supplier_report.rb
- engines/order_management/app/services/order_management/reports/enterprise_fee_summary/scope.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- engines/order_management/app/services/order_management/stock/package.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/column_preference_defaults.rb
- lib/open_food_network/customers_report.rb
- lib/open_food_network/enterprise_fee_calculator.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/open_food_network/group_buy_report.rb
- lib/open_food_network/lettuce_share_report.rb
- lib/open_food_network/option_value_namer.rb
- lib/open_food_network/order_and_distributor_report.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
@@ -649,38 +757,42 @@ Metrics/MethodLength:
- lib/open_food_network/permissions.rb
- lib/open_food_network/products_and_inventory_report.rb
- lib/open_food_network/rack_request_blocker.rb
- lib/open_food_network/reports/bulk_coop_allocation_report.rb
- lib/open_food_network/reports/bulk_coop_supplier_report.rb
- lib/open_food_network/reports/line_items.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/users_and_enterprises_report.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/api/controller_setup.rb
- lib/spree/core/controller_helpers/auth.rb
- lib/spree/core/calculated_adjustments.rb
- lib/spree/core/controller_helpers/order.rb
- lib/spree/core/controller_helpers/respond_with.rb
- lib/spree/core/controller_helpers/ssl.rb
- lib/spree/core/delegate_belongs_to.rb
- lib/spree/core/permalinks.rb
- lib/spree/core/s3_support.rb
- lib/spree/localized_number.rb
- lib/spree/responder.rb
- lib/stripe/credit_card_clone_finder.rb
- lib/stripe/profile_storer.rb
- lib/tasks/data/truncate_data.rb
- lib/tasks/sample_data/group_factory.rb
- lib/tasks/sample_data/order_factory.rb
- lib/tasks/sample_data/product_factory.rb
- spec/features/consumer/shopping/checkout_paypal_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/models/product_importer_spec.rb
- spec/support/request/authentication_helper.rb
- app/models/spree/order/checkout.rb
- app/models/spree/payment/processing.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_allocation_report.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_supplier_report.rb
- spec/support/i18n_translations_checker.rb
- app/controllers/admin/bulk_line_items_controller.rb
- app/controllers/spree/paypal_controller.rb
- app/jobs/subscription_placement_job.rb
- app/models/spree/gateway/pay_pal_express.rb
Metrics/ClassLength:
Max: 100
Exclude:
- app/controllers/admin/customers_controller.rb
- app/controllers/spree/admin/payments_controller.rb
- app/controllers/spree/paypal_controller.rb
- engines/order_management/app/services/order_management/order/updater.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/resource_controller.rb
- app/controllers/admin/schedules_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/api/products_controller.rb
@@ -690,7 +802,6 @@ Metrics/ClassLength:
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/reports_controller.rb
- app/controllers/spree/admin/resource_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/controllers/spree/orders_controller.rb
- app/models/enterprise.rb
@@ -698,16 +809,24 @@ Metrics/ClassLength:
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/ability.rb
- app/models/spree/address.rb
- app/models/spree/credit_card.rb
- app/models/spree/gateway/stripe_sca.rb
- app/models/spree/line_item.rb
- app/models/spree/order.rb
- app/models/spree/payment.rb
- app/models/spree/product.rb
- app/models/spree/shipment.rb
- app/models/spree/user.rb
- app/models/spree/variant.rb
- app/models/spree/zone.rb
- app/serializers/api/cached_enterprise_serializer.rb
- app/serializers/api/enterprise_shopfront_serializer.rb
- app/services/cart_service.rb
- engines/order_management/app/services/order_management/order/updater.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
- engines/order_management/app/services/order_management/reports/enterprise_fee_summary/scope.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/enterprise_fee_calculator.rb
- lib/open_food_network/order_cycle_form_applicator.rb
- lib/open_food_network/order_cycle_management_report.rb
@@ -717,8 +836,6 @@ Metrics/ClassLength:
- lib/open_food_network/permissions.rb
- lib/open_food_network/users_and_enterprises_report.rb
- lib/open_food_network/xero_invoices_report.rb
- app/models/spree/payment.rb
- engines/order_management/app/services/order_management/reports/bulk_coop/bulk_coop_report.rb
Metrics/ModuleLength:
Max: 100
@@ -727,43 +844,21 @@ Metrics/ModuleLength:
- app/helpers/injection_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- engines/order_management/spec/services/order_management/order/updater_spec.rb
- engines/order_management/spec/services/order_management/stock/package_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/estimator_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/form_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/proxy_order_syncer_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/summarizer_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/validator_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/variants_list_spec.rb
- lib/open_food_network/column_preference_defaults.rb
- spec/controllers/admin/enterprises_controller_spec.rb
- spec/controllers/admin/order_cycles_controller_spec.rb
- spec/controllers/api/order_cycles_controller_spec.rb
- spec/controllers/api/orders_controller_spec.rb
- spec/controllers/spree/admin/payment_methods_controller_spec.rb
- spec/lib/open_food_network/address_finder_spec.rb
- spec/lib/open_food_network/customers_report_spec.rb
- spec/lib/open_food_network/enterprise_fee_calculator_spec.rb
- spec/lib/open_food_network/option_value_namer_spec.rb
- spec/lib/open_food_network/order_cycle_form_applicator_spec.rb
- spec/lib/open_food_network/order_cycle_permissions_spec.rb
- spec/lib/open_food_network/order_grouper_spec.rb
- spec/lib/open_food_network/permissions_spec.rb
- spec/lib/open_food_network/products_and_inventory_report_spec.rb
- spec/lib/open_food_network/scope_variant_to_hub_spec.rb
- spec/lib/open_food_network/tag_rule_applicator_spec.rb
- spec/lib/open_food_network/user_balance_calculator_spec.rb
- spec/lib/open_food_network/users_and_enterprises_report_spec.rb
- spec/models/spree/ability_spec.rb
- spec/models/spree/adjustment_spec.rb
- spec/models/spree/line_item_spec.rb
- spec/models/spree/payment_spec.rb
- spec/models/spree/product_spec.rb
- spec/models/spree/variant_spec.rb
- spec/services/permissions/order_spec.rb
- spec/support/request/web_helper.rb
- app/models/spree/order/checkout.rb
- app/models/spree/payment/processing.rb
- engines/order_management/spec/services/order_management/subscriptions/proxy_order_syncer_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/validator_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/summary_spec.rb
- lib/open_food_network/column_preference_defaults.rb
- spec/controllers/admin/order_cycles_controller_spec.rb
- spec/controllers/api/orders_controller_spec.rb
- spec/lib/open_food_network/order_cycle_form_applicator_spec.rb
- spec/lib/open_food_network/order_cycle_permissions_spec.rb
- spec/models/spree/adjustment_spec.rb
- spec/models/spree/credit_card_spec.rb
- spec/models/spree/line_item_spec.rb
- spec/models/spree/product_spec.rb
- spec/models/spree/variant_spec.rb
Metrics/ParameterLists:
Max: 5
@@ -775,5 +870,6 @@ Metrics/ParameterLists:
Lint/UselessAssignment:
Exclude:
- 'spec/**/*'
- 'lib/spree/core/controller_helpers/common.rb'
- 'spec/**/*'
- 'app/models/spree/taxon.rb'
- 'lib/spree/core/controller_helpers/common.rb'

7
.rubocop_specs.yml Normal file
View File

@@ -0,0 +1,7 @@
inherit_from:
- .rubocop.yml
# This rubocop config file is only used for specs
# Here we allow specs to be 300 lines long
Metrics/ModuleLength:
Max: 300

View File

@@ -1,11 +1,10 @@
# Our Open Food Network style guide.
#
# These are the rules we agreed upon and we work towards. Code Climate uses
# these rules to rate our code and detect new violations. But when you run
# rubocop locally, the default configuration file `.rubocop.yml` loads
# our "todo lists" to ignore all current violations.
# These are the rules we agreed upon and we work towards.
AllCops:
TargetRailsVersion: 4.0
NewCops: disable
SuggestExtensions: false
TargetRailsVersion: 5.0
Exclude:
- 'bin/**/*'
- 'db/**/*'
@@ -46,6 +45,9 @@ Lint/RaiseException:
Lint/StructNewOverride:
Enabled: true
Bundler/DuplicatedGem:
Enabled: false
## TEMPORARY/CONTESTED SETTINGS
#
# These are still to be decided upon, but recommended for inclusion by
@@ -180,7 +182,7 @@ Metrics/AbcSize:
Metrics/BlockLength:
Max: 25
ExcludedMethods: [
IgnoredMethods: [
"class_eval",
"collection",
"context",
@@ -214,3 +216,6 @@ Metrics/ParameterLists:
Metrics/PerceivedComplexity:
Max: 7
Naming/PredicateName:
Enabled: false

File diff suppressed because it is too large Load Diff

View File

@@ -1 +1 @@
2.3.7
2.5.9

View File

@@ -1,3 +1,19 @@
scss_files: 'app/assets/stylesheets/**/*.css.scss'
exclude: 'app/assets/stylesheets/shared/**'
linters:
ImportantRule:
enabled: false
VendorPrefix:
enabled: false
LeadingZero:
enabled: false
PropertySortOrder:
enabled: false
StringQuotes:
enabled: false
DeclarationOrder:
enabled: false
NestingDepth:
enabled: false

20
.simplecov Normal file
View File

@@ -0,0 +1,20 @@
#!/bin/env ruby
SimpleCov.start 'rails' do
add_filter '/bin/'
add_filter '/config/'
add_filter '/jobs/application_job.rb'
add_filter '/schemas/'
add_filter '/lib/generators'
add_filter '/spec/'
add_filter '/vendor/'
add_filter '/public'
add_filter '/swagger'
add_filter '/script'
add_filter '/log'
add_filter '/db'
add_filter '/lib/tasks/sample_data/'
end
require 'codecov'
SimpleCov.formatter = SimpleCov::Formatter::Codecov

7
.storybook/main.js Normal file
View File

@@ -0,0 +1,7 @@
module.exports = {
stories: ['../spec/components/stories/**/*.stories.json'],
addons: [
'@storybook/addon-docs',
'@storybook/addon-controls',
],
};

View File

@@ -0,0 +1,2 @@
<link href='https://fonts.googleapis.com/css?family=Roboto:400,300italic,400italic,300,700,700italic|Oswald:300,400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" media="screen" href="http://localhost:3000/assets/darkswarm/all.css" />

5
.storybook/preview.js Normal file
View File

@@ -0,0 +1,5 @@
export const parameters = {
server: {
url: `http://localhost:3000/rails/stories`,
},
};

3
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,3 @@
# Code of Conduct of the Open Food Network
**Welcome!** We are currently working on a Code of Conduct. You are welcome to contribute. We started this work at the Global Gathering 2020 and you find [notes of the initial session](https://community.openfoodnetwork.org/t/global-gathering-2020-day-5-a-code-of-conduct-for-ofn/2071/1) in the community forum. You can edit this file on Github to suggest new content. Alternatively, you can post in our [community forum](https://community.openfoodnetwork.org) or reach us on [Slack](https://openfoodnetwork.org/slack-invite).

View File

@@ -15,6 +15,14 @@ Create a new branch on your local machine to make your changes against (based on
git checkout -b branch-name-here --no-track upstream/master
You might need to update or install missing gems:
bundle install
Also, there might be missing dependencies, after pulling a particular branch. To update dependencies, run:
yarn install
If you want to run the whole test suite, we recommend using a free CI service to run your tests in parallel. Running the whole suite locally in series is likely to take > 40 minutes. [TravisCI][travis] and [SemaphoreCI][semaphore] both work great in our experience. Either way, make sure the tests pass on your new branch:
bundle exec rspec spec
@@ -40,7 +48,7 @@ Push your changes to a branch on your fork:
## Submitting a Pull Request
Use the GitHub UI to submit a [new pull request][pr] against upstream/master. To increase the chances that your pull request is swiftly accepted please have a look at our guide to [making a great pull request][great-pr].
Use the GitHub UI to submit a [new pull request][pr] against upstream/master. To increase the chances that your pull request is swiftly accepted please have a look at our guide to [making a great pull request][great-pr].
TL;DR:
* Write tests

View File

@@ -1,62 +0,0 @@
### Docker
It is possible to setup the Open Food Network app easily with Docker and Docker Compose.
The objective is to spare configuration time, in order to help people testing the app and contribute to it.
It can also be used as documentation. It is not perfect but it is used in many other projects and many devs are used to it nowadays.
### Install Docker
Please check the documentation here, https://docs.docker.com/install/ to install Docker.
For Docker Compose, information are here: https://docs.docker.com/compose/install/.
Better to have at least 2GB free on your computer in order to download images and create containers for Open Food Network app.
### Use Docker with Open Food Network
Open a terminal with a shell.
Clone the repository. If you're planning on contributing code to the project (which we [LOVE](CONTRIBUTING.md)), it is a good idea to begin by forking this repo using the Fork button in the top-right corner of this screen. You should then be able to use git clone to copy your fork onto your local machine.
```sh
$ git clone https://github.com/YOUR_GITHUB_USERNAME_HERE/openfoodnetwork
```
Otherwise, if you just want to get things running, clone from the OFN main repo:
```sh
$ git clone git@github.com:openfoodfoundation/openfoodnetwork.git
```
Go at the root of the app:
```sh
$ cd openfoodnetwork
```
Download the Docker images and build the containers:
```sh
$ docker-compose build
```
Setup the database and seed it with sample data:
```sh
$ docker-compose run web bundle exec rake db:reset
$ docker-compose run web bundle exec rake db:test:prepare
$ docker-compose run web bundle exec rake ofn:sample_data
```
Finally, run the app with all the required containers:
```sh
$ docker-compose up
```
The default admin user is 'ofn@example.com' with 'ofn123' password.
Check the app in the browser at `http://localhost:3000`.
You will then get the trace of the containers in the terminal. You can stop the containers using Ctrl-C in the terminal.
You can find some useful tips and commands [here](https://github.com/openfoodfoundation/openfoodnetwork/wiki/Docker:-useful-tips-and-commands).

View File

@@ -1,25 +1,47 @@
FROM ubuntu:18.04
FROM ubuntu:20.04
ENV TZ Europe/London
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN echo "deb http://security.ubuntu.com/ubuntu bionic-security main" >> /etc/apt/sources.list
# Install all the requirements
RUN apt-get update && apt-get install -y curl git build-essential software-properties-common wget zlib1g-dev libssl1.0-dev libreadline-dev libyaml-dev libffi-dev libxml2-dev libxslt1-dev wait-for-it imagemagick unzip
RUN apt-get update && apt-get install -y \
curl \
git \
build-essential \
software-properties-common \
wget \
zlib1g-dev \
libreadline-dev \
libyaml-dev \
libffi-dev \
libxml2-dev \
libxslt1-dev \
wait-for-it \
imagemagick \
unzip \
libjemalloc-dev \
libssl-dev
# Setup ENV variables
ENV PATH /usr/local/src/rbenv/shims:/usr/local/src/rbenv/bin:$PATH
ENV RBENV_ROOT /usr/local/src/rbenv
ENV CONFIGURE_OPTS --disable-install-doc
ENV BUNDLE_PATH /bundles
ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so
WORKDIR /usr/src/app
COPY .ruby-version .
# Install Rbenv & Ruby
RUN git clone --depth 1 --branch v1.1.2 https://github.com/rbenv/rbenv.git ${RBENV_ROOT} && \
git clone --depth 1 --branch v20200520 https://github.com/rbenv/ruby-build.git ${RBENV_ROOT}/plugins/ruby-build && \
${RBENV_ROOT}/plugins/ruby-build/install.sh && \
RUN git clone --depth 1 https://github.com/rbenv/rbenv.git ${RBENV_ROOT} && \
git clone --depth 1 https://github.com/rbenv/ruby-build.git ${RBENV_ROOT}/plugins/ruby-build && \
echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh && \
rbenv install $(cat .ruby-version) && \
RUBY_CONFIGURE_OPTS=--with-jemalloc rbenv install $(cat .ruby-version) && \
rbenv global $(cat .ruby-version) && \
gem install bundler --version=1.17.2
gem install bundler --version=1.17.3
# Install Postgres
RUN sh -c "echo 'deb https://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main' > /etc/apt/sources.list.d/pgdg.list" && \
@@ -27,8 +49,11 @@ RUN sh -c "echo 'deb https://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main'
apt-get update && \
apt-get install -yqq --no-install-recommends postgresql-client-9.5 libpq-dev
# Install node
RUN apt-get install -y nodejs
# Install node & yarn
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
apt-get update && \
apt-get install -y nodejs yarn
# Install Chrome
RUN wget --quiet -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \
@@ -43,5 +68,9 @@ RUN wget https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.z
# Copy code and install app dependencies
COPY . /usr/src/app/
# Install front-end dependencies
RUN yarn install
# Run bundler install in parallel with the amount of available CPUs
RUN bundle install --jobs="$(nproc)"

View File

@@ -4,14 +4,16 @@ This is a general guide to setting up an Open Food Network **development environ
### Requirements
The fastest way to make it work locally is to use Docker, you only need to setup git, see the [Docker setup guide](DOCKER.md).
The fastest way to make it work locally is to use Docker, you only need to setup git, see the [Docker setup guide](docker/README.md).
Otherwise, for a local setup you will need:
* Ruby 2.3.7 and bundler
* Ruby and bundler (check current Ruby version in [.ruby-version](https://github.com/openfoodfoundation/openfoodnetwork/blob/master/.ruby-version) file)
* PostgreSQL database
* Redis (for background jobs)
* Chrome (for testing)
The following guides will provide OS-specific step-by-step instructions to get these requirements installed:
- [Ubuntu Setup Guide][ubuntu]
- [Debian Setup Guide][debian]
- [OSX Setup Guide][osx]
If you are likely to need to manage multiple version of ruby on your local machine, we recommend version managers such as [rbenv](https://github.com/rbenv/rbenv) or [RVM](https://rvm.io/).
@@ -20,7 +22,7 @@ For those new to Rails, the following tutorial will help get you up to speed wit
### Get it
If you're planning on contributing code to the project (which we [LOVE](CONTRIBUTING.md)), it is a good idea to begin by forking this repo using the `Fork` button in the top-right corner of this screen. You should then be able to use `git clone` to copy your fork onto your local machine.
So you have set up your local environment according to the requirements listed above. If you're planning on contributing code to the project (which we [LOVE](CONTRIBUTING.md)), it is a good idea to begin by forking this repo using the `Fork` button in the top-right corner of this screen. You should then be able to use `git clone` to copy your fork onto your local machine:
git clone https://github.com/YOUR_GITHUB_USERNAME_HERE/openfoodnetwork
@@ -46,7 +48,11 @@ $ sudo -u postgres psql -c "CREATE USER ofn WITH SUPERUSER CREATEDB PASSWORD 'f0
This will create the "ofn" user as superuser and allowing it to create databases. If this command fails, check the [troubleshooting section](#creating-the-database) for an alternative.
Once done, run `script/setup`. If the script succeeds you're ready to start developing. If not, take a look at the output as it should be informative enough to help you troubleshoot.
Next, it is _strongly recommended_ to run the setup script.
```sh
$ script/setup
```
If the script succeeds you're ready to start developing. If not, take a look at the output as it should be informative enough to help you troubleshoot.
Now, your dreams of spinning up a development server can be realised:
@@ -77,8 +83,6 @@ Note: If your OS is not explicitly supported in the setup guides then not all te
Note: The time zone on your machine should match the one defined in `config/application.yml`.
The project is configured to use [Zeus][zeus] to reduce the pre-test startup time while Rails loads. See the [Zeus GitHub page][zeus] for usage instructions.
Once [npm dependencies are installed][karma], AngularJS tests can be run with:
./script/karma run
@@ -116,8 +120,8 @@ If these commands succeed, you should be able to [continue the setup process](#g
[developer-wiki]: https://github.com/openfoodfoundation/openfoodnetwork/wiki
[osx]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup:-OS-X
[ubuntu]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup:-Ubuntu
[debian]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup:-Debian
[wiki]: https://github.com/openfoodfoundation/openfoodnetwork/wiki
[zeus]: https://github.com/burke/zeus
[rubocop]: https://rubocop.readthedocs.io/en/latest/
[karma]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Karma
[slack-dev]: https://openfoodnetwork.slack.com/messages/C2GQ45KNU

144
Gemfile
View File

@@ -1,14 +1,27 @@
# frozen_string_literal: true
source 'https://rubygems.org'
ruby "2.3.7"
ruby "2.5.9"
git_source(:github) { |repo_name| "https://github.com/#{repo_name}.git" }
gem 'i18n', '~> 0.6.11'
gem 'i18n-js', '~> 3.7.1'
gem 'rails', '~> 4.0.13'
gem 'rails-i18n', '~> 4.0'
gem 'rails', '~> 6.0.3.7'
gem 'activemerchant', '>= 1.78.0'
gem 'angular-rails-templates', '>= 0.3.0'
gem 'awesome_nested_set'
gem 'ransack', '2.4.1'
gem 'responders'
gem 'sass', '~> 3.4.0' # this restriction originates from foundation-rails's version
gem 'sass-rails', '< 5.1.0' # this restriction originates from the compass-rails's version
gem 'i18n'
gem 'i18n-js', '~> 3.8.3'
gem 'rails-i18n'
gem 'rails_safe_tasks', '~> 1.0'
gem "activerecord-import"
gem "db2fog", github: "openfoodfoundation/db2fog", branch: "rails-6"
gem "fog-aws", "~> 2.0" # db2fog does not support v3
gem "catalog", path: "./engines/catalog"
gem 'dfc_provider', path: './engines/dfc_provider'
@@ -16,118 +29,105 @@ gem "order_management", path: "./engines/order_management"
gem 'web', path: './engines/web'
gem 'activerecord-postgresql-adapter'
gem 'pg', '~> 0.21.0'
gem 'pg', '~> 1.2.3'
# OFN-maintained and patched version of Spree v2.0.4. See
# https://github.com/openfoodfoundation/openfoodnetwork/wiki/Tech-Doc:-OFN's-Spree-fork%F0%9F%8D%B4
# for details.
gem 'spree_core', github: 'openfoodfoundation/spree', branch: '2-1-0-stable'
### Dependencies brought from spree core
gem 'acts_as_list', '= 0.2.0'
gem 'awesome_nested_set', '~> 3.0.0.rc.1'
gem 'cancan', '~> 1.6.10'
gem 'ffaker', '~> 1.16'
gem 'highline', '= 1.6.18' # Necessary for the install generator
gem 'httparty', '~> 0.18' # Used to check alerts in spree_core, this is not used in OFN.
gem 'json', '>= 1.7.7'
gem 'money', '5.1.1'
gem 'paranoia', '~> 2.0'
gem 'ransack', '~> 1.8.10'
gem 'state_machine', '1.2.0'
gem 'stringex', '~> 1.5.1'
gem 'spree_i18n', github: 'spree/spree_i18n', branch: '1-3-stable'
# Our branch contains the following changes:
# - Pass customer email and phone number to PayPal (merged to upstream master)
# - Change type of password from string to password to hide it in the form
# - Skip CA cert file and use the ones provided by the OS
gem 'spree_paypal_express', github: 'openfoodfoundation/better_spree_paypal_express', branch: '2-1-0-stable'
gem 'acts_as_list', '1.0.4'
gem 'cancancan', '~> 1.15.0'
gem 'ffaker'
gem 'highline', '2.0.3' # Necessary for the install generator
gem 'json'
gem 'monetize', '~> 1.11'
gem 'paranoia', '~> 2.4'
gem 'state_machines-activerecord'
gem 'stringex', '~> 2.8.5'
gem 'paypal-sdk-merchant', '1.117.2'
gem 'stripe'
# We need at least this version to have Digicert's root certificate
# which is needed for Pin Payments (and possibly others).
gem 'activemerchant', '~> 1.78.0'
gem 'devise', '~> 3.5.10' # v4.0.0 needs rails 4.1
gem 'devise'
gem 'devise-encryptable'
gem 'devise-token_authenticatable', '~> 0.4.10' # v0.5.0 needs devise v4
gem 'devise-token_authenticatable'
gem 'jwt', '~> 2.2'
gem 'oauth2', '~> 1.4.4' # Used for Stripe Connect
gem 'oauth2', '~> 1.4.7' # Used for Stripe Connect
gem 'daemons'
gem 'delayed_job_active_record'
gem 'delayed_job_web'
# Spree's default pagination gem (locked to the current version used by Spree)
# We use it's methods in OFN code as well, so this is a direct dependency
gem 'kaminari', '~> 0.14.1'
gem 'kaminari', '~> 1.2.1'
gem 'andand'
gem 'angularjs-rails', '1.5.5'
gem 'aws-sdk', '1.11.1' # temporarily locked down due to https://github.com/aws/aws-sdk-ruby/issues/273
gem 'aws-sdk', '1.67.0'
gem 'bugsnag'
gem 'db2fog'
gem 'haml'
gem 'redcarpet'
gem 'sass'
gem 'sass-rails'
gem 'truncate_html', '0.9.2'
gem 'unicorn'
gem 'actionpack-action_caching'
# AMS 0.9.x and 0.10.x are very different from 0.8.4 and the upgrade is not straight forward
# AMS is deprecated, we will introduce an alternative at some point
gem "active_model_serializers", "0.8.4"
gem 'activerecord-session_store'
gem 'acts-as-taggable-on', '~> 4.0'
gem 'acts-as-taggable-on', '~> 7.0'
gem 'angularjs-file-upload-rails', '~> 2.4.1'
gem 'bootsnap', require: false
gem 'custom_error_message', github: 'jeremydurham/custom-err-msg'
gem 'dalli'
gem 'figaro'
gem 'geocoder'
gem 'gmaps4rails'
gem 'oj'
gem 'paper_trail', '~> 7.1.3'
gem 'mimemagic', '> 0.3.5'
gem 'paper_trail', '~> 10.3.1'
gem 'paperclip', '~> 3.4.1'
gem 'rack-rewrite'
gem 'rack-ssl', require: 'rack/ssl'
gem 'roadie-rails', '~> 1.3.0'
gem 'roadie-rails'
gem 'redis', '>= 4.0', require: ['redis', 'redis/connection/hiredis']
gem 'hiredis'
gem 'sidekiq'
gem 'sidekiq-scheduler'
gem 'combine_pdf'
gem 'wicked_pdf'
gem 'wkhtmltopdf-binary'
gem 'foreigner'
gem 'immigrant'
gem 'roo', '~> 2.8.3'
gem 'whenever', require: false
gem 'test-unit', '~> 3.3'
gem 'test-unit', '~> 3.4'
gem 'coffee-rails', '~> 4.2.2'
gem 'coffee-rails', '~> 5.0.0'
gem 'compass-rails'
gem 'mini_racer', '0.2.15'
gem 'mini_racer', '0.4.0'
gem 'uglifier', '>= 1.0.3'
gem 'angular-rails-templates', '~> 0.3.0'
gem 'angular_rails_csrf'
gem 'foundation-icons-sass-rails'
gem 'momentjs-rails'
gem 'foundation-rails', '= 5.5.2.1'
gem 'jquery-migrate-rails'
gem 'jquery-rails', '3.1.5'
gem 'jquery-rails', '4.4.0'
gem 'jquery-ui-rails', '~> 4.2'
gem 'select2-rails', '~> 3.4.7'
# Thor v0.20 works with both select2-rails 3.4.7 and railties 6.0.3.6
# To upgrade to thor v1 we need to upgrade select2-rails to v3.5 which requires some work
gem 'thor', '~> 0.20'
gem 'ofn-qz', github: 'openfoodfoundation/ofn-qz', branch: 'ofn-rails-4'
gem 'good_migrations'
gem 'flipper'
gem 'flipper-active_record'
gem 'flipper-ui'
gem "view_component", require: "view_component/engine"
group :production, :staging do
gem 'ddtrace'
gem 'unicorn-worker-killer'
@@ -135,12 +135,12 @@ end
group :test, :development do
# Pretty printed test output
gem 'atomic'
gem 'awesome_print'
gem 'capybara', '>= 2.18.0' # 3.0 requires rack 1.6 that only works with Rails 4.2
gem 'bullet'
gem 'capybara'
gem 'database_cleaner', require: false
gem "factory_bot_rails", '4.10.0', require: false
gem 'fuubar', '~> 2.5.0'
gem "factory_bot_rails", '6.2.0', require: false
gem 'fuubar', '~> 2.5.1'
gem 'json_spec', '~> 1.1.4'
gem 'knapsack'
gem 'letter_opener', '>= 1.4.1'
@@ -155,27 +155,27 @@ group :test, :development do
end
group :test do
gem 'codecov', require: false
gem 'simplecov', require: false
gem 'test-prof'
gem 'webmock'
gem 'rails-controller-testing'
gem 'pdf-reader'
# See spec/spec_helper.rb for instructions
# gem 'perftools.rb'
end
group :development do
gem 'byebug', '~> 11.0.0' # 11.1 requires ruby 2.4
gem 'byebug'
gem 'debugger-linecache'
gem "newrelic_rpm", "~> 3.0"
gem "pry", "~> 0.12.0" # pry 0.13 is not compatible with pry-byebug 3.7
gem 'pry-byebug', '~> 3.7.0' # 3.8 requires ruby 2.4
gem 'pry'
gem 'pry-byebug'
gem 'rubocop'
gem 'rubocop-rails'
gem 'spring'
gem 'spring-commands-rspec'
# 1.0.9 fixed openssl issues on macOS https://github.com/eventmachine/eventmachine/issues/602
# While we don't require this gem directly, no dependents forced the upgrade to a version
# greater than 1.0.9, so we just required the latest available version here.
gem 'eventmachine', '>= 1.2.3'
gem "view_component_storybook", require: "view_component/storybook/engine"
gem 'rack-mini-profiler', '< 3.0.0'
end

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,5 @@
[![Build Status](https://semaphoreci.com/api/v1/openfoodfoundation/openfoodnetwork-2/branches/master/badge.svg)](https://semaphoreci.com/openfoodfoundation/openfoodnetwork-2)
[![Build](https://github.com/openfoodfoundation/openfoodnetwork/actions/workflows/build.yml/badge.svg)](https://github.com/openfoodfoundation/openfoodnetwork/actions/workflows/build.yml)
[![codecov](https://codecov.io/gh/openfoodfoundation/openfoodnetwork/branch/master/graph/badge.svg?token=FBSOod4qiu)](https://codecov.io/gh/openfoodfoundation/openfoodnetwork)
[![Code Climate](https://codeclimate.com/github/openfoodfoundation/openfoodnetwork.png)](https://codeclimate.com/github/openfoodfoundation/openfoodnetwork)
# Open Food Network
@@ -9,17 +10,22 @@ Supported by the Open Food Foundation and a network of global affiliates, we are
We're part of global movement - get involved!
* Join the conversation [on Slack][slack-invite]. Make sure you introduce yourself in the #general channel.
* Join the conversation [on Slack][slack-invite]. Make sure you introduce yourself in the #general channel and join #dev for all tech-related topics.
* Head to [https://openfoodnetwork.org](https://openfoodnetwork.org) for more information about the global OFN project.
* Check out the [User Guide](https://guide.openfoodnetwork.org/) for a list of features and tutorials.
* Join our [discussion forum](https://community.openfoodnetwork.org).
## Contributing
If you are interested in contributing to the OFN in any capacity, please introduce yourself [on Slack][slack-invite], and have a look through our [Contributor Guide][contributor-guide].
If you are interested in contributing to the OFN in any capacity, please introduce yourself [on Slack][slack-invite], and have a look through the [OFN Handbook][ofn-handbook].
Our [GETTING_STARTED](GETTING_STARTED.md) and [CONTRIBUTING](CONTRIBUTING.md) guides are the best place to start for developers looking to set up a development environment and make contributions to the codebase.
### Hacktoberfest :tada:
Are you participating in [Hacktoberfest](https://hacktoberfest.digitalocean.com/)? Go check out our [Welcome New Developers project board][welcome-dev]! We have curated all issues we consider to be a good starting point for new members of the community and categorized them by skills and level of complexity.
Have a look and pick the one you would prefer working on!
## Provisioning
If you're interested in provisioning a server, see [ofn-install][ofn-install] for the project's Ansible playbooks.
@@ -28,7 +34,9 @@ We also have a [Super Admin Guide][super-admin-guide] to help with configuration
## Testing
We use [BrowserStack](https://www.browserstack.com/) as a manual testing tool. BrowserStack provides open source projects with unlimited and free of charge accounts. A big thanks to them!
If you'd like to help out with testing, please introduce yourself on the #testing channel on [Slack][slack-invite] and download the [ZenHub browser extension][zenhub] to view the development pipeline. Also, do have a look in our [Welcome New QAs board](https://github.com/openfoodfoundation/openfoodnetwork/projects/31) for some good first issues, both on manual and automated testing (RSpec/Capybara).
We use [BrowserStack](https://www.browserstack.com/) as a manual testing tool. BrowserStack provides open source projects with unlimited and free of charge accounts. A big thanks to them!
## Licence
@@ -36,6 +44,8 @@ Copyright (c) 2012 - 2020 Open Food Foundation, released under the AGPL licence.
[survey]: https://docs.google.com/a/eaterprises.com.au/forms/d/1zxR5vSiU9CigJ9cEaC8-eJLgYid8CR8er7PPH9Mc-30/edit#
[slack-invite]: https://join.slack.com/t/openfoodnetwork/shared_invite/zt-9sjkjdlu-r02kUMP1zbrTgUhZhYPF~A
[contributor-guide]: https://ofn-user-guide.gitbook.io/ofn-contributor-guide/who-are-we
[ofn-handbook]: https://ofn-user-guide.gitbook.io/ofn-handbook/
[ofn-install]: https://github.com/openfoodfoundation/ofn-install
[super-admin-guide]: https://ofn-user-guide.gitbook.io/ofn-super-admin-guide
[welcome-dev]: https://github.com/openfoodfoundation/openfoodnetwork/projects/27
[zenhub]: https://www.zenhub.com/extension

View File

@@ -1,4 +1,6 @@
#!/usr/bin/env rake
# frozen_string_literal: true
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
@@ -6,4 +8,6 @@ require_relative 'config/application'
Openfoodnetwork::Application.load_tasks
Knapsack.load_tasks if defined?(Knapsack)
unless ENV['DISABLE_KNAPSACK']
Knapsack.load_tasks if defined?(Knapsack)
end

View File

@@ -1,10 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg version="1.0" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="15 13 34 38.4" enable-background="new 15 13 34 38.4" xml:space="preserve">
<g>
<polygon fill="#FFFFFF" points="15.5,13.5 48.5,13.5 48.5,50.7 31.6,45.5 15.5,50.7 "/>
<path fill="#999999" d="M48,14v36l-16.4-5L16,50V14H48 M49,13h-1H16h-1v1v36v1.4l1.3-0.4l15.3-5l16.1,5l1.3,0.4V50V14V13L49,13z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 696 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><circle cx="24.87" cy="24.87" r="24" fill="#f4f9fd" stroke="#cfe1f3" stroke-miterlimit="10"/><path d="M36.31 18.13c0 7.51-8.11 7.63-8.11 10.4v.71c0 .74-.6 1.34-1.34 1.34h-5.11c-.74 0-1.34-.6-1.34-1.34v-.97c0-4 3.04-5.61 5.33-6.89 1.97-1.1 3.17-1.85 3.17-3.31 0-1.93-2.46-3.21-4.46-3.21-2.6 0-3.8 1.23-5.48 3.36-.45.57-1.28.68-1.87.24l-3.12-2.36a1.35 1.35 0 01-.3-1.83c2.65-3.89 6.02-6.07 11.27-6.07 5.49-.02 11.36 4.27 11.36 9.93zM29 36.86c0 2.59-2.11 4.71-4.71 4.71s-4.71-2.11-4.71-4.71c0-2.59 2.11-4.71 4.71-4.71S29 34.27 29 36.86z" fill="#81b2e1"/></svg>

After

Width:  |  Height:  |  Size: 618 B

View File

@@ -10,5 +10,4 @@ angular.module("ofn.admin", [
"admin.taxons",
"infinite-scroll"
]).config ($httpProvider) ->
$httpProvider.defaults.headers.common["X-CSRF-Token"] = $("meta[name=csrf-token]").attr("content")
$httpProvider.defaults.headers.common["Accept"] = "application/json, text/javascript, */*"

View File

@@ -10,13 +10,10 @@
//= require jquery-migrate-min
//= require jquery_ujs
//= require jquery.ui.all
//= require jquery-ui-timepicker-addon
//= require jquery.powertip
//= require jquery.cookie
//= require jquery.jstree/jquery.jstree
//= require jquery.vAlign
//= require jquery.horizontalNav
//= require jquery.adaptivemenu
//= require angular
//= require angular-resource
//= require angular-animate
@@ -26,17 +23,38 @@
//= require angular-rails-templates
//= require lodash.underscore.js
// datetimepicker (fil, nb)
//= require flatpickr/dist/flatpickr.min
//= require flatpickr/dist/l10n/ar
//= require flatpickr/dist/l10n/cat
//= require flatpickr/dist/l10n/cy
//= require flatpickr/dist/l10n/de
//= require flatpickr/dist/l10n/es
//= require flatpickr/dist/l10n/fr
//= require flatpickr/dist/l10n/it
//= require flatpickr/dist/l10n/nl
//= require flatpickr/dist/l10n/pl
//= require flatpickr/dist/l10n/pt
//= require flatpickr/dist/l10n/ru
//= require flatpickr/dist/l10n/sv
//= require flatpickr/dist/l10n/tr
//= require shortcut-buttons-flatpickr/dist/shortcut-buttons-flatpickr.min
//= require flatpickr/dist/plugins/labelPlugin/labelPlugin
// spree
//= require spree
//= require admin/spree/spree
//= require admin/spree/spree-select2
//= require modernizr
//= require equalize
//= require css_browser_selector_dev
//= require responsive-tables
//= require admin/spree_paypal_express
//= require admin/handlebar_extensions
//= require admin/spree/handlebar_extensions
// OFN specific
//= require ../shared/shared
//= require_tree ../shared/directives
//= require_tree ../templates/shared
//= require_tree ../templates/admin
//= require ./admin_ofn
//= require ./customers/customers
@@ -71,20 +89,23 @@
//= require textAngular.min.js
//= require i18n/translations
//= require darkswarm/i18n.translate.js
//= require moment
//= require moment/de.js
//= require moment/en-gb.js
//= require moment/es.js
//= require moment/fr.js
//= require moment/it.js
//= require moment/nb.js
//= require moment/pt-br.js
//= require moment/pt.js
//= require moment/ru.js
//= require moment/sv.js
//= require moment/ca.js
//= require moment/ar.js
//= require moment/tr.js
//= require moment/min/moment.min.js
//= require moment/locale/ar.js
//= require moment/locale/ca.js
//= require moment/locale/de.js
//= require moment/locale/en-gb.js
//= require moment/locale/es.js
//= require moment/locale/fil.js
//= require moment/locale/fr.js
//= require moment/locale/it.js
//= require moment/locale/nb.js
//= require moment/locale/nl-be.js
//= require moment/locale/pt-br.js
//= require moment/locale/pt.js
//= require moment/locale/ru.js
//= require moment/locale/sv.js
//= require moment/locale/tr.js
//= require moment/locale/pl.js
// foundation
//= require ../shared/mm-foundation-tpls-0.9.0-20180826174721.min.js

View File

@@ -1,4 +1,4 @@
angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout, $filter, $http, $window, BulkProducts, DisplayProperties, DirtyProducts, VariantUnitManager, StatusMessage, producers, Taxons, Columns, tax_categories, RequestMonitor, SortOptions, ErrorsParser) ->
angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout, $filter, $http, $window, $location, BulkProducts, DisplayProperties, DirtyProducts, VariantUnitManager, StatusMessage, producers, Taxons, Columns, tax_categories, RequestMonitor, SortOptions, ErrorsParser, ProductFiltersUrl) ->
$scope.StatusMessage = StatusMessage
$scope.columns = Columns.columns
@@ -13,37 +13,30 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
{id: 100, name: t('js.admin.orders.index.per_page', results: 100)}
]
$scope.filterableColumns = [
{ name: t("label_producers"), db_column: "producer_name" },
{ name: t("name"), db_column: "name" }
]
$scope.filterTypes = [
{ name: t("equals"), predicate: "eq" },
{ name: t("contains"), predicate: "cont" }
]
$scope.optionTabs =
filters: { title: t("filter_products"), visible: false }
$scope.q = {
producerFilter: ""
categoryFilter: ""
importDateFilter: ""
query: ""
sorting: ""
}
$scope.sorting = "name asc"
$scope.producers = producers
$scope.taxons = Taxons.all
$scope.tax_categories = tax_categories
$scope.producerFilter = ""
$scope.categoryFilter = ""
$scope.importDateFilter = ""
$scope.page = 1
$scope.per_page = 15
$scope.products = BulkProducts.products
$scope.query = ""
$scope.DisplayProperties = DisplayProperties
$scope.sortOptions = SortOptions
$scope.initialise = ->
$scope.q = ProductFiltersUrl.loadFromUrl($location.search())
$scope.fetchProducts()
$scope.$watchCollection '[query, producerFilter, categoryFilter, importDateFilter, per_page]', ->
$scope.$watchCollection '[q.query, q.producerFilter, q.categoryFilter, q.importDateFilter, per_page]', ->
$scope.page = 1 # Reset page when changing filters for new search
$scope.changePage = (newPage) ->
@@ -53,25 +46,27 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
$scope.fetchProducts = ->
removeClearedValues()
params = {
'q[name_cont]': $scope.query,
'q[supplier_id_eq]': $scope.producerFilter,
'q[primary_taxon_id_eq]': $scope.categoryFilter,
'q[name_cont]': $scope.q.query,
'q[supplier_id_eq]': $scope.q.producerFilter,
'q[primary_taxon_id_eq]': $scope.q.categoryFilter,
'q[s]': $scope.sorting,
import_date: $scope.importDateFilter,
import_date: $scope.q.importDateFilter,
page: $scope.page,
per_page: $scope.per_page
}
RequestMonitor.load(BulkProducts.fetch(params).$promise).then ->
# update url with the filters used
$location.search(ProductFiltersUrl.generate($scope.q))
$scope.resetProducts()
removeClearedValues = ->
delete $scope.producerFilter if $scope.producerFilter == "0"
delete $scope.categoryFilter if $scope.categoryFilter == "0"
delete $scope.importDateFilter if $scope.importDateFilter == "0"
delete $scope.q.producerFilter if $scope.q.producerFilter == "0"
delete $scope.q.categoryFilter if $scope.q.categoryFilter == "0"
delete $scope.q.importDateFilter if $scope.q.importDateFilter == "0"
$timeout ->
if $scope.showLatestImport
$scope.importDateFilter = $scope.importDates[1].id
$scope.q.importDateFilter = $scope.importDates[1].id
$scope.resetProducts = ->
DirtyProducts.clear()
@@ -101,16 +96,16 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
$scope.visibleTab = tab
$scope.resetSelectFilters = ->
$scope.query = ""
$scope.producerFilter = "0"
$scope.categoryFilter = "0"
$scope.importDateFilter = "0"
$scope.q.query = ""
$scope.q.producerFilter = "0"
$scope.q.categoryFilter = "0"
$scope.q.importDateFilter = "0"
$scope.fetchProducts()
$scope.$watch 'sortOptions', (sort) ->
return unless sort && sort.predicate != ""
$scope.sorting = sort.getSortingExpr()
$scope.sorting = sort.getSortingExpr(defaultDirection: "asc")
$scope.fetchProducts()
, true
@@ -122,8 +117,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
$scope.editWarn = (product, variant) ->
if confirm_unsaved_changes()
window.open(editProductUrl(product, variant), "_blank")
$window.location.href = ProductFiltersUrl.buildUrl(editProductUrl(product, variant), $scope.q)
$scope.toggleShowAllVariants = ->
showVariants = !DisplayProperties.showVariants 0
@@ -153,7 +147,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
if confirm("Are you sure?")
$http(
method: "DELETE"
url: "/api/products/" + product.id
url: "/api/v0/products/" + product.id
).success (data) ->
$scope.products.splice $scope.products.indexOf(product), 1
DirtyProducts.deleteProduct product.id
@@ -168,7 +162,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
if confirm(t("are_you_sure"))
$http(
method: "DELETE"
url: "/api/products/" + product.permalink_live + "/variants/" + variant.id
url: "/api/v0/products/" + product.permalink_live + "/variants/" + variant.id
).success (data) ->
$scope.removeVariant(product, variant)
else
@@ -220,10 +214,11 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
data:
products: productsToSubmit
filters:
'q[name_cont]': $scope.query
'q[supplier_id_eq]': $scope.producerFilter
'q[primary_taxon_id_eq]': $scope.categoryFilter
import_date: $scope.importDateFilter
'q[name_cont]': $scope.q.query
'q[supplier_id_eq]': $scope.q.producerFilter
'q[primary_taxon_id_eq]': $scope.q.categoryFilter
'q[s]': $scope.sorting
import_date: $scope.q.importDateFilter
page: $scope.page
per_page: $scope.per_page
).success((data) ->

View File

@@ -47,3 +47,8 @@ angular.module("admin.customers").controller "customersCtrl", ($scope, $q, $filt
tag.text.toLowerCase().indexOf(query.toLowerCase()) != -1
defer.resolve filtered
defer.promise
$scope.displayBalanceStatus = (customer) ->
return unless customer.balance_status
t('admin.customers.index.' + customer.balance_status)

View File

@@ -1,9 +0,0 @@
angular.module("ofn.admin").directive "datepicker", ->
require: "ngModel"
link: (scope, element, attrs, ngModel) ->
element.datepicker
dateFormat: "yy-mm-dd"
onSelect: (dateText, inst) ->
scope.$apply (scope) ->
# Fires ngModel.$parsers
ngModel.$setViewValue dateText

View File

@@ -1,11 +0,0 @@
angular.module("ofn.admin").directive "datetimepicker", ->
require: "ngModel"
link: (scope, element, attrs, ngModel) ->
element.datetimepicker
dateFormat: "yy-mm-dd"
timeFormat: "HH:mm:ss"
stepMinute: 15
onSelect: (dateText, inst) ->
scope.$apply (scope) ->
# Fires ngModel.$parsers
ngModel.$setViewValue dateText

View File

@@ -5,5 +5,10 @@ angular.module("ofn.admin").directive "ofnSelect2MinSearch", ->
minimumResultsForSearch: attrs.ofnSelect2MinSearch
ngModel.$formatters.push (value) ->
if (value)
element.select2('val', value);
# select2 populates options with a value like "number:3" or "string:category" but
# select2('val', value) doesn't do the type conversion for us as one would expect
if isNaN(value)
element.select2('val', "string:#{value}")
else
element.select2('val', "number:#{value}")

View File

@@ -1,7 +1,7 @@
angular.module('admin.enterpriseFees').directive 'spreeDeleteResource', ->
(scope, element, attrs) ->
if scope.enterprise_fee.id
url = '/api/enterprise_fees/' + scope.enterprise_fee.id
url = '/api/v0/enterprise_fees/' + scope.enterprise_fee.id
html = '<a href="' + url + '" class="delete-resource icon_link icon-trash no-text" data-action="remove" data-confirm="' + t('are_you_sure') + '" url="' + url + '"></a>'
#var html = '<a href="'+url+'" class="delete-resource" data-confirm="Are you sure?"><img alt="Delete" src="/assets/admin/icons/delete.png" /> Delete</a>';
element.append html

View File

@@ -69,25 +69,24 @@ angular.module("admin.enterprises")
$scope.newUser = $scope.invite_errors = $scope.invite_success = null
$scope.removeLogo = ->
return unless confirm(t("admin.enterprises.remove_logo.immediate_removal_warning"))
Enterprises.removeLogo($scope.Enterprise).then (data) ->
$scope.Enterprise = angular.copy(data)
$scope.$emit("enterprise:updated", $scope.Enterprise)
StatusMessage.display("success", t("admin.enterprises.remove_logo.removed_successfully"))
, (response) ->
if response.data.error?
StatusMessage.display("failure", response.data.error)
$scope.performEnterpriseAction("removeLogo", "immediate_logo_removal_warning", "removed_logo_successfully")
$scope.removePromoImage = ->
return unless confirm(t("admin.enterprises.remove_promo_image.immediate_removal_warning"))
$scope.performEnterpriseAction("removePromoImage", "immediate_promo_image_removal_warning", "removed_promo_image_successfully")
Enterprises.removePromoImage($scope.Enterprise).then (data) ->
$scope.removeTermsAndConditions = ->
$scope.performEnterpriseAction("removeTermsAndConditions", "immediate_terms_and_conditions_removal_warning", "removed_terms_and_conditions_successfully")
$scope.performEnterpriseAction = (enterpriseActionName, warning_message_key, success_message_key) ->
return unless confirm($scope.translation(warning_message_key))
Enterprises[enterpriseActionName]($scope.Enterprise).then (data) ->
$scope.Enterprise = angular.copy(data)
$scope.$emit("enterprise:updated", $scope.Enterprise)
StatusMessage.display("success", t("admin.enterprises.remove_promo_image.removed_successfully"))
StatusMessage.display("success", $scope.translation(success_message_key))
, (response) ->
if response.data.error?
StatusMessage.display("failure", response.data.error)
$scope.translation = (key) ->
t('js.admin.enterprises.form.images.' + key)

View File

@@ -0,0 +1,30 @@
angular.module("admin.enterprises").directive 'termsAndConditionsWarning', ($compile, $templateCache, DialogDefaults, $timeout) ->
restrict: 'A'
scope: true
link: (scope, element, attr) ->
# This file input click handler will hold the browser file input dialog and show a warning modal
scope.hold_file_input_and_show_warning_modal = (event) ->
event.preventDefault()
scope.template = $compile($templateCache.get('admin/modals/terms_and_conditions_warning.html'))(scope)
if scope.template.dialog
scope.template.dialog(DialogDefaults)
scope.template.dialog('open')
scope.$apply()
element.bind 'click', scope.hold_file_input_and_show_warning_modal
# When the user presses continue in the warning modal, we open the browser file input dialog
scope.continue = ->
scope.template.dialog('close')
# unbind warning modal handler and click file input again to open the browser file input dialog
element.unbind('click').trigger('click')
# afterwards, bind warning modal handler again so that the warning is shown the next time
$timeout ->
element.bind 'click', scope.hold_file_input_and_show_warning_modal
return
scope.close = ->
scope.template.dialog('close')
return

View File

@@ -1,2 +1,2 @@
angular.module("admin.indexUtils", ['admin.resources', 'ngSanitize', 'templates', 'admin.utils']).config ($httpProvider) ->
$httpProvider.defaults.headers.common["X-CSRF-Token"] = $("meta[name=csrf-token]").attr("content");
$httpProvider.defaults.headers.common["Accept"] = "application/json, text/javascript, */*"

View File

@@ -16,7 +16,7 @@ angular.module("admin.indexUtils").factory "PagedFetcher", (dataFetcher) ->
fetchPages: (url, page, pageCallback) ->
dataFetcher(@urlForPage(url, page)).then (data) =>
@page++
@last_page = data.pages
@last_page = data.pagination.pages
pageCallback(data) if pageCallback

View File

@@ -1,5 +1,5 @@
angular.module("admin.indexUtils").factory "resources", ($resource) ->
LineItem = $resource '/api/orders/:order_number/line_items/:line_item_id.json',
LineItem = $resource '/api/v0/orders/:order_number/line_items/:line_item_id.json',
{ order_number: '@order_number', line_item_id: '@line_item_id'},
'update': { method: 'PUT' }
Customer = $resource '/admin/customers/:customer_id.json',

View File

@@ -3,9 +3,11 @@ angular.module("admin.indexUtils").factory 'SortOptions', ->
predicate: ""
reverse: true
getSortingExpr: () ->
sortingExpr = this.predicate + ' desc' if this.reverse
sortingExpr = this.predicate + ' asc' if !this.reverse
getSortingExpr: (options) ->
defaultDirection = if (options && options.defaultDirection) then options.defaultDirection else "desc"
reverseDirection = if defaultDirection == "desc" then "asc" else "desc"
sortingExpr = this.predicate + ' ' + defaultDirection if this.reverse
sortingExpr = this.predicate + ' ' + reverseDirection if !this.reverse
sortingExpr
toggle: (predicate) ->

View File

@@ -1,30 +1,14 @@
angular.module('admin.orderCycles', ['ngTagsInput', 'admin.indexUtils', 'admin.enterprises'])
.config ($httpProvider) ->
$httpProvider.defaults.headers.common['X-CSRF-Token'] = $('meta[name=csrf-token]').attr('content')
.directive 'datetimepicker', ($timeout, $parse) ->
require: "ngModel"
link: (scope, element, attrs, ngModel) ->
$timeout ->
# using $parse instead of scope[attrs.datetimepicker] for cases
# where attrs.datetimepicker is 'foo.bar.lol'
$(element).datetimepicker
dateFormat: 'yy-mm-dd'
timeFormat: 'HH:mm'
showOn: 'button'
controlType: 'select'
oneLine: true
buttonImage: "<%= asset_path 'datepicker/cal.gif' %>"
buttonImageOnly: true
stepMinute: 15
onSelect: (dateText, inst) ->
scope.$apply(->
element.val(dateText)
parsed = $parse(attrs.datetimepicker)
parsed.assign(scope, dateText)
)
flatpickr(element, Object.assign({},
window.FLATPICKR_DATETIME_DEFAULT, {
onOpen: (selectedDates, dateStr, instance) ->
instance.setDate(ngModel.$modelValue)
instance.input.dispatchEvent(new Event('focus', { bubbles: true }));
}));
.directive 'ofnOnChange', ->
(scope, element, attrs) ->

View File

@@ -1,5 +1,5 @@
angular.module('admin.orderCycles').factory('ExchangeProduct', ($resource) ->
ExchangeProductResource = $resource('/api/exchanges/:exchange_id/products.json', {}, {
ExchangeProductResource = $resource('/api/v0/exchanges/:exchange_id/products.json', {}, {
'index': { method: 'GET' }
'variant_count': { method: 'GET', params: { action_name: "variant_count" }}
})

View File

@@ -1,3 +1,2 @@
angular.module("admin.productImport", ["ngResource"]).config ($httpProvider) ->
$httpProvider.defaults.headers.common["X-CSRF-Token"] = $("meta[name=csrf-token]").attr("content")
$httpProvider.defaults.headers.common["Accept"] = "application/json, text/javascript, */*"

View File

@@ -9,7 +9,7 @@ angular.module("admin.products").controller "editUnitsCtrl", ($scope, VariantUni
if $scope.product.variant_unit == 'items'
$scope.variant_unit_with_scale = 'items'
else
$scope.variant_unit_with_scale = $scope.product.variant_unit + '_' + $scope.product.variant_unit_scale
$scope.variant_unit_with_scale = $scope.product.variant_unit + '_' + $scope.product.variant_unit_scale.replace(/\.0$/, '');
$scope.setFields = ->
if $scope.variant_unit_with_scale == 'items'

View File

@@ -1,12 +1,13 @@
angular.module("admin.products")
.controller "unitsCtrl", ($scope, VariantUnitManager, OptionValueNamer) ->
.controller "unitsCtrl", ($scope, VariantUnitManager, OptionValueNamer, UnitPrices) ->
$scope.product = { master: {} }
$scope.product.master.product = $scope.product
$scope.placeholder_text = ""
$scope.$watchCollection '[product.variant_unit_with_scale, product.master.unit_value_with_description]', ->
$scope.$watchCollection '[product.variant_unit_with_scale, product.master.unit_value_with_description, product.price, product.variant_unit_name]', ->
$scope.processVariantUnitWithScale()
$scope.processUnitValueWithDescription()
$scope.processUnitPrice()
$scope.placeholder_text = new OptionValueNamer($scope.product.master).name()
$scope.variant_unit_options = VariantUnitManager.variantUnitOptions()
@@ -32,6 +33,14 @@ angular.module("admin.products")
$scope.product.master.unit_value *= $scope.product.variant_unit_scale if $scope.product.master.unit_value && $scope.product.variant_unit_scale
$scope.product.master.unit_description = match[3]
$scope.processUnitPrice = ->
price = $scope.product.price
scale = $scope.product.variant_unit_scale
unit_type = $scope.product.variant_unit
unit_value = $scope.product.master.unit_value
variant_unit_name = $scope.product.variant_unit_name
$scope.unit_price = UnitPrices.displayableUnitPrice(price, scale, unit_type, unit_value, variant_unit_name)
$scope.hasVariants = (product) ->
Object.keys(product.variants).length > 0

View File

@@ -1,8 +1,24 @@
angular.module("admin.products").controller "variantUnitsCtrl", ($scope, VariantUnitManager, $timeout) ->
angular.module("admin.products").controller "variantUnitsCtrl", ($scope, VariantUnitManager, $timeout, UnitPrices) ->
$scope.unitName = (scale, type) ->
VariantUnitManager.getUnitName(scale, type)
$scope.$watchCollection "[unit_value_human, variant.price]", ->
$scope.processUnitPrice()
$scope.processUnitPrice = ->
if ($scope.variant)
price = $scope.variant.price
scale = $scope.scale
unit_type = angular.element("#product_variant_unit").val()
if (unit_type != "items")
$scope.updateValue()
unit_value = $scope.unit_value
else
unit_value = 1
variant_unit_name = angular.element("#product_variant_unit_name").val()
$scope.unit_price = UnitPrices.displayableUnitPrice(price, scale, unit_type, unit_value, variant_unit_name)
$scope.scale = angular.element('#product_variant_unit_scale').val()
$scope.updateValue = ->
@@ -11,4 +27,6 @@ angular.module("admin.products").controller "variantUnitsCtrl", ($scope, Variant
variant_unit_value = angular.element('#variant_unit_value').val()
$scope.unit_value_human = variant_unit_value / $scope.scale
$timeout -> $scope.processUnitPrice()
$timeout -> $scope.updateValue()

View File

@@ -1 +1 @@
angular.module("admin.products", ["textAngular", "admin.utils"])
angular.module("admin.products", ["textAngular", "admin.utils", "OFNShared"])

View File

@@ -53,17 +53,18 @@ angular.module("admin.products").factory "OptionValueNamer", (VariantUnitManager
[value, unit_name]
scale_for_unit_value: ->
# Find the largest available unit where unit_value comes to >= 1 when expressed in it.
# If there is none available where this is true, use the smallest available unit.
unit = ([scale, unit_name] for scale, unit_name of VariantUnitManager.unitNames[@variant.product.variant_unit] when @variant.unit_value / scale >= 1).reduce (unit, [scale, unit_name]) ->
if (unit && scale > unit[0]) || !unit?
[scale, unit_name]
else
unit
, null
if !unit?
unit = ([scale, unit_name] for scale, unit_name of VariantUnitManager.unitNames[@variant.product.variant_unit]).reduce (unit, [scale, unit_name]) ->
if scale < unit[0] then [scale, unit_name] else unit
, [Infinity,""]
# Find the largest available and compatible unit where unit_value comes
# to >= 1 when expressed in it.
# If there is none available where this is true, use the smallest
# available unit.
product = @variant.product
scales = VariantUnitManager.compatibleUnitScales(product.variant_unit_scale, product.variant_unit)
variantUnitValue = @variant.unit_value
unit
# sets largestScale = last element in filtered scales array
[_, ..., largestScale] = (scales.filter (s) -> variantUnitValue / s >= 1)
if (largestScale)
[largestScale, VariantUnitManager.getUnitName(largestScale, product.variant_unit)]
else
[scales[0], VariantUnitManager.getUnitName(scales[0], product.variant_unit)]

View File

@@ -8,7 +8,7 @@ angular.module("ofn.admin").factory "ProductImageService", (FileUploader, SpreeA
autoUpload: true
configure: (product) =>
@imageUploader.url = "/api/product_images/#{product.id}"
@imageUploader.url = "/api/v0/product_images/#{product.id}"
@imagePreview = product.image_url
@imageUploader.onSuccessItem = (image, response) =>
product.thumb_url = response.thumb_url

View File

@@ -0,0 +1,33 @@
angular.module("admin.products").factory "UnitPrices", (VariantUnitManager, localizeCurrencyFilter, unlocalizeCurrencyFilter) ->
class UnitPrices
@displayableUnitPrice: (price, scale, unit_type, unit_value, variant_unit_name) ->
price = unlocalizeCurrencyFilter(price)
if price && !isNaN(price) && unit_type && unit_value
value = localizeCurrencyFilter(UnitPrices.price(price, scale, unit_type, unit_value, variant_unit_name))
unit = UnitPrices.unit(scale, unit_type, variant_unit_name)
return value + " / " + unit
return null
@price: (price, scale, unit_type, unit_value) ->
price / @denominator(scale, unit_type, unit_value)
@denominator: (scale, unit_type, unit_value) ->
unit = @unit(scale, unit_type)
if unit == "lb"
unit_value / 453.6
else if unit == "kg"
unit_value / 1000
else
unit_value
@unit: (scale, unit_type, variant_unit_name = '') ->
if variant_unit_name.length > 0
variant_unit_name
else if unit_type == "items"
"item"
else if VariantUnitManager.systemOfMeasurement(scale, unit_type) == "imperial"
"lb"
else if unit_type == "weight"
"kg"
else if unit_type == "volume"
"L"

View File

@@ -1,22 +1,41 @@
angular.module("admin.products").factory "VariantUnitManager", ->
angular.module("admin.products").factory "VariantUnitManager", (availableUnits) ->
class VariantUnitManager
@unitNames:
@units:
'weight':
1.0: 'g'
1000.0: 'kg'
1000000.0: 'T'
1.0:
name: 'g'
system: 'metric'
1000.0:
name: 'kg'
system: 'metric'
1000000.0:
name: 'T'
system: 'metric'
453.6:
name: 'lb'
system: 'imperial'
28.35:
name: 'oz'
system: 'imperial'
'volume':
0.001: 'mL'
1.0: 'L'
1000.0: 'kL'
0.001:
name: 'mL'
system: 'metric'
1.0:
name: 'L'
system: 'metric'
1000.0:
name: 'kL'
system: 'metric'
@variantUnitOptions: ->
options = for unit_type, scale_with_name of @unitNames
for scale in @unitScales(unit_type)
available = availableUnits.split(",")
options = for unit_type, _ of @units
for scale in @unitScales(unit_type, available)
name = @getUnitName(scale, unit_type)
["#{I18n.t(unit_type)} (#{name})", "#{unit_type}_#{scale}"]
options.push [[I18n.t('items'), 'items']]
[].concat options...
options = [].concat options...
@getScale: (value, unitType) ->
scaledValue = null
@@ -30,7 +49,27 @@ angular.module("admin.products").factory "VariantUnitManager", ->
unitScales[0]
@getUnitName: (scale, unitType) ->
@unitNames[unitType][scale]
if @units[unitType][scale]
@units[unitType][scale]['name']
else
''
@unitScales: (unitType) ->
(parseFloat(scale) for scale in Object.keys(@unitNames[unitType])).sort()
@unitScales: (unitType, availableUnits = null) ->
scales = Object.keys(@units[unitType])
if availableUnits
scales = scales.filter (scale) ->
availableUnits.includes(VariantUnitManager.getUnitName(scale, unitType))
(parseFloat(scale) for scale in scales).sort (a, b) ->
a - b
@compatibleUnitScales: (scale, unitType) ->
scaleSystem = @units[unitType][scale]['system']
(parseFloat(scale) for scale, scaleInfo of @units[unitType] when scaleInfo['system'] == scaleSystem).sort (a, b) ->
a - b
@systemOfMeasurement: (scale, unitType) ->
if @units[unitType][scale]
@units[unitType][scale]['system']
else
'custom'

View File

@@ -9,9 +9,12 @@ angular.module("admin.resources").factory 'EnterpriseResource', ($resource) ->
'update':
method: 'PUT'
'removeLogo':
url: '/api/enterprises/:id/logo.json'
url: '/api/v0/enterprises/:id/logo.json'
method: 'DELETE'
'removePromoImage':
url: '/api/enterprises/:id/promo_image.json'
url: '/api/v0/enterprises/:id/promo_image.json'
method: 'DELETE'
'removeTermsAndConditions':
url: '/api/v0/enterprises/:id/terms_and_conditions.json'
method: 'DELETE'
})

View File

@@ -1,17 +1,17 @@
angular.module("admin.resources").factory 'OrderResource', ($resource) ->
$resource('/admin/orders/:id/:action.json', {}, {
'index':
url: '/api/orders.json'
url: '/api/v0/orders.json'
method: 'GET'
'update':
method: 'PUT'
'capture':
url: '/api/orders/:id/capture.json'
url: '/api/v0/orders/:id/capture.json'
method: 'PUT'
params:
id: '@id'
'ship':
url: '/api/orders/:id/ship.json'
url: '/api/v0/orders/:id/ship.json'
method: 'PUT'
params:
id: '@id'

View File

@@ -1,6 +1,6 @@
angular.module("admin.resources").factory 'ProductResource', ($resource) ->
$resource('/admin/product/:id/:action.json', {}, {
'index':
url: '/api/products/bulk_products.json'
url: '/api/v0/products/bulk_products.json'
method: 'GET'
})

View File

@@ -52,3 +52,4 @@ angular.module("admin.resources").factory 'Enterprises', ($q, EnterpriseResource
removeLogo: performActionOnEnterpriseResource(EnterpriseResource.removeLogo)
removePromoImage: performActionOnEnterpriseResource(EnterpriseResource.removePromoImage)
removeTermsAndConditions: performActionOnEnterpriseResource(EnterpriseResource.removeTermsAndConditions)

View File

@@ -10,8 +10,8 @@ angular.module("ofn.admin").factory "BulkProducts", (ProductResource, dataFetche
angular.extend(@pagination, data.pagination)
cloneProduct: (product) ->
$http.post("/api/products/" + product.id + "/clone").success (data) =>
dataFetcher("/api/products/" + data.id + "?template=bulk_show").then (newProduct) =>
$http.post("/api/v0/products/" + product.id + "/clone").success (data) =>
dataFetcher("/api/v0/products/" + data.id + "?template=bulk_show").then (newProduct) =>
@unpackProduct newProduct
@insertProductAfter(product, newProduct)

View File

@@ -0,0 +1,23 @@
angular.module("ofn.admin").factory "ProductFiltersUrl", ($httpParamSerializer) ->
new class ProductFiltersUrl
productFilters: ['producerFilter', 'categoryFilter', 'query', 'sorting', 'importDateFilter']
loadFromUrl: (filters) ->
loadedFilters = {}
for filter in @productFilters
loadedFilters[filter] = if filters[filter] then filters[filter] else ""
loadedFilters
generate: (ctrlFilters) ->
filters = {}
for filter in @productFilters
filters[filter] = ctrlFilters[filter] if ctrlFilters[filter]
filters
buildUrl: (baseUrl, ctrlFilters) ->
filterUrl = $httpParamSerializer(@generate(ctrlFilters))
filterUrl = "?#{filterUrl}" if filterUrl isnt ""
"#{baseUrl}#{filterUrl}"

View File

@@ -1,5 +1,4 @@
//= require_self
//= require admin/handlebar_extensions
//= require admin/spree/orders/variant_autocomplete
/**
@@ -9,27 +8,10 @@ Hopefully, this will evolve into a propper class.
**/
jQuery(function($) {
// Make main menu use full width
mainMenu = $('.fullwidth-menu')
if (typeof mainMenu.horizontalNav === 'function' )
mainMenu.horizontalNav({
tableDisplay: false,
responsiveDelay: 0
});
// Vertical align of checkbox fields
if (typeof $('.field.checkbox label').vAlign === 'function' )
$('.field.checkbox label').vAlign()
// We activate AdaptiveMenu only if not on webdriver
// Re-adjusting the admin menu during tests causes tests to fail.
if (!navigator.webdriver && typeof Spree !== 'undefined') {
$('.main-menu-wrapper ul').AdaptiveMenu({
text: "<a href='#'><i class='icon-chevron-down'></i> " + Spree.translations.more + "</a>",
klass: "dropdown"
});
}
// Add some tips
if (typeof $('.with-tip').powerTip === 'function' ) {
$('.with-tip').powerTip({
@@ -116,30 +98,6 @@ $.fn.radioControlsVisibilityOfElement = function(dependentElementSelector){
}
$(document).ready(function() {
if (typeof Spree !== 'undefined') {
handle_date_picker_fields = function(){
$('.datepicker').datepicker({
dateFormat: Spree.translations.date_picker,
dayNames: Spree.translations.abbr_day_names,
dayNamesMin: Spree.translations.abbr_day_names,
monthNames: Spree.translations.month_names,
prevText: Spree.translations.previous,
nextText: Spree.translations.next,
showOn: "focus"
});
// Correctly display range dates
$('.date-range-filter .datepicker-from').datepicker('option', 'onSelect', function(selectedDate) {
$(".date-range-filter .datepicker-to" ).datepicker( "option", "minDate", selectedDate );
});
$('.date-range-filter .datepicker-to').datepicker('option', 'onSelect', function(selectedDate) {
$(".date-range-filter .datepicker-from" ).datepicker( "option", "maxDate", selectedDate );
});
}
handle_date_picker_fields();
}
$(".observe_field").on('change', function() {
target = $(this).attr("data-update");
ajax_indicator = $(this).attr("data-ajax-indicator") || '#busy_indicator';

View File

@@ -0,0 +1,9 @@
//= require handlebars
Handlebars.registerHelper("t", function(key) {
if (Spree.translations[key]) {
return Spree.translations[key]
} else {
console.error("No translation found for " + key + ". Does it exist within spree/admin/shared/_translations.html.erb?")
}
});

View File

@@ -1,59 +0,0 @@
$(document).ready(function() {
if ($('input#preferences_use_s3[type="checkbox"]:checked').length > 0) {
$('#s3_settings, #s3_headers').show();
}
// Toggle display of S3 settings based on value of use_s3 checkbox
$('input#preferences_use_s3[type="checkbox"]').click(function() {
$('#s3_settings, #s3_headers').toggle();
});
$(document).on('click', '.destroy_style', function(e) {
e.preventDefault();
$(this).parent().remove();
});
$(document).on('click', '.destroy_new_attachment_styles', function(e) {
e.preventDefault();
$(this).closest('.new_attachment_styles').remove();
});
$(document).on('click', '.destroy_new_s3_headers', function(e) {
e.preventDefault();
$(this).closest('.new_s3_headers').remove();
});
// Handle adding new styles
var styles_hash_index = 1;
$(document).on('click', '.add_new_style', function(e) {
e.preventDefault();
$('#new-styles').append(generate_html_for_hash("new_attachment_styles", styles_hash_index));
});
// Handle adding new headers
var headers_hash_index = 1;
$(document).on('click', '.add_header', function(e) {
e.preventDefault();
$('#headers_list').append(generate_html_for_hash("new_s3_headers", headers_hash_index));
});
// Generates html for new paperclip styles form fields
generate_html_for_hash = function(hash_name, index) {
var html = '<div class="' + hash_name + ' row"><div class="field">';
html += '<div class="five columns">';
html += '<label for="' + hash_name + '_' + index + '_name">';
html += Spree.translations.name + '</label>';
html += '<input id="' + hash_name + '_' + index + '_name" name="' + hash_name + '[' + index + '][name]" type="text" class="fullwidth"><br>';
html += '</div><div class="five columns">'
html += '<label for="' + hash_name + '_' + index + '_value">';
html += Spree.translations.value + '</label>';
html += '<input id="' + hash_name + '_' + index + '_value" name="' + hash_name + '[' + index + '][value]" type="text" class="fullwidth">';
html += '</div><div class="two columns">'
html += '<a href="#" title="' + Spree.translations.destroy + '" class="destroy_' + hash_name + ' with-tip button" style="margin-top: 19px;"><i class="icon-trash"></i> &nbsp; ' + Spree.translations.destroy + '</a>';
html += '</div></div></div>';
index += 1;
return html;
};
});

View File

@@ -1,27 +1,17 @@
var update_state = function(region) {
var country = $('span#' + region + 'country .select2').select2('val');
var state_select = $('span#' + region + 'state select.select2');
var state_input = $('span#' + region + 'state input.state_name');
$.get(Spree.routes.states_search + "?country_id=" + country, function(data) {
var states = data["states"]
if (states.length > 0) {
state_select.html('');
var states_with_blank = [{name: '', id: ''}].concat(states);
$.each(states_with_blank, function(pos,state) {
var opt = $(document.createElement('option'))
.attr('value', state.id)
.html(state.name);
state_select.append(opt);
});
state_select.prop("disabled", false).show();
state_select.select2();
state_input.hide().prop("disabled", true);
} else {
state_input.prop("disabled", false).show();
state_select.select2('destroy').hide();
}
$.get(Spree.routes.states_search + "?country_id=" + country, function(states) {
state_select.html('');
var states_with_blank = [{name: '', id: ''}].concat(states);
$.each(states_with_blank, function(pos,state) {
var opt = $(document.createElement('option'))
.attr('value', state.id)
.html(state.name);
state_select.append(opt);
});
state_select.prop("disabled", false).show();
state_select.select2();
})
};

View File

@@ -0,0 +1,17 @@
$(document).ready(function() {
var order_use_billing_input = $('input#order_use_billing');
var order_use_billing = function () {
if (!order_use_billing_input.is(':checked')) {
$('#shipping').show();
} else {
$('#shipping').hide();
}
};
order_use_billing_input.click(function() {
order_use_billing();
});
order_use_billing();
});

View File

@@ -40,7 +40,13 @@ $(document).ready(function() {
var variant_id = save.data('variant-id');
var quantity = parseInt(save.parents('tr').find('input.line_item_quantity').val());
var maxQuantity = parseInt(save.parents('tr').find('input.line_item_quantity').attr("max"));
if (quantity > maxQuantity) {
quantity = maxQuantity;
save.parents('tr').find('input.line_item_quantity').val(maxQuantity);
alert(t("js.admin.orders.quantity_adjusted"));
}
toggleItemEdit();
adjustItems(shipment_number, variant_id, quantity);
@@ -77,7 +83,9 @@ adjustItems = function(shipment_number, variant_id, quantity){
}
url += '.json';
if(new_quantity!=0){
if (new_quantity == 0) {
alert(t("js.admin.orders.quantity_unchanged"));
} else {
$.ajax({
type: "PUT",
url: Spree.url(url),

View File

@@ -0,0 +1,13 @@
#= require jsuri
class window.Spree
# Helper function to take a URL and add query parameters to it
@url: (uri, query) ->
if uri.path == undefined
uri = new Uri(uri)
if query
$.each query, (key, value) ->
uri.addQueryParam(key, value)
if Spree.api_key
uri.addQueryParam('token', Spree.api_key)
return uri

View File

@@ -0,0 +1,17 @@
//= require admin/spree_backend
SpreePaypalExpress = {
hideSettings: function(paymentMethod) {
if (SpreePaypalExpress.paymentMethodID && paymentMethod.val() == SpreePaypalExpress.paymentMethodID) {
$('.payment-method-settings').children().hide();
$('#payment_amount').prop('disabled', 'disabled');
$('button[type="submit"]').prop('disabled', 'disabled');
$('#paypal-warning').show();
} else if (SpreePaypalExpress.paymentMethodID) {
$('.payment-method-settings').children().show();
$('button[type=submit]').prop('disabled', '');
$('#payment_amount').prop('disabled', '');
$('#paypal-warning').hide();
}
}
}

View File

@@ -23,8 +23,6 @@ angular.module("admin.tagRules").controller "TagRulesCtrl", ($scope, $http, $fil
preferred_customer_tags: (tag.text for tag in tagGroup.tags).join(",")
type: "TagRule::#{ruleType}"
switch ruleType
when "DiscountOrder"
newRule.calculator = { preferred_flat_percent: 0 }
when "FilterShippingMethods"
newRule.peferred_shipping_method_tags = []
newRule.preferred_matched_shipping_methods_visibility = "visible"

View File

@@ -8,7 +8,6 @@ angular.module("admin.tagRules").directive 'newTagRuleDialog', ($compile, $templ
template = $compile($templateCache.get('admin/new_tag_rule_dialog.html'))(scope)
scope.ruleTypes = [
# { id: "DiscountOrder", name: 'Apply a discount to orders' }
{ id: "FilterProducts", name: t('js.tag_rules.show_hide_variants') }
{ id: "FilterShippingMethods", name: t('js.tag_rules.show_hide_shipping') }
{ id: "FilterPaymentMethods", name: t('js.tag_rules.show_hide_payment') }

View File

@@ -1,22 +1,51 @@
$(document).ready(function() {
$('.datetimepicker').datetimepicker({
dateFormat: 'yy-mm-dd',
timeFormat: 'HH:mm',
dayNames: Spree.translations.abbr_day_names,
dayNamesMin: Spree.translations.abbr_day_names,
monthNames: Spree.translations.month_names,
prevText: Spree.translations.previous,
nextText: Spree.translations.next,
showOn: 'button',
controlType: 'select',
oneLine: true,
buttonImage: "<%= asset_path 'datepicker/cal.gif' %>",
buttonImageOnly: true,
stepMinute: 15
});
});
$(document).ready(function(){
var onClickButtons = function(index, fp) {
var date;
switch (index) {
case 0:
date = new Date();
break;
}
fp.setDate(date, true);
}
window.FLATPICKR_DATE_DEFAULT = {
altInput: true,
altFormat: Spree.translations.flatpickr_date_format,
dateFormat: "Y-m-d",
locale: I18n.locale,
plugins: [
ShortcutButtonsPlugin({
button: [{
label: Spree.translations.today
}],
label: "or",
onClick: onClickButtons
}),
labelPlugin({})
]
}
window.FLATPICKR_DATETIME_DEFAULT = Object.assign(
{},
window.FLATPICKR_DATE_DEFAULT,
{
altInput: true,
altFormat: Spree.translations.flatpickr_datetime_format,
dateFormat: "Y-m-d H:i",
enableTime: true,
time_24hr: true,
plugins: [
ShortcutButtonsPlugin({
button: [{
label: Spree.translations.now
}],
label: "or",
onClick: onClickButtons
}),
labelPlugin({})
]
}
);
flatpickr(".datetimepicker", window.FLATPICKR_DATETIME_DEFAULT);
$('a.close').click(function(event){
event.preventDefault();
$(this).parent().slideUp(250);

View File

@@ -1,9 +1,11 @@
angular.module("admin.utils").directive "datepicker", ->
angular.module("admin.utils").directive "datepicker", ($window, $timeout) ->
require: "ngModel"
link: (scope, element, attrs, ngModel) ->
element.datepicker
dateFormat: "yy-mm-dd"
onSelect: (dateText, inst) ->
scope.$apply (scope) ->
# Fires ngModel.$parsers
ngModel.$setViewValue dateText
$timeout ->
flatpickr(element, Object.assign(
{},
$window.FLATPICKR_DATE_DEFAULT, {
onOpen: (selectedDates, dateStr, instance) ->
instance.setDate(ngModel.$modelValue)
}
));

View File

@@ -0,0 +1,15 @@
angular.module("admin.utils").filter "unlocalizeCurrency", ()->
# Convert string to number using injected currency configuration.
(price) ->
# used decimal and thousands separators from currency configuration
decimal_separator = I18n.toCurrency(.1, {precision: 1, unit: ''}).substring(1,2)
thousands_separator = I18n.toCurrency(1000, {precision: 1, unit: ''}).substring(1,2)
if (price.length > 4)
# remove configured thousands separator if price is greater than 999
price = price.replaceAll(thousands_separator, '')
if (decimal_separator == ",")
price = price.replace(",", ".")
return parseFloat(price)

View File

@@ -1,11 +1,11 @@
angular.module("admin.utils").factory "StatusMessage", ($timeout) ->
angular.module("admin.utils").factory "StatusMessage", ->
new class StatusMessage
types:
progress: {timeout: false, style: {color: '#ff9906'}}
alert: {timeout: 5000, style: {color: 'grey'}}
notice: {timeout: false, style: {color: 'grey'}}
success: {timeout: 5000, style: {color: '#9fc820'}}
failure: {timeout: false, style: {color: '#da5354'}}
progress: {style: {color: '#ff9906'}}
alert: {style: {color: 'grey'}}
notice: {style: {color: 'grey'}}
success: {style: {color: '#9fc820'}}
failure: {style: {color: '#da5354'}}
statusMessage:
text: ""
@@ -25,13 +25,7 @@ angular.module("admin.utils").factory "StatusMessage", ($timeout) ->
display: (type, text) ->
@statusMessage.text = text
@statusMessage.style = @types[type].style
$timeout.cancel @statusMessage.timeout if @statusMessage.timeout
timeout = @types[type].timeout
if timeout
@statusMessage.timeout = $timeout =>
@clear()
, timeout, true
null # So we don't return weird timeouts
null
clear: ->
@statusMessage.text = ''

View File

@@ -1 +1,2 @@
angular.module("admin.utils", ["templates", "ngSanitize"]).config ($httpProvider) ->
angular.module("admin.utils", ["templates", "ngSanitize"]).config ($httpProvider) ->
$httpProvider.defaults.headers.common["Accept"] = "application/json, text/javascript, */*"

View File

@@ -42,7 +42,7 @@ angular.module("admin.variantOverrides").controller "AdminVariantOverridesCtrl",
$scope.fetchProducts()
$scope.fetchProducts = ->
url = "/api/products/overridable?page=::page::;per_page=100"
url = "/api/v0/products/overridable?page=::page::;per_page=100"
PagedFetcher.fetch url, $scope.addProducts
$scope.addProducts = (data) ->

View File

@@ -11,14 +11,17 @@
#= require leaflet-1.6.0.js
#= require leaflet-providers.js
#= require lodash.underscore.js
# bluebird.js is a dependency of angular-google-maps.js 2.0.0
# bluebird.js and angular-simple-logger are dependencies of angular-google-maps.js 2.0.0
#= require bluebird.js
#= require angular-simple-logger.min.js
#= require angular-scroll.min.js
#= require angular-google-maps.min.js
#= require ../shared/mm-foundation-tpls-0.9.0-20180826174721.min.js
#= require ../shared/ng-infinite-scroll.min.js
#= require ../shared/angular-local-storage.js
#= require ../shared/angular-slideables.js
#= require ../shared/shared
#= require_tree ../shared/directives
#= require angularjs-file-upload
#= require i18n/translations
@@ -28,20 +31,23 @@
#= require angular-backstretch.js
#= require angular-flash.min.js
#
#= require moment
#= require moment/de.js
#= require moment/en-gb.js
#= require moment/es.js
#= require moment/fr.js
#= require moment/it.js
#= require moment/nb.js
#= require moment/pt-br.js
#= require moment/pt.js
#= require moment/ru.js
#= require moment/sv.js
#= require moment/ca.js
#= require moment/ar.js
#= require moment/tr.js
#= require moment/min/moment.min.js
#= require moment/locale/ar.js
#= require moment/locale/ca.js
#= require moment/locale/de.js
#= require moment/locale/en-gb.js
#= require moment/locale/es.js
#= require moment/locale/fil.js
#= require moment/locale/fr.js
#= require moment/locale/it.js
#= require moment/locale/nb.js
#= require moment/locale/nl-be.js
#= require moment/locale/pt-br.js
#= require moment/locale/pt.js
#= require moment/locale/ru.js
#= require moment/locale/sv.js
#= require moment/locale/tr.js
#= require moment/locale/pl.js
#
#= require modernizr
#

View File

@@ -1,7 +1,7 @@
Darkswarm.controller "CreditCardsCtrl", ($scope, CreditCard, CreditCards) ->
angular.extend(this, new FieldsetMixin($scope))
$scope.savedCreditCards = CreditCards.saved
$scope.setDefault = CreditCards.setDefault
$scope.confirmSetDefault = CreditCards.confirmSetDefault
$scope.CreditCard = CreditCard
$scope.secrets = CreditCard.secrets
$scope.showForm = CreditCard.show

View File

@@ -1,12 +1,20 @@
Darkswarm.controller "EditBoughtOrderController", ($scope, $resource, Cart) ->
Darkswarm.controller "EditBoughtOrderController", ($scope, $resource, $timeout, Cart, Messages) ->
$scope.showBought = false
$scope.removeEnabled = true
$scope.deleteLineItem = (id) ->
params = {id: id}
success = (response) ->
$(".line-item-" + id).remove()
Cart.removeFinalisedLineItem(id)
fail = (error) ->
console.log error
if Cart.isOnlyItemInOrder(id)
Messages.error(t 'orders_cannot_remove_the_final_item')
$scope.removeEnabled = false
$timeout (->
$scope.removeEnabled = true
), 10000
else
params = {id: id}
success = (response) ->
$(".line-item-" + id).remove()
Cart.removeFinalisedLineItem(id)
fail = (error) ->
console.log error
$resource("/line_items/:id").delete(params, success, fail)
$resource("/line_items/:id").delete(params, success, fail)

View File

@@ -24,7 +24,7 @@ Darkswarm.controller "HubNodeCtrl", ($scope, HashNavigation, CurrentHub, $http,
$scope.shopfront_loading = true
$scope.toggle_tab(event)
$http.get("/api/shops/" + $scope.hub.id)
$http.get("/api/v0/shops/" + $scope.hub.id)
.success (data) ->
$scope.shopfront_loading = false
$scope.hub = data

View File

@@ -2,15 +2,6 @@ Darkswarm.controller "OrderCycleCtrl", ($scope, $rootScope, $timeout, OrderCycle
$scope.order_cycle = OrderCycle.order_cycle
$scope.OrderCycle = OrderCycle
# Timeout forces this to be evaluated after everything is loaded
# This is a hack. We should probably write our own "popover" directive
# That takes an expression instead of a trigger, and binds to that
$timeout =>
$rootScope.$broadcast 'orderCycleSelected'
if !$scope.OrderCycle.selected()
$("#order_cycle_id").trigger("openTrigger")
Darkswarm.controller "OrderCycleChangeCtrl", ($scope, $rootScope, $timeout, OrderCycle, Products, Variants, Cart, ChangeableOrdersAlert) ->
# Track previous order cycle id for use with revertOrderCycle()
$scope.previous_order_cycle_id = OrderCycle.order_cycle.order_cycle_id
@@ -34,3 +25,6 @@ Darkswarm.controller "OrderCycleChangeCtrl", ($scope, $rootScope, $timeout, Orde
Cart.reloadFinalisedLineItems()
ChangeableOrdersAlert.reload()
$rootScope.$broadcast 'orderCycleSelected'
$scope.closesInLessThan3Months = () ->
moment().diff(moment(OrderCycle.orders_close_at(), "YYYY-MM-DD HH:mm:SS Z"), 'days') > -75

View File

@@ -1,4 +1,4 @@
Darkswarm.controller "PageSelectionCtrl", ($scope, $location) ->
Darkswarm.controller "PageSelectionCtrl", ($scope, $rootScope, $location) ->
$scope.selectedPage = ->
# The path looks like `/contact` for the URL `https://ofn.org/shop#/contact`.
# We remove the slash at the beginning.
@@ -15,3 +15,8 @@ Darkswarm.controller "PageSelectionCtrl", ($scope, $location) ->
$scope.whitelistPages = (pages) ->
$scope.whitelist = pages
$scope.lastPage = pages[0]
# when an order cycle is changed, ensure the shop tab is active to save a click
$rootScope.$on "orderCycleSelected", ->
if $scope.selectedPage() != "shop"
$location.path("shop")

View File

@@ -24,7 +24,7 @@ Darkswarm.controller "ProducerNodeCtrl", ($scope, HashNavigation, $anchorScroll,
$scope.shopfront_loading = true
$scope.toggle_tab(event)
$http.get("/api/shops/" + $scope.producer.id)
$http.get("/api/v0/shops/" + $scope.producer.id)
.success (data) ->
$scope.shopfront_loading = false
$scope.producer = data

View File

@@ -1,6 +1,6 @@
Darkswarm.controller "ProductNodeCtrl", ($scope, $modal, FilterSelectorsService) ->
$scope.enterprise = $scope.product.supplier # For the modal, so it's consistent
$scope.productPropertySelectors = FilterSelectorsService.createSelectors()
$scope.triggerProductModal = ->
$scope.productPropertySelectors = FilterSelectorsService.createSelectors()
$modal.open(templateUrl: "product_modal.html", scope: $scope)

View File

@@ -11,10 +11,18 @@ Darkswarm.controller "ProductsCtrl", ($scope, $sce, $filter, $rootScope, Product
$scope.supplied_taxons = null
$scope.supplied_properties = null
$scope.showFilterSidebar = false
$scope.activeTaxons = []
$scope.activeProperties = []
# Update filters after initial load of shop tab
$timeout =>
$scope.update_filters()
# Update filters when order cycle changed
$rootScope.$on "orderCycleSelected", ->
$scope.update_filters()
$scope.clearAll()
$scope.page = 1
$scope.update_filters = ->
order_cycle_id = OrderCycle.order_cycle.order_cycle_id
@@ -63,7 +71,7 @@ Darkswarm.controller "ProductsCtrl", ($scope, $sce, $filter, $rootScope, Product
id: $scope.order_cycle.order_cycle_id,
page: page || $scope.page,
per_page: $scope.per_page,
'q[name_or_meta_keywords_or_supplier_name_cont]': $scope.query,
'q[name_or_meta_keywords_or_variants_display_as_or_variants_display_name_or_supplier_name_cont]': $scope.query,
'q[properties_id_or_supplier_properties_id_in_any][]': $scope.activeProperties,
'q[primary_taxon_id_in_any][]': $scope.activeTaxons
}

View File

@@ -1,8 +1,10 @@
Darkswarm.controller "RegistrationCtrl", ($scope, RegistrationService, EnterpriseRegistrationService, availableCountries) ->
Darkswarm.controller "RegistrationCtrl", ($scope, RegistrationService, EnterpriseRegistrationService, availableCountries, GmapsGeo) ->
$scope.currentStep = RegistrationService.currentStep
$scope.enterprise = EnterpriseRegistrationService.enterprise
$scope.select = RegistrationService.select
$scope.geocodedAddress = ''
$scope.latLong = null
$scope.addressConfirmed = false
$scope.steps = ['details', 'contact', 'type', 'about', 'images', 'social']
# Filter countries without states since the form requires a state to be selected.
@@ -22,3 +24,26 @@ Darkswarm.controller "RegistrationCtrl", ($scope, RegistrationService, Enterpris
$scope.countryHasStates = ->
$scope.enterprise.country.states.length > 0
$scope.map = {center: {latitude: 0.000000, longitude: 0.000000 }, zoom: 1}
$scope.options = {scrollwheel: false}
$scope.locateAddress = () ->
{ address1, address2, city, state_id, zipcode } = $scope.enterprise.address
addressQuery = [address1, address2, city, state_id, zipcode].filter((value) => !!value).join(", ")
GmapsGeo.geocode addressQuery, (results, status) =>
$scope.geocodedAddress = results && results[0]?.formatted_address
location = results[0]?.geometry?.location
if location
$scope.$apply(() =>
$scope.latLong = {latitude: location.lat(), longitude: location.lng()}
$scope.map = {center: {latitude: location.lat(), longitude: location.lng()}, zoom: 16 }
)
$scope.toggleAddressConfirmed = ->
$scope.addressConfirmed = !$scope.addressConfirmed
if $scope.addressConfirmed
$scope.enterprise.address.latitude = $scope.latLong.latitude
$scope.enterprise.address.longitude = $scope.latLong.longitude
else
$scope.enterprise.address.latitude = null
$scope.enterprise.address.longitude = null

View File

@@ -0,0 +1,73 @@
Darkswarm.controller "ShopVariantCtrl", ($scope, $modal, Cart) ->
$scope.$watchGroup [
'variant.line_item.quantity',
'variant.line_item.max_quantity'
], (new_value, old_value) ->
return if old_value[0] == null && new_value[0] == null
Cart.adjust($scope.variant.line_item)
$scope.variant.line_item.quantity ||= 0
$scope.$watch "variant.line_item.quantity", ->
item = $scope.variant.line_item
if item.quantity > $scope.available()
item.quantity = $scope.available()
$scope.$watch "variant.line_item.max_quantity", ->
item = $scope.variant.line_item
if item.max_quantity > $scope.available()
item.max_quantity = $scope.available()
if $scope.variant.product.group_buy
$scope.$watch "variant.line_item.quantity", ->
item = $scope.variant.line_item
if item.quantity < 1 || item.max_quantity < item.quantity
item.max_quantity = item.quantity
$scope.$watch "variant.line_item.max_quantity", ->
item = $scope.variant.line_item
if item.max_quantity < item.quantity
item.quantity = item.max_quantity
$scope.quantity = ->
$scope.variant.line_item.quantity || 0
$scope.maxQuantity = ->
$scope.variant.line_item.max_quantity || $scope.sanitizedQuantity()
$scope.sanitizedQuantity = ->
Math.max(0, Math.min($scope.quantity(), $scope.available()))
$scope.sanitizedMaxQuantity = ->
Math.max($scope.sanitizedQuantity(), Math.min($scope.maxQuantity(), $scope.available()))
$scope.add = (quantity) ->
item = $scope.variant.line_item
item.quantity = $scope.sanitizedQuantity() + quantity
$scope.addMax = (quantity) ->
item = $scope.variant.line_item
item.max_quantity = $scope.sanitizedMaxQuantity() + quantity
$scope.canAdd = (quantity) ->
wantedQuantity = $scope.sanitizedQuantity() + quantity
$scope.quantityValid(wantedQuantity)
$scope.canAddMax = (quantity) ->
variant = $scope.variant
wantedQuantity = $scope.sanitizedMaxQuantity() + quantity
$scope.quantityValid(wantedQuantity) && variant.line_item.quantity > 0
$scope.available = ->
variant = $scope.variant
variant.on_demand && Infinity || variant.on_hand
$scope.quantityValid = (quantity) ->
variant = $scope.variant
minimum = 0
maximum = variant.on_demand && Infinity || variant.on_hand
quantity >= minimum && quantity <= maximum
$scope.addBulk = (quantity) ->
$scope.add(quantity)
$modal.open(templateUrl: "bulk_buy_modal.html", scope: $scope, windowClass: "product-bulk-modal")

View File

@@ -10,14 +10,11 @@ window.Darkswarm = angular.module("Darkswarm", [
'uiGmapgoogle-maps',
'duScroll',
'angularFileUpload',
'angularSlideables'
'angularSlideables',
'OFNShared'
]).config ($httpProvider, $tooltipProvider, $locationProvider, $anchorScrollProvider) ->
$httpProvider.defaults.headers['common']['X-CSRF-Token'] = $('meta[name="csrf-token"]').attr('content')
$httpProvider.defaults.headers['common']['X-Requested-With'] = 'XMLHttpRequest'
$httpProvider.defaults.headers.common.Accept = "application/json, text/javascript, */*"
# This allows us to trigger these two events on tooltips
$tooltipProvider.setTriggers( 'openTrigger': 'closeTrigger' )
$httpProvider.defaults.headers.common['Accept'] = "application/json, text/javascript, */*"
# We manually handle our scrolling
$anchorScrollProvider.disableAutoScrolling()

View File

@@ -3,7 +3,15 @@ Darkswarm.directive "bodyScroll", ($rootScope, BodyScroll) ->
scope: true
link: (scope, elem, attrs) ->
$rootScope.$on "toggleBodyScroll", ->
if BodyScroll.disabled
elem.addClass "disable-scroll"
if BodyScroll.disabled && document.body.scrollHeight > document.body.clientHeight
document.body.style.top = "-#{window.scrollY}px"
document.body.style.position = 'fixed'
document.body.style.overflowY = 'scroll'
document.body.style.width = '100%'
else
elem.removeClass "disable-scroll"
scrollY = parseInt(document.body.style.top) * -1
document.body.style.position = ''
document.body.style.top = ''
document.body.style.overflowY = ''
document.body.style.width = ''
window.scrollTo(0, scrollY) if scrollY

View File

@@ -1,21 +0,0 @@
Darkswarm.directive 'mapOsmTiles', ($timeout) ->
restrict: 'E'
require: '^uiGmapGoogleMap'
scope: {}
link: (scope, elem, attrs, ctrl) ->
$timeout =>
map = ctrl.getMap()
map.mapTypes.set 'OSM', new google.maps.ImageMapType
getTileUrl: (coord, zoom) ->
# "Wrap" x (logitude) at 180th meridian properly
# NB: Don't touch coord.x because coord param is by reference, and changing its x property breaks something in Google's lib
tilesPerGlobe = 1 << zoom
x = coord.x % tilesPerGlobe
if x < 0
x = tilesPerGlobe + x
# Wrap y (latitude) in a like manner if you want to enable vertical infinite scroll
'https://a.tile.openstreetmap.org/' + zoom + '/' + x + '/' + coord.y + '.png'
tileSize: new google.maps.Size(256, 256)
name: 'OpenStreetMap'
maxZoom: 18

View File

@@ -2,7 +2,7 @@ Darkswarm.directive "priceBreakdown", ($tooltip)->
# We use the $tooltip service from Angular foundation to give us boilerplate
# Subsequently we patch the scope, template and restrictions
tooltip = $tooltip 'priceBreakdown', 'priceBreakdown', 'click'
tooltip.scope =
tooltip.scope =
variant: "="
tooltip.templateUrl = "price_breakdown_button.html"
tooltip.replace = true
@@ -15,6 +15,3 @@ Darkswarm.directive 'priceBreakdownPopup', ->
replace: true
templateUrl: 'price_breakdown.html'
scope: false
link: (scope, elem, attrs) ->
scope.expanded = false unless scope.expanded?

View File

@@ -1,10 +0,0 @@
Darkswarm.directive "pricePercentage", ->
restrict: 'E'
replace: true
templateUrl: 'price_percentage.html'
scope:
percentage: '='
link: (scope, elem, attrs) ->
elem.find(".meter").css
width: "#{scope.percentage}%"

View File

@@ -4,10 +4,4 @@ Darkswarm.directive "shopVariant", ->
templateUrl: 'shop_variant.html'
scope:
variant: '='
controller: ($scope, Cart) ->
$scope.$watchGroup [
'variant.line_item.quantity',
'variant.line_item.max_quantity'
], (new_value, old_value) ->
return if old_value[0] == null && new_value[0] == null
Cart.adjust($scope.variant.line_item)
controller: 'ShopVariantCtrl'

Some files were not shown because too many files have changed in this diff Show More