Compare commits

...

2572 Commits

Author SHA1 Message Date
Maikel Linke
cd99b502d8 Update translations 2021-07-21 11:15:39 +10:00
Andy Brett
ba6dd01446 Merge pull request #7957 from Matt-Yorkley/uglifier
Use :harmony option with Uglifier when minimizing javascript
2021-07-20 12:35:36 -07:00
Matt-Yorkley
98ea70bfa0 Use harmony option with Uglifier when minimizing javascript
Resolves a bug where the asset pipeline tries to minify assets that have already been minified by Webpack
2021-07-20 19:11:50 +01:00
jibees
40abefa908 Merge pull request #7955 from Matt-Yorkley/stimulus-js
Add StimulusJS
2021-07-20 17:44:04 +02:00
Matt-Yorkley
6882201533 Add StimulusJS and example controller 2021-07-20 15:22:16 +01:00
Maikel
86500dc2aa Merge pull request #7948 from Matt-Yorkley/remove-foundation-js
Remove Foundation js
2021-07-20 14:57:29 +10:00
Andy Brett
a93eef38c0 Merge pull request #7923 from vishaldeepak/tooltip-order-cycle-subscription
Tooltip added for 'New Schedule' and 'New Order Cycle'
2021-07-19 19:32:09 -07:00
Andy Brett
f60e7a97fd Merge pull request #7953 from filipefurtad0/customer_email_validation
Adds test for valid_email2 email validation
2021-07-19 19:16:36 -07:00
Maikel
b38ad54e15 Merge pull request #7940 from openfoodfoundation/dependabot/bundler/stripe-5.37.0
Bump stripe from 5.36.0 to 5.37.0
2021-07-20 11:08:01 +10:00
filipefurtad0
0e85811cab Adds test for valid_email2 email validation 2021-07-19 18:26:52 +01:00
Matt-Yorkley
51f86cfef4 Merge pull request #7941 from apricot12/revert-7307-Show_notification_setting
Revert 7307 - Profile only producers need the notifications field
2021-07-19 12:07:26 +02:00
Matt-Yorkley
03863d2bb2 Delete some other dead frontend code 2021-07-18 11:25:01 +01:00
Matt-Yorkley
e2bcb80ac4 Remove Foundation framework JS from Darkswarm 2021-07-18 11:25:01 +01:00
Andy Brett
c6743d8c6b Merge pull request #7800 from pacodelaluna/improve-dfc-logic
Improve DFC Provider logic to use existing business logic
2021-07-16 15:56:09 -07:00
Maikel Linke
fd8766ec77 Update translations 2021-07-16 10:41:08 +10:00
Maikel
3e66f475e5 Merge pull request #7925 from openfoodfoundation/transifex
Transifex
2021-07-16 10:32:46 +10:00
Maikel
6de27703af Merge pull request #7915 from vishaldeepak/payment-state-translation
Fixed Bug on payment transalation state
2021-07-16 10:29:53 +10:00
Maikel
f448c95bbe Merge pull request #7886 from apricot12/invalid_customer_email_subscription_fail
Add valid_email2 gem for email validation to fix subscription failures with invalid emails.
2021-07-16 10:20:37 +10:00
François Turbelin
39bb25e959 Adjust supplied_products id before better data matching 2021-07-15 21:17:14 +02:00
Nihal Mohammed
3793585c38 Revert changes made in #7307 2021-07-16 00:28:40 +05:30
dependabot[bot]
7ef95f82c0 Bump stripe from 5.36.0 to 5.37.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.36.0 to 5.37.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.36.0...v5.37.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-15 09:04:16 +00:00
Transifex-Openfoodnetwork
a46145f44f Updating translations for config/locales/ru.yml 2021-07-15 18:45:17 +10:00
Transifex-Openfoodnetwork
20d4cb1366 Updating translations for config/locales/es.yml 2021-07-15 03:46:05 +10:00
Transifex-Openfoodnetwork
f269fb9104 Updating translations for config/locales/ca.yml 2021-07-15 03:45:09 +10:00
Andy Brett
ac0c1f3c70 Merge pull request #7823 from apricot12/Migrate_Kaminari_to_Pagy_for_pagination
Migrate kaminari to pagy for pagination
2021-07-14 10:11:11 -07:00
Andy Brett
a58e0fe217 Merge pull request #7926 from luisramos0/rubocop_fix
Update Rubocop todo files
2021-07-14 10:05:54 -07:00
Andy Brett
09790b35ef Merge pull request #7927 from openfoodfoundation/dependabot/bundler/ddtrace-0.51.1
Bump ddtrace from 0.51.0 to 0.51.1
2021-07-14 10:03:50 -07:00
François Turbelin
c4a7c05c05 Use check_enterprise filter in a better way 2021-07-14 14:59:19 +02:00
François Turbelin
155d05265d Use manually generated values to test urls 2021-07-14 14:24:10 +02:00
Matt-Yorkley
4b4450d34f Update conditional pagination in Api::OrdersController 2021-07-14 13:19:02 +01:00
Matt-Yorkley
447165f8a1 Update #expect calls to count products correctly 2021-07-14 13:19:02 +01:00
Matt-Yorkley
c1b85b7409 Revert removal of default argument in #fetchResults 2021-07-14 13:19:02 +01:00
Matt-Yorkley
cc5b310694 Fix javascript errors where $scope.filteredLineItems hasn't been initialized yet 2021-07-14 13:19:02 +01:00
Nihal Mohammed
1ac2e1a8a6 Try reverting shopping_spec 2021-07-14 13:19:02 +01:00
Nihal Mohammed
2acc339341 Update shoppign spec 2021-07-14 13:19:02 +01:00
Nihal Mohammed
894a11c9c1 Update shopping spec to fix CI error 2021-07-14 13:18:01 +01:00
Nihal Mohammed
5864e2d36e Update states controller spec 2021-07-14 13:18:01 +01:00
Nihal Mohammed
6bd28bcad8 Update products_renderer for pagy pagination 2021-07-14 13:17:33 +01:00
Matt-Yorkley
4187380225 Customise partial used for showing pagination links 2021-07-14 13:17:33 +01:00
Matt-Yorkley
786cb06c7d Drop duplicate pagination buttons on top of tax zones config page
Showing these buttons at both the top and bottom is inconsistent with other pages like admin/users that have a similar layout and UI; they only show the buttons on the bottom.
2021-07-14 13:17:33 +01:00
Matt-Yorkley
60595059e2 Drop unused options from Pagy initializer 2021-07-14 13:17:33 +01:00
Matt-Yorkley
41f9f07a80 Simplify cases where pagination is conditional and pagination data may or may not be used 2021-07-14 13:17:33 +01:00
Matt-Yorkley
e5afa3a26e Simplify #pagy calls without default item counts
Pagy will pick up the :per_page param by default now, so we don't need to specify `items: params[:per_page]` unless we want to use something beyond that param's value.
2021-07-14 13:17:33 +01:00
Matt-Yorkley
b3c4a38b0f Enable 'pagy/extras/items' for customising items parameter 2021-07-14 13:17:33 +01:00
Matt-Yorkley
18d98500e9 Update pagination in Admin::ZonesController 2021-07-14 13:17:33 +01:00
Matt-Yorkley
a821117b83 Update pagination in Admin::UsersController 2021-07-14 13:17:33 +01:00
Matt-Yorkley
a146782bcd Update pagination in Api::StatesController 2021-07-14 13:17:33 +01:00
Matt-Yorkley
eba60a6130 Deal with Api::OrdersController and SearchOrders service 2021-07-14 13:17:33 +01:00
Matt-Yorkley
3213c30a37 Update pagination in Api::ExchangeProductsController 2021-07-14 13:17:33 +01:00
Matt-Yorkley
6fe68322da Update pagination in Admin::BulkLineItemsController 2021-07-14 13:17:33 +01:00
Matt-Yorkley
1dddaf9b14 Remove dead code in Admin::ProductsController
This is related to some of the data-loading for index actions inherited from Spree's Admin::ResourceController, but we don't actually use it any more...
2021-07-14 13:17:33 +01:00
Nihal Mohammed
e5bdaa603a Setup pagy 2021-07-14 13:17:33 +01:00
François Turbelin
9d1b059835 Fix typo in supplied_products_controller comment 2021-07-14 14:08:09 +02:00
vishaldeepak
b70ba7085a Tooltip added for 'New Schedule' and 'New Order Cycle' in Order Cycles tab of admin 2021-07-14 15:15:12 +05:30
dependabot[bot]
97e8d1d708 Bump ddtrace from 0.51.0 to 0.51.1
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.51.0 to 0.51.1.
- [Release notes](https://github.com/DataDog/dd-trace-rb/releases)
- [Changelog](https://github.com/DataDog/dd-trace-rb/blob/v0.51.1/CHANGELOG.md)
- [Commits](https://github.com/DataDog/dd-trace-rb/compare/v0.51.0...v0.51.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-14 09:02:16 +00:00
Maikel
6e25dec617 Merge pull request #7921 from openfoodfoundation/dependabot/bundler/ddtrace-0.51.0
Bump ddtrace from 0.50.0 to 0.51.0
2021-07-14 15:26:01 +10:00
Maikel
9b5e70dc17 Merge pull request #7916 from openfoodfoundation/dependabot/bundler/addressable-2.8.0
Bump addressable from 2.7.0 to 2.8.0
2021-07-14 15:24:26 +10:00
Maikel
529ea20289 Merge pull request #7913 from openfoodfoundation/dependabot/bundler/shoulda-matchers-5.0.0
Bump shoulda-matchers from 4.5.1 to 5.0.0
2021-07-14 15:23:04 +10:00
Maikel
95e5bf16dd Merge pull request #7898 from psychoslave/fit/schema
Update schema after recent migrations
2021-07-14 15:19:51 +10:00
Maikel
3e15e87b11 Merge pull request #7909 from shen-sat/7470-add-shipping-category-feature-test
7470 add shipping category feature test
2021-07-14 14:29:29 +10:00
Luis Ramos
1fb162bb4c Result of running rubocop -a, safe auto correct 2021-07-13 23:06:56 +01:00
Luis Ramos
04ac55b91e Move nesting blocks rule from 4 to 3, same exception list 2021-07-13 22:55:17 +01:00
Luis Ramos
08a4536a6a Update rubocop manual todo
After this commit we can run rubocop and get no offenses
2021-07-13 22:52:57 +01:00
Luis Ramos
01fe6abeed Result of rubocop -a, safe autocorrect 2021-07-13 22:38:05 +01:00
Luis Ramos
a7944af73d Update rubocop todo file 2021-07-13 22:32:28 +01:00
Andy Brett
094ef92638 Merge pull request #7920 from openfoodfoundation/dependabot/bundler/view_component_storybook-0.9.0
Bump view_component_storybook from 0.8.0 to 0.9.0
2021-07-13 14:06:38 -07:00
Andy Brett
98e4136be5 Merge pull request #7912 from openfoodfoundation/dependabot/bundler/stripe-5.36.0
Bump stripe from 5.35.0 to 5.36.0
2021-07-13 14:04:21 -07:00
Transifex-Openfoodnetwork
61598fc971 Updating translations for config/locales/en_CA.yml 2021-07-14 05:40:31 +10:00
Transifex-Openfoodnetwork
e4a7fe7cb2 Updating translations for config/locales/de_DE.yml 2021-07-14 05:12:41 +10:00
Transifex-Openfoodnetwork
8ba0ac0b8f Updating translations for config/locales/en_FR.yml 2021-07-14 01:53:29 +10:00
Transifex-Openfoodnetwork
511bb73278 Updating translations for config/locales/fr.yml 2021-07-14 01:53:21 +10:00
Mathieu Lovato Stumpf Guntz
2522ac4ad5 Merge branch 'master' into fit/schema 2021-07-13 16:45:40 +02:00
Mathieu Lovato Stumpf Guntz
89f97ba0ec integrate db/schema.rb changes 2021-07-13 16:43:55 +02:00
Andy Brett
ef4454ddba Merge pull request #7892 from andrewpbrett/grouped-tax-invoices
Remove duplicative tax line on invoices
2021-07-13 06:30:30 -07:00
Matt-Yorkley
0d16be3f94 Merge pull request #7779 from Matt-Yorkley/stripe-stock-check
Stripe stock check
2021-07-13 14:46:34 +02:00
Matt-Yorkley
70dde65687 Merge pull request #7917 from andrewpbrett/fix-chrome-autocomplete
Use `autocomplete: off` on bulk product page form
2021-07-13 13:22:15 +02:00
dependabot[bot]
33cfee2f9f Bump ddtrace from 0.50.0 to 0.51.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.50.0 to 0.51.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.50.0...v0.51.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-13 09:03:20 +00:00
dependabot[bot]
8f2403394e Bump view_component_storybook from 0.8.0 to 0.9.0
Bumps [view_component_storybook](https://github.com/jonspalmer/view_component_storybook) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/jonspalmer/view_component_storybook/releases)
- [Commits](https://github.com/jonspalmer/view_component_storybook/compare/v0.8.0...v0.9.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-13 09:02:14 +00:00
Shen Sat
2f9751f7ea Fix typo and remove WebHelper 2021-07-13 08:54:19 +01:00
Andy Brett
b475476a22 Update all locales with the latest Transifex translations 2021-07-12 15:45:59 -07:00
Andy Brett
01bfd4bd9d Merge pull request #7911 from openfoodfoundation/transifex
Transifex
2021-07-12 15:43:21 -07:00
Andy Brett
128a2127c9 use autocomplete: off on bulk product page form 2021-07-12 14:41:57 -07:00
dependabot[bot]
22860839e6 Bump addressable from 2.7.0 to 2.8.0
Bumps [addressable](https://github.com/sporkmonger/addressable) from 2.7.0 to 2.8.0.
- [Release notes](https://github.com/sporkmonger/addressable/releases)
- [Changelog](https://github.com/sporkmonger/addressable/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sporkmonger/addressable/compare/addressable-2.7.0...addressable-2.8.0)

---
updated-dependencies:
- dependency-name: addressable
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 17:22:56 +00:00
Andy Brett
117f0b41a2 Merge pull request #7908 from Matt-Yorkley/pry-warnings
Fix deprecation issues with pry-byebug
2021-07-12 10:22:06 -07:00
Andy Brett
5efc3dc221 Merge pull request #7914 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.11.3
Bump rubocop-rails from 2.11.2 to 2.11.3
2021-07-12 09:50:40 -07:00
Andy Brett
7d399b4c6d Remove duplicative line item for taxes 2021-07-12 09:16:28 -07:00
vishaldeepak
691853843d Fixed Bug on payment transalation state 2021-07-12 15:45:27 +05:30
dependabot[bot]
08529b3e7e Bump rubocop-rails from 2.11.2 to 2.11.3
Bumps [rubocop-rails](https://github.com/rubocop/rubocop-rails) from 2.11.2 to 2.11.3.
- [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.11.2...v2.11.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 09:07:00 +00:00
dependabot[bot]
d576f3ea96 Bump shoulda-matchers from 4.5.1 to 5.0.0
Bumps [shoulda-matchers](https://github.com/thoughtbot/shoulda-matchers) from 4.5.1 to 5.0.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.5.1...v5.0.0)

---
updated-dependencies:
- dependency-name: shoulda-matchers
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 09:04:59 +00:00
dependabot[bot]
63597b0221 Bump stripe from 5.35.0 to 5.36.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.35.0 to 5.36.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.35.0...v5.36.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-12 09:02:50 +00:00
Transifex-Openfoodnetwork
afbd2b520e Updating translations for config/locales/en_GB.yml 2021-07-12 18:13:42 +10:00
Matt-Yorkley
8e1631bfc7 Set adjustments associated with voided payments to ineligible.
Otherwise we can end up with duplicate transaction fees for voided payments.
2021-07-12 08:28:32 +01:00
Shen Sat
63cb82717b Add feature test for shipping categories 2021-07-11 19:42:41 +01:00
Matt-Yorkley
cb1fd77531 Fix deprecation issues with pry-byebug
The latest version of pry-byebug and the latest version of pry have some weird compatibility issues. The solution requires downgrading pry slightly and upgrading pry-byebug. Fixes:
```
lib/ruby/gems/2.7.0/gems/pry-byebug-3.8.0/lib/pry-byebug/control_d_handler.rb:5:
warning: control_d_handler's arity of 2 parameters was deprecated (eval_string, pry_instance).Now it gets passed just 1 parameter (pry_instance)
```
2021-07-11 18:40:59 +01:00
Andy Brett
718f9c4af8 Merge pull request #7848 from jibees/7842-locale-management-on-user_passwords-controller
Handle lang management on user passwords controller
2021-07-09 08:55:09 -07:00
Matt-Yorkley
db7c397345 Merge pull request #7906 from openfoodfoundation/transifex
Transifex
2021-07-09 16:53:44 +02:00
Transifex-Openfoodnetwork
e19a407a39 Updating translations for config/locales/ru.yml 2021-07-09 23:31:56 +10:00
Transifex-Openfoodnetwork
3c104158db Updating translations for config/locales/ru.yml 2021-07-09 23:28:55 +10:00
Transifex-Openfoodnetwork
d9e0a6a04f Updating translations for config/locales/fr.yml 2021-07-09 23:28:44 +10:00
Transifex-Openfoodnetwork
99f127148e Updating translations for config/locales/ru.yml 2021-07-09 23:26:43 +10:00
Transifex-Openfoodnetwork
cce6ba65dd Updating translations for config/locales/fr.yml 2021-07-09 23:25:43 +10:00
Transifex-Openfoodnetwork
bb6162059d Updating translations for config/locales/en_FR.yml 2021-07-09 23:25:34 +10:00
Matt-Yorkley
e6d9545c30 Use :incomplete scope when voiding payments that can't be processed due to stock changes 2021-07-09 13:31:00 +01:00
Transifex-Openfoodnetwork
4162215582 Updating translations for config/locales/fr.yml 2021-07-09 22:30:01 +10:00
Matt-Yorkley
2b8b690892 Tidy up :valid scope in Spree::Payment 2021-07-09 13:28:38 +01:00
Matt-Yorkley
b4a9a6fea5 Add :incomplete scope in Spree::Payment 2021-07-09 13:28:19 +01:00
Transifex-Openfoodnetwork
cf66d96746 Updating translations for config/locales/en_FR.yml 2021-07-09 22:27:37 +10:00
Transifex-Openfoodnetwork
c82db9716c Updating translations for config/locales/fr.yml 2021-07-09 22:26:57 +10:00
Matt-Yorkley
b1db06a3c6 Allow payments in requires_authorization state to be voided 2021-07-09 13:24:37 +01:00
Matt-Yorkley
a199f80ed4 Add test for insufficient stock behavior after Stripe redirect 2021-07-09 13:14:43 +01:00
Matt-Yorkley
2cd6b05aba Use Order::Contents service in test setup 2021-07-09 13:14:43 +01:00
Matt-Yorkley
9bcf0d5b38 Handle Stripe payments when checkout fails due to stock issues
This can occur when stock is reduced after the user is redirected to Stripe and before they are redirected back. The stock is insufficient, the order is not complete, the user is bounced back to the cart, but a *pending* Stripe payment is left on the order.
2021-07-09 13:13:20 +01:00
Matt-Yorkley
9795734dc8 Merge pull request #7903 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-controls-6.3.4
Bump @storybook/addon-controls from 6.3.3 to 6.3.4
2021-07-09 12:41:48 +02:00
Matt-Yorkley
e5242bab49 Merge pull request #7902 from openfoodfoundation/dependabot/npm_and_yarn/storybook/server-6.3.4
Bump @storybook/server from 6.3.3 to 6.3.4
2021-07-09 12:41:30 +02:00
Matt-Yorkley
d4052a0e62 Merge pull request #7893 from guidoDutra/1861-add-shopfront-sort-placeholder-translations
Add translations to shopfront sorting placeholders
2021-07-09 12:37:40 +02:00
dependabot[bot]
b5b4f6df82 Bump @storybook/addon-controls from 6.3.3 to 6.3.4
Bumps [@storybook/addon-controls](https://github.com/storybookjs/storybook/tree/HEAD/addons/controls) from 6.3.3 to 6.3.4.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.4/addons/controls)

---
updated-dependencies:
- dependency-name: "@storybook/addon-controls"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-09 09:07:59 +00:00
dependabot[bot]
d89ae67c4d Bump @storybook/server from 6.3.3 to 6.3.4
Bumps [@storybook/server](https://github.com/storybookjs/storybook/tree/HEAD/app/server) from 6.3.3 to 6.3.4.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.4/app/server)

---
updated-dependencies:
- dependency-name: "@storybook/server"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-09 09:05:47 +00:00
jibees
a225a4e440 Merge pull request #7901 from openfoodfoundation/revert-7821-dependabot/npm_and_yarn/webpack-cli-4.7.2
Revert "Bump webpack-cli from 3.3.12 to 4.7.2"
2021-07-09 11:02:15 +02:00
Matt-Yorkley
626ced812a Revert "Bump webpack-cli from 3.3.12 to 4.7.2" 2021-07-09 10:38:47 +02:00
Maikel
75bdb82b5c Merge pull request #7900 from openfoodfoundation/transifex
Transifex
2021-07-09 17:19:08 +10:00
Transifex-Openfoodnetwork
74ba812061 Updating translations for config/locales/ru.yml 2021-07-09 16:23:32 +10:00
Andy Brett
c966c3b8d7 Merge pull request #7889 from openfoodfoundation/transifex
Transifex
2021-07-08 17:16:36 -07:00
Andy Brett
762d0ca338 Merge pull request #7899 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-docs-6.3.4
Bump @storybook/addon-docs from 6.3.2 to 6.3.4
2021-07-08 16:55:17 -07:00
dependabot[bot]
131b22576b Bump @storybook/addon-docs from 6.3.2 to 6.3.4
Bumps [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/addons/docs) from 6.3.2 to 6.3.4.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.4/addons/docs)

---
updated-dependencies:
- dependency-name: "@storybook/addon-docs"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-08 23:34:47 +00:00
Andy Brett
704da21c60 Merge pull request #7897 from openfoodfoundation/dependabot/npm_and_yarn/storybook/server-6.3.3
Bump @storybook/server from 6.3.2 to 6.3.3
2021-07-08 16:29:27 -07:00
Andy Brett
8bbb150b07 Merge pull request #7896 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-controls-6.3.3
Bump @storybook/addon-controls from 6.3.2 to 6.3.3
2021-07-08 16:29:12 -07:00
Mathieu Lovato Stumpf Guntz
9670ca0fbb Update schema after recent migrations
Add table `terms_of_service_files` and a `tax_category_id` field
2021-07-08 19:10:53 +02:00
dependabot[bot]
76f91e7854 Bump @storybook/server from 6.3.2 to 6.3.3
Bumps [@storybook/server](https://github.com/storybookjs/storybook/tree/HEAD/app/server) from 6.3.2 to 6.3.3.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.3/app/server)

---
updated-dependencies:
- dependency-name: "@storybook/server"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-08 09:06:23 +00:00
dependabot[bot]
f911f66ead Bump @storybook/addon-controls from 6.3.2 to 6.3.3
Bumps [@storybook/addon-controls](https://github.com/storybookjs/storybook/tree/HEAD/addons/controls) from 6.3.2 to 6.3.3.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.3/addons/controls)

---
updated-dependencies:
- dependency-name: "@storybook/addon-controls"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-08 09:05:45 +00:00
Jean-Baptiste Bellet
1a8a12fb0c Filter language to not display the current lang in the dropdown
No need to set a lang that is actually already set
2021-07-08 09:15:09 +02:00
Guido Oliveira
9bc41cf04f Add translations to shopfront sorting placeholders 2021-07-07 14:39:10 -03:00
Andy Brett
869532d094 Merge pull request #7888 from openfoodfoundation/dependabot/bundler/rubocop-1.18.3
Bump rubocop from 1.18.2 to 1.18.3
2021-07-07 09:36:57 -07:00
Nihal Mohammed
db88121ed8 Update Customer model to validate email with valid_email2 gem 2021-07-07 20:30:06 +05:30
Nihal Mohammed
262baf1870 Add valid_email2 gem to Gemfile and run bundle install 2021-07-07 20:00:00 +05:30
Transifex-Openfoodnetwork
277a2a4d58 Updating translations for config/locales/de_DE.yml 2021-07-07 22:50:38 +10:00
dependabot[bot]
11a748b94e Bump rubocop from 1.18.2 to 1.18.3
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.18.2 to 1.18.3.
- [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.18.2...v1.18.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-07 09:04:35 +00:00
Andy Brett
46cd05c54a Merge pull request #7712 from guidoDutra/1861-enable-shopfront-sorting-by-producer
Enable sorting by producer in shopfront
2021-07-06 09:27:42 -07:00
Andy Brett
ff3784ad3f Merge pull request #7851 from apricot12/view_deleted_payments_in_admin
Allow viewing of payments made with deleted pyment methods in admin
2021-07-06 07:24:42 -07:00
Andy Brett
4f18cf6645 Merge pull request #7882 from openfoodfoundation/dependabot/bundler/view_component-2.35.0
Bump view_component from 2.34.0 to 2.35.0
2021-07-06 06:43:38 -07:00
Jean-Baptiste Bellet
aa982fe8df Create a new method to change the lang of the app
- The old method (link to `?locale=#{l.to_s}`) was not functional for path that already has query params in current path (such as `/user/spree_user/password/edit?reset_password_token=`) ;
 - This seems that the best way to handle this, is to create a new route, new method that effectively set the lang (not the locale actually...) and then redirect_back (ie. using the HTTP_REFERER, with a fallback to `/`)

s
2021-07-06 10:09:37 +02:00
Andy Brett
6a126835cc Merge pull request #7881 from openfoodfoundation/dependabot/bundler/rubocop-1.18.2
Bump rubocop from 1.18.1 to 1.18.2
2021-07-05 10:30:01 -07:00
Pau Pérez Fabregat
c95ce5eb12 Merge pull request #7867 from coopdevs/enable-simplecov-in-dev
Fix coverage in development skipping Codecov
2021-07-05 15:23:29 +02:00
dependabot[bot]
86717f7b25 Bump view_component from 2.34.0 to 2.35.0
Bumps [view_component](https://github.com/github/view_component) from 2.34.0 to 2.35.0.
- [Release notes](https://github.com/github/view_component/releases)
- [Changelog](https://github.com/github/view_component/blob/main/docs/CHANGELOG.md)
- [Commits](https://github.com/github/view_component/compare/v2.34.0...v2.35.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-07-05 09:03:26 +00:00
dependabot[bot]
35fb4c03a7 Bump rubocop from 1.18.1 to 1.18.2
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.18.1 to 1.18.2.
- [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.18.1...v1.18.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-05 09:02:47 +00:00
Andy Brett
f1cf828f34 Merge pull request #7550 from openfoodfoundation/dependabot/bundler/paper_trail-12.0.0
Bump paper_trail from 10.3.1 to 12.0.0
2021-07-02 10:14:53 -07:00
Andy Brett
ddf6d0b7e2 Merge pull request #7874 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.11.2
Bump rubocop-rails from 2.11.1 to 2.11.2
2021-07-02 07:19:49 -07:00
Matt-Yorkley
b1324c6269 Merge pull request #7745 from Matt-Yorkley/dotenv
Dotenv
2021-07-02 15:03:15 +02:00
dependabot[bot]
26123510a6 Bump rubocop-rails from 2.11.1 to 2.11.2
Bumps [rubocop-rails](https://github.com/rubocop/rubocop-rails) from 2.11.1 to 2.11.2.
- [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.11.1...v2.11.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-02 09:04:00 +00:00
Andy Brett
3e860f6d54 Merge pull request #7781 from andrewpbrett/decouple-payments
Decouple payments
2021-07-01 18:07:01 -07:00
Matt-Yorkley
97a087707d Merge pull request #7873 from openfoodfoundation/transifex
Transifex
2021-07-01 18:57:56 +02:00
Transifex-Openfoodnetwork
f065df669a Updating translations for config/locales/de_DE.yml 2021-07-02 02:28:44 +10:00
Transifex-Openfoodnetwork
a2196b08a3 Updating translations for config/locales/en_IE.yml 2021-07-02 02:28:42 +10:00
Transifex-Openfoodnetwork
aa7d08dff7 Updating translations for config/locales/en_FR.yml 2021-07-02 02:25:41 +10:00
Transifex-Openfoodnetwork
fab3486669 Updating translations for config/locales/en_GB.yml 2021-07-02 02:25:38 +10:00
Transifex-Openfoodnetwork
71e97b3eba Updating translations for config/locales/es.yml 2021-07-02 02:25:35 +10:00
Pau Pérez Fabregat
021f33645d Merge pull request #7629 from viktorsmari/remove-bin-from-gitignore
Stop gitignoring the bin/ folder
2021-07-01 18:04:01 +02:00
Andy Brett
058ba2bb8c Merge pull request #7862 from openfoodfoundation/dependabot/bundler/stripe-5.35.0
Bump stripe from 5.34.0 to 5.35.0
2021-07-01 08:50:29 -07:00
Andy Brett
a5ead1da86 Merge pull request #7870 from andrewpbrett/revert-webpack-again
Revert "Bump webpack from 5.41.0 to 5.41.1"
2021-07-01 08:46:41 -07:00
Andy Brett
0af845a02d Revert "Bump webpack from 5.41.0 to 5.41.1"
This reverts commit 1a8a0f33d0.
2021-07-01 08:45:34 -07:00
Andy Brett
79eef161f5 Merge pull request #7866 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-docs-6.3.2
Bump @storybook/addon-docs from 6.3.1 to 6.3.2
2021-07-01 08:03:03 -07:00
Matt-Yorkley
0005a77115 Update all locales with the latest Transifex translations 2021-07-01 16:01:24 +01:00
Matt-Yorkley
a0b9eff2c1 Merge pull request #7699 from guidoDutra/1971-inventory-page-field-validation
Add validation to inventory page fields
2021-07-01 16:59:20 +02:00
dependabot[bot]
c571767cfb Bump @storybook/addon-docs from 6.3.1 to 6.3.2
Bumps [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/addons/docs) from 6.3.1 to 6.3.2.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.2/addons/docs)

---
updated-dependencies:
- dependency-name: "@storybook/addon-docs"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 14:58:58 +00:00
Andy Brett
b9bb43054a Merge pull request #7863 from openfoodfoundation/dependabot/bundler/good_migrations-0.1.0
Bump good_migrations from 0.0.2 to 0.1.0
2021-07-01 07:51:27 -07:00
Andy Brett
8fb51165bc Merge pull request #7865 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-controls-6.3.2
Bump @storybook/addon-controls from 6.3.1 to 6.3.2
2021-07-01 07:49:47 -07:00
Nihal Mohammed
5e7d4bf0c3 Allow viewing of payments made with deleted pyment methods in admin 2021-07-01 19:29:16 +05:30
Pau Pérez Fabregat
f6e0b9af0e Merge pull request #7646 from apricot12/advanced_settings_button_OC_edits
Add advanced settings button to incoming and outgoing pages in OC cyc…
2021-07-01 15:37:16 +02:00
Matt-Yorkley
d2ebda8844 Merge pull request #7856 from andrewpbrett/raise-on-missing-translations
Update config to address deprecation warning for missing translations
2021-07-01 14:22:23 +02:00
Pau Pérez Fabregat
8883aa13ad Merge pull request #7814 from openfoodfoundation/dependabot/bundler/acts-as-taggable-on-8.1.0
Bump acts-as-taggable-on from 8.0.0 to 8.1.0
2021-07-01 14:00:17 +02:00
Matt-Yorkley
12f7e2d685 Set nicer Redis defaults for dev environment
In Staging and Production we have two Redis instances running on two different ports. In dev that probably won't be set up, and Redis will be on port 6379 by default. These defaults mean it will work nicely out of the box.
2021-07-01 12:59:11 +01:00
Matt-Yorkley
083f512aae Refactor Sidekiq settings and set expiry in development
This means old cache entries will be automatically removed instead of perpetually filling up the local Redis instance in dev.
2021-07-01 12:59:11 +01:00
Matt-Yorkley
5a06ba651a Add dev and test Dotenv files
These can now be defined separately and overridden locally 🎉
2021-07-01 12:59:11 +01:00
Matt-Yorkley
d31208d1e5 Switch from Figaro to Dotenv for ENV var management 2021-07-01 12:59:11 +01:00
dependabot[bot]
7b2f2ef690 Bump @storybook/addon-controls from 6.3.1 to 6.3.2
Bumps [@storybook/addon-controls](https://github.com/storybookjs/storybook/tree/HEAD/addons/controls) from 6.3.1 to 6.3.2.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.2/addons/controls)

---
updated-dependencies:
- dependency-name: "@storybook/addon-controls"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 11:58:26 +00:00
Pau Pérez Fabregat
13dfbb9a0c Merge pull request #7859 from openfoodfoundation/dependabot/npm_and_yarn/webpack-5.41.1
Bump webpack from 5.41.0 to 5.41.1
2021-07-01 13:55:47 +02:00
Pau Pérez Fabregat
8b12fd4af1 Merge pull request #7864 from openfoodfoundation/dependabot/npm_and_yarn/storybook/server-6.3.2
Bump @storybook/server from 6.3.1 to 6.3.2
2021-07-01 13:55:24 +02:00
Pau Pérez Fabregat
f071ab2038 Merge pull request #7807 from mkllnk/rbenv-install
Add convenience script to install Ruby
2021-07-01 13:53:54 +02:00
Pau Perez
f49e5a8610 Fix coverage in development skipping Codecov
The way we have it set up, Simplecov generates a report in Codecov's format
and tries to send it to them, which fails.

This gets us back to the former Simplecov setup. This lets you check the
visual coverage report navigating to `coverage/index.html`.
2021-07-01 13:34:16 +02:00
dependabot[bot]
16d0235a6e Bump @storybook/server from 6.3.1 to 6.3.2
Bumps [@storybook/server](https://github.com/storybookjs/storybook/tree/HEAD/app/server) from 6.3.1 to 6.3.2.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.2/app/server)

---
updated-dependencies:
- dependency-name: "@storybook/server"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 09:05:40 +00:00
dependabot[bot]
ea8cb9ce7d Bump good_migrations from 0.0.2 to 0.1.0
Bumps [good_migrations](https://github.com/testdouble/good-migrations) from 0.0.2 to 0.1.0.
- [Release notes](https://github.com/testdouble/good-migrations/releases)
- [Changelog](https://github.com/testdouble/good-migrations/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testdouble/good-migrations/compare/v0.0.2...v0.1.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 09:04:42 +00:00
dependabot[bot]
00b6b58b4d Bump stripe from 5.34.0 to 5.35.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.34.0 to 5.35.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.34.0...v5.35.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 09:04:14 +00:00
Maikel Linke
23ebe91d32 Spec current version tracking of order cycles
The paper_trail gem doesn't quite work as expected with our
implementation. We need some more code or an additional gem:

https://github.com/westonganger/paper_trail-association_tracking
2021-07-01 14:56:05 +10:00
dependabot[bot]
007dbc858f Bump paper_trail from 10.3.1 to 12.0.0
Bumps [paper_trail](https://github.com/airblade/paper_trail) from 10.3.1 to 12.0.0.
- [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/v10.3.1...v12.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-01 14:47:28 +10:00
Andy Brett
e9a00eb0d4 Merge pull request #7310 from cillian/resumed-order-actions-menu
Make sure the Resend Confirmation and Send/Print Invoice links display for resumed orders
2021-06-30 10:43:07 -07:00
Andy Brett
7451f06fe1 Merge pull request #7307 from cillian/hide-notifications-setting-for-profiles
Don't show the Notifications setting for profile only enterprises in the Users section
2021-06-30 10:14:14 -07:00
Nihal Mohammed
f7795ca21a Fix failing specs 2021-06-30 09:50:38 -07:00
Nihal Mohammed
cd0b97bf0a Update i18n configs 2021-06-30 09:50:38 -07:00
Nihal Mohammed
18282a6f73 Add advanced settings button to incoming and outgoing pages in OC cycle edit 2021-06-30 09:50:38 -07:00
Nihal Mohammed
c335ec3b29 # This is a combination of 5 commits.tree d6d4f31283e42c44c9c4d116567ce7b1a99a13ab
parent b680697af6
author Nihal Mohammed <mnihal64@outlook.com> 1621004464 +0530
committer Nihal Mohammed <mnihal64@outlook.com> 1621022463 +0530

# This is a combination of 4 commits.
# This is the 1st commit message:

Add advanced settings button to incoming and outgoing pages in OC cycle edit

# This is the commit message #2:

Remove extra header text

# This is the commit message #3:

Moved repeating code blocks to partial

# This is the commit message #4:

Refactored code

# This is the commit message #5:

Delete _advanced_settings_hidden.html.haml
2021-06-30 09:50:38 -07:00
Cillian O'Ruanaidh
2bb406fe6a Don't show the Notifications setting for profile only enterprises in the Users settings section
If a enterprise has only set up a profile they won't be getting any order notification emails so showing this setting could be confusing.

#1797
2021-06-30 09:48:08 -07:00
dependabot[bot]
1a8a0f33d0 Bump webpack from 5.41.0 to 5.41.1
Bumps [webpack](https://github.com/webpack/webpack) from 5.41.0 to 5.41.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.41.0...v5.41.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-30 16:47:01 +00:00
Andy Brett
7eac465b18 Merge pull request #7861 from andrewpbrett/revert-webpack
Revert "Bump webpack from 4.46.0 to 5.41.0"
2021-06-30 09:41:45 -07:00
Andy Brett
404a2d3a2d Revert "Bump webpack from 4.46.0 to 5.41.0"
This reverts commit e753f47291.
2021-06-30 09:26:15 -07:00
Andy Brett
47e954afcb Merge pull request #7858 from openfoodfoundation/dependabot/bundler/rubocop-1.18.1
Bump rubocop from 1.18.0 to 1.18.1
2021-06-30 08:04:56 -07:00
Viktor Smari
c95c2f5772 Add files generated by spring binstub --all 2021-06-30 13:35:09 +02:00
Viktor Smari
14a1992d52 Stop ignoring the /bin folder
New rails apps do not ignore the bin folder.
When running rails app:update, the bin folder also gets update.
This also allows us to use bin/rails to run rails, or bin/yarn etc.
Tip: create an alias r=./bin/rails
2021-06-30 13:33:11 +02:00
dependabot[bot]
e98ad9096d Bump rubocop from 1.18.0 to 1.18.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.18.0 to 1.18.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.18.0...v1.18.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-30 09:04:54 +00:00
Matt-Yorkley
7489fd98bf Merge pull request #7837 from openfoodfoundation/dependabot/bundler/rails-6.1.4
Bump rails from 6.1.3.2 to 6.1.4
2021-06-29 21:32:07 +02:00
Matt-Yorkley
189d007304 Merge pull request #7850 from openfoodfoundation/dependabot/npm_and_yarn/webpack-5.41.0
Bump webpack from 4.46.0 to 5.41.0
2021-06-29 21:28:04 +02:00
Andy Brett
a97b5b7c90 rename payment state machine events to be verbs 2021-06-29 11:54:51 -07:00
Andy Brett
9b1da14380 mark payment failed after failed authorization 2021-06-29 11:54:51 -07:00
Andy Brett
f61fbee52a refactor to advance_to_state method
this leaves `advance_order!` as is since it's not directly touched by this PR and the metaprogramming looks like it would decrease readability
2021-06-29 11:54:51 -07:00
Andy Brett
aa8067f96b process payments separately from completing the order 2021-06-29 11:54:48 -07:00
Andy Brett
d2701226b6 complete order immediately before adding payment 2021-06-29 11:45:33 -07:00
dependabot[bot]
4bbdcc109d Bump rails from 6.0.3.7 to 6.1.4
Bumps [rails](https://github.com/rails/rails) from 6.0.3.7 to 6.1.4.
- [Release notes](https://github.com/rails/rails/releases)
- [Commits](https://github.com/rails/rails/compare/v6.0.3.7...v6.1.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-29 17:33:32 +00:00
dependabot[bot]
09254215a5 Bump acts-as-taggable-on from 8.0.0 to 8.1.0
Bumps [acts-as-taggable-on](https://github.com/mbleigh/acts-as-taggable-on) from 8.0.0 to 8.1.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/v8.0.0...v8.1.0)

---
updated-dependencies:
- dependency-name: acts-as-taggable-on
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-29 17:22:37 +00:00
Andy Brett
63fcb40f6c update config to address deprecation warning for missing translations config 2021-06-29 10:22:25 -07:00
Andy Brett
1a6257257a Merge pull request #7608 from luisramos0/rails61
[Rails 6.1] Upgrade to rails 6.1
2021-06-29 10:21:15 -07:00
Andy Brett
e24d2e5077 address deprecation warning 2021-06-29 09:17:31 -07:00
Andy Brett
eb724bbe10 Merge pull request #7849 from openfoodfoundation/dependabot/bundler/rubocop-1.18.0
Bump rubocop from 1.17.0 to 1.18.0
2021-06-29 06:48:44 -07:00
dependabot[bot]
e753f47291 Bump webpack from 4.46.0 to 5.41.0
Bumps [webpack](https://github.com/webpack/webpack) from 4.46.0 to 5.41.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v4.46.0...v5.41.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-29 09:08:03 +00:00
dependabot[bot]
df353aa006 Bump rubocop from 1.17.0 to 1.18.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.17.0 to 1.18.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.17.0...v1.18.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-29 09:05:09 +00:00
Andy Brett
7b87476986 Merge pull request #7804 from Matt-Yorkley/default-taxrate-check
Ignore potential error in dev where default tax rate is nil
2021-06-28 10:35:09 -07:00
Andy Brett
837c9bd7d8 Merge pull request #7826 from openfoodfoundation/dependabot/bundler/knapsack-3.1.0
Bump knapsack from 1.22.0 to 3.1.0
2021-06-28 10:34:01 -07:00
Andy Brett
394043dcc2 Merge pull request #7817 from openfoodfoundation/dependabot/bundler/webpacker-5.4.0
Bump webpacker from 5.3.0 to 5.4.0
2021-06-28 10:32:54 -07:00
Andy Brett
bc8ba48100 Merge pull request #7846 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-docs-6.3.1
Bump @storybook/addon-docs from 6.3.0 to 6.3.1
2021-06-28 08:51:33 -07:00
dependabot[bot]
1b93d7a45f Bump @storybook/addon-docs from 6.3.0 to 6.3.1
Bumps [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/addons/docs) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.1/addons/docs)

---
updated-dependencies:
- dependency-name: "@storybook/addon-docs"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-28 15:50:42 +00:00
Andy Brett
1137341591 Merge pull request #7845 from openfoodfoundation/dependabot/npm_and_yarn/storybook/server-6.3.1
Bump @storybook/server from 6.3.0 to 6.3.1
2021-06-28 08:46:30 -07:00
Pau Pérez Fabregat
4db0075de3 Merge pull request #7821 from openfoodfoundation/dependabot/npm_and_yarn/webpack-cli-4.7.2
Bump webpack-cli from 3.3.12 to 4.7.2
2021-06-28 17:23:04 +02:00
dependabot[bot]
2a6a3fd64a Bump @storybook/server from 6.3.0 to 6.3.1
Bumps [@storybook/server](https://github.com/storybookjs/storybook/tree/HEAD/app/server) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.1/app/server)

---
updated-dependencies:
- dependency-name: "@storybook/server"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-28 15:15:44 +00:00
Pau Pérez Fabregat
9055e186b6 Merge pull request #7847 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-controls-6.3.1
Bump @storybook/addon-controls from 6.3.0 to 6.3.1
2021-06-28 17:11:20 +02:00
dependabot[bot]
965ee4a88f Bump @storybook/addon-controls from 6.3.0 to 6.3.1
Bumps [@storybook/addon-controls](https://github.com/storybookjs/storybook/tree/HEAD/addons/controls) from 6.3.0 to 6.3.1.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.1/addons/controls)

---
updated-dependencies:
- dependency-name: "@storybook/addon-controls"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-28 09:09:34 +00:00
Jean-Baptiste Bellet
0a6d959742 Set locale to the user passwords controller
- Thus this use the same locale that the one which was set previously (if it's different from the browser one)
2021-06-28 10:19:46 +02:00
Andy Brett
cbc0cb707d Merge pull request #7816 from mkllnk/customer-import
Add example script for importing customers
2021-06-25 10:16:54 -07:00
Andy Brett
0e0e9402dd Merge pull request #7836 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.11.1
Bump rubocop-rails from 2.11.0 to 2.11.1
2021-06-25 09:32:20 -07:00
Transifex-Openfoodnetwork
71609a6489 Updating translations for config/locales/en_IE.yml 2021-06-25 22:28:54 +10:00
dependabot[bot]
5b2a7bf7e7 Bump rubocop-rails from 2.11.0 to 2.11.1
Bumps [rubocop-rails](https://github.com/rubocop/rubocop-rails) from 2.11.0 to 2.11.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.11.0...v2.11.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-25 09:02:06 +00:00
Andy Brett
8ec6b8682f Merge pull request #7831 from openfoodfoundation/dependabot/npm_and_yarn/storybook/server-6.3.0
Bump @storybook/server from 6.2.9 to 6.3.0
2021-06-24 12:24:40 -07:00
Andy Brett
a1efa685f9 Merge pull request #7830 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-controls-6.3.0
Bump @storybook/addon-controls from 6.2.9 to 6.3.0
2021-06-24 12:24:13 -07:00
dependabot[bot]
03b43e3302 Bump @storybook/addon-controls from 6.2.9 to 6.3.0
Bumps [@storybook/addon-controls](https://github.com/storybookjs/storybook/tree/HEAD/addons/controls) from 6.2.9 to 6.3.0.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.0/addons/controls)

---
updated-dependencies:
- dependency-name: "@storybook/addon-controls"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-24 19:22:02 +00:00
dependabot[bot]
75d0be410f Bump @storybook/server from 6.2.9 to 6.3.0
Bumps [@storybook/server](https://github.com/storybookjs/storybook/tree/HEAD/app/server) from 6.2.9 to 6.3.0.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.0/app/server)

---
updated-dependencies:
- dependency-name: "@storybook/server"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-24 19:21:19 +00:00
Andy Brett
afe92dfcad Merge pull request #7827 from openfoodfoundation/dependabot/bundler/bugsnag-6.21.0
Bump bugsnag from 6.20.0 to 6.21.0
2021-06-24 12:20:57 -07:00
Andy Brett
5dea7d218a Merge pull request #7828 from openfoodfoundation/dependabot/bundler/test-prof-1.0.6
Bump test-prof from 1.0.5 to 1.0.6
2021-06-24 12:19:40 -07:00
Andy Brett
28c2601a24 Merge pull request #7829 from openfoodfoundation/dependabot/npm_and_yarn/storybook/addon-docs-6.3.0
Bump @storybook/addon-docs from 6.2.9 to 6.3.0
2021-06-24 12:17:40 -07:00
Andy Brett
07a2a584c3 remove calls to ssl_allowed as well 2021-06-24 12:06:34 -07:00
Andy Brett
334b9b520a removed deprecated calls to force_ssl; rely on config.force_ssl 2021-06-24 11:58:33 -07:00
Andy Brett
0c03ca26af Merge pull request #7832 from openfoodfoundation/RachL-patch-1
Update links to welcoming new people boards
2021-06-24 09:14:43 -07:00
Andy Brett
9a9dd6a308 Merge pull request #7768 from apricot12/delete_shipped_orders_from_BOM
Hide shipped orders from BOM
2021-06-24 09:09:54 -07:00
Andy Brett
df0c98d013 Merge branch 'master' into rails61 2021-06-24 08:02:58 -07:00
Nihal Mohammed
5a94e3b644 Remove duplicate shipment_state conditions from BOM spec 2021-06-24 20:01:19 +05:30
Transifex-Openfoodnetwork
f707284c6c Updating translations for config/locales/ru.yml 2021-06-24 23:38:03 +10:00
Nihal Mohammed
edca260af4 Hide shipped orders from BOM and update specs 2021-06-24 18:26:39 +05:30
Rachel Arnould
636d449de1 Update links to welcoming new people boards
Updating links
2021-06-24 12:22:06 +02:00
dependabot[bot]
2f58f932a7 Bump @storybook/addon-docs from 6.2.9 to 6.3.0
Bumps [@storybook/addon-docs](https://github.com/storybookjs/storybook/tree/HEAD/addons/docs) from 6.2.9 to 6.3.0.
- [Release notes](https://github.com/storybookjs/storybook/releases)
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md)
- [Commits](https://github.com/storybookjs/storybook/commits/v6.3.0/addons/docs)

---
updated-dependencies:
- dependency-name: "@storybook/addon-docs"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-24 09:05:34 +00:00
dependabot[bot]
68aa42860e Bump test-prof from 1.0.5 to 1.0.6
Bumps [test-prof](https://github.com/test-prof/test-prof) from 1.0.5 to 1.0.6.
- [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.5...v1.0.6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-24 09:05:28 +00:00
dependabot[bot]
c4fbb2e715 Bump bugsnag from 6.20.0 to 6.21.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.20.0 to 6.21.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.20.0...v6.21.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-24 09:05:02 +00:00
dependabot[bot]
dca51ec298 Bump knapsack from 1.22.0 to 3.1.0
Bumps [knapsack](https://github.com/KnapsackPro/knapsack) from 1.22.0 to 3.1.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.22.0...v3.1.0)

---
updated-dependencies:
- dependency-name: knapsack
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-24 09:04:04 +00:00
Andy Brett
e37a065f10 Merge pull request #7281 from coopdevs/refactor-subs-placement-job
Refactor subs placement job
2021-06-23 11:47:50 -07:00
Andy Brett
92216cc1c7 Merge pull request #7761 from apricot12/show_variant_SKU_in_xero
Show product variant SKU in Xero report
2021-06-23 08:59:15 -07:00
Andy Brett
ca7b1f047b Merge pull request #7780 from apricot12/new_payment_method_html_bug
Fix HTML bug on new payment method page
2021-06-23 08:58:45 -07:00
Pau Perez
1125ac635b Make test not too dangerously play with time
We could get hurt and introduce flakiness in the build.
2021-06-23 13:47:42 +02:00
Pau Perez
1f3560e964 Pass in the order when it's already initialized
At `CapQuantity`'s instantiation time the proxy's order is not yet
initialized, and so `CapQuantity` was checking against nil all the time.

This went unnoticed because the job's specs were not integration-level
tests and were stubbing way too many things.
2021-06-23 13:47:42 +02:00
Pau Perez
648023750b Move tests exercising the service to its spec file
These are bypassing the job to only test the service, so there's no
point on doing that. They can test the service alone.
2021-06-23 13:45:43 +02:00
François Turbelin
06c19641b4 Remove return on case 2021-06-22 20:44:51 +02:00
Andy Brett
49dbca71b8 Merge pull request #7748 from openfoodfoundation/dependabot/bundler/stripe-5.34.0
Bump stripe from 5.33.0 to 5.34.0
2021-06-22 11:18:20 -07:00
Andy Brett
ec8a892e13 Merge pull request #7820 from openfoodfoundation/dependabot/npm_and_yarn/rails/webpacker-5.4.0
Bump @rails/webpacker from 5.3.0 to 5.4.0
2021-06-22 10:41:41 -07:00
Andy Brett
a69d89130f Merge pull request #7819 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.11.0
Bump rubocop-rails from 2.10.1 to 2.11.0
2021-06-22 10:31:13 -07:00
dependabot[bot]
3ddc142ee9 Bump webpack-cli from 3.3.12 to 4.7.2
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 3.3.12 to 4.7.2.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/v3.3.12...webpack-cli@4.7.2)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-22 09:06:57 +00:00
dependabot[bot]
d75bc2fd14 Bump @rails/webpacker from 5.3.0 to 5.4.0
Bumps [@rails/webpacker](https://github.com/rails/webpacker) from 5.3.0 to 5.4.0.
- [Release notes](https://github.com/rails/webpacker/releases)
- [Changelog](https://github.com/rails/webpacker/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/webpacker/compare/v5.3.0...v5.4.0)

---
updated-dependencies:
- dependency-name: "@rails/webpacker"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-22 09:06:37 +00:00
dependabot[bot]
6e88090b89 Bump rubocop-rails from 2.10.1 to 2.11.0
Bumps [rubocop-rails](https://github.com/rubocop/rubocop-rails) from 2.10.1 to 2.11.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.10.1...v2.11.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-22 09:03:42 +00:00
dependabot[bot]
cfb81d7f94 Bump webpacker from 5.3.0 to 5.4.0
Bumps [webpacker](https://github.com/rails/webpacker) from 5.3.0 to 5.4.0.
- [Release notes](https://github.com/rails/webpacker/releases)
- [Changelog](https://github.com/rails/webpacker/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/webpacker/compare/v5.3.0...v5.4.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-22 09:02:36 +00:00
Maikel Linke
a6753b832c Add example script for importing customers 2021-06-22 13:46:34 +10:00
Transifex-Openfoodnetwork
2eb67cf61b Updating translations for config/locales/de_DE.yml 2021-06-22 07:46:31 +10:00
Andy Brett
fea5c27437 Merge pull request #7775 from Matt-Yorkley/webpacker
Add Webpacker
2021-06-21 11:15:28 -07:00
Andy Brett
9db14a5e8c Merge pull request #7815 from Matt-Yorkley/dev-retries
Move Rspec retries count to CI config and remove in local environment
2021-06-21 09:09:44 -07:00
Matt-Yorkley
99035a250b Move Rspec retries count to CI config and remove in local environment
When running tests locally we want them to fail immediately

Reference: https://github.com/NoRedInk/rspec-retry#environment-variables
2021-06-21 11:21:11 +01:00
Transifex-Openfoodnetwork
27c6a842bd Updating translations for config/locales/es.yml 2021-06-21 18:41:34 +10:00
Transifex-Openfoodnetwork
3cb6f77cbb Updating translations for config/locales/ca.yml 2021-06-21 18:41:21 +10:00
Pau Perez
475474b179 Replace order reloads with association set up 2021-06-21 10:30:12 +02:00
Pau Perez
073c4bc1ae Reload order so line items are visible in spec 2021-06-21 10:30:12 +02:00
Pau Perez
e052f36cc6 Rubocop -a 2021-06-21 10:30:12 +02:00
Pau Perez
827faef690 Fix call to #record_and_log_error 2021-06-21 10:30:12 +02:00
Pau Perez
b69aeae892 Rename PlaceOrder to PlaceProxyOrder
As discussed in
https://github.com/openfoodfoundation/openfoodnetwork/pull/7281#discussion_r650183813.
2021-06-21 10:30:12 +02:00
Pau Perez
f92ca964db Improve service name
As discussed in
https://github.com/openfoodfoundation/openfoodnetwork/pull/7281#discussion_r650069982.
2021-06-21 10:30:12 +02:00
Transifex-Openfoodnetwork
030ad350b6 Updating translations for config/locales/en_GB.yml 2021-06-21 18:17:46 +10:00
Pau Perez
8bcb19f293 Split method into higher-level smaller methods 2021-06-21 09:49:07 +02:00
Pau Perez
f61cdb6608 Extract CapQuantityAndStoreChanges service
This is a responsiblity of its own that makes the job's tests really
complex.
2021-06-21 09:49:07 +02:00
Pau Perez
431f30bb52 Fix proxy_order.placed_at test and deal with time
Relying on Rails' `freeze_time` is much more reliable than this brittle
magic number. It turns out Timecop is not needed for this case anymore.
See
https://frontdeveloper.pl/2020/03/how-we-migrated-from-timecop-to-built-in-rails-5-2-time-helpers/.
2021-06-21 09:47:49 +02:00
Pau Perez
f785851236 Use time with zone 2021-06-21 09:47:49 +02:00
Pau Perez
fcb013eb2a Extract subs placement job logic into new service
While doing that we pass stock changes to the service but we
lazy-evaluate them. This way we don't fetch all this data from DB when
it might not be used due to an early return.

Also, this makes it possible to save the stock-related logic for later.

Finally, when changing things to rely on `#initialize_order`'s boolean
return value I noticed though, that we were evaluating
`proxy_order.order` too early.  When instantiating the service object it
won't exist yet.
2021-06-21 09:47:49 +02:00
Transifex-Openfoodnetwork
5ff13b6e3e Updating translations for config/locales/en_FR.yml 2021-06-21 17:28:50 +10:00
Transifex-Openfoodnetwork
3e0ff968bd Updating translations for config/locales/fr.yml 2021-06-21 17:26:28 +10:00
Matt-Yorkley
6c3c46b0f5 Add foreman and Procfile 2021-06-19 17:51:18 +01:00
Matt-Yorkley
0acd4fc9a1 Change Webpacker default path name
In the current version of Webpacker all assets are kept under a new path called `app/javascript`. This is a really stupid name, as it can contain all kinds of assets that are *not* javascript at all, like SCSS. It's common practise to rename this to something sensible like `app/webpacker` or `app/frontend`...
2021-06-19 17:51:18 +01:00
Matt-Yorkley
a074f627b2 Add Webpacker
Most of this is automatically generated by the rake task: `bundle exec rake webpacker:install`

Docs: https://github.com/rails/webpacker/tree/5-x-stable
2021-06-19 17:51:18 +01:00
Andy Brett
3d65929a74 Merge pull request #7808 from mkllnk/sass-gem
Remove explicit dependency on sass gem
2021-06-19 09:05:21 -07:00
Transifex-Openfoodnetwork
d89a0e2cd9 Updating translations for config/locales/en_CA.yml 2021-06-19 02:05:04 +10:00
Pau Perez
198d4be18f Update all locales with the latest Transifex translations 2021-06-18 18:05:03 +02:00
Transifex-Openfoodnetwork
ecad6c1982 Updating translations for config/locales/ru.yml 2021-06-19 01:41:57 +10:00
Pau Pérez Fabregat
42e26f3328 Merge pull request #7708 from andrewpbrett/payment-states
Add `requires_authorization` Payment state
2021-06-18 17:04:03 +02:00
Pau Perez
cb23cda9e9 Update all locales with the latest Transifex translations 2021-06-18 15:05:26 +02:00
Transifex-Openfoodnetwork
4255dd9141 Updating translations for config/locales/es.yml 2021-06-18 22:57:08 +10:00
Transifex-Openfoodnetwork
654bde6207 Updating translations for config/locales/ca.yml 2021-06-18 22:56:45 +10:00
Pau Pérez Fabregat
4ecbf51b33 Merge pull request #7802 from Matt-Yorkley/confirmation-mails
Add a delay on sending order confirmation emails
2021-06-18 12:27:24 +02:00
Pau Pérez Fabregat
837e65d72a Merge pull request #7792 from openfoodfoundation/dependabot/npm_and_yarn/postcss-7.0.36
Bump postcss from 7.0.35 to 7.0.36
2021-06-18 12:24:33 +02:00
Pau Pérez Fabregat
aa9a85159e Merge pull request #7806 from mkllnk/feature-toggles
Remove custom feature toggles
2021-06-18 12:23:21 +02:00
Pau Pérez Fabregat
db993652c4 Merge branch 'master' into payment-states 2021-06-18 12:20:26 +02:00
Pau Pérez Fabregat
b500486f6b Merge pull request #7211 from jibees/4207-add-query-params-in-url
Orders list : save filters params
2021-06-18 11:19:26 +02:00
Pau Pérez Fabregat
11a7316b9d Merge pull request #7759 from apricot12/fix_duplicate_refund
Disable credit button on click
2021-06-18 09:27:45 +02:00
Pau Pérez Fabregat
75ed148490 Merge pull request #7803 from openfoodfoundation/transifex
Transifex
2021-06-18 09:26:47 +02:00
Transifex-Openfoodnetwork
2f82afcb07 Updating translations for config/locales/en_FR.yml 2021-06-18 16:58:14 +10:00
Transifex-Openfoodnetwork
fcf6f1929b Updating translations for config/locales/fr.yml 2021-06-18 16:58:00 +10:00
Pau Pérez Fabregat
6f90a7b07f Merge pull request #7720 from luisramos0/rubocop_auto_correct
Executed rubocop autocorrect (-a for safe corrections plus adding frozen_string_literal comment to all files)
2021-06-18 08:48:03 +02:00
Transifex-Openfoodnetwork
36fa34a39e Updating translations for config/locales/es.yml 2021-06-18 16:44:01 +10:00
Transifex-Openfoodnetwork
d516b1d885 Updating translations for config/locales/ca.yml 2021-06-18 16:43:55 +10:00
Maikel Linke
2027590a8a Remove explicit dependency on sass gem
We still depend on it via compass and foundation-rails but it's not
explicit any more.

The sass gem has been deprecated in favour of the faster sassc gem.
But sassc has been deprecated in favour of dart-sass which is an npm
package.

https://github.com/sass/ruby-sass#ruby-sass-has-reached-end-of-life
https://github.com/sass/sassc#sassc

This is confusing but we don't have to worry about it because it's not
a direct dependency and other gems can solve the dependency selection
for us, I think. 😄
2021-06-18 15:49:43 +10:00
Maikel Linke
2c8bead8a0 Add convenience script to update Ruby 2021-06-18 15:13:00 +10:00
Andy Brett
d9aa1b054a update payments to be in requires_authorization state in specs 2021-06-17 18:10:41 -07:00
Maikel Linke
a8eecf963d Remove unused custom FeatureToggle implementation
Flipper is now our only source of truth regarding feature toggles.
2021-06-18 10:46:51 +10:00
Maikel Linke
bba85e5e79 Remove feature toggling via ENV vars
We don't use ENV vars for feature toggles any more. Flipper is much
easier to manage.
2021-06-18 10:46:51 +10:00
Maikel Linke
a712f254e0 Remove Australian custom homepage content
This was activated with a feature toggle. But when we re-implemented the
feature toggles, we accidentally broke this one and it hasn't been
active for two months. Nobody complained and it doesn't seem to be
needed while developers are keen to remove instance-specific
customisations anyway.
2021-06-18 10:46:50 +10:00
Luis Ramos
5a05a21dad Revert to false so strings can be mutated in this class 2021-06-17 23:07:54 +01:00
Luis Ramos
f95b0e3c54 Revert frozen string literal comment in codecov config 2021-06-17 23:07:41 +01:00
Luis Ramos
755222a35d Revert to false so strings can be mutated in this class 2021-06-17 23:07:35 +01:00
Luis Ramos
e52937c113 Use rubocop auto correct to add frozen string literal to all files
This is an unsafe auto corection, we will need to trust our build here
2021-06-17 23:07:26 +01:00
Luis Ramos
4fe9a936f0 Regenerate rubocop_todo 2021-06-17 22:32:59 +01:00
Luis Ramos
a253228b96 Add some rubocop disable commands in the code to avoid future wrong rubocop auto corrections 2021-06-17 22:26:54 +01:00
Andy Brett
b41302d5d8 update state transitions for new requires_authorization state 2021-06-17 14:23:59 -07:00
Andy Brett
dd0375aed4 clear authorization url after failing the payment 2021-06-17 14:23:59 -07:00
Andy Brett
d3cca04703 update spec 2021-06-17 14:23:59 -07:00
Andy Brett
3e32abe64f add colors and translations for requires_authorization state 2021-06-17 14:23:59 -07:00
Andy Brett
dc1a24339c update can_resend_auth_email 2021-06-17 14:23:59 -07:00
Andy Brett
95f123d137 update success response in payment spec 2021-06-17 14:23:59 -07:00
Andy Brett
b016337d4f add requires_authorization as a possible payment_state on Orders 2021-06-17 14:23:59 -07:00
Andy Brett
24a60cd108 add translation key 2021-06-17 14:23:59 -07:00
Andy Brett
2699e17b63 update specs to create payment in requires_authorization state 2021-06-17 14:23:59 -07:00
Andy Brett
527f4e2cb3 move payment to requires_authorization if cvv_result is present 2021-06-17 14:23:59 -07:00
Andy Brett
a6cec20056 update success_response in payment_spec 2021-06-17 14:23:59 -07:00
Andy Brett
31738ceb49 rename and consolidate authorization? methods 2021-06-17 14:23:59 -07:00
Andy Brett
674ca3026b change states after failure/requiring auth 2021-06-17 14:23:58 -07:00
Andy Brett
a3d9f1f3cc create requires_authorization payment state and migration 2021-06-17 14:23:58 -07:00
Andy Brett
4d2235c9cc Merge pull request #7794 from openfoodfoundation/dependabot/bundler/bigdecimal-3.0.2
Bump bigdecimal from 1.4.2 to 3.0.2
2021-06-17 14:21:55 -07:00
Luis Ramos
de76a1d41e Manually fix rubocop issue (unsafe auto correct would be wrong) 2021-06-17 22:20:28 +01:00
Luis Ramos
23627c5453 Run rubocop -a (safe corrections) removing all exceptions so all possible fixes are applied
9290 issues fixed
2021-06-17 22:19:26 +01:00
Andy Brett
5a25de1c82 Merge pull request #7760 from apricot12/remove_unused_partial_paypal
Remove unused partial paypal
2021-06-17 13:21:33 -07:00
Andy Brett
355b5ab56f Merge pull request #7788 from jibees/5735-flaky-spec-on-variant-override
Uncomment flaky (?) spec
2021-06-17 12:55:16 -07:00
Andy Brett
bcd0173ed0 Merge pull request #7305 from cillian/add-distributor-to-shipment-email
Add enterprise name to subject and body of shipment shipped email
2021-06-17 12:53:09 -07:00
Andy Brett
7c694e3cf3 Merge pull request #7771 from openfoodfoundation/dependabot/bundler/activemerchant-1.121.0
Bump activemerchant from 1.120.0 to 1.121.0
2021-06-17 12:52:21 -07:00
Jean-Baptiste Bellet
89ea9913e6 Checkbox is correctly handled with null value (and not false)
- It's better to read the comment juste below the line... 😠 (https://github.com/openfoodfoundation/openfoodnetwork/pull/3076#issuecomment-440010498)
 - Add appropriate spec so it is now correctly tested!
2021-06-17 21:40:25 +02:00
Matt-Yorkley
c821380ff1 Merge pull request #7749 from apricot12/remove_paypal_refund_button
Remove refund button from paypal completed order tab
2021-06-17 21:37:51 +02:00
Guido Oliveira
0f2fd47ca0 Fix supplier loader issue in enterprise controller 2021-06-17 13:57:19 -03:00
Guido Oliveira
92031120e3 Create service for select2 autocomplete 2021-06-17 13:54:18 -03:00
Matt-Yorkley
e4e84b0a86 Remove old warning on BigDecimal gem 2021-06-17 16:05:12 +01:00
Matt-Yorkley
a7d873356d Fix shady use of BigDecimal 2021-06-17 15:51:06 +01:00
Matt-Yorkley
148349f0f3 Ignore potential error where default tax rate is nil
If the current tax rates are badly *misconfigured*, and an included-tax rate is being applied but a *default* rate does not exist (there are validations to stop this case from occurring, see DefaultTaxZoneValidator), this line can throw an error. This situation will not actually arise in production, but can happen fairly easily in dev or with staging data when switching datasets, and when it does it's kind of annoying.

Note: the logic in the check here is still good; if there's no default tax rate we check if the order's tax zone matches the zone for the current tax rate, which is correct.
2021-06-17 12:47:41 +01:00
Transifex-Openfoodnetwork
ba7b53051a Updating translations for config/locales/es.yml 2021-06-17 20:30:36 +10:00
Transifex-Openfoodnetwork
5803c0fe50 Updating translations for config/locales/fr.yml 2021-06-17 20:27:31 +10:00
Transifex-Openfoodnetwork
2e701656d2 Updating translations for config/locales/en_US.yml 2021-06-17 20:27:29 +10:00
Pau Pérez Fabregat
a8efbffca6 Merge pull request #7429 from Matt-Yorkley/adjustments-taxrate
[Adjustments] TaxRate changes
2021-06-17 11:51:01 +02:00
Pau Pérez Fabregat
ef724d2de8 Merge pull request #7758 from jibees/7710-manage-comma-as-decimal-separator-in-unit-value-field
[UnitPrice] Manage comma as decimal separator in unit value field
2021-06-17 11:46:22 +02:00
Matt-Yorkley
bb848811e6 Add a delay on sending order confirmation emails
There's a race condition here that means the order's address is not always present when the email is first sent, but it *is* present shortly after. The fix in this commit is a temporary solution.
2021-06-17 09:35:25 +01:00
François Turbelin
7f0c5b8a7a Fix controller specs with be_successful 2021-06-17 09:43:17 +02:00
Matt-Yorkley
6ebc6bcd6f Merge pull request #7797 from luisramos0/bundler
Upgrade to bundler 2
2021-06-17 09:18:13 +02:00
François Turbelin
bcd2790649 Fix failing spec 2021-06-17 09:18:05 +02:00
François Turbelin
7918c2f37c Cosmetics 2021-06-17 08:50:52 +02:00
François Turbelin
1ef7247311 Use a service to fetch variants in the engine 2021-06-17 08:50:52 +02:00
François Turbelin
235a2574dc Add spec for SuppliedProduct serializer 2021-06-17 08:50:52 +02:00
François Turbelin
4dc07d9872 Add spec for CatalogItem serializer 2021-06-17 08:50:52 +02:00
François Turbelin
a87c46843c Factorize serializer code into Base inherited class 2021-06-17 08:50:52 +02:00
François Turbelin
7ff69d5e6d Fix entreprise missing issue on Persons controller 2021-06-17 08:50:52 +02:00
dependabot[bot]
9653b0a965 Bump activemerchant from 1.120.0 to 1.121.0
Bumps [activemerchant](https://github.com/activemerchant/active_merchant) from 1.120.0 to 1.121.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.120.0...v1.121.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-17 00:26:49 +00:00
Andy Brett
aca3a76854 Merge pull request #7793 from openfoodfoundation/dependabot/bundler/ransack-2.4.2
Bump ransack from 2.4.1 to 2.4.2
2021-06-16 17:12:17 -07:00
Andy Brett
d38cf1da1f Merge pull request #7795 from openfoodfoundation/dependabot/bundler/rubocop-1.17.0
Bump rubocop from 1.16.1 to 1.17.0
2021-06-16 17:10:48 -07:00
Luis Ramos
a226aedaec Upgrade to bundler 2 2021-06-16 21:50:01 +01:00
Guido Oliveira
baca89c575 allow select producers for ordering 2021-06-16 15:02:27 -03:00
Guido Oliveira
c5471fc25c enable ordering shopfront by producer id 2021-06-16 15:02:27 -03:00
dependabot[bot]
b39ed424f6 Bump rubocop from 1.16.1 to 1.17.0
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.16.1 to 1.17.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.16.1...v1.17.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-16 05:20:57 +00:00
dependabot[bot]
e4cf6421bd Bump bigdecimal from 1.4.2 to 3.0.2
Bumps [bigdecimal](https://github.com/ruby/bigdecimal) from 1.4.2 to 3.0.2.
- [Release notes](https://github.com/ruby/bigdecimal/releases)
- [Changelog](https://github.com/ruby/bigdecimal/blob/v3.0.2/CHANGES.md)
- [Commits](https://github.com/ruby/bigdecimal/compare/v1.4.2...v3.0.2)

---
updated-dependencies:
- dependency-name: bigdecimal
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-16 05:18:50 +00:00
dependabot[bot]
0776fcf5cc Bump ransack from 2.4.1 to 2.4.2
Bumps [ransack](https://github.com/activerecord-hackery/ransack) from 2.4.1 to 2.4.2.
- [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/2.4.1...v2.4.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-16 05:17:11 +00:00
Andy Brett
59358443b4 Merge pull request #7786 from andrewpbrett/add-web-console
Add web-console gem for debugging in development
2021-06-15 13:10:25 -07:00
Andy Brett
c4911b1947 add web console for debugging in development 2021-06-15 13:00:22 -07:00
dependabot[bot]
6c24d4bc1a Bump postcss from 7.0.35 to 7.0.36
Bumps [postcss](https://github.com/postcss/postcss) from 7.0.35 to 7.0.36.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/7.0.35...7.0.36)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-15 19:08:24 +00:00
Matt-Yorkley
8753076dcd Merge pull request #7737 from luisramos0/ruby273
Upgrade to ruby 2.7.3
2021-06-15 21:07:38 +02:00
Jean-Baptiste Bellet
7f5e58bcc3 Uncomment flaky (?) spec 2021-06-15 13:51:40 +02:00
Maikel
d839313cf5 Merge pull request #7782 from openfoodfoundation/dependabot/bundler/redis-4.3.1
Bump redis from 4.2.5 to 4.3.1
2021-06-15 17:17:59 +10:00
Pau Pérez Fabregat
f51f304818 Merge pull request #7778 from openfoodfoundation/transifex
Transifex
2021-06-15 09:12:11 +02:00
Transifex-Openfoodnetwork
7f09fd4c19 Updating translations for config/locales/en_US.yml 2021-06-15 10:23:53 +10:00
Andy Brett
87692b06e6 remove deprecated update_attributes method call 2021-06-14 15:13:51 -07:00
Andy Brett
b8617e0a5a Merge pull request #7783 from openfoodfoundation/dependabot/npm_and_yarn/karma-6.3.4
Bump karma from 6.3.3 to 6.3.4
2021-06-14 09:18:55 -07:00
Transifex-Openfoodnetwork
6701afcdce Updating translations for config/locales/en_GB.yml 2021-06-14 18:10:03 +10:00
dependabot[bot]
fbf0e48a07 Bump karma from 6.3.3 to 6.3.4
Bumps [karma](https://github.com/karma-runner/karma) from 6.3.3 to 6.3.4.
- [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.3...v6.3.4)

---
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-14 06:57:07 +00:00
dependabot[bot]
e4087e9c65 Bump redis from 4.2.5 to 4.3.1
Bumps [redis](https://github.com/redis/redis-rb) from 4.2.5 to 4.3.1.
- [Release notes](https://github.com/redis/redis-rb/releases)
- [Changelog](https://github.com/redis/redis-rb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/redis/redis-rb/compare/v4.2.5...v4.3.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-14 06:05:07 +00:00
Andy Brett
c790373804 resolve gemfile conflict 2021-06-13 18:29:57 -07:00
Luis Ramos
43401e4b5e Fix double spree scope in i18n
Fix taken from spree: efba9f1a02
2021-06-13 18:19:29 -07:00
Luis Ramos
5948c20326 Fix spec by adding mocked response 2021-06-13 18:19:29 -07:00
Luis Ramos
74aabbbb5f Upgrade to rails 6.1 2021-06-13 18:19:26 -07:00
Nihal Mohammed
522a7384e7 Fix HTML bug on new payment method page and update providers_controller spec 2021-06-12 01:47:08 +05:30
Andy Brett
0eea932778 Merge pull request #7757 from openfoodfoundation/dependabot/bundler/acts-as-taggable-on-8.0.0
Bump acts-as-taggable-on from 7.0.0 to 8.0.0
2021-06-11 07:39:57 -07:00
Jean-Baptiste Bellet
db8f8a2675 Create internal methods with regexp test
- Make it more easily readable and add unit tests
2021-06-11 10:40:02 +02:00
Transifex-Openfoodnetwork
3ef5953db2 Updating translations for config/locales/en_FR.yml 2021-06-11 18:38:36 +10:00
Transifex-Openfoodnetwork
586c97b22c Updating translations for config/locales/fr.yml 2021-06-11 18:37:04 +10:00
Transifex-Openfoodnetwork
d54cb9182f Updating translations for config/locales/ca.yml 2021-06-11 18:19:44 +10:00
Transifex-Openfoodnetwork
3257f16667 Updating translations for config/locales/es.yml 2021-06-11 18:17:41 +10:00
Jean-Baptiste Bellet
178c0a441b Move unlocalize_currency filter to a PriceParser service
- It's no longer a filter but more a service: it's therefore more logic.
2021-06-11 10:01:19 +02:00
Maikel Linke
4faf76794d Update translations from Transifex 2021-06-11 09:44:47 +10:00
Maikel
56570ec604 Merge pull request #7755 from openfoodfoundation/transifex
Transifex
2021-06-11 09:41:22 +10:00
Andy Brett
4047f135f7 Merge pull request #7747 from openfoodfoundation/dependabot/bundler/pdf-reader-2.5.0
Bump pdf-reader from 2.4.2 to 2.5.0
2021-06-10 14:49:35 -07:00
Matt-Yorkley
690cbe3ad3 Merge pull request #7468 from mkllnk/6328-tos-tracking
6328 tos tracking
2021-06-10 19:48:13 +02:00
Matt-Yorkley
04e76ed506 Merge pull request #7776 from openfoodfoundation/dependabot/npm_and_yarn/ssri-6.0.2
Bump ssri from 6.0.1 to 6.0.2
2021-06-10 19:45:00 +02:00
Andy Brett
d22f807084 Merge pull request #7773 from Matt-Yorkley/rspec-retries
Set Capybara retry count to 3 and remove conditional
2021-06-10 09:52:50 -07:00
Andy Brett
75440856af Merge pull request #7770 from openfoodfoundation/dependabot/bundler/rubocop-1.16.1
Bump rubocop from 1.16.0 to 1.16.1
2021-06-10 09:51:35 -07:00
dependabot[bot]
c614b92c5f Bump ssri from 6.0.1 to 6.0.2
Bumps [ssri](https://github.com/npm/ssri) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/npm/ssri/releases)
- [Changelog](https://github.com/npm/ssri/blob/v6.0.2/CHANGELOG.md)
- [Commits](https://github.com/npm/ssri/compare/v6.0.1...v6.0.2)

---
updated-dependencies:
- dependency-name: ssri
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-10 16:51:16 +00:00
Andy Brett
84e3db30f1 Merge pull request #7772 from openfoodfoundation/dependabot/bundler/view_component-2.34.0
Bump view_component from 2.33.0 to 2.34.0
2021-06-10 09:50:42 -07:00
Matt-Yorkley
937cede9b8 Fix tax adjustment label
:amount is actually a property on the TaxRate object itself that refers to the rate (eg 10% expressed as 0.10), and is not the same as the adjustment amount being passed in to this method (eg: $4.28)
2021-06-10 17:16:45 +01:00
Matt-Yorkley
50b5fc7545 Set Capybara retry count to 3 and remove conditional
This is a slippery slope and there's perfectly reasonable arguments against doing this, but on a practical level I think retrying the occasional flaky spec (and adding an extra 10 seconds or so on to the build time) is categorically better than failing the build and having to restart the whole thing (potentially multiple times).
2021-06-10 11:39:05 +01:00
Matt-Yorkley
f36c01abf6 Merge pull request #7765 from mkllnk/7764-heartbeat-job
Avoid false alarms due to delayed HeartbeatJob
2021-06-10 11:15:42 +02:00
dependabot[bot]
d259771ce9 Bump view_component from 2.33.0 to 2.34.0
Bumps [view_component](https://github.com/github/view_component) from 2.33.0 to 2.34.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.33.0...v2.34.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-10 05:11:51 +00:00
dependabot[bot]
9fd0b096bd Bump rubocop from 1.16.0 to 1.16.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.16.0 to 1.16.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.16.0...v1.16.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-10 05:07:28 +00:00
Transifex-Openfoodnetwork
1bbc765028 Updating translations for config/locales/ru.yml 2021-06-10 05:21:49 +10:00
Transifex-Openfoodnetwork
a232722f64 Updating translations for config/locales/ru.yml 2021-06-10 05:18:45 +10:00
Andy Brett
2c1ffa929c Merge pull request #7766 from mkllnk/schema
Update schema file description
2021-06-09 08:45:06 -07:00
Andy Brett
2b66d270c0 Merge pull request #7704 from coopdevs/drop-master-variant-leftovers
Drop product.price from /api/order_cycles/:id/products
2021-06-09 08:20:44 -07:00
Transifex-Openfoodnetwork
0e19232f45 Updating translations for config/locales/ca.yml 2021-06-09 17:22:50 +10:00
Transifex-Openfoodnetwork
f4d9e8e520 Updating translations for config/locales/es.yml 2021-06-09 17:22:39 +10:00
Transifex-Openfoodnetwork
d0041334fa Updating translations for config/locales/en_FR.yml 2021-06-09 16:42:33 +10:00
Transifex-Openfoodnetwork
3b68d8a94e Updating translations for config/locales/fr.yml 2021-06-09 16:41:46 +10:00
Maikel Linke
fc8e22b82e Update schema file description
I ran `rake db:migrate` and Rails updated this section. Let's use or we
have to constantly checkout the schema after migrations or we'll have
unrelated changes in future pull requests.
2021-06-09 16:02:05 +10:00
Maikel
6caae9e886 Merge pull request #7694 from coopdevs/split-confirm-order-job
Split ConfirmOrderJob to avoid blocking DJ worker
2021-06-09 14:11:10 +10:00
Andy Brett
d145d3a8ec add create/delete specs for admin and non-admin users 2021-06-09 14:06:55 +10:00
Andy Brett
d4e9c0afdc spec TOS service object 2021-06-09 14:06:55 +10:00
Andy Brett
e0cdf4ff49 refactor to TOS service 2021-06-09 14:06:54 +10:00
Andy Brett
a4bb697787 add spec for trying to create TOS with no file 2021-06-09 14:06:54 +10:00
Maikel Linke
3e2f81d640 Add helper to view spec needing it 2021-06-09 14:06:54 +10:00
Andy Brett
768c56400c add TOS helper to application_controller.rb 2021-06-09 14:06:54 +10:00
Maikel Linke
af314cbbdf Allow fast checkout without re-accepting old terms
We did that for the shop's terms already and now do it for the platform
terms as well.
2021-06-09 14:06:54 +10:00
Maikel Linke
17a3d23d68 Handle user clicking upload button early 2021-06-09 14:06:54 +10:00
Maikel Linke
e3be519b25 Style TOS page to be usable
It's not pretty but only used by instance managers, very rarely.
2021-06-09 14:06:54 +10:00
Maikel Linke
51ad8f8065 Remove old UI to edit Terms of service
It's now completely replaced by file uploads on a separate page.
2021-06-09 14:06:54 +10:00
Maikel Linke
960b829ece Link to last uploaded Terms of service 2021-06-09 14:06:54 +10:00
Maikel Linke
23999c96bf Unify all links to platform Terms of service
DRY code and have more consistency. We always use "Terms of service" now
and not "Terms of Service" or "Terms and conditions". The latter is used
for the shop's terms, not the platform terms.
2021-06-09 14:06:54 +10:00
Maikel Linke
3b3ba70670 Safeguard deletion of ToS with alert 2021-06-09 14:06:54 +10:00
Maikel Linke
690118c2bd Add delete method to terms of service files 2021-06-09 14:06:54 +10:00
Maikel Linke
3bee9cb951 Add Rails action #new to ToS 2021-06-09 14:06:54 +10:00
Maikel Linke
abe76ccf0f Add upload of Terms of Service files
Admins can upload files and view the most recent (current) one.
2021-06-09 14:06:54 +10:00
Maikel Linke
ed4f61acd7 Add title to TOS config page 2021-06-09 14:06:53 +10:00
Maikel Linke
007b8cd888 Add new admin page for TOS files
Just the basic Rails setup without any functionality yet.
2021-06-09 14:06:53 +10:00
Maikel Linke
1f63bb15eb Remove executable bit from spec 2021-06-09 14:06:53 +10:00
Maikel Linke
9027f8b604 Add attachment to TOS record 2021-06-09 14:06:53 +10:00
Maikel Linke
c4317c5707 Add model TermsOfServiceFile
We want to enable instance managers to upload TOS files.

I also added the rails_helper which is a new convention. It can contain
more Rails specific configuration we currently have in the spec_helper.
2021-06-09 14:06:09 +10:00
Maikel Linke
a0835eae54 Avoid false alarms due to delayed HeartbeatJob
When Sidekiq was restarted, the scheduler's time was reset and jobs were
executed later. Now we trigger the HeartbeatJob straight after a Sidekiq
boot and we shouldn't see any false alarms in our monitoring.
2021-06-09 12:05:18 +10:00
Maikel
2556921110 Merge pull request #7718 from openfoodfoundation/dependabot/bundler/sidekiq-scheduler-3.1.0
Bump sidekiq-scheduler from 3.0.1 to 3.1.0
2021-06-09 12:03:31 +10:00
Andy Brett
fcbe42f080 Merge pull request #7756 from openfoodfoundation/dependabot/bundler/ddtrace-0.50.0
Bump ddtrace from 0.49.0 to 0.50.0
2021-06-08 14:59:22 -07:00
Andy Brett
b6f6407c31 Merge pull request #7660 from jibees/7499-remove-feature-toggle-for-unit-price
Remove feature toggle around unit_price
2021-06-08 10:39:32 -07:00
Andy Brett
82ec04552c Merge pull request #7693 from andrewpbrett/add-password-translation
Add translation keys for password messages
2021-06-08 10:35:41 -07:00
Andy Brett
fe62a0a2a7 Merge pull request #7697 from jibees/7689-trigger-a-change-when-hour/minute-inputs-are-modified
Datetimepicker for order cycles: add keyup event listener on hour/minute inputs
2021-06-08 10:32:07 -07:00
Andy Brett
ba6ebdee15 Merge pull request #7686 from shen-sat/7470-add-delete-action-test-to-shipping-categories-controller-spec
[7470] Add delete action test to ShippingCategoriesController spec
2021-06-08 10:31:26 -07:00
Andy Brett
ede966f2d1 Merge pull request #7640 from apricot12/closed_OC_bheaviour
Checkout made to redirect to shop front when OC closed
2021-06-08 10:30:13 -07:00
Andy Brett
74d93e324c Merge pull request #7661 from romale/products_import_date_translation
Missed import_date translation key
2021-06-08 10:26:13 -07:00
dependabot[bot]
3ff60ede2a Bump stripe from 5.33.0 to 5.34.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.33.0 to 5.34.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.33.0...v5.34.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-08 17:06:20 +00:00
Andy Brett
37b3f7aa3f Merge pull request #7743 from openfoodfoundation/dependabot/bundler/test-unit-3.4.4
Bump test-unit from 3.4.2 to 3.4.4
2021-06-08 10:05:01 -07:00
Nihal Mohammed
3b73f72ac2 Show product variant SKU in Xero report 2021-06-08 19:53:55 +05:30
Nihal Mohammed
3b4baab01a Remove unused _paypal_complete partial 2021-06-08 16:31:26 +05:30
Matt-Yorkley
9921e9c72b Merge pull request #7754 from Matt-Yorkley/stripe-issues
Stripe 3DS issues
2021-06-08 11:33:54 +02:00
Nihal Mohammed
4476d7f69e Disable credit button on click 2021-06-08 14:41:25 +05:30
Jean-Baptiste Bellet
6cf0c73453 Use our unlocalizeCurrencyFilter to parse unit value field
- More tolerant (can handle `,` or `.` as decimal separator, remove thousands separator) to return a `number`
2021-06-08 10:55:43 +02:00
Jean-Baptiste Bellet
d3c2158121 Handle comma as decimal separator in the unit value field
- Add comma as a decimal separator in the regexp
 - Do not use parseFloat but our `unlocalizeCurrencyFilter` which is more tolerant
2021-06-08 09:51:30 +02:00
Jean-Baptiste Bellet
0cb2739139 Handle case when price is not a number
And return a `null` if so.
2021-06-08 09:46:24 +02:00
dependabot[bot]
0cca01345c Bump acts-as-taggable-on from 7.0.0 to 8.0.0
Bumps [acts-as-taggable-on](https://github.com/mbleigh/acts-as-taggable-on) from 7.0.0 to 8.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/v7.0.0...v8.0.0)

---
updated-dependencies:
- dependency-name: acts-as-taggable-on
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-08 05:12:23 +00:00
dependabot[bot]
6edb80ea29 Bump ddtrace from 0.49.0 to 0.50.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.49.0 to 0.50.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.49.0...v0.50.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-08 05:10:49 +00:00
Matt-Yorkley
15b386bce3 Set :execute_threed option to explicitly handle 3DS responses 2021-06-07 22:48:54 +01:00
Transifex-Openfoodnetwork
225edbf745 Updating translations for config/locales/fr_CA.yml 2021-06-08 07:13:36 +10:00
Transifex-Openfoodnetwork
e8fb5d39a1 Updating translations for config/locales/en_CA.yml 2021-06-08 06:39:23 +10:00
Matt-Yorkley
3544b7de7a Remove Stripe Decorator
The method being overridden here is the same in the upstream
2021-06-07 20:44:58 +01:00
Jean-Baptiste Bellet
e3f56556cf Remove feature toggle around unit_price and enable it 2021-06-07 20:53:45 +02:00
Matt-Yorkley
8e0a84a502 Merge pull request #7729 from Matt-Yorkley/delayed-cleanup
Delayed::Cleanup
2021-06-07 19:11:37 +02:00
Jean-Baptiste Bellet
3ebba9502a Handle more cases with decimal/thousands separator
- ',' or '.' can be used as decimal separator (defined in the application configuration)
 - Remove thousands separator if it's detected as so (use regexp to match)
2021-06-07 16:53:20 +02:00
Nihal Mohammed
a5190ec5d7 Remove refund button from paypal completed order tab 2021-06-07 16:07:31 +05:30
dependabot[bot]
90f1e3a80d Bump pdf-reader from 2.4.2 to 2.5.0
Bumps [pdf-reader](https://github.com/yob/pdf-reader) from 2.4.2 to 2.5.0.
- [Release notes](https://github.com/yob/pdf-reader/releases)
- [Changelog](https://github.com/yob/pdf-reader/blob/main/CHANGELOG)
- [Commits](https://github.com/yob/pdf-reader/compare/v2.4.2...v2.5.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-07 05:42:29 +00:00
Matt-Yorkley
5bfe079262 Update Xero Invoices test setup
Uses the new format of enterprise fee taxes
2021-06-06 20:20:41 +01:00
Matt-Yorkley
7b641ace23 Update Xero Invoices scopes for taxable fees
Taxable enterprise fee adjustments now have a tax_category
2021-06-06 20:20:41 +01:00
Matt-Yorkley
7bcb0bcaa8 Eager-load the adjustment's adjustable
Reduces the total migration time by ~15%. Requires including some more models, as order objects are now being eager-loaded as part of the polymorphic associations.
2021-06-06 20:20:41 +01:00
Matt-Yorkley
7ecd67a3fe Skip orphaned adjustments
There are a handful of enterprise fee adjustments on line items in production data where the line item has actually been deleted and no longer exists, but the fee adjustment is still in the database.
2021-06-06 20:20:41 +01:00
Matt-Yorkley
d9f459d94a Update db/migrate/20210406161242_migrate_enterprise_fee_tax_amounts.rb
Co-authored-by: Maikel <maikel@email.org.au>
2021-06-06 20:20:41 +01:00
Matt-Yorkley
76756923ba Use non-legacy-tax example in paypal items spec 2021-06-06 20:20:41 +01:00
Matt-Yorkley
401dd99225 Update stubbing of default country id in TaxRate tests 2021-06-06 20:20:41 +01:00
Matt-Yorkley
e21ef3f182 Add test coverage to #create_tax_charge! with legacy taxes 2021-06-06 20:20:41 +01:00
Matt-Yorkley
9e1d8ab369 Introduce legacy tax handing in Order::Updater whenever order totals change
This will remove legacy tax adjustments, recalculate any relevant taxes for items in the order and re-apply them in non-legacy tax adjustments
2021-06-06 20:20:41 +01:00
Matt-Yorkley
00988dc1e7 Use :order_with_totals factory in payments controller spec
This factory makes an order that actually has a line item 👍
2021-06-06 20:20:41 +01:00
Matt-Yorkley
7007de752d Update BulkLineItemsController spec now that taxes on enterprise fees are updated correctly
Tax on fees previously stayed the same unless the fees were deleted recreated from scratch, instead of updating when the fee amounts changed
2021-06-06 20:20:41 +01:00
Matt-Yorkley
832fbb7d5d Update data migration model definitions
The good_migrations gem was not working with polymorphic associations.
2021-06-06 20:18:05 +01:00
Matt-Yorkley
dc7c674a0e Switch to ApplicationRecord in migation spec
Fixes:

An error occurred while loading ./spec/migrations/migrate_enterprise_fee_tax_amounts_spec.rb.
Failure/Error: require_relative '../../db/migrate/20210406161242_migrate_enterprise_fee_tax_amounts'

TypeError:
  superclass mismatch for class Adjustment
# ./db/migrate/20210406161242_migrate_enterprise_fee_tax_amounts.rb:2:in `<class:MigrateEnterpriseFeeTaxAmounts>'
# ./db/migrate/20210406161242_migrate_enterprise_fee_tax_amounts.rb:1:in `<top (required)>'
# ./spec/migrations/migrate_enterprise_fee_tax_amounts_spec.rb:4:in `require_relative'
# ./spec/migrations/migrate_enterprise_fee_tax_amounts_spec.rb:4:in `<top (required)>'
# -e:1:in `<main>'
2021-06-06 20:18:05 +01:00
Matt-Yorkley
bfea47802e Move fee tax call outside of lock and simplify order updating 2021-06-06 20:18:05 +01:00
Matt-Yorkley
28ebb303af Simplify order interface 2021-06-06 20:17:03 +01:00
Matt-Yorkley
f20cf509d3 Add missing Spree translation 2021-06-06 20:17:03 +01:00
Matt-Yorkley
3f9a3b41da Refactor and improve EnterpriseFeeApplicator spec 2021-06-06 20:17:03 +01:00
Matt-Yorkley
38811b5a28 Add Bugsnag message if legacy taxes are used 2021-06-06 20:17:03 +01:00
Matt-Yorkley
f791f6fa20 Add test coverage to recalculating fees and taxes on completed orders 2021-06-06 20:17:03 +01:00
Matt-Yorkley
c84f9e56fb Tax enterprise fee adjustments when calling #recreate_all_fees! 2021-06-06 20:17:03 +01:00
Matt-Yorkley
355837547e Add test coverage for legacy additional taxes in OrderTaxAdjustmentsFetcher
OrderTaxAdjustmentsFetcher is used in various places to display the taxes on an order. This test validates that legacy taxes are still returned and displayed as normal.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
0f5c39317a Re-apply taxes in Admin::OrdersController#update
Ensures taxes are updated properly when hitting the "Update and Recalculate Fees" button on the order edit page.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
43877f4e34 Add unit tests for data migration 2021-06-06 20:16:03 +01:00
Matt-Yorkley
b427fd6876 Add data migration for enterprise fee tax amounts 2021-06-06 20:16:03 +01:00
Matt-Yorkley
a31487a86d Clear any legacy taxes when applying tax to an order
#create_tax_charge! adds tax (adjustments) to all taxable items on an order. If an order order has legacy taxes (lump-sum tax adjustments on the order object), we remove them here before re-applying taxes (using the new setup).
2021-06-06 20:16:03 +01:00
Matt-Yorkley
84a40e6ae0 Improve Order#enterpise_fee_tax 2021-06-06 20:16:03 +01:00
Matt-Yorkley
19f32b7825 Update checkout tax display test setup 2021-06-06 20:16:03 +01:00
Matt-Yorkley
93e422ec59 Update order fee tax test setup 2021-06-06 20:16:03 +01:00
Matt-Yorkley
6e9ae0b0db Update tax totals calculation in Order::Updater
Line items, shipments, and fees now all have taxes recorded in a uniform way, so we can drop more complexity here (and the number of queries).
2021-06-06 20:16:03 +01:00
Matt-Yorkley
a1438bdb3d Update enterprise fee tax adjustment specs 2021-06-06 20:16:03 +01:00
Matt-Yorkley
510f74f654 Update OrderTaxAdjustmentsFetcher
Taxes on Enterprise Fees are now recorded in proper tax adjustments, so they don't need special treatment.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
52452f7939 Update default tax calculator
Line items, shipments and fees can now all be calculated in the same way when applying tax.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
b3240f859a Add tax category id to adjustments 2021-06-06 20:16:03 +01:00
Matt-Yorkley
2de442f44d Move taxing of enterprise fees to TaxRate 2021-06-06 20:16:03 +01:00
Matt-Yorkley
c2211c501d Improve test setup in Xero Invoices spec 2021-06-06 20:16:03 +01:00
Matt-Yorkley
6c340f8ed4 Update SalesTax test setup 2021-06-06 20:16:03 +01:00
Matt-Yorkley
a22cc96ea5 Simplify DefaultTax calculator
This logic is handled in TaxRate and doesn't need to be duplicated here.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
8c9733d8da Remove included tax check from CalculatedAdjustments
This is handled in TaxRate now.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
ff9ad96b74 Update TaxRate specs 2021-06-06 20:16:03 +01:00
Matt-Yorkley
8479d4ff7c Update outdated calls to TaxRate#adjust in specs 2021-06-06 20:16:03 +01:00
Matt-Yorkley
d450aff607 Update Order#create_tax_charge!
TaxRate#adjust now handles individual items instead of the whole order 🎉 We can use this elsewhere too, for example to re-apply taxes on a single line item, we can do: Spree::TaxRate.adjust(order, [line_item])
2021-06-06 20:16:03 +01:00
Matt-Yorkley
1c28b9783f Bring in Spree::TaxRate test coverage 2021-06-06 20:16:03 +01:00
Matt-Yorkley
f92c082df8 Refactor tax adjustment create_label method 2021-06-06 20:16:03 +01:00
Matt-Yorkley
d69f714032 Bring in changes to TaxRate#adjust 2021-06-06 20:16:03 +01:00
Matt-Yorkley
50d0952dd5 Bring in TaxRate#potentially_applicable method and add eager-loading 2021-06-06 20:16:03 +01:00
Matt-Yorkley
82e38b0156 Merge pull request #7623 from Matt-Yorkley/order-contents
Use OrderContents to update line items
2021-06-05 17:11:45 +02:00
Luis Ramos
5453a1c0fa Adapt importer error to new ruby version 2.7 2021-06-04 22:42:27 +01:00
Luis Ramos
18231cd950 Adding bigdecimal to avoid errors with BigDecimal
v1.4.2 is the version that works for us, see here for more details: https://github.com/ruby/bigdecimal/issues/127
2021-06-04 22:42:27 +01:00
Luis Ramos
5629dfbe09 Fix warning: deprecated Object#=~ is called 2021-06-04 22:42:27 +01:00
Luis Ramos
21b80db0ee Fix json v1.8.6 common.rb warning
Using this patch https://github.com/flori/json/issues/399#issuecomment-734863279

We can upgrade to json v2 but to do that we need to switch from aws-sdk-v1 to aws-sdk-s3 first
2021-06-04 22:42:27 +01:00
Luis Ramos
c22799bda1 Replace gsub! with gsub so that strings are not modified 2021-06-04 22:42:22 +01:00
Luis Ramos
2b187c0547 Upgrade to ruby 2.7.3 2021-06-04 22:29:49 +01:00
Andy Brett
640aa11f3b Merge pull request #7744 from luisramos0/byebug
Move byebug to test gem group so we can use it in specs
2021-06-04 13:17:43 -07:00
Luis Ramos
b939a292df Move byebug to test gem group so we can use it in specs 2021-06-04 20:59:50 +01:00
Matt-Yorkley
099ef5d358 Add more explicit tests on updating shipping fees in Api::ShipmentsController 2021-06-04 18:19:27 +01:00
Guido Oliveira
65b760b119 Add validations to variant_override model 2021-06-04 14:11:22 -03:00
dependabot[bot]
6de0682439 Bump test-unit from 3.4.2 to 3.4.4
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.4.2 to 3.4.4.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.4.2...3.4.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-04 16:57:41 +00:00
Matt-Yorkley
efcf71fd2b Use OrderContents in cart spec test setups 2021-06-04 17:26:49 +01:00
Matt-Yorkley
acf7c0c4d8 Use :order_with_totals factory in CustomersController spec 2021-06-04 17:10:50 +01:00
Matt-Yorkley
443b180f32 Update order totals in :order_with_totals factory 2021-06-04 17:10:50 +01:00
Matt-Yorkley
3222d4980d Improve comment on #ensure_updated_shipments 2021-06-04 17:10:50 +01:00
Matt-Yorkley
e246eed99d Move #restart_chceckout_flow out of Order class 2021-06-04 17:10:50 +01:00
Matt-Yorkley
b69d61dd77 Remove #order_update! call from method used in order after_save callbacks
This method gets called twice every time we save a completed order, calling order_update! twice...
2021-06-04 17:10:50 +01:00
Matt-Yorkley
2d76c2730a Update shipment updating 2021-06-04 17:10:50 +01:00
Matt-Yorkley
6b364dc420 Update specs on shipping fee changes and mark as pending
The shipping fee and it's tax actually don't get updated correctly here (in master).
2021-06-04 17:10:50 +01:00
Matt-Yorkley
d5b20d5446 Add specs for Order#ensure_updated_shipments 2021-06-04 17:10:50 +01:00
Matt-Yorkley
05c001807e Add variant override specs for Stock::AvailabilityValidator 2021-06-04 17:10:50 +01:00
Matt-Yorkley
011da05712 Add more test coverage to OrderContents 2021-06-04 17:10:50 +01:00
Matt-Yorkley
2e96982e60 Refactor conditional
CartService#populate already returns the value of the #valid? method by default.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
6abe0b375c Refactor stock levels check in CartController 2021-06-04 17:10:50 +01:00
Matt-Yorkley
dc6be6f06b Don't resubmit the whole cart contents for no reason.
There's a couple of places where this was causing a cart update submission where it wasn't needed, eg the items had not actually changed. The conditional here was designed to stop that from happening, but it was actually passing every time (the conditional logic was not actually catching the case it was supposed to).

This is really expensive!
2021-06-04 17:10:50 +01:00
Matt-Yorkley
47e2976fd1 Update CartService specs 2021-06-04 17:10:50 +01:00
Matt-Yorkley
38ce9eb0c4 Update line item removal in CartService when the line item doesn't exist 2021-06-04 17:10:50 +01:00
Matt-Yorkley
3b52b173e8 Delete more dead code in CartService 2021-06-04 17:10:50 +01:00
Matt-Yorkley
b8ccee5f30 Simplify use of #to_i in variant data hash 2021-06-04 17:10:50 +01:00
Matt-Yorkley
0cfe7fdc45 Move required logic into OrderContents and improve spec 2021-06-04 17:10:50 +01:00
Matt-Yorkley
42ff2307fa Update specs that use removed #add_variant and #remove_variant methods in test setup 2021-06-04 17:10:50 +01:00
Matt-Yorkley
b25e7fcb89 Delete tests for removed Order #add_variant and #remove_variant methods 2021-06-04 17:10:50 +01:00
Matt-Yorkley
79aebed40e Bring OrderContents#update_cart tests from upstream and tidy up 2021-06-04 17:10:50 +01:00
Matt-Yorkley
f5c08baabb Use OrderContents in LineItemsController and move enterprise fee updating logic 2021-06-04 17:10:50 +01:00
Matt-Yorkley
a883b2cf63 Remove dead code CartService#cart_remove 2021-06-04 17:10:50 +01:00
Matt-Yorkley
398d4b2612 Tidy up public interface of CartService
We don't need this extra hash to be passed around
2021-06-04 17:10:50 +01:00
Matt-Yorkley
4a7c0e8297 Remove variant early if we're deleting them and they're already loaded 2021-06-04 17:10:50 +01:00
Matt-Yorkley
67df6728f6 Fix Order line items association definition
Populating the cart was throwing an "Association Mismatch" error D:
2021-06-04 17:10:50 +01:00
Matt-Yorkley
0178cd7530 Adapt OrderContents to allow use with frontend cart service and updating :max_quantity
The cart service and it's surrounding logic is a bit messy, as it jumps through hoops to add extra logic for the :max_quantity attribute used with the "group buy" feature.

This is the last bit of code where an order's line items could be changed where we were not using OrderContents.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
cb92231835 Clarify behavior via variable names
This is a small semantic thing to clarify that we're not adding to / incrementing the quantity here, we're setting it to the given value. In other places where we change line items on an order we are actually adding the given value to the existing quantity.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
6e8fd3c3f8 Simplify CartService interface
There's only one place this method is called, and the "overwrite" argument is always explicitly true. It doesn't need to be there if it's mandatory.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
6451ef173c Use OrderContents when removing line items with soft-deleted variants in CartService 2021-06-04 17:10:50 +01:00
Matt-Yorkley
7af5e8931f Adapt OrderContents for use with BulkLineItemsController#update 2021-06-04 17:10:50 +01:00
Matt-Yorkley
9045cc7d65 Use OrderContents in CartService for removing line items from cart 2021-06-04 17:10:50 +01:00
Matt-Yorkley
5ff8436c1a Adapt OrderContents#remove to allow deleting line item without passing a quantity 2021-06-04 17:10:50 +01:00
Matt-Yorkley
a5ccaf9595 Remove unnecessary code in BulkLineItemsController
This method isn't called from anywhere else
2021-06-04 17:10:50 +01:00
Matt-Yorkley
423c140670 Remove pointless currency code in Order and CartService
The currency will always be the currency of the variant, there's no need to pass this value around.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
e8ef183623 Delete dead code Order#set_variant_attributes 2021-06-04 17:10:50 +01:00
Matt-Yorkley
000e2c07f8 Use OrderContents in OrdersController 2021-06-04 17:10:50 +01:00
Matt-Yorkley
c1c69b00b4 Update order explicitly in OrderSyncer 2021-06-04 17:10:50 +01:00
Matt-Yorkley
d5edf03042 Update reports_spec test setup 2021-06-04 17:10:50 +01:00
Matt-Yorkley
305ac037fe Use OrderContents in customers controller spec 2021-06-04 17:10:50 +01:00
Matt-Yorkley
23910dbab4 Use OrderContents in BulkLineItemsController
We should move towards *all* operations on an order's line items being done exclusively through this service.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
632f4228f0 Bring in line item fetching refactor 2021-06-04 17:10:50 +01:00
Matt-Yorkley
1268cb565c Extract method 2021-06-04 17:10:50 +01:00
Matt-Yorkley
c55e47f6af Remove superfluous updates in OrderFeesHandler 2021-06-04 17:10:50 +01:00
Matt-Yorkley
03fc63ad14 Remove #order_update! from line item after_save callback 2021-06-04 17:10:50 +01:00
Matt-Yorkley
a124141537 Move Shipment#line_items to private 2021-06-04 17:10:50 +01:00
Matt-Yorkley
0fabb5bc2f Don't pluck variant_ids multiple times (once for each line item) 2021-06-04 17:10:50 +01:00
Matt-Yorkley
1fff81c214 Remove call to OrderInventory#verify
This already gets called in after_save and after_destroy in Spree::LineItem.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
67264c047f Delete dead code #editable_by?
This is junk Spree code from 2010. 11 years old! The method that previous called this was removed long ago...
2021-06-04 17:10:50 +01:00
Matt-Yorkley
34eaf6f0f2 DRY shipment updating 2021-06-04 17:10:50 +01:00
Matt-Yorkley
8405a7672d Bring in shipment updating 2021-06-04 17:10:50 +01:00
Matt-Yorkley
66a3246a23 Move order updating 2021-06-04 17:10:50 +01:00
Matt-Yorkley
34482f6710 Bring OrderContents#update_cart from Spree 2.2 2021-06-04 17:10:50 +01:00
Matt-Yorkley
f550d1e9f3 Bring Order#ensure_updated_shipments from Spree 2.2 2021-06-04 17:10:50 +01:00
Matt-Yorkley
d99e598e7a Delete dead code in CartController
The two conditionals in #populate_variant_attributes here are never actually true, so the subsequent code paths are never reached.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
eb59b691d8 Move hash parsing outside of order lock 2021-06-04 17:10:50 +01:00
Matt-Yorkley
d5d76d9b9a Move private controller methods to private 2021-06-04 17:10:50 +01:00
Andy Brett
3c933befbb Merge pull request #7607 from luisramos0/rails6_select2_upgrade
[Rails 6.1] Upgrade thor
2021-06-04 07:45:47 -07:00
Andy Brett
fc4a40ec8b Merge pull request #7668 from openfoodfoundation/dependabot/bundler/stripe-5.33.0
Bump stripe from 5.32.1 to 5.33.0
2021-06-04 07:45:02 -07:00
Andy Brett
d197b81351 Merge pull request #7606 from luisramos0/deprecation
[Rails 6.1] Fix deprecation warning in rails 6.0
2021-06-04 07:42:50 -07:00
Andy Brett
b1f619a90a Merge pull request #7715 from openfoodfoundation/dependabot/bundler/activemerchant-1.120.0
Bump activemerchant from 1.119.0 to 1.120.0
2021-06-04 07:40:24 -07:00
Andy Brett
f70c1f0644 Merge pull request #7611 from luisramos0/rails61_arel
[Rails 6.1] Adapt code to circunvent security constraint on rails 6.1
2021-06-04 07:36:23 -07:00
Andy Brett
b23530be4c Merge pull request #7736 from Matt-Yorkley/ssl-in-dev
Remove Spree::Config[:allow_ssl_in_development_and_test]
2021-06-04 07:21:05 -07:00
dependabot[bot]
1fe74c9690 Bump activemerchant from 1.119.0 to 1.120.0
Bumps [activemerchant](https://github.com/activemerchant/active_merchant) from 1.119.0 to 1.120.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.119.0...v1.120.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-04 14:20:09 +00: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
Pau Perez
dfe83e5c51 Do not return master variant in api/ocs/products
`product.master` seems to always be `null` on
/api/v0/order_cycles/:id/products JSON response. That's because the
first of the underlying AR relation,
`order_cycle.variants_distributed_by(distributor)`, does not include
master variants. They are not in OC exchanges.
2021-06-04 12:10:52 +02:00
Pau Perez
e7166ba5d4 Drop product.price from /api/ocs/:id/products
Its serializer it's only used by this endpoint and
app/assets/javascripts/templates/shop_variant.html.haml doesn't rely on
the response's product.price but the variant's price.

Because our DB schema allows NULL on spree_prices.amount, a master
variant without a price can cause the shopfront not to load products.
This was the case in
https://app.bugsnag.com/yaycode/openfoodnetwork-uk/errors/60adfcc31cf9740007f82fc9.
2021-06-04 12:10:52 +02: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
Luis Ramos
66934af579 Upgrade to thor v1 2021-06-03 20:54:55 +01: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
Luis Ramos
466f7030c6 Depend on select2-rails without the thor v0.14 requirement 2021-06-03 20:54:07 +01:00
Matt-Yorkley
7d38bec26d Remove Spree::Config[:allow_ssl_in_development_and_test]
Unconditionally disables forced https-redirects in dev and test
2021-06-03 20:52:09 +01: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
dependabot[bot]
69690f1e37 Bump stripe from 5.30.0 to 5.33.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.30.0 to 5.33.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.30.0...v5.33.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-03 16:43:38 +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
d66b6f7192 Fix InvoicesController spec and change from pending to active 2021-06-03 12:51:15 +01:00
Matt-Yorkley
ba592c1ca3 Switch JobLogger to using the default Rails logger
Logging in background jobs with Sidekiq all ultimately get sent to STDOUT now anyway, which is redirected to `/log/sidekiq.log` via the Sidekiq systemd service.
2021-06-03 12:48:18 +01:00
Matt-Yorkley
0ede0acc6a Remove DelayedJob references 2021-06-03 12:45:23 +01: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
Shen
80ae211b72 Use correct syntax for change matcher in spec/controllers/spree/admin/shipping_categories_controller_spec.rb
Co-authored-by: Maikel <maikel@email.org.au>
2021-06-02 13:17:49 +01:00
Shen Sat
99a4be134b Add delete action test to ShippingCategoriesController spec 2021-06-02 13:17:49 +01: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
Jean-Baptiste Bellet
60f3ebca62 Check whether the changes made by the keyboard are taken into account in datetimepicker
- User can change minute directly with keyboard, and without closing the datetimepicker, the modification should be catch and then a label "You have unsaved changes" with the "Save changes" button should appear
2021-06-01 12:05:03 +02:00
Jean-Baptiste Bellet
0db7df6c14 Add keyup event listener on hour/minute inputs
- To set the date (and trigger the onChange event) when the user is typing through its keyboard
2021-06-01 12:04:55 +02:00
Pau Perez
74a8b3038a Split ConfirmOrderJob to avoid blocking a worker
This unties this two email notifications so that they are picked up by
a DJ worker independently. This should avoid the blocking the worker experiences (remember we
still have a single one in all instances) when waiting between the two
deliveries. See the flamegraph:
https://app.datadoghq.com/apm/traces?end=1622015605459&paused=true&query=env%3Aproduction%20service%3Adelayed_job%20operation_name%3Adelayed_job%20resource_name%3AConfirmOrderJob%20%40duration%3A%3E%3D5s&start=1622009898303&streamTraces=true&trace=AQAAAXmngbg_woqc_QAAAABBWG1uZ2IwVkFBRHVDbWJkN25QTUVuY28&traceID=2916038355421570548&spanID=2005781139590273685.

Overall, both operations may take longer but other jobs can be processed
in between. Also, if any of the two fails, the other won't be affected.
2021-06-01 11:43:00 +02:00
Jean-Baptiste Bellet
f73e5c74fb Handle null/undefined cases for price 2021-06-01 11:40:02 +02:00
dependabot[bot]
de1d4fa4eb Bump sidekiq-scheduler from 3.0.1 to 3.1.0
Bumps [sidekiq-scheduler](https://github.com/moove-it/sidekiq-scheduler) from 3.0.1 to 3.1.0.
- [Release notes](https://github.com/moove-it/sidekiq-scheduler/releases)
- [Commits](https://github.com/moove-it/sidekiq-scheduler/compare/v3.0.1...v3.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 05:31:12 +00: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
Jean-Baptiste Bellet
7008b5ec7b Make a more generic solution: KeyValueMapStore
- As QueryPersistence, stored in the localStorage too but it is now more generic and has nothing to do with Query
 - Add some js unit testing
2021-05-31 10:44:21 +02:00
Jean-Baptiste Bellet
f167b09397 Add distributor and order cycle selectors in the test 2021-05-31 10:44:21 +02:00
Jean-Baptiste Bellet
54c645e33a Add tests for clearing all filters feature
- and check each filter is well reinitialized
2021-05-31 10:44:21 +02:00
Jean-Baptiste Bellet
385446807d Add a clear filters button
- This button clear all stored filters and then update results
2021-05-31 10:44:21 +02:00
Jean-Baptiste Bellet
ea2cb4e6c0 Update flatpickr input value if ng-model change 2021-05-31 10:44:21 +02:00
Jean-Baptiste Bellet
303bf5420e Add select2WatchNgModel directive
- Select2 components cannot handle ng-model correctly: they do not update if the ng-model change. Add a directive to watch the ng-model and update the component value
2021-05-31 10:44:21 +02:00
Jean-Baptiste Bellet
58a96c6500 Add missing ] char to be consistant 2021-05-31 10:44:12 +02:00
Jean-Baptiste Bellet
4f50afc188 Change shipping_method_id storage: in the query 2021-05-31 10:44:12 +02:00
Jean-Baptiste Bellet
e388238a25 Add tests for saving filter params in Orders list 2021-05-31 10:44:12 +02:00
Jean-Baptiste Bellet
1674c6a252 Improve HTML to improve tests readability
- Specify `for` attribute to `<label />` element
- Initialize component with its default value

So, it's linked to its `<input />`
2021-05-31 10:44:12 +02:00
Matt-Yorkley
93ebfb6a4f Improve checking for presence of saved filters 2021-05-31 10:44:12 +02:00
Matt-Yorkley
47404b1dc8 Improve handling of nils 2021-05-31 10:44:12 +02:00
Matt-Yorkley
c24ceac063 Extract default-setting to comment method 2021-05-31 10:44:12 +02:00
Jean-Baptiste Bellet
c5a2d183d8 Save filter params to sessionStorage for orders list
- Use sessionStorage to save the filters params each time a filter is modified
2021-05-31 10:44:12 +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
kgericke
bb8535cb3a add translation keys for password messages 2021-05-26 08:50:16 -07: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
alex
4a5cb7f628 Missed import_date translation 2021-05-18 18:30:59 +03: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
3f020ec855 Circunvent security contraint on rails 61 2021-05-14 00:13:38 +01:00
Luis Ramos
b1896733ca Fix routes 2021-05-14 00:08:20 +01:00
Luis Ramos
3d2155b60e Use Arel.sql to curcunvent security restriction on rails 6.1 2021-05-13 23:55:08 +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
Nihal Mohammed
0b12b398ba Update spec test for the changed redirect path 2021-05-14 03:32:14 +05:30
Nihal Mohammed
122577b11b Checkout made to redirect to shop front when OC closed 2021-05-14 02:58:41 +05:30
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
Luis Ramos
f29f525d90 Adapt code to circunvent security constraint on rails 6.1 2021-05-10 23:39:17 +01: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
Luis Ramos
d308e20871 Fix deprecation warning in rails 6.0
Warning: Class level methods will no longer inherit scoping from create in Rails 6.1
2021-05-10 21:03:24 +01: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
François Turbelin
e86b6443f2 Add a comment to explain nesting on catalog_item 2021-04-05 20:38:19 +02:00
François Turbelin
bf4bb854b1 Change offeres_to to offers_to for method naming 2021-04-05 20:38:19 +02:00
François Turbelin
779241db7a Improve documentation 2021-04-05 20:38:19 +02:00
François Turbelin
11f1f6cff1 Add more onliner before in specs 2021-04-05 20:38:19 +02:00
François Turbelin
7ad6e1b76a Remove brakets for describe in specs 2021-04-05 20:38:19 +02:00
François Turbelin
d414122efd Rename check_entreprise to set_entreprise 2021-04-05 20:38:19 +02: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
Cillian O'Ruanaidh
7e2d9ff381 The Resend Confirmation and Send/Print Invoice links should display for resumed orders too
These are links inside the Actions drop down menu on the edit order view. Before they were missing if an order was in a resumed state.

Fixes #5946
2021-04-02 15:41:59 +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
Cillian O'Ruanaidh
413896af5d Add enterprise name to subject and body of shipment shipped email
Fixes #7052
2021-04-02 11:44:40 +01: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
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
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
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
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
83d7d49e44 refactor sub confirm job; move email to service 2021-02-02 10:43:37 -08:00
Jean-Baptiste Bellet
a82b24d4c1 specify width and height
Was too small, almost invisible.
2021-02-02 11:19:20 +01: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
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
e7866db7b1 Improve efficiency in applying enterprise fees in Order#update_distribution_charge! 2021-01-29 18:32:26 +00:00
Cillian O'Ruanaidh
c8198ff67c Merge branch 'master' into include-ready-for-in-producer-notification 2021-01-29 11:30:11 +00:00
Matt-Yorkley
4ec68dcd85 Update migration to include TaxRate model 2021-01-29 02:37:35 +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
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
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
Matt-Yorkley
49c616c33c Extract tax rate transition logic to service 2021-01-21 14:50:14 +00: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
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
1405 changed files with 43766 additions and 18136 deletions

1
.browserslistrc Normal file
View File

@@ -0,0 +1 @@
defaults

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:

70
.env Normal file
View File

@@ -0,0 +1,70 @@
# Default ENV vars (primarily for the development environment).
# Create `.env.development.local` or `.env.test.local` to add any local overrides.
# Time zone must match the operating system time zone in order to pass all tests.
# This string is the key for the MAPPING hash constant in ActiveSupport::TimeZone.
# Documentation including the hash="https://api.rubyonrails.org/classes/ActiveSupport/TimeZone.html
TIMEZONE="Melbourne"
# Default country for dropdowns etc. See for codes="http://en.wikipedia.org/wiki/ISO_3166-1
DEFAULT_COUNTRY_CODE="AU"
# Locale for translation.
LOCALE="en"
# For multilingual - ENV doesn't have array so pass it as string with commas
AVAILABLE_LOCALES="en,es"
# Spree zone.
CHECKOUT_ZONE="Australia"
# Find currency codes at http://en.wikipedia.org/wiki/ISO_4217.
CURRENCY="AUD"
# The whenever gem can set the `MAILTO` variable for our cron jobs.
# You can define an email address to notify if any job outputs something.
# But you need a working mail server setup so that the message is delivered.
# See: config/schedule.rb
# SCHEDULE_NOTIFICATIONS="admin@example.com"
# Mail settings
MAIL_HOST="example.com"
MAIL_DOMAIN="example.com"
MAIL_PORT="25"
SMTP_USERNAME="ofn"
SMTP_PASSWORD="f00d"
# Optional mail settings
# MAIL_SECURE_CONNECTION="TLS' # 'None' (default), 'SSL' or 'TLS'
# MAILS_FROM="hello@example.com"
# MAIL_BCC="manager@example.com"
# Javascript error reporting via Bugsnag.
# BUGSNAG_JS_KEY=""
# SingleSignOn login for Discourse
#
# DISCOURSE_SSO_SECRET should be a random string. It must be the same as provided to your Discourse instance.
# DISCOURSE_SSO_SECRET=""
#
# DISCOURSE_URL must be the URL of your Discourse instance.
# DISCOURSE_URL="https://noticeboard.openfoodnetwork.org.au"
# see="https://developers.google.com/maps/documentation/javascript/get-api-key
# GOOGLE_MAPS_API_KEY="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Stripe Connect details for instance account
# Find these under 'API keys' and 'Connect' in your Stripe account dashboard -> Account Settings
# Under 'Connect', the Redirect URI should be set to https://YOUR_SERVER_URL/stripe/callbacks (e.g. https://openfoodnetwork.org.uk/stripe/callbacks)
# Under 'Webhooks', you should set up a Connect endpoint pointing to https://YOUR_SERVER_URL/stripe/webhooks e.g. (https://openfoodnetwork.org.uk/stripe/webhooks)
# STRIPE_INSTANCE_SECRET_KEY="sk_test_xxxxxx" # This can be a test key or a live key
# STRIPE_INSTANCE_PUBLISHABLE_KEY="pk_test_xxxx" # This can be a test key or a live key
# STRIPE_CLIENT_ID="ca_xxxx" # This can be a development ID or a production ID
# STRIPE_ENDPOINT_SECRET="whsec_xxxx"
# Feature toggles
#
# Adding user emails separated by commas will enable them the use of certain features. See
# config/initializers/feature_toggles.rb for details.
#
# BETA_TESTERS="ofn@example.com,superadmin@example.com"

7
.env.development Normal file
View File

@@ -0,0 +1,7 @@
# ENV vars for the development environment
# Override locally with `.env.development.local`
SECRET_TOKEN="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
OFN_REDIS_URL="redis://localhost:6379/1"
OFN_REDIS_JOBS_URL="redis://localhost:6379/2"

4
.env.test Normal file
View File

@@ -0,0 +1,4 @@
# ENV vars for the test environment
# Override locally with `.env.test.local`
SECRET_TOKEN="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

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

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

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

@@ -0,0 +1,326 @@
name: Build
on:
workflow_dispatch:
push:
pull_request:
env:
DISABLE_KNAPSACK: true
TIMEZONE: UTC
COVERAGE: true
RSPEC_RETRY_RETRY_COUNT: 3
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

12
.gitignore vendored
View File

@@ -2,6 +2,9 @@
.rbenv-version
.python-version
.byebug_history
.env.local
.env.development.local
.env.test.local
.swp
*.swo
*.swp
@@ -31,6 +34,7 @@ app/public
public/system
public/stylesheets
public/images
public/files
public/spree
public/assets
config/abr.yml
@@ -45,4 +49,10 @@ vendor/bundle/
coverage
/reports/
!/reports/README.md
bin/
/spec/components/stories/**/*.stories.json
/public/packs
/public/packs-test
/yarn-error.log
yarn-debug.log*
.yarn-integrity

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

@@ -18,30 +18,22 @@
#
# This process probably doesn't need repeating. Otherwise there is plenty
# of room for improvements and automation.
Layout/LineLength:
Max: 100
Exclude:
- app/controllers/admin/bulk_line_items_controller.rb
- app/controllers/admin/contents_controller.rb
- app/controllers/admin/customers_controller.rb
- app/controllers/admin/enterprise_fees_controller.rb
- app/controllers/admin/enterprise_relationships_controller.rb
- app/controllers/admin/enterprise_roles_controller.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/inventory_items_controller.rb
- app/controllers/admin/manager_invitations_controller.rb
- app/controllers/admin/product_import_controller.rb
- app/controllers/admin/schedules_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/api/enterprise_attachment_controller.rb
- app/controllers/api/product_images_controller.rb
- app/controllers/spree/paypal_controller_decorator.rb
- app/controllers/stripe/callbacks_controller.rb
- app/controllers/api/v0/order_cycles_controller.rb
- app/controllers/spree/paypal_controller.rb
- app/helpers/angular_form_builder.rb
- app/helpers/angular_form_helper.rb
- app/helpers/checkout_helper.rb
- app/helpers/enterprises_helper.rb
- app/helpers/markdown_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/orders_helper.rb
- app/jobs/subscription_confirm_job.rb
@@ -50,110 +42,91 @@ Layout/LineLength:
- app/models/concerns/order_shipment.rb
- app/models/concerns/product_stock.rb
- app/models/concerns/variant_stock.rb
- app/models/content_configuration.rb
- app/models/customer.rb
- app/models/enterprise_group.rb
- app/models/enterprise_role.rb
- app/models/inventory_item.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/spreadsheet_entry.rb
- app/models/product_import/unit_converter.rb
- app/models/proxy_order.rb
- app/models/schedule.rb
- app/models/spree/app_configuration.rb
- app/models/spree/gateway/stripe_connect.rb
- app/models/spree/image.rb
- app/models/spree/line_item.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/spree/preferences/store.rb
- app/models/subscription.rb
- app/models/variant_override.rb
- app/serializers/api/admin/subscription_line_item_serializer.rb
- app/serializers/api/admin/subscription_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/order_syncer.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/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/web/app/helpers/web/cookies_policy_helper.rb
- engines/web/config/routes.rb
- engines/web/spec/features/consumer/cookies_spec.rb
- Gemfile
- lib/discourse/single_sign_on.rb
- lib/open_food_network/available_payment_method_filter.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/customers_report.rb
- lib/open_food_network/enterprise_fee_applicator.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/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/payments_report.rb
- lib/open_food_network/reports/line_items.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/scope_variants_for_search.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/core/calculated_adjustments.rb
- lib/spree/localized_number.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
- spec/controllers/admin/column_preferences_controller_spec.rb
- spec/controllers/admin/customers_controller_spec.rb
- spec/controllers/admin/enterprises_controller_spec.rb
- spec/controllers/admin/inventory_items_controller_spec.rb
- spec/controllers/admin/manager_invitations_controller_spec.rb
- spec/controllers/admin/order_cycles_controller_spec.rb
- spec/controllers/admin/proxy_orders_controller_spec.rb
- spec/controllers/admin/schedules_controller_spec.rb
- spec/controllers/admin/stripe_accounts_controller_spec.rb
- spec/controllers/admin/stripe_connect_settings_controller_spec.rb
- spec/controllers/admin/subscription_line_items_controller_spec.rb
- spec/controllers/admin/subscriptions_controller_spec.rb
- spec/controllers/admin/variant_overrides_controller_spec.rb
- spec/controllers/api/base_controller_spec.rb
- spec/controllers/api/exchange_products_controller_spec.rb
- spec/controllers/api/logos_controller_spec.rb
- spec/controllers/api/order_cycles_controller_spec.rb
- spec/controllers/api/orders_controller_spec.rb
- 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/api/v0/base_controller_spec.rb
- spec/controllers/api/v0/enterprises_controller_spec.rb
- spec/controllers/api/v0/exchange_products_controller_spec.rb
- spec/controllers/api/v0/logos_controller_spec.rb
- spec/controllers/api/v0/order_cycles_controller_spec.rb
- spec/controllers/api/v0/orders_controller_spec.rb
- spec/controllers/api/v0/product_images_controller_spec.rb
- spec/controllers/api/v0/products_controller_spec.rb
- spec/controllers/api/v0/promo_images_controller_spec.rb
- spec/controllers/api/v0/terms_and_conditions_controller_spec.rb
- spec/controllers/cart_controller_spec.rb
- spec/controllers/checkout_controller_spec.rb
- spec/controllers/enterprises_controller_spec.rb
- spec/controllers/line_items_controller_spec.rb
- spec/controllers/shop_controller_spec.rb
- spec/controllers/shops_controller_spec.rb
- spec/controllers/spree/admin/adjustments_controller_spec.rb
- spec/controllers/spree/admin/base_controller_spec.rb
- spec/controllers/spree/admin/orders_controller_spec.rb
- spec/controllers/spree/admin/orders/customer_details_controller_spec.rb
- spec/controllers/spree/admin/orders/invoices_spec.rb
- spec/controllers/spree/admin/payment_methods_controller_spec.rb
- spec/controllers/spree/admin/products_controller_spec.rb
- spec/controllers/spree/admin/reports_controller_spec.rb
- spec/controllers/spree/admin/variants_controller_spec.rb
- spec/controllers/spree/credit_cards_controller_spec.rb
- spec/controllers/spree/orders_controller_spec.rb
- spec/controllers/spree/users_controller_spec.rb
- spec/controllers/spree/user_sessions_controller_spec.rb
- 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/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
@@ -161,13 +134,10 @@ Layout/LineLength:
- spec/features/admin/customers_spec.rb
- spec/features/admin/enterprise_fees_spec.rb
- spec/features/admin/enterprise_relationships_spec.rb
- spec/features/admin/enterprise_roles_spec.rb
- spec/features/admin/enterprises/images_spec.rb
- spec/features/admin/enterprises/index_spec.rb
- spec/features/admin/enterprises_spec.rb
- spec/features/admin/enterprise_user_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
- spec/features/admin/order_cycles/complex_editing_spec.rb
- spec/features/admin/order_cycles/complex_updating_specific_time_spec.rb
@@ -176,6 +146,7 @@ Layout/LineLength:
- spec/features/admin/order_spec.rb
- spec/features/admin/overview_spec.rb
- spec/features/admin/payment_method_spec.rb
- spec/features/admin/payments_stripe_spec.rb
- spec/features/admin/product_import_spec.rb
- spec/features/admin/products_spec.rb
- spec/features/admin/reports_spec.rb
@@ -185,77 +156,49 @@ Layout/LineLength:
- spec/features/admin/tag_rules_spec.rb
- spec/features/admin/users_spec.rb
- spec/features/admin/variant_overrides_spec.rb
- spec/features/consumer/account/cards_spec.rb
- spec/features/consumer/account/settings_spec.rb
- spec/features/consumer/account_spec.rb
- spec/features/consumer/authentication_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
- spec/features/consumer/producers_spec.rb
- spec/features/consumer/registration_spec.rb
- 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
- spec/features/consumer/shopping/products_spec.rb
- spec/features/consumer/shopping/shopping_spec.rb
- spec/features/consumer/shopping/unit_price_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/features/consumer/shops_spec.rb
- spec/helpers/admin/subscriptions_helper_spec.rb
- spec/helpers/checkout_helper_spec.rb
- spec/helpers/enterprises_helper_spec.rb
- spec/helpers/groups_helper_spec.rb
- spec/helpers/injection_helper_spec.rb
- spec/helpers/order_cycles_helper_spec.rb
- spec/helpers/spree/admin/base_helper_spec.rb
- spec/jobs/confirm_order_job_spec.rb
- 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/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/order_cycle_form_applicator_spec.rb
- spec/lib/open_food_network/order_cycle_management_report_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/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/lib/stripe/authorize_response_patcher_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
- spec/models/concerns/product_stock_spec.rb
- spec/models/customer_spec.rb
- spec/models/enterprise_caching_spec.rb
- spec/models/enterprise_fee_spec.rb
- spec/models/enterprise_group_spec.rb
- spec/models/enterprise_relationship_spec.rb
- spec/models/enterprise_spec.rb
- spec/models/exchange_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
@@ -266,63 +209,44 @@ Layout/LineLength:
- 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
- spec/models/spree/variant_spec.rb
- spec/models/stripe_account_spec.rb
- spec/models/tag_rule/discount_order_spec.rb
- spec/models/tag_rule/filter_order_cycles_spec.rb
- spec/models/tag_rule/filter_payment_methods_spec.rb
- spec/models/tag_rule/filter_products_spec.rb
- spec/models/tag_rule/filter_shipping_methods_spec.rb
- spec/models/terms_of_service_file_spec.rb
- 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/embedded_shopfronts_headers_spec.rb
- spec/serializers/api/admin/customer_serializer_spec.rb
- spec/serializers/api/admin/exchange_serializer_spec.rb
- spec/serializers/api/admin/for_order_cycle/supplied_product_serializer_spec.rb
- spec/serializers/api/admin/order_cycle_serializer_spec.rb
- spec/serializers/api/admin/subscription_customer_serializer_spec.rb
- spec/serializers/api/admin/variant_override_serializer_spec.rb
- spec/serializers/api/current_order_serializer_spec.rb
- spec/serializers/api/enterprise_shopfront_serializer_spec.rb
- spec/serializers/api/order_serializer_spec.rb
- spec/services/address_geocoder_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/content_sanitizer_spec.rb
- spec/services/embedded_page_service_spec.rb
- spec/services/exchange_products_renderer_spec.rb
- spec/services/order_cycle_distributed_products_spec.rb
- spec/services/order_cycle_distributed_variants_spec.rb
- spec/services/order_cycle_form_spec.rb
- spec/services/order_factory_spec.rb
- spec/services/order_syncer_spec.rb
- spec/services/paypal_items_builder_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
- spec/support/matchers/delegate_matchers.rb
- spec/support/features/datepicker_helper.rb
- spec/support/matchers/select2_matchers.rb
- spec/support/matchers/table_matchers.rb
- spec/support/request/shop_workflow.rb
- spec/support/request/stripe_stubs.rb
- spec/support/request/web_helper.rb
- spec/support/seeds.rb
- spec/swagger_helper.rb
- spec/views/spree/admin/payment_methods/index.html.haml_spec.rb
@@ -336,19 +260,23 @@ Metrics/AbcSize:
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/product_import_controller.rb
- app/controllers/admin/resource_controller.rb
- app/controllers/admin/schedules_controller.rb
- app/controllers/admin/stripe_accounts_controller.rb
- app/controllers/admin/subscription_line_items_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/api/enterprises_controller.rb
- app/controllers/api/product_images_controller.rb
- app/controllers/api/products_controller.rb
- 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/api/v0/enterprises_controller.rb
- app/controllers/api/v0/product_images_controller.rb
- app/controllers/api/v0/products_controller.rb
- app/controllers/api/v0/shipments_controller.rb
- app/controllers/api/v0/taxons_controller.rb
- app/controllers/api/v0/variants_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/discourse_sso_controller.rb
- app/controllers/enterprises_controller.rb
- app/controllers/spree/admin/adjustments_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/orders_controller.rb
- app/controllers/spree/admin/orders/customer_details_controller.rb
- app/controllers/spree/admin/overview_controller.rb
@@ -357,14 +285,14 @@ Metrics/AbcSize:
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/reports_controller.rb
- app/controllers/spree/admin/search_controller.rb
- app/controllers/spree/admin/shipping_methods_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/paypal_controller.rb
- app/controllers/spree/user_passwords_controller.rb
- app/controllers/spree/user_registrations_controller.rb
- app/controllers/spree/users_controller.rb
- app/controllers/spree/user_sessions_controller.rb
- app/controllers/stripe/callbacks_controller.rb
@@ -376,21 +304,26 @@ Metrics/AbcSize:
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/zones_helper.rb
- app/helpers/spree/base_helper.rb
- app/helpers/spree/orders_helper.rb
- app/mailers/spree/order_mailer.rb
- app/models/calculator/flat_percent_per_item.rb
- app/models/column_preference.rb
- app/models/enterprise_group.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
- app/models/order_cycle.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/product_import/unit_converter.rb
- app/models/proxy_order.rb
- app/models/spree/ability.rb
- app/models/spree/address.rb
- app/models/spree/gateway/pay_pal_express.rb
- app/models/spree/item_adjustments.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
@@ -405,13 +338,18 @@ Metrics/AbcSize:
- 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/admin/enterprise_serializer.rb
- app/serializers/api/variant_serializer.rb
- app/services/cap_quantity.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_factory.rb
- app/services/order_syncer.rb
- app/services/place_proxy_order.rb
- app/services/process_payment_intent.rb
- app/services/sets/model_set.rb
- app/services/variants_stock_levels.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
@@ -419,11 +357,12 @@ Metrics/AbcSize:
- 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
- engines/order_management/app/services/order_management/subscriptions/form.rb
- engines/order_management/app/services/order_management/subscriptions/validator.rb
- 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/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
@@ -431,6 +370,7 @@ Metrics/AbcSize:
- 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/order_grouper.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
@@ -442,15 +382,18 @@ Metrics/AbcSize:
- 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/auth.rb
- lib/spree/core/controller_helpers/common.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/product_duplicator.rb
- lib/spree/core/s3_support.rb
- lib/spree/localized_number.rb
- lib/spree/money.rb
- lib/stripe/account_connector.rb
- lib/stripe/authorize_response_patcher.rb
- lib/stripe/profile_storer.rb
- lib/tasks/enterprises.rake
- lib/tasks/sample_data/order_factory.rb
- lib/tasks/sample_data/product_factory.rb
@@ -468,7 +411,7 @@ Metrics/AbcSize:
Metrics/BlockLength:
Max: 25
ExcludedMethods: [
IgnoredMethods: [
"class_eval",
"collection",
"context",
@@ -484,13 +427,13 @@ Metrics/BlockLength:
Exclude:
- app/models/spree/order/checkout.rb
- app/models/spree/payment/processing.rb
- app/models/spree/payment.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/line_item_factory.rb
- spec/factories/order_cycle_factory.rb
- spec/factories/order_factory.rb
- spec/factories/payment_method_factory.rb
@@ -501,12 +444,13 @@ Metrics/BlockLength:
- spec/factories/subscription_factory.rb
- spec/factories/user_factory.rb
- spec/factories/variant_factory.rb
- spec/features/admin/order_cycles/complex_updating_specific_time_spec.rb
- spec/features/consumer/shopping/checkout_spec.rb
- 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/cancan_helper.rb
- spec/support/matchers/select2_matchers.rb
- spec/support/matchers/table_matchers.rb
- spec/swagger_helper.rb
@@ -516,7 +460,12 @@ Metrics/CyclomaticComplexity:
Exclude:
- app/controllers/admin/enterprise_fees_controller.rb
- app/controllers/admin/enterprises_controller.rb
- app/controllers/spree/admin/orders_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/taxons_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/controllers/spree/orders_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/order_cycles_helper.rb
@@ -524,66 +473,88 @@ Metrics/CyclomaticComplexity:
- app/helpers/spree/admin/navigation_helper.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
- app/models/product_import/entry_validator.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/order_inventory.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/preferences/preferable.rb
- app/models/spree/product.rb
- app/models/spree/return_authorization.rb
- app/models/spree/shipment.rb
- app/models/spree/tax_rate.rb
- app/models/spree/variant.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/reports/enterprise_fee_summary/parameters.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/enterprise_issue_validator.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/calculated_adjustments.rb
- lib/spree/core/controller_helpers/common.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
- lib/stripe/authorize_response_patcher.rb
- lib/stripe/credit_card_clone_destroyer.rb
- spec/models/product_importer_spec.rb
- spec/support/i18n_translations_checker.rb
Metrics/PerceivedComplexity:
Max: 7
Exclude:
- app/controllers/admin/enterprises_controller.rb
- app/controllers/api/variants_controller.rb
- app/controllers/api/v0/variants_controller.rb
- app/controllers/spree/admin/orders_controller.rb
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/payments_controller.rb
- app/controllers/spree/admin/taxons_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/controllers/spree/orders_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/models/enterprise_relationship.rb
- app/models/product_import/entry_validator.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/order_inventory.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/tax_rate.rb
- app/models/spree/variant.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/enterprise_issue_validator.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/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
Metrics/MethodLength:
Max: 10
Exclude:
- app/controllers/admin/bulk_line_items_controller.rb
- app/controllers/admin/contents_controller.rb
- app/controllers/admin/customers_controller.rb
- app/controllers/admin/enterprise_fees_controller.rb
@@ -593,11 +564,11 @@ Metrics/MethodLength:
- 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
- app/controllers/api/shipments_controller.rb
- app/controllers/api/taxons_controller.rb
- app/controllers/api/variants_controller.rb
- app/controllers/cart_controller.rb
- app/controllers/api/v0/product_images_controller.rb
- app/controllers/api/v0/products_controller.rb
- app/controllers/api/v0/shipments_controller.rb
- app/controllers/api/v0/taxons_controller.rb
- app/controllers/api/v0/variants_controller.rb
- app/controllers/shop_controller.rb
- app/controllers/spree/admin/orders_controller.rb
- app/controllers/spree/admin/orders/customer_details_controller.rb
@@ -611,7 +582,7 @@ Metrics/MethodLength:
- 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/paypal_controller.rb
- app/controllers/spree/user_sessions_controller.rb
- app/controllers/stripe/callbacks_controller.rb
- app/controllers/user_confirmations_controller.rb
@@ -622,6 +593,7 @@ Metrics/MethodLength:
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/mailers/producer_mailer.rb
- app/models/calculator/default_tax.rb
- app/models/column_preference.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
@@ -633,28 +605,30 @@ Metrics/MethodLength:
- app/models/spree/ability.rb
- app/models/spree/address.rb
- app/models/spree/credit_card.rb
- app/models/spree/gateway/pay_pal_express.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/cart_service.rb
- app/services/mail_configuration.rb
- app/services/order_cycle_form.rb
- app/services/permitted_attributes/checkout.rb
- app/services/place_proxy_order.rb
- app/services/process_payment_intent.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
@@ -680,7 +654,6 @@ Metrics/MethodLength:
- lib/open_food_network/payments_report.rb
- 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/line_items.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/users_and_enterprises_report.rb
@@ -706,20 +679,23 @@ Metrics/MethodLength:
Metrics/ClassLength:
Max: 100
Exclude:
- app/controllers/admin/customers_controller.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
- app/controllers/api/v0/products_controller.rb
- app/controllers/application_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/spree/admin/orders_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/users_controller.rb
- app/controllers/spree/orders_controller.rb
- app/controllers/spree/paypal_controller.rb
- app/models/enterprise.rb
- app/models/order_cycle.rb
- app/models/product_import/entry_processor.rb
@@ -734,12 +710,15 @@ Metrics/ClassLength:
- app/models/spree/payment.rb
- app/models/spree/product.rb
- app/models/spree/shipment.rb
- app/models/spree/tax_rate.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
- app/services/order_syncer.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
@@ -760,19 +739,19 @@ Metrics/ModuleLength:
- app/helpers/injection_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/orders_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
- 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/tax_rate_spec.rb
- spec/models/spree/variant_spec.rb
Metrics/ParameterLists:
@@ -782,9 +761,16 @@ Metrics/ParameterLists:
- app/models/product_import/entry_processor.rb
- lib/open_food_network/xero_invoices_report.rb
- spec/features/admin/reports_spec.rb
- spec/support/controller_requests_helper.rb
Lint/UselessAssignment:
Exclude:
- 'spec/**/*'
- 'app/models/spree/taxon.rb'
- 'lib/spree/core/controller_helpers/common.rb'
- app/models/spree/credit_card.rb
- app/models/spree/taxon.rb
- lib/spree/core/controller_helpers/common.rb
Metrics/BlockNesting:
Max: 3
Exclude:
- app/models/spree/payment/processing.rb

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/**/*'
@@ -183,7 +182,7 @@ Metrics/AbcSize:
Metrics/BlockLength:
Max: 25
ExcludedMethods: [
IgnoredMethods: [
"class_eval",
"collection",
"context",
@@ -217,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.4.4
2.7.3

11
spec/coverage_helper.rb → .simplecov Normal file → Executable file
View File

@@ -1,8 +1,5 @@
# frozen_string_literal: true
#!/bin/env ruby
require 'simplecov'
SimpleCov.minimum_coverage 54
SimpleCov.start 'rails' do
add_filter '/bin/'
add_filter '/config/'
@@ -16,4 +13,10 @@ SimpleCov.start 'rails' do
add_filter '/script'
add_filter '/log'
add_filter '/db'
add_filter '/lib/tasks/sample_data/'
end
if ENV['CI']
require 'codecov'
SimpleCov.formatter = SimpleCov::Formatter::Codecov
end

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`,
},
};

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

View File

@@ -7,23 +7,39 @@ 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.3

View File

@@ -6,12 +6,14 @@ This is a general guide to setting up an Open Food Network **development environ
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

116
Gemfile
View File

@@ -1,52 +1,31 @@
# frozen_string_literal: true
source 'https://rubygems.org'
ruby "2.4.4"
ruby "2.7.3"
git_source(:github) { |repo_name| "https://github.com/#{repo_name}.git" }
plugin 'bootboot', '~> 0.1.1' unless Bundler.settings[:frozen]
Plugin.__send__(:load_plugin, 'bootboot') if Plugin.installed?('bootboot')
gem 'dotenv-rails', require: 'dotenv/rails-now' # Load ENV vars before other gems
if ENV['DEPENDENCIES_NEXT']
enable_dual_booting if Plugin.installed?('bootboot')
gem 'rails', '~> 6.1.4'
# This will only be loaded when running
# bundler command prefixed with `DEPENDENCIES_NEXT=1
gem 'rails', '> 5.0', '< 5.1'
gem 'activemerchant', '>= 1.78.0'
gem 'angular-rails-templates', '>= 0.3.0'
gem 'awesome_nested_set'
gem 'ransack', '2.3.0'
gem 'responders'
gem 'sass', '<= 4.7.1'
gem 'sass-rails', '< 6.0.0'
gem 'libv8', '< 8'
else
gem 'rails', '~> 4.2'
gem 'activemerchant', '~> 1.78.0'
gem 'angular-rails-templates', '~> 0.3.0'
gem 'awesome_nested_set', '~> 3.3.1'
gem 'ransack', '~> 1.8.10'
gem 'responders', '~> 2.0'
gem 'sass'
gem 'sass-rails'
gem 'db2fog'
gem 'unicorn'
group :test do
gem 'test_after_commit' # needed to test Devise callbacks
end
end
gem 'activemerchant', '>= 1.78.0'
gem 'angular-rails-templates', '>= 0.3.0'
gem 'awesome_nested_set'
gem 'ransack', '2.4.2'
gem 'responders'
gem 'sass-rails', '< 5.1.0' # this restriction originates from the compass-rails's version
gem 'webpacker', '~> 5'
gem 'i18n'
gem 'i18n-js', '~> 3.8.0'
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 "valid_email2"
gem "catalog", path: "./engines/catalog"
gem 'dfc_provider', path: './engines/dfc_provider'
@@ -54,14 +33,14 @@ 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'
gem 'acts_as_list', '0.9.19'
gem 'cancancan', '~> 1.7.0'
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.10'
gem 'monetize', '~> 1.11'
gem 'paranoia', '~> 2.4'
gem 'state_machines-activerecord'
gem 'stringex', '~> 2.8.5'
@@ -73,13 +52,9 @@ gem 'devise'
gem 'devise-encryptable'
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'
gem 'kaminari', '~> 1.2.1'
gem 'pagy', '~> 4.8'
gem 'andand'
gem 'angularjs-rails', '1.5.5'
@@ -93,18 +68,25 @@ gem 'actionpack-action_caching'
# 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', '~> 8.1'
gem 'angularjs-file-upload-rails', '~> 2.4.1'
gem 'bigdecimal', '3.0.2'
gem 'bootsnap', require: false
gem 'custom_error_message', github: 'jeremydurham/custom-err-msg'
gem 'dalli'
gem 'figaro'
gem 'geocoder'
gem 'gmaps4rails'
gem 'paper_trail', '~> 10.3.1'
gem 'mimemagic', '> 0.3.5'
gem 'paperclip', '~> 3.4.1'
gem 'paper_trail', '~> 12.0.0'
gem 'rack-rewrite'
gem 'rack-ssl', require: 'rack/ssl'
gem 'roadie-rails', '~> 1.3.0'
gem 'roadie-rails'
gem 'hiredis'
gem 'redis', '>= 4.0', require: ['redis', 'redis/connection/hiredis']
gem 'sidekiq'
gem 'sidekiq-scheduler'
gem 'combine_pdf'
gem 'wicked_pdf'
@@ -117,10 +99,10 @@ gem 'whenever', require: false
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'
@@ -132,10 +114,18 @@ gem 'foundation-rails', '= 5.5.2.1'
gem 'jquery-migrate-rails'
gem 'jquery-rails', '4.4.0'
gem 'jquery-ui-rails', '~> 4.2'
gem 'select2-rails', '~> 3.4.7'
gem "select2-rails", github: "openfoodfoundation/select2-rails", branch: "v349_with_thor_v1"
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'
@@ -143,11 +133,11 @@ end
group :test, :development do
# Pretty printed test output
gem 'atomic'
gem 'awesome_print'
gem 'bullet'
gem 'capybara'
gem 'database_cleaner', require: false
gem "factory_bot_rails", '5.2.0', require: false
gem "factory_bot_rails", '6.2.0', require: false
gem 'fuubar', '~> 2.5.1'
gem 'json_spec', '~> 1.1.4'
gem 'knapsack'
@@ -163,6 +153,10 @@ group :test, :development do
end
group :test do
gem 'byebug'
gem 'codecov', require: false
gem 'pdf-reader'
gem 'rails-controller-testing'
gem 'simplecov', require: false
gem 'test-prof'
gem 'webmock'
@@ -171,19 +165,17 @@ group :test do
end
group :development do
gem 'byebug'
gem 'debugger-linecache'
gem 'pry'
gem 'pry-byebug'
gem 'foreman'
gem 'pry', '~> 0.13.0'
gem 'pry-byebug', '~> 3.9.0'
gem 'rubocop'
gem 'rubocop-rails'
gem 'spring'
gem 'spring-commands-rspec'
gem 'web-console'
# 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,666 +0,0 @@
GIT
remote: https://github.com/jeremydurham/custom-err-msg.git
revision: 3a8ec9dddc7a5b0aab7c69a6060596de300c68f4
specs:
custom_error_message (1.1.1)
GIT
remote: https://github.com/openfoodfoundation/ofn-qz.git
revision: 467f6ea1c44529c7c91cac4c8211bbd863588c0b
branch: ofn-rails-4
specs:
ofn-qz (0.1.0)
PATH
remote: engines/catalog
specs:
catalog (0.0.1)
PATH
remote: engines/dfc_provider
specs:
dfc_provider (0.0.1)
active_model_serializers (~> 0.8.4)
jwt (~> 2.2)
rspec (~> 3.9)
PATH
remote: engines/order_management
specs:
order_management (0.0.1)
PATH
remote: engines/web
specs:
web (0.0.1)
GEM
remote: https://rubygems.org/
specs:
actioncable (5.0.7.2)
actionpack (= 5.0.7.2)
nio4r (>= 1.2, < 3.0)
websocket-driver (~> 0.6.1)
actionmailer (5.0.7.2)
actionpack (= 5.0.7.2)
actionview (= 5.0.7.2)
activejob (= 5.0.7.2)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (5.0.7.2)
actionview (= 5.0.7.2)
activesupport (= 5.0.7.2)
rack (~> 2.0)
rack-test (~> 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
actionpack-action_caching (1.2.1)
actionpack (>= 4.0.0)
actionview (5.0.7.2)
activesupport (= 5.0.7.2)
builder (~> 3.1)
erubis (~> 2.7.0)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.3)
active_model_serializers (0.8.4)
activemodel (>= 3.0)
activejob (5.0.7.2)
activesupport (= 5.0.7.2)
globalid (>= 0.3.6)
activemerchant (1.107.4)
activesupport (>= 4.2)
builder (>= 2.1.2, < 4.0.0)
i18n (>= 0.6.9)
nokogiri (~> 1.4)
activemodel (5.0.7.2)
activesupport (= 5.0.7.2)
activerecord (5.0.7.2)
activemodel (= 5.0.7.2)
activesupport (= 5.0.7.2)
arel (~> 7.0)
activerecord-import (1.0.7)
activerecord (>= 3.2)
activerecord-postgresql-adapter (0.0.1)
pg
activerecord-session_store (1.1.3)
actionpack (>= 4.0)
activerecord (>= 4.0)
multi_json (~> 1.11, >= 1.11.2)
rack (>= 1.5.2, < 3)
railties (>= 4.0)
activesupport (5.0.7.2)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 0.7, < 2)
minitest (~> 5.1)
tzinfo (~> 1.1)
acts-as-taggable-on (4.0.0)
activerecord (>= 4.0)
acts_as_list (0.9.19)
activerecord (>= 3.0)
addressable (2.7.0)
public_suffix (>= 2.0.2, < 5.0)
andand (1.3.3)
angular-rails-templates (1.1.0)
railties (>= 4.2, < 7)
sprockets (>= 3.0, < 5)
tilt
angular_rails_csrf (4.2.0)
railties (>= 3, < 7)
angularjs-file-upload-rails (2.4.1)
angularjs-rails (1.5.5)
arel (7.1.4)
ast (2.4.1)
atomic (1.1.101)
awesome_nested_set (3.2.1)
activerecord (>= 4.0.0, < 7.0)
awesome_print (1.8.0)
aws-sdk (1.67.0)
aws-sdk-v1 (= 1.67.0)
aws-sdk-v1 (1.67.0)
json (~> 1.4)
nokogiri (~> 1)
bcrypt (3.1.16)
bugsnag (6.18.0)
concurrent-ruby (~> 1.0)
builder (3.2.4)
byebug (11.0.1)
cancancan (1.7.1)
capybara (3.15.0)
addressable
mini_mime (>= 0.1.3)
nokogiri (~> 1.8)
rack (>= 1.6.0)
rack-test (>= 0.6.3)
regexp_parser (~> 1.2)
xpath (~> 3.2)
childprocess (3.0.0)
chronic (0.10.2)
chunky_png (1.3.14)
climate_control (0.2.0)
cocaine (0.5.8)
climate_control (>= 0.0.3, < 1.0)
coderay (1.1.3)
coffee-rails (4.2.2)
coffee-script (>= 2.2.0)
railties (>= 4.0.0)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.12.2)
combine_pdf (1.0.19)
ruby-rc4 (>= 0.1.5)
compass (1.0.3)
chunky_png (~> 1.2)
compass-core (~> 1.0.2)
compass-import-once (~> 1.0.5)
rb-fsevent (>= 0.9.3)
rb-inotify (>= 0.9)
sass (>= 3.3.13, < 3.5)
compass-core (1.0.3)
multi_json (~> 1.0)
sass (>= 3.3.0, < 3.5)
compass-import-once (1.0.5)
sass (>= 3.2, < 3.5)
compass-rails (2.0.1)
compass (~> 1.0.0)
concurrent-ruby (1.1.7)
crack (0.4.4)
crass (1.0.6)
css_parser (1.7.1)
addressable
daemons (1.3.1)
dalli (2.7.11)
database_cleaner (1.8.5)
ddtrace (0.43.0)
msgpack
debugger-linecache (1.2.0)
delayed_job (4.1.8)
activesupport (>= 3.0, < 6.1)
delayed_job_active_record (4.1.4)
activerecord (>= 3.0, < 6.1)
delayed_job (>= 3.0, < 5)
delayed_job_web (1.4.3)
activerecord (> 3.0.0)
delayed_job (> 2.0.3)
rack-protection (>= 1.5.5)
sinatra (>= 1.4.4)
devise (4.7.3)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 4.1.0)
responders
warden (~> 1.2.3)
devise-encryptable (0.2.0)
devise (>= 2.1.0)
devise-token_authenticatable (1.1.0)
devise (>= 4.0.0, < 5.0.0)
diff-lcs (1.4.4)
docile (1.3.2)
erubis (2.7.0)
eventmachine (1.2.7)
execjs (2.7.0)
factory_bot (5.2.0)
activesupport (>= 4.2.0)
factory_bot_rails (5.2.0)
factory_bot (~> 5.2.0)
railties (>= 4.2.0)
faraday (1.0.1)
multipart-post (>= 1.2, < 3)
ffaker (2.11.0)
ffi (1.13.1)
figaro (1.2.0)
thor (>= 0.14.0, < 2)
foundation-icons-sass-rails (3.0.0)
railties (>= 3.1.1)
sass-rails (>= 3.1.1)
foundation-rails (5.5.2.1)
railties (>= 3.1.0)
sass (>= 3.3.0, < 3.5)
fuubar (2.5.1)
rspec-core (~> 3.0)
ruby-progressbar (~> 1.4)
geocoder (1.6.4)
get_process_mem (0.2.7)
ffi (~> 1.0)
globalid (0.4.2)
activesupport (>= 4.2.0)
gmaps4rails (2.1.2)
haml (5.2.0)
temple (>= 0.8.0)
tilt
hashdiff (1.0.1)
highline (2.0.3)
i18n (1.8.5)
concurrent-ruby (~> 1.0)
i18n-js (3.8.0)
i18n (>= 0.6.6)
immigrant (0.3.6)
activerecord (>= 3.0)
jaro_winkler (1.5.4)
jquery-migrate-rails (1.2.1)
jquery-rails (4.4.0)
rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
jquery-ui-rails (4.2.1)
railties (>= 3.2.16)
json (1.8.6)
json-schema (2.8.1)
addressable (>= 2.4)
json_spec (1.1.5)
multi_json (~> 1.0)
rspec (>= 2.0, < 4.0)
jwt (2.2.2)
kaminari (1.2.1)
activesupport (>= 4.1.0)
kaminari-actionview (= 1.2.1)
kaminari-activerecord (= 1.2.1)
kaminari-core (= 1.2.1)
kaminari-actionview (1.2.1)
actionview
kaminari-core (= 1.2.1)
kaminari-activerecord (1.2.1)
activerecord
kaminari-core (= 1.2.1)
kaminari-core (1.2.1)
kgio (2.11.3)
knapsack (1.20.0)
rake
launchy (2.4.3)
addressable (~> 2.3)
letter_opener (1.7.0)
launchy (~> 2.2)
libv8 (7.3.492.27.1)
loofah (2.7.0)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
mail (2.7.1)
mini_mime (>= 0.1.1)
method_source (1.0.0)
mime-types (3.3.1)
mime-types-data (~> 3.2015)
mime-types-data (3.2020.1104)
mini_mime (1.0.2)
mini_portile2 (2.4.0)
mini_racer (0.2.15)
libv8 (> 7.3)
minitest (5.14.2)
monetize (1.9.4)
money (~> 6.12)
money (6.13.8)
i18n (>= 0.6.4, <= 2)
msgpack (1.3.3)
multi_json (1.15.0)
multi_xml (0.6.0)
multipart-post (2.1.1)
mustermann (1.1.1)
ruby2_keywords (~> 0.0.1)
nio4r (2.5.2)
nokogiri (1.10.10)
mini_portile2 (~> 2.4.0)
oauth2 (1.4.4)
faraday (>= 0.8, < 2.0)
jwt (>= 1.0, < 3.0)
multi_json (~> 1.3)
multi_xml (~> 0.5)
rack (>= 1.2, < 3)
orm_adapter (0.5.0)
paper_trail (10.3.1)
activerecord (>= 4.2)
request_store (~> 1.1)
paperclip (3.4.2)
activemodel (>= 3.0.0)
activerecord (>= 3.0.0)
activesupport (>= 3.0.0)
cocaine (~> 0.5.0)
mime-types
parallel (1.19.2)
paranoia (2.4.2)
activerecord (>= 4.0, < 6.1)
parser (2.7.2.0)
ast (~> 2.4.1)
paypal-sdk-core (0.2.10)
multi_json (~> 1.0)
xml-simple
paypal-sdk-merchant (1.106.1)
paypal-sdk-core (~> 0.2.3)
pg (0.21.0)
polyamorous (2.3.0)
activerecord (>= 5.0)
power_assert (1.2.0)
pry (0.13.1)
coderay (~> 1.1)
method_source (~> 1.0)
pry-byebug (3.9.0)
byebug (~> 11.0)
pry (~> 0.13.0)
public_suffix (4.0.6)
rack (2.2.3)
rack-mini-profiler (2.0.2)
rack (>= 1.2.0)
rack-protection (2.1.0)
rack
rack-rewrite (1.5.1)
rack-ssl (1.4.1)
rack
rack-test (0.6.3)
rack (>= 1.0)
rails (5.0.7.2)
actioncable (= 5.0.7.2)
actionmailer (= 5.0.7.2)
actionpack (= 5.0.7.2)
actionview (= 5.0.7.2)
activejob (= 5.0.7.2)
activemodel (= 5.0.7.2)
activerecord (= 5.0.7.2)
activesupport (= 5.0.7.2)
bundler (>= 1.3.0)
railties (= 5.0.7.2)
sprockets-rails (>= 2.0.0)
rails-dom-testing (2.0.3)
activesupport (>= 4.2.0)
nokogiri (>= 1.6)
rails-html-sanitizer (1.3.0)
loofah (~> 2.3)
rails-i18n (5.1.3)
i18n (>= 0.7, < 2)
railties (>= 5.0, < 6)
rails_safe_tasks (1.0.0)
railties (5.0.7.2)
actionpack (= 5.0.7.2)
activesupport (= 5.0.7.2)
method_source
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
rainbow (3.0.0)
raindrops (0.19.1)
rake (13.0.1)
ransack (2.3.0)
actionpack (>= 5.0)
activerecord (>= 5.0)
activesupport (>= 5.0)
i18n
polyamorous (= 2.3.0)
rb-fsevent (0.10.4)
rb-inotify (0.10.1)
ffi (~> 1.0)
redcarpet (3.5.0)
regexp_parser (1.8.2)
request_store (1.5.0)
rack (>= 1.4)
responders (2.4.1)
actionpack (>= 4.2.0, < 6.0)
railties (>= 4.2.0, < 6.0)
rexml (3.2.4)
roadie (3.5.1)
css_parser (~> 1.4)
nokogiri (~> 1.8)
roadie-rails (1.3.0)
railties (>= 3.0, < 5.3)
roadie (~> 3.1)
roo (2.8.3)
nokogiri (~> 1)
rubyzip (>= 1.3.0, < 3.0.0)
rspec (3.10.0)
rspec-core (~> 3.10.0)
rspec-expectations (~> 3.10.0)
rspec-mocks (~> 3.10.0)
rspec-core (3.10.0)
rspec-support (~> 3.10.0)
rspec-expectations (3.10.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.10.0)
rspec-mocks (3.10.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.10.0)
rspec-rails (4.0.1)
actionpack (>= 4.2)
activesupport (>= 4.2)
railties (>= 4.2)
rspec-core (~> 3.9)
rspec-expectations (~> 3.9)
rspec-mocks (~> 3.9)
rspec-support (~> 3.9)
rspec-retry (0.6.2)
rspec-core (> 3.3)
rspec-support (3.10.0)
rswag (2.3.1)
rswag-api (= 2.3.1)
rswag-specs (= 2.3.1)
rswag-ui (= 2.3.1)
rswag-api (2.3.1)
railties (>= 3.1, < 7.0)
rswag-specs (2.3.1)
activesupport (>= 3.1, < 7.0)
json-schema (~> 2.2)
railties (>= 3.1, < 7.0)
rswag-ui (2.3.1)
actionpack (>= 3.1, < 7.0)
railties (>= 3.1, < 7.0)
rubocop (0.81.0)
jaro_winkler (~> 1.5.1)
parallel (~> 1.10)
parser (>= 2.7.0.1)
rainbow (>= 2.2.2, < 4.0)
rexml
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 2.0)
rubocop-rails (2.5.2)
activesupport
rack (>= 1.1)
rubocop (>= 0.72.0)
ruby-progressbar (1.10.1)
ruby-rc4 (0.1.5)
ruby2_keywords (0.0.2)
rubyzip (1.3.0)
sass (3.4.25)
sass-rails (5.0.7)
railties (>= 4.0.0, < 6)
sass (~> 3.1)
sprockets (>= 2.8, < 4.0)
sprockets-rails (>= 2.0, < 4.0)
tilt (>= 1.1, < 3)
select2-rails (3.4.9)
sass-rails
thor (~> 0.14)
selenium-webdriver (3.142.7)
childprocess (>= 0.5, < 4.0)
rubyzip (>= 1.2.2)
shoulda-matchers (4.0.1)
activesupport (>= 4.2.0)
simplecov (0.17.1)
docile (~> 1.1)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.2)
sinatra (2.1.0)
mustermann (~> 1.0)
rack (~> 2.2)
rack-protection (= 2.1.0)
tilt (~> 2.0)
spring (2.0.2)
activesupport (>= 4.2)
spring-commands-rspec (1.0.4)
spring (>= 0.9.1)
sprockets (3.7.2)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
sprockets-rails (3.2.2)
actionpack (>= 4.0)
activesupport (>= 4.0)
sprockets (>= 3.0.0)
state_machines (0.5.0)
state_machines-activemodel (0.7.1)
activemodel (>= 4.1)
state_machines (>= 0.5.0)
state_machines-activerecord (0.6.0)
activerecord (>= 4.1)
state_machines-activemodel (>= 0.5.0)
stringex (2.8.5)
stripe (5.28.0)
temple (0.8.2)
test-prof (0.7.5)
test-unit (3.3.7)
power_assert
thor (0.20.3)
thread_safe (0.3.6)
tilt (2.0.10)
timecop (0.9.2)
tzinfo (1.2.8)
thread_safe (~> 0.1)
uglifier (4.2.0)
execjs (>= 0.3.0, < 3)
unicode-display_width (1.7.0)
unicorn (5.7.0)
kgio (~> 2.6)
raindrops (~> 0.7)
unicorn-rails (2.2.1)
rack
unicorn
unicorn-worker-killer (0.4.4)
get_process_mem (~> 0)
unicorn (>= 4, < 6)
warden (1.2.9)
rack (>= 2.0.9)
webdrivers (4.2.0)
nokogiri (~> 1.6)
rubyzip (>= 1.3.0)
selenium-webdriver (>= 3.0, < 4.0)
webmock (3.10.0)
addressable (>= 2.3.6)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
websocket-driver (0.6.5)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
whenever (1.0.0)
chronic (>= 0.6.3)
wicked_pdf (2.1.0)
activesupport
wkhtmltopdf-binary (0.12.6.5)
xml-simple (1.1.5)
xpath (3.2.0)
nokogiri (~> 1.8)
PLATFORMS
ruby
DEPENDENCIES
actionpack-action_caching
active_model_serializers (= 0.8.4)
activemerchant (>= 1.78.0)
activerecord-import
activerecord-postgresql-adapter
activerecord-session_store
acts-as-taggable-on (~> 4.0)
acts_as_list (= 0.9.19)
andand
angular-rails-templates (>= 0.3.0)
angular_rails_csrf
angularjs-file-upload-rails (~> 2.4.1)
angularjs-rails (= 1.5.5)
atomic
awesome_nested_set
awesome_print
aws-sdk (= 1.67.0)
bugsnag
byebug
cancancan (~> 1.7.0)
capybara
catalog!
coffee-rails (~> 4.2.2)
combine_pdf
compass-rails
custom_error_message!
daemons
dalli
database_cleaner
ddtrace
debugger-linecache
delayed_job_active_record
delayed_job_web
devise
devise-encryptable
devise-token_authenticatable
dfc_provider!
eventmachine (>= 1.2.3)
factory_bot_rails (= 5.2.0)
ffaker
figaro
foundation-icons-sass-rails
foundation-rails (= 5.5.2.1)
fuubar (~> 2.5.1)
geocoder
gmaps4rails
haml
highline (= 2.0.3)
i18n
i18n-js (~> 3.8.0)
immigrant
jquery-migrate-rails
jquery-rails (= 4.4.0)
jquery-ui-rails (~> 4.2)
json
json_spec (~> 1.1.4)
jwt (~> 2.2)
kaminari (~> 1.2.1)
knapsack
letter_opener (>= 1.4.1)
libv8 (< 8)
mini_racer (= 0.2.15)
monetize (~> 1.1)
oauth2 (~> 1.4.4)
ofn-qz!
order_management!
paper_trail (~> 10.3.1)
paperclip (~> 3.4.1)
paranoia (~> 2.4)
paypal-sdk-merchant (= 1.106.1)
pg (~> 0.21.0)
pry
pry-byebug
rack-mini-profiler (< 3.0.0)
rack-rewrite
rack-ssl
rails (> 5.0, < 5.1)
rails-i18n
rails_safe_tasks (~> 1.0)
ransack (= 2.3.0)
redcarpet
responders
roadie-rails (~> 1.3.0)
roo (~> 2.8.3)
rspec-rails (>= 3.5.2)
rspec-retry
rswag
rubocop
rubocop-rails
sass (<= 4.7.1)
sass-rails (< 6.0.0)
select2-rails (~> 3.4.7)
selenium-webdriver
shoulda-matchers
simplecov
spring
spring-commands-rspec
state_machines-activerecord
stringex (~> 2.8.5)
stripe
test-prof
test-unit (~> 3.3)
timecop
uglifier (>= 1.0.3)
unicorn-rails
unicorn-worker-killer
web!
webdrivers
webmock
whenever
wicked_pdf
wkhtmltopdf-binary
RUBY VERSION
ruby 2.4.4p296
BUNDLED WITH
1.17.3

5
Procfile Normal file
View File

@@ -0,0 +1,5 @@
# Foreman Procfile. Start all dev server processes with: `foreman start`
rails: bundle exec rails s -p 3000
webpack: ./bin/webpack-dev-server
sidekiq: bundle exec sidekiq -q mailers -q default

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
@@ -33,7 +34,7 @@ We also have a [Super Admin Guide][super-admin-guide] to help with configuration
## Testing
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.
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/orgs/openfoodfoundation/projects/1) 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!
@@ -46,5 +47,5 @@ Copyright (c) 2012 - 2020 Open Food Foundation, released under the AGPL licence.
[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
[welcome-dev]: https://github.com/orgs/openfoodfoundation/projects/2
[zenhub]: https://www.zenhub.com/extension

View File

@@ -8,4 +8,6 @@ require_relative 'config/application'
Openfoodnetwork::Application.load_tasks
Knapsack.load_tasks if defined?(Knapsack)
if !ENV['DISABLE_KNAPSACK'] && defined?(Knapsack)
Knapsack.load_tasks
end

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

@@ -8,6 +8,7 @@ angular.module("ofn.admin", [
"admin.dropdown",
"admin.products",
"admin.taxons",
"infinite-scroll"
"infinite-scroll",
"admin.orders"
]).config ($httpProvider) ->
$httpProvider.defaults.headers.common["Accept"] = "application/json, text/javascript, */*"

View File

@@ -10,7 +10,6 @@
//= 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
@@ -24,6 +23,24 @@
//= 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 admin/spree/spree
//= require admin/spree/spree-select2
@@ -35,6 +52,9 @@
//= 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
@@ -90,5 +110,8 @@
// foundation
//= require ../shared/mm-foundation-tpls-0.9.0-20180826174721.min.js
// LocalStorage
//= require ../shared/angular-local-storage.js
// requires the rest of the JS code in this folder
//= require_tree .

View File

@@ -21,6 +21,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
sorting: ""
}
$scope.sorting = "name asc"
$scope.producers = producers
$scope.taxons = Taxons.all
$scope.tax_categories = tax_categories
@@ -48,7 +49,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
'q[name_cont]': $scope.q.query,
'q[supplier_id_eq]': $scope.q.producerFilter,
'q[primary_taxon_id_eq]': $scope.q.categoryFilter,
'q[s]': $scope.q.sorting,
'q[s]': $scope.sorting,
import_date: $scope.q.importDateFilter,
page: $scope.page,
per_page: $scope.per_page
@@ -104,7 +105,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
$scope.$watch 'sortOptions', (sort) ->
return unless sort && sort.predicate != ""
$scope.q.sorting = sort.getSortingExpr()
$scope.sorting = sort.getSortingExpr(defaultDirection: "asc")
$scope.fetchProducts()
, true
@@ -146,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
@@ -161,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
@@ -216,6 +217,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
'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

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

@@ -0,0 +1,8 @@
angular.module("ofn.admin").directive "select2WatchNgModel", () ->
restrict: 'E'
scope: true
require: "ngModel"
link: (scope, element, attrs, ngModel) ->
ngModel.$render = () ->
newValue = ngModel.$viewValue;
element.children(".select2").select2("val", newValue)

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

@@ -1,12 +1,14 @@
angular.module("admin.enterprises")
.controller "enterpriseCtrl", ($scope, $http, $window, NavigationCheck, enterprise, Enterprises, EnterprisePaymentMethods, EnterpriseShippingMethods, SideMenu, StatusMessage) ->
.controller "enterpriseCtrl", ($scope, $http, $window, NavigationCheck, enterprise, Enterprises, EnterprisePaymentMethods, EnterpriseShippingMethods, SideMenu, StatusMessage, RequestMonitor) ->
$scope.Enterprise = enterprise
$scope.Enterprises = Enterprises
$scope.PaymentMethods = EnterprisePaymentMethods.paymentMethods
$scope.ShippingMethods = EnterpriseShippingMethods.shippingMethods
$scope.navClear = NavigationCheck.clear
$scope.menu = SideMenu
$scope.newManager = { id: null, email: (t('add_manager')) }
$scope.StatusMessage = StatusMessage
$scope.RequestMonitor = RequestMonitor
$scope.$watch 'enterprise_form.$dirty', (newValue) ->
StatusMessage.display 'notice', t('admin.unsaved_changes') if newValue
@@ -90,3 +92,6 @@ angular.module("admin.enterprises")
$scope.translation = (key) ->
t('js.admin.enterprises.form.images.' + key)
$scope.loadSuppliers = ->
RequestMonitor.load $scope.suppliers = Enterprises.index(action: "visible", ams_prefix: "basic", "q[is_primary_producer_eq]": "true")

View File

@@ -0,0 +1,18 @@
angular.module("admin.enterprises").directive "ofnProducerAutocomplete", (Enterprises, AutocompleteSelect2) ->
scope: true
link: (scope,element,attrs) ->
scope.loadSuppliers() if !scope.suppliers
multiple = scope.$eval attrs.multipleSelection
placeholder = attrs.placeholder
initialSelection = scope.$eval attrs.ngModel
setTimeout ->
scope.suppliers.$promise.then (data) ->
AutocompleteSelect2.autocomplete(
multiple,
placeholder,
element,
(-> Enterprises.findByID(initialSelection)),
(-> Enterprises.findByIDs(initialSelection)),
((term) -> Enterprises.findByTerm(scope.suppliers, term))
)

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

@@ -52,6 +52,7 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
$scope.loadOrders = ->
RequestMonitor.load $scope.orders = Orders.index(
"q[state_not_eq]": "canceled",
"q[shipment_state_not_eq]": "shipped",
"q[completed_at_not_null]": "true",
"q[distributor_id_eq]": $scope.distributorFilter,
"q[order_cycle_id_eq]": $scope.orderCycleFilter,
@@ -62,6 +63,7 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
$scope.loadLineItems = ->
RequestMonitor.load LineItems.index(
"q[order_state_not_eq]": "canceled",
"q[order_shipment_state_not_eq]": "shipped",
"q[order_completed_at_not_null]": "true",
"q[order_distributor_id_eq]": $scope.distributorFilter,
"q[variant_product_supplier_id_eq]": $scope.supplierFilter,
@@ -127,12 +129,12 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
$scope.selectedUnitsVariant = unitsVariant
$scope.sumUnitValues = ->
sum = $scope.filteredLineItems.reduce (sum,lineItem) ->
sum = $scope.filteredLineItems?.reduce (sum,lineItem) ->
sum + lineItem.final_weight_volume
, 0
$scope.sumMaxUnitValues = ->
sum = $scope.filteredLineItems.reduce (sum,lineItem) ->
sum = $scope.filteredLineItems?.reduce (sum,lineItem) ->
sum + lineItem.max_quantity * lineItem.units_variant.unit_value
, 0

View File

@@ -3,21 +3,18 @@ angular.module('admin.orderCycles', ['ngTagsInput', 'admin.indexUtils', 'admin.e
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(
Object.assign(
window.JQUERY_UI_DATETIME_PICKER_DEFAULTS,
{
onSelect: (dateText, inst) ->
scope.$apply(->
element.val(dateText)
parsed = $parse(attrs.datetimepicker)
parsed.assign(scope, dateText)
)
}
)
)
fp = flatpickr(element, Object.assign({},
window.FLATPICKR_DATETIME_DEFAULT, {
onOpen: (selectedDates, dateStr, instance) ->
instance.setDate(ngModel.$modelValue)
instance.input.dispatchEvent(new Event('focus', { bubbles: true }));
}));
fp.minuteElement.addEventListener "keyup", (e) ->
if !isNaN(event.target.value)
fp.setDate(fp.selectedDates[0].setMinutes(e.target.value), true)
fp.hourElement.addEventListener "keyup", (e) ->
if !isNaN(event.target.value)
fp.setDate(fp.selectedDates[0].setHours(e.target.value), 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,4 +1,4 @@
angular.module("admin.orders").controller "ordersCtrl", ($scope, $timeout, RequestMonitor, Orders, SortOptions, $window, $filter) ->
angular.module("admin.orders").controller "ordersCtrl", ($scope, $timeout, RequestMonitor, Orders, SortOptions, $window, $filter, $location, KeyValueMapStore) ->
$scope.RequestMonitor = RequestMonitor
$scope.pagination = Orders.pagination
$scope.orders = Orders.all
@@ -15,39 +15,54 @@ angular.module("admin.orders").controller "ordersCtrl", ($scope, $timeout, Reque
$scope.poll = 0
$scope.rowStatus = {}
KeyValueMapStore.localStorageKey = 'ordersFilters'
KeyValueMapStore.storableKeys = ["q", "sorting", "page", "per_page"]
$scope.initialise = ->
unless KeyValueMapStore.restoreValues($scope)
$scope.setDefaults()
$scope.fetchResults()
$scope.setDefaults = ->
$scope.per_page = 15
$scope.q = {
completed_at_not_null: true
}
$scope.clearFilters = () ->
KeyValueMapStore.clearKeyValueMap()
$scope.setDefaults()
$scope.fetchResults()
$scope.fetchResults = (page=1) ->
startDateWithTime = $scope.appendStringIfNotEmpty($scope['q']['completed_at_gteq'], ' 00:00:00')
endDateWithTime = $scope.appendStringIfNotEmpty($scope['q']['completed_at_lteq'], ' 23:59:59')
startDateWithTime = $scope.appendStringIfNotEmpty($scope.q?.completed_at_gteq, ' 00:00:00')
endDateWithTime = $scope.appendStringIfNotEmpty($scope.q?.completed_at_lteq, ' 23:59:59')
$scope.resetSelected()
params = {
'q[completed_at_gteq]': startDateWithTime,
'q[completed_at_lteq]': endDateWithTime,
'q[state_eq]': $scope['q']['state_eq'],
'q[number_cont]': $scope['q']['number_cont'],
'q[email_cont]': $scope['q']['email_cont'],
'q[bill_address_firstname_start]': $scope['q']['bill_address_firstname_start'],
'q[bill_address_lastname_start]': $scope['q']['bill_address_lastname_start'],
'q[state_eq]': $scope.q?.state_eq,
'q[number_cont]': $scope.q?.number_cont,
'q[email_cont]': $scope.q?.email_cont,
'q[bill_address_firstname_start]': $scope.q?.bill_address_firstname_start,
'q[bill_address_lastname_start]': $scope.q?.bill_address_lastname_start,
# Set default checkbox values to null. See: https://github.com/openfoodfoundation/openfoodnetwork/pull/3076#issuecomment-440010498
'q[completed_at_not_null]': $scope['q']['completed_at_not_null'] || null,
'q[distributor_id_in][]': $scope['q']['distributor_id_in'],
'q[order_cycle_id_in][]': $scope['q']['order_cycle_id_in'],
'q[completed_at_not_null]': $scope.q?.completed_at_not_null || null,
'q[distributor_id_in][]': $scope.q?.distributor_id_in,
'q[order_cycle_id_in][]': $scope.q?.order_cycle_id_in,
'q[s]': $scope.sorting || 'completed_at desc',
shipping_method_id: $scope.shipping_method_id,
shipping_method_id: $scope.q?.shipping_method_id,
per_page: $scope.per_page,
page: page
}
KeyValueMapStore.setStoredValues($scope)
RequestMonitor.load(Orders.index(params).$promise)
$scope.appendStringIfNotEmpty = (baseString, stringToAppend) ->
return baseString unless baseString
return baseString if baseString.endsWith(stringToAppend)
baseString + stringToAppend

View File

@@ -1 +1 @@
angular.module("admin.orders", ['admin.indexUtils', 'ngResource', 'mm.foundation'])
angular.module("admin.orders", ['admin.indexUtils', 'ngResource', 'mm.foundation', "OFNShared"])

View File

@@ -2,6 +2,6 @@ angular.module("admin.paymentMethods").controller "ProvidersCtrl", ($scope, paym
if paymentMethod.type
$scope.include_html = "/admin/payment_methods/show_provider_preferences?" +
"provider_type=#{paymentMethod.type};" +
"pm_id=#{paymentMethod.id};"
"pm_id=#{paymentMethod.id || ''};"
else
$scope.include_html = ""

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, PriceParser) ->
$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()
@@ -25,13 +26,21 @@ angular.module("admin.products")
$scope.processUnitValueWithDescription = ->
if $scope.product.master.hasOwnProperty("unit_value_with_description")
match = $scope.product.master.unit_value_with_description.match(/^([\d\.]+(?= *|$)|)( *)(.*)$/)
match = $scope.product.master.unit_value_with_description.match(/^([\d\.,]+(?= *|$)|)( *)(.*)$/)
if match
$scope.product.master.unit_value = parseFloat(match[1])
$scope.product.master.unit_value = PriceParser.parse(match[1])
$scope.product.master.unit_value = null if isNaN($scope.product.master.unit_value)
$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,14 +1,32 @@
angular.module("admin.products").controller "variantUnitsCtrl", ($scope, VariantUnitManager, $timeout) ->
angular.module("admin.products").controller "variantUnitsCtrl", ($scope, VariantUnitManager, $timeout, UnitPrices, PriceParser) ->
$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 = ->
unit_value_human = angular.element('#unit_value_human').val()
$scope.unit_value = unit_value_human * $scope.scale
$scope.unit_value = PriceParser.parse(unit_value_human) * $scope.scale
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

@@ -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, PriceParser) ->
class UnitPrices
@displayableUnitPrice: (price, scale, unit_type, unit_value, variant_unit_name) ->
price = PriceParser.parse(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

@@ -67,3 +67,9 @@ angular.module("admin.products").factory "VariantUnitManager", (availableUnits)
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,12 +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/enterprises/:id/terms_and_conditions.json'
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

@@ -1,4 +1,4 @@
angular.module("admin.resources").factory 'Enterprises', ($q, EnterpriseResource) ->
angular.module("admin.resources").factory 'Enterprises', ($q, $filter, EnterpriseResource) ->
new class Enterprises
byID: {}
pristineByID: {}
@@ -50,6 +50,17 @@ angular.module("admin.resources").factory 'Enterprises', ($q, EnterpriseResource
))
deferred.promise
findByID: (id) ->
@byID[id]
# For finding multiple Enterprises represented by comma delimited string
findByIDs: (ids) ->
@byID[id] for id in ids.split(",") when @byID[id]
findByTerm: (enterprises, term) ->
$filter('filter')(enterprises, term)
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,29 @@
angular.module("admin.indexUtils").factory 'KeyValueMapStore', (localStorageService)->
new class KeyValueMapStore
localStorageKey: ''
storableKeys: []
constructor: ->
localStorageService.setStorageType("sessionStorage")
getStoredKeyValueMap: ->
localStorageService.get(@localStorageKey) || {}
setStoredValues: (source) ->
keyValueMap = {}
for key in @storableKeys
keyValueMap[key] = source[key]
localStorageService.set(@localStorageKey, keyValueMap)
restoreValues: (target) ->
storedKeyValueMap = @getStoredKeyValueMap()
return false if _.isEmpty(storedKeyValueMap)
for k,v of storedKeyValueMap
target[k] = v
return true
clearKeyValueMap: () ->
localStorageService.remove(@localStorageKey)

View File

@@ -98,40 +98,6 @@ $.fn.radioControlsVisibilityOfElement = function(dependentElementSelector){
}
$(document).ready(function() {
if (typeof Spree !== 'undefined' &&
typeof Spree.translations !== '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"
});
$.datepicker.regional[I18n.locale] = {
prevText: Spree.translations.previous,
nextText: Spree.translations.next,
monthNames: Spree.translations.month_names,
dayNames: Spree.translations.abbr_day_names,
dayNamesMin: Spree.translations.abbr_day_names,
dateFormat: Spree.translations.date_picker
};
$.datepicker.setDefaults( $.datepicker.regional[I18n.locale]);
// 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

@@ -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,30 +1,17 @@
angular.module("admin.taxons").directive "ofnTaxonAutocomplete", (Taxons, $sanitize) ->
angular.module("admin.taxons").directive "ofnTaxonAutocomplete", (Taxons, AutocompleteSelect2) ->
# Adapted from Spree's existing taxon autocompletion
scope: true
link: (scope,element,attrs) ->
multiple = scope.$eval attrs.multipleSelection
placeholder = attrs.placeholder
initalSelection = scope.$eval attrs.ngModel
initialSelection = scope.$eval attrs.ngModel
setTimeout ->
element.select2
placeholder: placeholder
multiple: multiple
initSelection: (element, callback) ->
if multiple
callback Taxons.findByIDs(initalSelection)
else
callback Taxons.findByID(initalSelection)
query: (query) ->
query.callback { results: Taxons.findByTerm(query.term) }
formatResult: (taxon) ->
$sanitize(taxon.name)
formatSelection: (taxon) ->
taxon.name
#Allows drag and drop
if multiple
element.select2("container").find("ul.select2-choices").sortable
containment: 'parent'
start: -> element.select2("onSortStart")
update: -> element.select2("onSortEnd")
AutocompleteSelect2.autocomplete(
multiple,
placeholder,
element,
(-> Taxons.findByID(initialSelection)),
(-> Taxons.findByIDs(initialSelection)),
((term) -> Taxons.findByTerm(term))
)

View File

@@ -1,30 +1,51 @@
$(document).ready(function(){
window.JQUERY_UI_DATE_PICKER_DEFAULTS = {
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,
oneLine: true,
showOn: 'button',
buttonImage: "<%= asset_path 'datepicker/cal.gif' %>",
buttonImageOnly: true
$(document).ready(function() {
var onClickButtons = function(index, fp) {
var date;
switch (index) {
case 0:
date = new Date();
break;
}
fp.setDate(date, true);
}
window.JQUERY_UI_DATETIME_PICKER_DEFAULTS = Object.assign(
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.JQUERY_UI_DATE_PICKER_DEFAULTS,
window.FLATPICKR_DATE_DEFAULT,
{
currentText: Spree.translations.datetime_ui_current_text,
closeText: Spree.translations.datetime_ui_close_text,
timeText: Spree.translations.datetime_ui_time_text,
timeFormat: 'HH:mm',
controlType: 'select',
stepMinute: 15
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({})
]
}
);
$('.datetimepicker').datetimepicker(window.JQUERY_UI_DATETIME_PICKER_DEFAULTS);
flatpickr(".datetimepicker", window.FLATPICKR_DATETIME_DEFAULT);
$('a.close').click(function(event){
event.preventDefault();
$(this).parent().slideUp(250);

View File

@@ -1,9 +1,14 @@
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 ->
flapickrInstance = flatpickr(element, Object.assign(
{},
$window.FLATPICKR_DATE_DEFAULT, {
onOpen: (selectedDates, dateStr, instance) ->
instance.setDate(ngModel.$modelValue)
}
));
ngModel.$render = () ->
newValue = ngModel.$viewValue;
flapickrInstance?.setDate(newValue)

View File

@@ -3,6 +3,7 @@ angular.module("admin.utils").directive "ofnWithTip", ($sanitize)->
element.attr('data-powertip', $sanitize(attrs.ofnWithTip))
element.powerTip
smartPlacement: true
placement: element.attr('powertip-location')
fadeInTime: 50
fadeOutTime: 50
intentPollInterval: 300

View File

@@ -0,0 +1,31 @@
angular.module("admin.utils").factory 'AutocompleteSelect2', ($sanitize) ->
scope: true
autocomplete: (
multiple,
placeholder,
element,
findByID,
findByIDs,
findByTerm
) ->
element.select2
placeholder: placeholder
multiple: multiple
initSelection: (element, callback) ->
if multiple
callback findByIDs()
else
callback findByID()
query: (query) ->
query.callback { results: findByTerm(query.term) }
formatResult: (item) ->
$sanitize(item.name)
formatSelection: (item) ->
item.name
#Allows drag and drop
if multiple
element.select2("container").find("ul.select2-choices").sortable
containment: 'parent'
start: -> element.select2("onSortStart")
update: -> element.select2("onSortEnd")

View File

@@ -0,0 +1,31 @@
angular.module("admin.utils").factory "PriceParser", ->
new class PriceParser
parse: (price) =>
return null unless 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)
# Replace comma used as a decimal separator and remplace by "."
price = this.replaceCommaByFinalPoint(price)
# Remove configured thousands separator if it is actually a thousands separator
price = this.removeThousandsSeparator(price, thousands_separator)
if (decimal_separator == ",")
price = price.replace(",", ".")
price = parseFloat(price)
return null if isNaN(price)
return price
replaceCommaByFinalPoint : (price) =>
if price.match(/^[0-9]*(,{1})[0-9]{1,2}$/g) then price.replace(",", ".") else price
removeThousandsSeparator : (price, thousands_separator) =>
if (new RegExp("^([0-9]*(" + thousands_separator + "{1})[0-9]{3}[0-9\.,]*)*$", "g").test(price))
price.replaceAll(thousands_separator, '')
else
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

@@ -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
@@ -48,14 +51,8 @@
#
#= require modernizr
#
#= require foundation
#= require ./darkswarm
#= require ./overrides
#= require_tree ./mixins
#= require_tree ./directives
#= require_tree .
$ ->
# Hacky fix for issue - http://foundation.zurb.com/forum/posts/2112-foundation-5100-syntax-error-in-js
Foundation.set_namespace ""
$(document).foundation()

View File

@@ -7,13 +7,3 @@ $ ->
($ 'form#update-cart').submit ->
($ 'form#update-cart #update-button').attr('disabled', true)
# Temporarily handles the cart showing stuff
$(document).ready ->
$('.cart_adjustment').hide()
$('td.cart-adjustments a').click ->
$('.cart_adjustment').toggle()
$(this).html(t('item_handling_fees'))
false

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

@@ -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

@@ -11,6 +11,8 @@ 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 =>
@@ -20,6 +22,7 @@ Darkswarm.controller "ProductsCtrl", ($scope, $sce, $filter, $rootScope, Product
$rootScope.$on "orderCycleSelected", ->
$scope.update_filters()
$scope.clearAll()
$scope.page = 1
$scope.update_filters = ->
order_cycle_id = OrderCycle.order_cycle.order_cycle_id
@@ -35,17 +38,12 @@ Darkswarm.controller "ProductsCtrl", ($scope, $sce, $filter, $rootScope, Product
data.map( (taxon) ->
$scope.supplied_taxons[taxon.id] = Taxons.taxons_by_id[taxon.id]
)
# Some taxons may be displayed in a dropdown.
# Foundation needs initialising again to add dropdown actions.
Foundation.init()
OrderCycleResource.properties params, (data)=>
$scope.supplied_properties = {}
data.map( (property) ->
$scope.supplied_properties[property.id] = Properties.properties_by_id[property.id]
)
# Some properties may be displayed in a dropdown.
# Foundation needs initialising again to add dropdown actions.
Foundation.init()
$scope.loadMore = ->
if ($scope.page * $scope.per_page) <= Products.products.length

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

@@ -1,9 +1,5 @@
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
$scope.updateCart = (line_item) ->
Cart.adjust($scope.variant.line_item)
$scope.variant.line_item.quantity ||= 0
@@ -44,10 +40,12 @@ Darkswarm.controller "ShopVariantCtrl", ($scope, $modal, Cart) ->
$scope.add = (quantity) ->
item = $scope.variant.line_item
item.quantity = $scope.sanitizedQuantity() + quantity
$scope.updateCart(item)
$scope.addMax = (quantity) ->
item = $scope.variant.line_item
item.max_quantity = $scope.sanitizedMaxQuantity() + quantity
$scope.updateCart(item)
$scope.canAdd = (quantity) ->
wantedQuantity = $scope.sanitizedQuantity() + quantity

View File

@@ -10,10 +10,11 @@ window.Darkswarm = angular.module("Darkswarm", [
'uiGmapgoogle-maps',
'duScroll',
'angularFileUpload',
'angularSlideables'
'angularSlideables',
'OFNShared'
]).config ($httpProvider, $tooltipProvider, $locationProvider, $anchorScrollProvider) ->
$httpProvider.defaults.headers['common']['X-Requested-With'] = 'XMLHttpRequest'
$httpProvider.defaults.headers.common.Accept = "application/json, text/javascript, */*"
$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

@@ -115,6 +115,10 @@ Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http, $modal, $roo
@line_items = []
localStorageService.clearAll() # One day this will have to be moar GRANULAR
isOnlyItemInOrder: (id) =>
deletedItem = @line_items_finalised.find((item) -> item.id == id)
@line_items_finalised.filter((item) -> item.order_id == deletedItem.order_id).length == 1
removeFinalisedLineItem: (id) =>
@line_items_finalised = @line_items_finalised.filter (item) ->
item.id != id

View File

@@ -1,5 +1,5 @@
angular.module("Darkswarm").factory 'Customer', ($resource, $injector, Messages) ->
Customer = $resource('/api/customers/:id/:action.json', {}, {
Customer = $resource('/api/v0/customers/:id/:action.json', {}, {
'index':
method: 'GET'
isArray: true

View File

@@ -8,5 +8,5 @@ Darkswarm.factory "EnterpriseImageService", (FileUploader, spreeApiKey) ->
autoUpload: true
configure: (enterprise) =>
@imageUploader.url = "/api/enterprises/#{enterprise.id}/update_image"
@imageUploader.url = "/api/v0/enterprises/#{enterprise.id}/update_image"
@imageUploader.onSuccessItem = (image, response) => @imageSrc = response

View File

@@ -5,7 +5,7 @@ Darkswarm.factory "EnterpriseModal", ($modal, $rootScope, $http)->
scope = $rootScope.$new(true) # Spawn an isolate to contain the enterprise
scope.embedded_layout = window.location.search.indexOf("embedded_shopfront=true") != -1
$http.get("/api/shops/" + enterprise.id).success (data) ->
$http.get("/api/v0/shops/" + enterprise.id).success (data) ->
scope.enterprise = data
$modal.open(templateUrl: "enterprise_modal.html", scope: scope)
.error (data) ->

View File

@@ -18,9 +18,10 @@ Darkswarm.factory "EnterpriseRegistrationService", ($http, RegistrationService,
Loading.message = t('creating') + " " + @enterprise.name
$http(
method: "POST"
url: "/api/enterprises"
url: "/api/v0/enterprises"
data:
enterprise: @prepare()
use_geocoder: @useGeocoder()
params:
token: spreeApiKey
).success((data) =>
@@ -42,9 +43,10 @@ Darkswarm.factory "EnterpriseRegistrationService", ($http, RegistrationService,
Loading.message = t('updating') + " " + @enterprise.name
$http(
method: "PUT"
url: "/api/enterprises/#{@enterprise.id}"
url: "/api/v0/enterprises/#{@enterprise.id}"
data:
enterprise: @prepare()
use_geocoder: @useGeocoder()
params:
token: spreeApiKey
).success((data) ->
@@ -63,3 +65,7 @@ Darkswarm.factory "EnterpriseRegistrationService", ($http, RegistrationService,
enterprise.address_attributes = @enterprise.address if @enterprise.address?
enterprise.address_attributes.country_id = @enterprise.country.id if @enterprise.country?
enterprise
useGeocoder: =>
if @enterprise.address? && !@enterprise.address.latitude? && !@enterprise.address.longitude?
return "1"

View File

@@ -10,7 +10,7 @@ Darkswarm.service "GmapsGeo", ->
# console.log "Error: #{status}"
geocode: (address, callback) ->
geocoder = new google.maps.Geocoder()
geocoder.geocode {'address': address, 'region': "<%= Spree::Country.find_by(id: Spree::Config[:default_country_id]).iso %>"}, callback
geocoder.geocode {'address': address, 'region': "<%= DefaultCountry.code %>"}, callback
distanceBetween: (src, dst) ->
google.maps.geometry.spherical.computeDistanceBetween @toLatLng(src), @toLatLng(dst)
@@ -20,4 +20,4 @@ Darkswarm.service "GmapsGeo", ->
if locatable.lat?
locatable
else
new google.maps.LatLng locatable.latitude, locatable.longitude
new google.maps.LatLng locatable.latitude, locatable.longitude

View File

@@ -4,12 +4,10 @@ Darkswarm.factory "MapConfiguration", ->
center:
latitude: -37.4713077
longitude: 144.7851531
cluster_icon: "<%= image_path('map_009-cluster.svg') %>"
cluster_icon: "/map_icons/map_009-cluster.svg"
zoom: 12
additional_options:
# mapTypeId: 'satellite'
mapTypeId: 'OSM'
mapTypeControl: false
streetViewControl: false
styles: [{"featureType":"landscape","stylers":[{"saturation":-100},{"lightness":65},{"visibility":"on"}]},{"featureType":"poi","stylers":[{"saturation":-100},{"lightness":51},{"visibility":"simplified"}]},{"featureType":"road.highway","stylers":[{"saturation":-100},{"visibility":"simplified"}]},{"featureType":"road.arterial","stylers":[{"saturation":-100},{"lightness":30},{"visibility":"on"}]},{"featureType":"road.local","stylers":[{"saturation":-100},{"lightness":40},{"visibility":"on"}]},{"featureType":"transit","stylers":[{"saturation":-100},{"visibility":"simplified"}]},{"featureType":"administrative.province","stylers":[{"visibility":"off"}]},{"featureType":"water","elementType":"labels","stylers":[{"visibility":"on"},{"lightness":-25},{"saturation":-100}]},{"featureType":"water","elementType":"geometry","stylers":[{"hue":"#ffff00"},{"lightness":-25},{"saturation":-97}]},{"featureType":"road","elementType": "labels.icon","stylers":[{"visibility":"off"}]}]

View File

@@ -1,21 +1,21 @@
Darkswarm.factory 'OrderCycleResource', ($resource) ->
$resource('/api/order_cycles/:id.json', {}, {
$resource('/api/v0/order_cycles/:id.json', {}, {
'products':
method: 'GET'
isArray: true
url: '/api/order_cycles/:id/products.json'
url: '/api/v0/order_cycles/:id/products.json'
params:
id: '@id'
'taxons':
method: 'GET'
isArray: true
url: '/api/order_cycles/:id/taxons.json'
url: '/api/v0/order_cycles/:id/taxons.json'
params:
id: '@id'
'properties':
method: 'GET'
isArray: true
url: '/api/order_cycles/:id/properties.json'
url: '/api/v0/order_cycles/:id/properties.json'
params:
id: '@id'
})

View File

@@ -1,7 +1,7 @@
Darkswarm.factory 'ShopsResource', ($resource) ->
$resource('/api/shops/:id.json', {}, {
$resource('/api/v0/shops/:id.json', {}, {
'closed_shops':
method: 'GET'
isArray: true
url: '/api/shops/closed_shops.json'
url: '/api/v0/shops/closed_shops.json'
})

View File

@@ -0,0 +1,19 @@
OFNShared.directive "questionMarkWithTooltip", ($tooltip)->
# We use the $tooltip service from Angular foundation to give us boilerplate
# Subsequently we patch the scope, template and restrictions
tooltip = $tooltip 'questionMarkWithTooltip', 'questionMarkWithTooltip', 'click'
tooltip.scope =
context: "="
key: "="
tooltip.templateUrl = "shared/question_mark_with_tooltip_icon.html"
tooltip.replace = true
tooltip.restrict = 'E'
tooltip
# This is automatically referenced via naming convention in $tooltip
OFNShared.directive 'questionMarkWithTooltipPopup', ->
restrict: 'EA'
replace: true
templateUrl: 'shared/question_mark_with_tooltip.html'
scope: false

View File

@@ -0,0 +1,5 @@
window.OFNShared = angular.module("OFNShared", [
"mm.foundation",
"LocalStorageModule"
]).config ($httpProvider) ->
$httpProvider.defaults.headers.common["Accept"] = "application/json, text/javascript, */*"

View File

@@ -6,7 +6,7 @@
%p.error{ ng: { show: 'error' } }
{{error}}
%img.spinner{ src: "/assets/spinning-circles.svg", ng: { show: "loading" } }
%img.spinner{ src: image_path("spinning-circles.svg"), ng: { show: "loading" } }
%p{ ng: { show: "loading" } }
= t('js.admin.orders.index.please_wait')

View File

@@ -3,7 +3,7 @@
%form#image_upload{ name: 'form', novalidate: true, enctype: 'multipart/form-data', multipart: true, ng: { controller: "ProductImageCtrl" } }
%div.image-preview
%img.spinner{ src: "/assets/spinning-circles.svg", ng: { hide: "!imageUploader.isUploading" }}
%img.spinner{ src: image_path("spinning-circles.svg"), ng: { hide: "!imageUploader.isUploading" }}
%img.preview{ng: {src: "{{imagePreview}}", class: "{'faded': imageUploader.isUploading}"}}
%label{for: 'image-upload', class: 'button'} {{ 'admin.products.index.upload_an_image' | t }}

View File

@@ -6,6 +6,6 @@
.sixteen.columns.alpha#loading{ 'ng-show' => 'productsLoading()' }
%br
%img.spinner{ src: "/assets/spinning-circles.svg" }
%img.spinner{ src: image_path("spinning-circles.svg")}
%h1
{{ 'js.admin.panels.exchange_products.loading_variants' | t }}

View File

@@ -2,12 +2,21 @@
.columns.small-12
%h3{"ng-bind" => "::variant.extended_name"}
.row.variant-bulk-buy-price-summary
.columns.small-6
.variant-unit {{ ::variant.unit_to_display }}
.columns.small-6
.flex.variant-bulk-buy-price-summary{style: "justify-content: space-around;"}
.variant-unit
{{ ::variant.unit_to_display }}
.div
{{ variant.line_item.total_price | localizeCurrency }}
.unit-price
%question-mark-with-tooltip{"question-mark-with-tooltip": "_",
"question-mark-with-tooltip-append-to-body": "true",
"question-mark-with-tooltip-placement": "top",
"question-mark-with-tooltip-animation": true,
style: "margin-right: 5px",
key: "'js.shopfront.unit_price_tooltip'"}
{{ variant.unit_price_price | localizeCurrency }}&nbsp;/&nbsp;{{ variant.unit_price_unit }}
.row
.columns.small-12.medium-6
.variant-bulk-buy-quantity-label
@@ -16,10 +25,7 @@
%button.bulk-buy-add.variant-quantity{type: "button", ng: {click: "add(-1)", disabled: "!canAdd(-1)"}}>
-# U+FF0D Fullwidth Hyphen-Minus
%input.bulk-buy.variant-quantity{
type: "number",
min: "0",
max: "{{ available() }}",
%input.bulk-buy.variant-quantity{type: "number", min: "0", max: "{{ available() }}",
ng: {model: "variant.line_item.quantity", max: "Infinity"}}>
%button.bulk-buy-add.variant-quantity{type: "button", ng: {click: "add(1)", disabled: "!canAdd(1)"}}
-# U+FF0B Fullwidth Plus Sign
@@ -31,10 +37,7 @@
%button.bulk-buy-add.variant-quantity{type: "button", ng: {click: "addMax(-1)", disabled: "!canAddMax(-1)"}}>
-# U+FF0D Fullwidth Hyphen-Minus
%input.bulk-buy.variant-quantity{
type: "number",
min: "0",
max: "{{ available() }}",
%input.bulk-buy.variant-quantity{type: "number", min: "0", max: "{{ available() }}",
ng: {model: "variant.line_item.max_quantity", max: "Infinity"}}>
%button.bulk-buy-add.variant-quantity{type: "button", ng: {click: "addMax(1)", disabled: "!canAddMax(1)"}}
-# U+FF0B Fullwidth Plus Sign

View File

@@ -8,12 +8,8 @@
%button.variant-quantity{type: "button", ng: {click: "add(-1)", disabled: "!canAdd(-1)"}}>
-# U+FF0D Fullwidth Hyphen-Minus
%input.variant-quantity{
type: "number",
min: "0",
max: "{{ available() }}",
ng: {model: "variant.line_item.quantity", max: "Infinity"}
}>
%input.variant-quantity{ type: "number", min: "0", max: "{{ available() }}",
ng: {model: "variant.line_item.quantity", max: "Infinity"}}>
%button.variant-quantity{type: "button", ng: {click: "add(1)", disabled: "!canAdd(1)"}}
-# U+FF0B Fullwidth Plus Sign

View File

@@ -0,0 +1,6 @@
.joyride-tip-guide.question-mark-tooltip{class: "{{ context }}", ng: {class: "{ in: tt_isOpen, fade: tt_animation }", show: "tt_isOpen"}}
.background{ng: {click: "tt_isOpen = false"}}
.joyride-content-wrapper
{{ key | t }}
%span.joyride-nub.bottom

View File

@@ -0,0 +1 @@
%button.question-mark-icon{"ng-class" => "{open: tt_isOpen}", type: 'button'}

View File

@@ -8,9 +8,16 @@
"price-breakdown-placement" => "bottom",
"price-breakdown-animation" => true}
{{ variant.price_with_fees | localizeCurrency }}
.unit-price.variant-unit-price
%question-mark-with-tooltip{"question-mark-with-tooltip" => "_",
"question-mark-with-tooltip-append-to-body" => "true",
"question-mark-with-tooltip-placement" => "top",
"question-mark-with-tooltip-animation" => true,
key: "'js.shopfront.unit_price_tooltip'"}
{{ variant.unit_price_price | localizeCurrency }}&nbsp;/&nbsp;{{ variant.unit_price_unit }}
.medium-2.large-2.columns.total-price
%span{"ng-class" => "{filled: variant.line_item.total_price}"}
{{ variant.line_item.total_price | localizeCurrency }}
%ng-include{src: "'partials/shop_variant_no_group_buy.html'"}
%ng-include{src: "'partials/shop_variant_with_group_buy.html'"}

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