Compare commits

...

2289 Commits

Author SHA1 Message Date
Maikel Linke
271d1ec103 Update translations from Transifex 2020-08-13 10:52:55 +10:00
Maikel
2271a57ffe Merge pull request #5880 from openfoodfoundation/transifex
Transifex
2020-08-13 10:35:00 +10:00
Transifex-Openfoodnetwork
95e048b37f Updating translations for config/locales/en_CA.yml 2020-08-13 02:50:37 +10:00
Maikel
a8207128df Merge pull request #5889 from Matt-Yorkley/suppress-selenium-warings
Suppress Selenium warnings in test log output.
2020-08-12 11:29:30 +10:00
Transifex-Openfoodnetwork
47bde1e77c Updating translations for config/locales/tr.yml 2020-08-12 00:50:03 +10:00
Matt-Yorkley
0edeb82c32 Update spec/spec_helper.rb
Co-authored-by: Maikel <maikel@email.org.au>
2020-08-11 14:02:49 +02:00
Transifex-Openfoodnetwork
acf984699e Updating translations for config/locales/en_US.yml 2020-08-11 12:02:26 +10:00
Pau Pérez Fabregat
70e2fb759c Merge pull request #5751 from luisramos0/subs_jobs
Add rescue statements with bugsnag alerts to subs jobs
2020-08-10 12:50:54 +02:00
Matt-Yorkley
74252e9d13 Suppress Selenium warnings in test log output. 2020-08-09 14:02:07 +01:00
Luis Ramos
78fbac8ff2 Merge pull request #5882 from coopdevs/fix-doc-ocd
Fix docs OCD in Gemfile
2020-08-07 16:38:40 +01:00
Pau Perez
4e22787386 Fix docs OCD in Gemfile
@luisramos0 and I can't cope with reading TWO and seeing THREE items listed.
2020-08-07 17:20:14 +02:00
Transifex-Openfoodnetwork
f6c85af4da Updating translations for config/locales/fr.yml 2020-08-08 00:21:32 +10:00
Matt-Yorkley
3a2802f5aa Merge pull request #5871 from coopdevs/fix-paypal-ssl-error
Point better_spree_paypal_express to its latest commit
2020-08-07 11:43:52 +02:00
Matt-Yorkley
766b7449d8 Update all locales with the latest Transifex translations 2020-08-07 10:00:21 +01:00
Matt-Yorkley
2caa559869 Merge pull request #5860 from openfoodfoundation/transifex
Transifex
2020-08-07 10:58:25 +02:00
Luis Ramos
04feccaef3 Merge pull request #5863 from romale/patch-7
Missing translation key 'item', 'qty'
2020-08-07 09:22:34 +01:00
Pau Pérez Fabregat
dfc31b9338 Merge pull request #5864 from openfoodfoundation/dependabot/bundler/ddtrace-0.39.0
Bump ddtrace from 0.38.0 to 0.39.0
2020-08-07 08:22:17 +02:00
Pau Perez
2ccb7c3eb0 Point spree_paypal_express to its latest commit
This brings in the fix for the intermittent PayPal connection failures
due to SSL verification failed. Checkout that gem's commit for details.
2020-08-07 08:18:24 +02:00
Transifex-Openfoodnetwork
f92d05656c Updating translations for config/locales/en_FR.yml 2020-08-06 17:17:36 +10:00
Transifex-Openfoodnetwork
1e2c092b70 Updating translations for config/locales/fr.yml 2020-08-06 17:14:33 +10:00
dependabot-preview[bot]
6e626447d0 Bump ddtrace from 0.38.0 to 0.39.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.38.0 to 0.39.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.38.0...v0.39.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-05 23:48:20 +00:00
Luis Ramos
f14bb280c1 Merge pull request #5680 from cillian/prevent-blank-open-street-map
If no enterprises have been geocoded yet make sure Open Street Map displays correctly
2020-08-05 20:27:40 +01:00
Luis Ramos
f093656c6b Merge pull request #5763 from luisramos0/mailers
Bring Mailers from Spree and make order shipped email translatable
2020-08-05 18:09:12 +01:00
romale
dd86e00913 Update en.yml 2020-08-05 18:17:14 +03:00
Transifex-Openfoodnetwork
b2309f8673 Updating translations for config/locales/en_FR.yml 2020-08-06 00:21:16 +10:00
Transifex-Openfoodnetwork
5404efcbce Updating translations for config/locales/fr.yml 2020-08-06 00:21:09 +10:00
Luis Ramos
d8acf90240 Merge pull request #5770 from openfoodfoundation/revert-5601-enhancement/5454-links-to-shops-in-new-tabs
Revert "Enhancement/5454 make links to shops under Groups > Producers open in new tab"
2020-08-05 11:51:48 +01:00
Luis Ramos
6cc296926c Merge pull request #5847 from rmklaus12/5579-missing-translation-subscriptions
5579 missing translation subscriptions
2020-08-05 11:29:34 +01:00
Pau Pérez Fabregat
6e1dd78e9f Merge pull request #5828 from luisramos0/ent_user
Clean up AuthenticationWorkflow spec helper
2020-08-04 12:07:54 +02:00
Pau Perez
6e39ab779c Make RSpec infer the file type from its location
Apparently, although we tend to add the type of spec file some RSpec
methods are not working without it. We're getting:

```
NoMethodError:
  undefined method `helper' for RSpec::ExampleGroups::SpreeSharedOrderDetailsHtmlHaml:Class
```

```
NameError:
   undefined local variable or method `controller' for #<RSpec::ExampleGroups::SpreeAdminUsersController::AuthorizeAdmin:0x00007fa8b32addf8>
 # ./spec/controllers/spree/admin/users_controller_spec.rb:10:in `block (3 levels) in <top (required)>'
```

It needs more investigation but another day.
2020-08-04 11:24:49 +02:00
Transifex-Openfoodnetwork
8792ec1de3 Updating translations for config/locales/es.yml 2020-08-04 18:14:45 +10:00
Transifex-Openfoodnetwork
b91f1578c9 Updating translations for config/locales/ca.yml 2020-08-04 18:14:27 +10:00
Pau Pérez Fabregat
9b91c490cb Merge pull request #5859 from openfoodfoundation/transifex
Transifex
2020-08-04 10:13:37 +02:00
Transifex-Openfoodnetwork
e8ba44f958 Updating translations for config/locales/en_FR.yml 2020-08-04 17:27:10 +10:00
Transifex-Openfoodnetwork
800ac0cabf Updating translations for config/locales/fr.yml 2020-08-04 17:26:53 +10:00
Pau Perez
9ef59f440b Remove commented out includes 2020-08-04 08:50:14 +02:00
Pau Perez
61c14cb61d Remove unneeded RSpec config block
Spec files individually include the module and we specify the type of
spec in each RSpec's describe so none of this settings are needed. They
are just Spree's legacy I bet.
2020-08-04 08:48:08 +02:00
Pau Pérez Fabregat
467fa7e566 Merge pull request #5856 from openfoodfoundation/transifex
Transifex
2020-08-04 08:37:32 +02:00
Pau Pérez Fabregat
ef48187332 Merge pull request #5745 from openfoodfoundation/dependabot/bundler/rswag-2.3.1
Bump rswag from 2.2.0 to 2.3.1
2020-08-04 08:00:32 +02:00
Luis Ramos
425901fa7a Add some paragraphs and breaklines to the tempalte that used to be text and is now html
This template needs to be revisited, this is just a quick fix
2020-08-03 16:43:11 +01:00
Luis Ramos
6e57e1ad56 Fix conflict between unused Spree::CheckoutHelper in spree_core and the required ::CheckoutHelper in OFN
The OFN checkoutHelper was not being included and instead the Spree::CheckoutHelper, that doesnt have the necessary helpers, was used
2020-08-03 16:25:18 +01:00
Luis Ramos
6b4a518371 Merge pull request #5845 from romale/patch-6
Missing translation key for "height", "width", "depth"
2020-08-03 16:02:20 +01:00
Cillian O'Ruanaidh
e6ab2ae753 Remove unused positiveAngles and negativeAngles arrays from map centre calculator service.
I forgot to remove these when I was refactoring this earlier.
2020-08-03 15:12:40 +01:00
Transifex-Openfoodnetwork
c97fc45109 Updating translations for config/locales/nb.yml 2020-08-03 22:53:31 +10:00
Transifex-Openfoodnetwork
1d44d463e7 Updating translations for config/locales/tr.yml 2020-08-03 22:48:36 +10:00
Luis Ramos
13b72154fa Merge pull request #5852 from openfoodfoundation/dependabot/bundler/activerecord-import-1.0.6
Bump activerecord-import from 1.0.5 to 1.0.6
2020-08-03 11:54:00 +01:00
dependabot-preview[bot]
619e13ccba Bump rswag from 2.2.0 to 2.3.1
Bumps [rswag](https://github.com/rswag/rswag) from 2.2.0 to 2.3.1.
- [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.2.0...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-03 08:32:45 +00:00
Pau Pérez Fabregat
bc66c10a52 Merge pull request #5848 from openfoodfoundation/transifex
Transifex
2020-08-03 09:59:12 +02:00
Pau Pérez Fabregat
06e77372be Merge pull request #5842 from openfoodfoundation/dependabot/bundler/bugsnag-6.15.0
Bump bugsnag from 6.14.0 to 6.15.0
2020-08-03 09:58:52 +02:00
dependabot-preview[bot]
e615674541 Bump bugsnag from 6.14.0 to 6.15.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.14.0 to 6.15.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.14.0...v6.15.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-01 14:57:18 +00:00
Luis Ramos
327d6c43d9 Merge pull request #4084 from openfoodfoundation/dependabot/bundler/devise-3.5.10
[Security] Bump devise from 2.2.8 to 3.5.10
2020-08-01 15:55:19 +01:00
Luis Ramos
cc7363d9e7 Merge pull request #5824 from luisramos0/improve_checkout
Reset order state to cart in case the stripe SCA authorization step fails
2020-08-01 15:53:41 +01:00
dependabot-preview[bot]
ff82a1b73f Bump activerecord-import from 1.0.5 to 1.0.6
Bumps [activerecord-import](https://github.com/zdennis/activerecord-import) from 1.0.5 to 1.0.6.
- [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.5...v1.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-08-01 07:31:53 +00:00
Luis Ramos
b025d5a600 Merge pull request #5822 from luisramos0/improve_ocs_perf
Performance improvement of the outgoing products page when editing OCs
2020-07-31 16:07:16 +01:00
Luis Ramos
2aa6c70dc6 Remove select from relation
This relation is only used above for a call to empty? so we don't need to worry about the select part of the query, specially not introducing an expensive DISTINCT
2020-07-31 09:26:04 +01:00
Luis Ramos
d052a7b796 Verify the user is confirmed before returning a reset password token
Co-authored-by: Maikel <maikel@email.org.au>
2020-07-31 09:14:07 +01:00
Transifex-Openfoodnetwork
9d1e12da68 Updating translations for config/locales/en_FR.yml 2020-07-31 18:11:19 +10:00
Transifex-Openfoodnetwork
aae0a6533a Updating translations for config/locales/fr.yml 2020-07-31 18:10:57 +10:00
Luis Ramos
7c498a573c Make shopfront redirect work when logging out by storing it outside session data 2020-07-31 09:05:42 +01:00
Luis Ramos
86afa6f413 Adapt to devise 3.2 and use after_confirmation callback to send welcome email 2020-07-31 09:05:42 +01:00
Luis Ramos
ca9898839a Confirm! is deprecated and only redirects to confirm now in devise 3.5 2020-07-31 09:05:42 +01:00
Luis Ramos
f31d790714 Add auth spec to cover case where user tries to reset password before confirming their email 2020-07-31 09:05:42 +01:00
Luis Ramos
0f29806198 Adapt code to devise 3.2 where the reset_password_token stored in the db is a encrypted version of the token sent in the email
In this particular case, the user confirmations controller is redirecting to the reset password page but it doesnt know what is the raw reset_password_token

So we regenerate the reset password token so that it can know what's the raw value for the redirect

The method User#regenerate_reset_password_token is a proxy to the protected method in Devise::Recoverable
2020-07-31 09:05:42 +01:00
Luis Ramos
c0f9f8c8bf Remove comment refering to old spree upgrade 2020-07-31 09:05:42 +01:00
Luis Ramos
a2ae78bde9 Replay commit from spree_auth_devise that upgrades to devise 3
fe7941f674
2020-07-31 09:05:42 +01:00
Luis Ramos
26ca374a76 Adpat user mailer to devise v3 2020-07-31 09:05:42 +01:00
Luis Ramos
40e065eada Add gem for Devise::TokenAuthenticatable and configure it 2020-07-31 09:05:42 +01:00
dependabot-preview[bot]
f7ee6ce6c5 [Security] Bump devise from 2.2.8 to 3.5.10
Bumps [devise](https://github.com/plataformatec/devise) from 2.2.8 to 3.5.10. **This update includes a security fix.**
- [Release notes](https://github.com/plataformatec/devise/releases)
- [Changelog](https://github.com/plataformatec/devise/blob/v3.5.10/CHANGELOG.md)
- [Commits](https://github.com/plataformatec/devise/compare/v2.2.8...v3.5.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-31 09:05:42 +01:00
Luis Ramos
85e9819c3b Make more translation keys use lazy look ups 2020-07-31 09:00:48 +01:00
Transifex-Openfoodnetwork
1ea06763f8 Updating translations for config/locales/es.yml 2020-07-31 17:00:19 +10:00
Transifex-Openfoodnetwork
5064769717 Updating translations for config/locales/ca.yml 2020-07-31 16:59:55 +10:00
Robin Klaus
581a246b4f Added translation key for subscriptions heading 2020-07-31 16:29:04 +10:00
Maikel Linke
bee7990c60 Update translations 2020-07-31 15:58:04 +10:00
romale
27404872de Missing translation key for "height", "width", "depth"
When edit product in path admin/products/PRODUCT_NAME/varians/NN/edit
2020-07-31 00:20:55 +03:00
Luis Ramos
1e9b11d209 Merge pull request #5807 from romale/patch-5
Add Russian to list of momentJS locales
2020-07-30 19:01:38 +01:00
Luis Ramos
df465cf45b Merge pull request #5698 from rmklaus12/5575-backofficepay-missing-translation
Added translation key to locale/en.yml for backoffice admin payment
2020-07-30 19:01:11 +01:00
Luis Ramos
f524560624 Merge pull request #5800 from romale/patch-4
Missing translation key for "permalink" and "shipping_categories"
2020-07-30 18:00:45 +01:00
Luis Ramos
7af47df570 Merge pull request #5843 from andrewpbrett/master
Update Docker instructions to recommend creating your own fork
2020-07-30 17:57:33 +01:00
Luis Ramos
354b76205e Merge pull request #5839 from openfoodfoundation/dependabot/bundler/oj-3.10.8
Bump oj from 3.10.7 to 3.10.8
2020-07-30 17:54:12 +01:00
Luis Ramos
fbc7eea1a5 Merge pull request #5811 from jttyeung/master
Fix #5730 content header overlap with long product names
2020-07-30 17:53:09 +01:00
Luis Ramos
0359d103b2 Improve code comments on dodgy and/but critical checkout process method 2020-07-30 17:18:34 +01:00
Luis Ramos
1400b3667b Merge pull request #5788 from romale/patch-2
Missing translation key for shipping_method and new_order
2020-07-30 16:54:07 +01:00
Luis Ramos
e739c5185e Add specs to verify that Spree::Core::Gateway exceptions are handled correctly 2020-07-29 23:56:52 +01:00
Luis Ramos
2136eecd09 Avoid reloading the payment every time, so that in-memory data is not wiped out
When checkout fails and the payment states dont match (inside the if), in-memory data of the failed payment can be lost but updating the payment state is the fundamental part here so that further checkout attempts work. We may improve this update statement so that all the data of the failed payment is persisted
2020-07-29 22:50:30 +01:00
Luis Ramos
9e9e0d0bd8 Remove rescue_from and just add the rescue to the edit action, the update action has a different logic where there is a generic rescue StandardError after the GatewayError rescue 2020-07-29 22:50:25 +01:00
Luis Ramos
da4abf6617 Add a comment to explain the necessity of the first rescue in the update action 2020-07-29 22:50:20 +01:00
Luis Ramos
ad00971ca8 Improve readability and add bugsnag error (now in the checkout_failed method) when checkout_fails while handling stripe redirect 2020-07-29 22:50:18 +01:00
Andy Brett
54cb479fa1 Update Docker instructions to mention the recommendation to create one's own fork 2020-07-29 13:04:34 -07:00
Pau Pérez Fabregat
e9787552c8 Merge pull request #5713 from Matt-Yorkley/taxon-icons
Remove taxon icons
2020-07-29 18:43:06 +02:00
Luis Ramos
bea472623d Merge pull request #5834 from openfoodfoundation/dependabot/bundler/unicorn-5.6.0
Bump unicorn from 5.5.5 to 5.6.0
2020-07-29 14:33:04 +01:00
Pau Perez
84178c637e Add missing momentjs languages to back-office 2020-07-29 13:02:46 +02:00
Pau Perez
9bf58a8258 Add missing Catalan, Arabic & Turkish for momentjs 2020-07-29 12:53:34 +02:00
Pau Perez
c923edd3bb Replace hardcoded URL with path helper 2020-07-29 11:36:49 +02:00
Pau Pérez Fabregat
bcaa308ac8 Merge pull request #5825 from openfoodfoundation/transifex
Transifex
2020-07-29 11:20:56 +02:00
Maikel Linke
fe0c04b650 Complete renaming of AdvanceOrderService to OrderWorkflow 2020-07-29 12:24:18 +10:00
Robin Klaus
4375a34ef8 Updated message to Paypal payments cannot be captured in the Backoffice 2020-07-29 10:18:25 +10:00
Luis Ramos
07005594ff Move payments persistence code to order workflow service 2020-07-28 23:56:43 +01:00
Luis Ramos
ac5882e3e6 Refactor OrderWorkflow 2020-07-28 23:55:36 +01:00
Luis Ramos
9cbcf14485 Move shipping method id setting code to OrderWorkflow service 2020-07-28 23:50:47 +01:00
Luis Ramos
c3f99050fd Move advance_order_state from checkout_controller to OrderWorkflow service 2020-07-28 23:43:07 +01:00
Luis Ramos
26eee4631f Rename AdvanceOrderService to OrderWorkflow 2020-07-28 23:40:49 +01:00
Luis Ramos
734fce5ce7 Add code to persist payments after failed payments. The state machine
rollbacks the transactions, with this we keep record of what went wrong.
2020-07-28 23:29:49 +01:00
Luis Ramos
e80337a458 Transpec checkout_spec 2020-07-28 23:29:49 +01:00
Luis Ramos
51de5269dc Fix specs in checkout_spec 2020-07-28 23:29:49 +01:00
Luis Ramos
e99f0dc6b7 Rubocop autocorrect and easy rubocop issues 2020-07-28 23:29:49 +01:00
Luis Ramos
d8a96c9d34 Bring order checkout workflow and some of its specs from spree_core 2020-07-28 23:29:49 +01:00
dependabot-preview[bot]
555a74c9e6 Bump oj from 3.10.7 to 3.10.8
Bumps [oj](https://github.com/ohler55/oj) from 3.10.7 to 3.10.8.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.10.7...v3.10.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-28 21:10:22 +00:00
Luis Ramos
275a864e51 Merge pull request #5815 from coopdevs/eager-load-option-values-line-items
Eager load spree_option_values_line_items
2020-07-28 17:21:02 +01:00
Luis Ramos
61453968dd Merge pull request #5833 from luisramos0/pend_payments
Add unit tests for order.charge_shipping_and_payment_fees!
2020-07-28 17:18:57 +01:00
Transifex-Openfoodnetwork
8263e2e373 Updating translations for config/locales/es.yml 2020-07-29 00:39:21 +10:00
Transifex-Openfoodnetwork
aff8933d25 Updating translations for config/locales/ca.yml 2020-07-29 00:36:57 +10:00
Pau Pérez Fabregat
d4570240ae Merge pull request #5826 from openfoodfoundation/luisramos0-patch-1
Update GETTING_STARTED.md
2020-07-28 15:59:38 +02:00
dependabot-preview[bot]
d0a7f8e1af Bump unicorn from 5.5.5 to 5.6.0
Bumps [unicorn](https://yhbt.net/unicorn/) from 5.5.5 to 5.6.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-27 23:44:40 +00:00
Luis Ramos
d673f278ce Add unit test to order.charge_shipping_and_payment_fees! 2020-07-27 21:27:23 +01:00
Luis Ramos
a002ec1894 Simplify login_as_admin by using existing factory admin_user 2020-07-27 16:02:59 +01:00
Luis Ramos
ecc58cedd9 Fix navigation problem in spec 2020-07-27 16:02:59 +01:00
Luis Ramos
27ace50eb7 Fix general settings path in specs 2020-07-27 16:02:57 +01:00
Luis Ramos
4df81f0864 Remove unnecesasary and now broken require statement from spec and fix rubocop todo files 2020-07-27 15:32:35 +01:00
Luis Ramos
95a9ca7775 Remove redundant method, login_as is the name of the test helper in warden 2020-07-27 15:32:35 +01:00
Luis Ramos
d6a5ad70a8 Adapt specs in order mgmt engine to new authentication helper 2020-07-27 15:32:35 +01:00
Luis Ramos
a2ebc614d9 Rename AuthenticationWorkflow to AuthenticationHelper 2020-07-27 15:32:35 +01:00
Luis Ramos
10b07aabd9 Rename quick_login_as to login_as 2020-07-27 15:32:35 +01:00
Luis Ramos
5738ec0542 Rename login_to_admin_and_visit to login_as_admin_and_visit 2020-07-27 15:32:34 +01:00
Luis Ramos
c6bb756531 Rename quick_login_as_admin to login_as_admin and also re-use login_to_admin_and_visit when applicable 2020-07-27 15:31:23 +01:00
Luis Ramos
8b04e45ea5 Create login_to_admin_and_visit to avoid loading the admin dashboard unnecessarily
This commit removes 19 unnecessary page loads of the admin dashboard
2020-07-27 15:31:11 +01:00
Luis Ramos
f1a3814c0d Rename login_as_enterprise_user to a more specific name controller_login_as_enterprise_user 2020-07-27 14:44:25 +01:00
Luis Ramos
8e84754f35 Rename login_as_admin to a more specific name controller_login_as_admin 2020-07-27 14:44:25 +01:00
Luis Ramos
81710a2704 Remove now dead create_enterprise_user, the user factory should be used instead 2020-07-27 14:44:25 +01:00
Luis Ramos
1af4bf6994 Replace usage of create_enterprise_user with :user factory 2020-07-27 14:44:23 +01:00
Luis Ramos
3217b3ba86 Delete dead commented code 2020-07-27 12:28:53 +01:00
Luis Ramos
16b9c8c814 Replace usage of create_enterprise_user with :user factory 2020-07-27 12:28:33 +01:00
Transifex-Openfoodnetwork
79aadf5c86 Updating translations for config/locales/tr.yml 2020-07-27 03:23:28 +10:00
Luis Ramos
ec0d06af54 Reuse update_failed method as the code needed is exactly the same 2020-07-25 19:39:46 +01:00
Luis Ramos
b23b707b5d Notify bugsnag and execute post checkout actions (reset to cart state) whenever there's a payment gateway exceeption raised 2020-07-25 19:39:46 +01:00
Luis Ramos
1bf946d124 Reused code in checkout controller, the reponse for the case when there is a stripe exception anywhere is the same as when the update action fails 2020-07-25 19:39:46 +01:00
Luis Ramos
5266d95910 Move method closer to related/similar methods 2020-07-25 19:39:46 +01:00
Luis Ramos
df22ad46d6 Update GETTING_STARTED.md
Clarify users landing on this page that they should use ofn-install for server deployments.
2020-07-25 14:53:35 +01:00
Transifex-Openfoodnetwork
227892b629 Updating translations for config/locales/en_FR.yml 2020-07-25 23:36:58 +10:00
Transifex-Openfoodnetwork
ffc98c63fa Updating translations for config/locales/fr.yml 2020-07-25 23:36:48 +10:00
Luis Ramos
add7bb489f Update all locales with the latest Transifex translations 2020-07-25 13:13:35 +01:00
Cillian O'Ruanaidh
702669e61c Merge branch 'master' into prevent-blank-open-street-map 2020-07-24 16:00:37 +01:00
Cillian O'Ruanaidh
cc317bc8c9 Move the :initialLatitude and :initialLongitude methods from the OpenStreetMap service to the MapCenterCalculator service. 2020-07-24 16:00:30 +01:00
Luis Ramos
752d9e9bb8 Merge pull request #5806 from openfoodfoundation/bring-in-payment-model
Bring in payment model
2020-07-24 14:52:20 +01:00
Luis Ramos
d93c1684b9 Merge pull request #5780 from coopdevs/handle-credit-validation-errors
Handle credit validation errors
2020-07-24 14:49:52 +01:00
Luis Ramos
603991996f Merge pull request #5799 from luisramos0/calcs_bug
Add migration to fix calculator preferences
2020-07-24 14:22:55 +01:00
Luis Ramos
32d45f6fe5 Merge pull request #5747 from mbudm/issue/5434
Make keyboard UI close on iOS when done searching
2020-07-24 13:25:39 +01:00
Luis Ramos
8f4395a6ea We need to clear Rails cache after updating preferences so that the app picks the new values immediately 2020-07-24 13:17:43 +01:00
Luis Ramos
1b31b727c7 Add migration to fix calculator preferences 2020-07-24 13:17:43 +01:00
Pau Perez
97f551a2dd Replace literal with AR's 4 #not 2020-07-23 20:24:31 +02:00
Pau Perez
357037e429 Recalculate adjustments when invalidating payments
Switching from `#invalidate` to `#update_column` skipped both
validations and callbacks and thus, `#ensure_correct_adjustments` was no
longer called for older payments.
2020-07-23 20:24:31 +02:00
Pau Perez
e6943ce554 Fix simple Rubocop issues 2020-07-23 20:24:31 +02:00
Pau Perez
4d9fbb68d6 Add missing attribute to skip source validation 2020-07-23 20:24:31 +02:00
Pau Perez
813459ee38 Clarify method documentation 2020-07-23 20:24:31 +02:00
Pau Perez
c0f72f89f2 Handle #refund! as we do with #credit! 2020-07-23 20:24:31 +02:00
Pau Perez
0f0a704147 Skip source validation when applying credit
The original payment may not be valid because its credit card may be
expired. Stripe gives this as a valid scenario returning a success and
we should do too.

When creating the credit payment we end up validating all sources in
a chain as follows.

```
Payment being persisted -> source payment -> original credit card.
```

The source payment was valid when created (It would not be persisted
otherwise) but its source card may now be expired, and that's legit.

There was also an issue with the `#invalidate_old_payments` callback. It
was causing the original payment to be validated again and thus the
credit payment failed to be persisted due to the original credit card
being expired. Switching this callback to use `#update_column` skips
validations and so we don't validate the source payment. We only care
about the state there, so it should be fine.
2020-07-23 20:24:31 +02:00
Pau Perez
f2b28a198d Replace before_validation with custom validation
No reason to use a callback when custom validation methods can be
defined.
2020-07-23 20:24:31 +02:00
Pau Perez
f2fd426c4a Fix old Spree specs
Given the importance of this code, it doesn't bring me much confidence.
Apparently, this specs where using a non-existent state by mistake and
this went unnoticed because the payment creation was failing silently in
payment/processing.rb.

This unearthed the fact that our `#ensure_correct_adjustment` needs the
order to be persisted to succeed.
2020-07-23 20:24:31 +02:00
Pau Perez
1c026479f5 Replace spec's syntax to RSpec 3 2020-07-23 20:24:31 +02:00
Pau Perez
73b1b1f172 DRY specs and fix rubocop failures 2020-07-23 20:24:31 +02:00
Pau Perez
59da07de66 Handle all errors when dealing with payment event
This basically catches ActiveRecord::RecordInvalid caused by an invalid
credit record, for instance, but also other situations we haven't
forseen.
2020-07-23 20:24:31 +02:00
Pau Perez
26ed601996 Test the payment controller handles GatewayError
After that, we can TDD a second one that also handles validation errors.
2020-07-23 20:24:31 +02:00
Pau Perez
6ca6938df4 Merge branch 'master' into bring-in-payment-model
* master: (91 commits)
  Bump ddtrace from 0.37.0 to 0.38.0
  Add spec to cover SQL query issue with OCs where the only products from the coordinator inventory are renderer
  Remove unnecessary order statement, the relation will only be used for counting products
  Move select out of scope visible_for because it is breaking exchange_product queries and it's just not needed there. The only other use of this product's scope visible_for is the enterprise serializer so we add the select to it.
  Make OC advanced settings work by permitting the extra parameter
  Remove conflicting and duplicate route
  Bump bugsnag from 6.13.1 to 6.14.0
  Make charges update method update the first pending payment
  Move require_login_then_redirect_to to the only place where it is called
  Make broken spec fail reliably and set it pending
  Updating translations for config/locales/en_GB.yml
  Update all locales with the latest Transifex translations
  Doc defensive coding needed by pin payments
  Make method a little simple by extracting method
  Simplify spec, the 2 minutes wait is not necessary anylonger
  Make unauthorized in ControllerHelpers::Auth the same as in Spree::Admin::BaseController
  Move unauthorized view to HomeController only, all other calls to unauthorized will go through Auth which will redirect to the home controller IF the user is logged in or to login if user is not logged in
  Adapt specs to the move of unauthorized route from the spree routes to the main app routes
  Delete spree_user_signup which is from spree promotions code that we dont use
  Remove try_spree_current_user
  ...
2020-07-23 20:20:43 +02:00
Joanne Yeung
abc132d3db Remove trailing whitespace 2020-07-23 09:37:10 -06:00
Joanne Yeung
b16f486dcc Address missing semi-colon 2020-07-23 09:25:56 -06:00
Luis Ramos
6cc91d457e Merge pull request #5796 from coopdevs/remove-conlicting-spree-route
Remove conflicting and duplicate route
2020-07-23 14:29:12 +01:00
Luis Ramos
438aef1e7a Merge pull request #5798 from luisramos0/payment_fees_master
Make charges update method update the first pending payment
2020-07-23 14:23:03 +01:00
Pau Perez
c8b738cbd5 Eager load spree_option_values_line_items
For the BulkCoop report to speed up. We move from an output like

```
web_1     |   CACHE (0.3ms)  SELECT id FROM "spree_line_items" WHERE "spree_line_items"."order_id" IN (SELECT id FROM "spree_orders" WHERE (("spree_orders"."distributor_id" IN (SELECT enterprises.id FROM "enterprises") OR "spree_orders"."order_cycle_id" IN (SELECT id FROM "order_cycles"))))
web_1     |   CACHE (0.0ms)  SELECT "spree_option_values".* FROM "spree_option_values" INNER JOIN "spree_option_types" ON "spree_option_types"."id" = "spree_option_values"."option_type_id" INNER JOIN "spree_option_values_line_items" ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id" WHERE "spree_option_values_line_items"."line_item_id" = $1 ORDER BY spree_option_types.position asc  [["line_item_id", 4]]
web_1     |   CACHE (0.0ms)  SELECT "spree_option_values".* FROM "spree_option_values" INNER JOIN "spree_option_types" ON "spree_option_types"."id" = "spree_option_values"."option_type_id" INNER JOIN "spree_option_values_line_items" ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id" WHERE "spree_option_values_line_items"."line_item_id" = $1 ORDER BY spree_option_types.position asc  [["line_item_id", 6]]
web_1     |   CACHE (0.0ms)  SELECT "spree_option_values".* FROM "spree_option_values" INNER JOIN "spree_option_types" ON "spree_option_types"."id" = "spree_option_values"."option_type_id" INNER JOIN "spree_option_values_line_items" ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id" WHERE "spree_option_values_line_items"."line_item_id" = $1 ORDER BY spree_option_types.position asc  [["line_item_id", 8]]
web_1     |   CACHE (0.0ms)  SELECT "spree_option_values".* FROM "spree_option_values" INNER JOIN "spree_option_types" ON "spree_option_types"."id" = "spree_option_values"."option_type_id" INNER JOIN "spree_option_values_line_items" ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id" WHERE "spree_option_values_line_items"."line_item_id" = $1 ORDER BY spree_option_types.position asc  [["line_item_id", 5]]
web_1     |   CACHE (0.0ms)  SELECT "spree_option_values".* FROM "spree_option_values" INNER JOIN "spree_option_types" ON "spree_option_types"."id" = "spree_option_values"."option_type_id" INNER JOIN "spree_option_values_line_items" ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id" WHERE "spree_option_values_line_items"."line_item_id" = $1 ORDER BY spree_option_types.position asc  [["line_item_id", 7]]
web_1     |   CACHE (0.0ms)  SELECT "spree_option_values".* FROM "spree_option_values" INNER JOIN "spree_option_types" ON "spree_option_types"."id" = "spree_option_values"."option_type_id" INNER JOIN "spree_option_values_line_items" ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id" WHERE "spree_option_values_line_items"."line_item_id" = $1 ORDER BY spree_option_types.position asc  [["line_item_id", 4]]
web_1     |   CACHE (0.0ms)  SELECT "spree_option_values".* FROM "spree_option_values" INNER JOIN "spree_option_types" ON "spree_option_types"."id" = "spree_option_values"."option_type_id" INNER JOIN "spree_option_values_line_items" ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id" WHERE "spree_option_values_line_items"."line_item_id" = $1 ORDER BY spree_option_types.position asc  [["line_item_id", 5]]
web_1     |   Rendered engines/order_management/app/views/order_management/reports/_report.html.haml (158.5ms)
web_1     |   Rendered engines/order_management/app/views/order_management/reports/bulk_coop/create.html.haml within spree/layouts/admin (187.3ms)
```

to

```
web_1     |   CACHE (0.0ms)  SELECT id FROM "spree_line_items" WHERE "spree_line_items"."order_id" IN (SELECT id FROM "spree_orders" WHERE (("spree_orders"."distributor_id" IN (SELECT enterprises.id FROM "enterprises") OR "spree_orders"."order_cycle_id" IN (SELECT id FROM "order_cycles"))))
web_1     |   CACHE (0.0ms)  SELECT "spree_option_types".* FROM "spree_option_types" WHERE "spree_option_types"."id" = $1 ORDER BY spree_option_types.position LIMIT 1  [["id", 1]]
web_1     |   Rendered engines/order_management/app/views/order_management/reports/_report.html.haml (101.1ms)
web_1     |   Rendered engines/order_management/app/views/order_management/reports/bulk_coop/create.html.haml within spree/layouts/admin (107.9ms)
```
2020-07-23 12:34:39 +02:00
Joanne Yeung
6419036a26 Fix content header overlap with long product names 2020-07-22 15:53:44 -06:00
Luis Ramos
3dc9548fb3 Merge pull request #5775 from luisramos0/oc_inv_bug
Make OC advanced settings work by permitting the extra parameter and make the OC edit page work with that option activated
2020-07-22 22:23:28 +01:00
romale
daa3f00302 Update all.js.coffee 2020-07-22 20:30:21 +03:00
romale
77c920daab Update all.js 2020-07-22 20:29:15 +03:00
Pau Pérez Fabregat
d3296dd5ee Merge pull request #5801 from openfoodfoundation/dependabot/bundler/ddtrace-0.38.0
Bump ddtrace from 0.37.0 to 0.38.0
2020-07-22 17:42:15 +02:00
dependabot-preview[bot]
48efb42b1a Bump ddtrace from 0.37.0 to 0.38.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.37.0 to 0.38.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.37.0...v0.38.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-21 21:27:14 +00:00
Luis Ramos
e445fc33a1 Add spec to cover SQL query issue with OCs where the only products from the coordinator inventory are renderer 2020-07-21 20:48:16 +01:00
Luis Ramos
aadbc9ed5d Remove unnecessary order statement, the relation will only be used for counting products 2020-07-21 19:44:43 +01:00
Luis Ramos
9b5875a7d1 Move select out of scope visible_for because it is breaking exchange_product queries and it's just not needed there. The only other use of this product's scope visible_for is the enterprise serializer so we add the select to it. 2020-07-21 19:44:43 +01:00
Luis Ramos
7ba8c5ace1 Make OC advanced settings work by permitting the extra parameter 2020-07-21 19:44:41 +01:00
Luis Ramos
8d7b383b72 Merge pull request #5794 from openfoodfoundation/dependabot/bundler/bugsnag-6.14.0
Bump bugsnag from 6.13.1 to 6.14.0
2020-07-21 17:58:30 +01:00
romale
4d6920bd92 Missing translation key for "permalink" and "shipping_categories"
When edit product in path admin/products/PRODUCT_NAME/edit
2020-07-21 18:49:24 +03:00
Pau Pérez Fabregat
426c536750 Merge pull request #5677 from luisramos0/remove_spree_root_path
Bring ControllerHelpers from Spree and remove spree root path
2020-07-21 16:15:21 +02:00
Pau Perez
9be199a6cc Remove conflicting and duplicate route
This Spree route conflicts with the one we define:

```
get "/login", to: redirect("/#/login")
```

for whatever reason there are 7 users that managed to hit the Spree one
instead of ours when confirming their signup email. It's not clear to me
though when this `/login?validation=confirmed` is really hit. The
confirmation email link passes a token in the query params and this is
not the case.

The idea is that `GET /login` makes the login modal to show up instead
of Devise's default behaviour (through inheritance) of showing a login
form page. OFN was never prepared to handle this as this bug proofs.
2020-07-21 13:27:06 +02:00
dependabot-preview[bot]
bb178c71b2 Bump bugsnag from 6.13.1 to 6.14.0
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.13.1 to 6.14.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.13.1...v6.14.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-20 23:35:34 +00:00
Luis Ramos
21227d7482 Make charges update method update the first pending payment
Updating the first overall payment could select a failed payment and ignore the pending payment that is about to be processed
2020-07-20 18:23:06 +01:00
Robin Klaus
d43a3ac65e Added translation key to locale/en.yml for backoffice admin payment and added lazy loading 2020-07-20 13:07:41 +10:00
romale
19c7d11df5 Missing translation key for new_order
admin/orders/new
2020-07-19 22:06:07 +03:00
romale
eb2e894802 Missing translation key for shipping_method
admin/orders
2020-07-19 21:55:37 +03:00
Luis Ramos
62a3b6b720 Merge pull request #5406 from kristinalim/fix/5300-optimistic_locking_in_stock_items
5300 Avoid race conditions in Spree::StockItem
2020-07-17 22:24:59 +01:00
Luis Ramos
152e432f78 Merge pull request #5749 from mbudm/issue/1253
Ensure the hero image doesn't pixelate on hamburger menu open
2020-07-17 22:15:46 +01:00
Pau Pérez Fabregat
89906f581d Merge pull request #5778 from openfoodfoundation/transifex
Transifex
2020-07-17 18:37:22 +02:00
Luis Ramos
001d40d691 Move require_login_then_redirect_to to the only place where it is called
This fixes a class loading issue where orders controllers was getting a undefined method require_login_then_redirect_to
2020-07-17 14:35:42 +01:00
Maikel
ea1e23abab Merge pull request #5756 from mkllnk/broken-spec
Make broken spec fail reliably and set it pending
2020-07-17 09:56:56 +10:00
Maikel Linke
b0ac188430 Make broken spec fail reliably and set it pending
This spec has been broken for a long time, at least eight months. But it
regularly passed because the search filter is applied with a delay and
in that time the content matches. And once the filter is applied, no
products are shown and the negative matchers pass.
2020-07-17 09:28:17 +10:00
Transifex-Openfoodnetwork
f31a1ff59c Updating translations for config/locales/en_GB.yml 2020-07-17 04:10:57 +10:00
Luis Ramos
2fe37b5237 Update all locales with the latest Transifex translations 2020-07-16 18:07:40 +01:00
Luis Ramos
981f1c0932 Merge pull request #5754 from openfoodfoundation/transifex
Transifex
2020-07-16 18:06:17 +01:00
Pau Perez
dd5e679f69 Address code review comments
Mostly styling issues.
2020-07-16 15:30:28 +02:00
Maikel
4e3502cce7 Merge pull request #5766 from mkllnk/5764-fix-pin-payments
5764 Provide credit card brand to Pin Payments
2020-07-16 10:28:18 +10:00
Matt-Yorkley
19b3041e1d Merge pull request #5768 from Matt-Yorkley/pin-payments-params
Update StrongParams for Pin Payments
2020-07-16 00:01:34 +02:00
Pau Perez
4e00c45782 Doc defensive coding needed by pin payments
[skip ci]
2020-07-15 16:46:09 +02:00
Luis Ramos
efacca6292 Revert "Enhancement/5454 make links to shops under Groups > Producers open in new tab" 2020-07-15 15:33:03 +01:00
Luis Ramos
31e072179b Make method a little simple by extracting method 2020-07-15 15:23:16 +01:00
Luis Ramos
57fd1bdee2 Merge pull request #5744 from openfoodfoundation/dependabot/bundler/i18n-js-3.7.1
Bump i18n-js from 3.7.0 to 3.7.1
2020-07-15 15:04:55 +01:00
Luis Ramos
2605c4249b Simplify spec, the 2 minutes wait is not necessary anylonger 2020-07-15 14:54:53 +01:00
Luis Ramos
3599cb2047 Make unauthorized in ControllerHelpers::Auth the same as in Spree::Admin::BaseController
It adapts the method in ControllerHelpers::Auth to also use the after_login mechanism.

Ideally we would remove one of the two after_login mechanisms after_login and spree_user_return_to but they might still be in use.
2020-07-15 14:54:53 +01:00
Luis Ramos
8fac1bc9ca Move unauthorized view to HomeController only, all other calls to unauthorized will go through Auth which will redirect to the home controller IF the user is logged in or to login if user is not logged in 2020-07-15 14:54:52 +01:00
Luis Ramos
7f1797de58 Adapt specs to the move of unauthorized route from the spree routes to the main app routes 2020-07-15 14:54:52 +01:00
Luis Ramos
bf3150ddc8 Delete spree_user_signup which is from spree promotions code that we dont use 2020-07-15 14:53:35 +01:00
Luis Ramos
1666ffb191 Remove try_spree_current_user
This can be done because the method is defined in OFN's ApplicationController, so spree_current_user is available in all controllers
2020-07-15 14:53:35 +01:00
Luis Ramos
144811268e Adapt require statements to new undecorated classes 2020-07-15 14:53:35 +01:00
Luis Ramos
d2e52f3136 Update rubocop manual todo 2020-07-15 14:53:35 +01:00
Luis Ramos
046c5f6585 Fix easy rubocop issues 2020-07-15 14:53:08 +01:00
Luis Ramos
97f00153ad Bring controller_helpers/ssl.rb from spree 2020-07-15 14:53:08 +01:00
Luis Ramos
643a82c73c Fix easy rubocop issues, some early returns make the indentation changes 2020-07-15 14:53:08 +01:00
Luis Ramos
a3ea4b757d Merge decorator into the class brought from spree 2020-07-15 14:53:08 +01:00
Luis Ramos
1167a1a9bb Bring ControllerHelpers respond_with from spree 2020-07-15 14:53:08 +01:00
Luis Ramos
20f610fbee Merge controller_helpers/order with decorator 2020-07-15 14:53:08 +01:00
Luis Ramos
d5744572f7 Fix easy rubocop issues 2020-07-15 14:53:08 +01:00
Luis Ramos
23ff9d6fbb Bring controller_helpers/order to OFN 2020-07-15 14:53:08 +01:00
Luis Ramos
10849504c3 Fix easy rubocop issues 2020-07-15 14:53:08 +01:00
Luis Ramos
2452202e92 Move lib/spree/core/controller_helpers/common.rb from spree 2020-07-15 14:53:08 +01:00
Luis Ramos
96839a03aa Move lib/spree/core/controller_helpers.rb from spree 2020-07-15 14:53:08 +01:00
Luis Ramos
4ee30d7cac Remove spree.root route and respective controller. Also move
unauthorized route to main app.

This route is no longer used in OFN
2020-07-15 14:53:08 +01:00
Luis Ramos
7e75581da6 Merge class brought from spree with decorator 2020-07-15 14:53:08 +01:00
Luis Ramos
c8dd841c48 Fix some rubocop issues 2020-07-15 14:53:08 +01:00
Luis Ramos
2ea026ea31 Bring controller helper auth from spree 2020-07-15 14:53:08 +01:00
Pau Perez
70afcee3fc Fix Spree's spec clashing with a customization
`#save_requested_by_customer` is an accessor we added and thus, the
Spree's spec didn't consider.
2020-07-15 14:18:36 +02:00
Pau Perez
3a64cc426a Reuse #calculate_refund_amount method 2020-07-15 14:01:58 +02:00
Pau Perez
a8af3a27b1 Fix all but Metrics Rubocop cops in processing.rb 2020-07-15 14:01:58 +02:00
Pau Perez
42658b5255 Refactor #process! nested ifs to guard clauses
Following Rubocop's indications.
2020-07-15 14:01:58 +02:00
Pau Perez
66dbd85eb4 Run rubocop autocorrect on payment/processing.rb 2020-07-15 14:01:58 +02:00
Pau Perez
3435d5ac97 Fix Rubocop non-metrics issues in payment model 2020-07-15 14:01:30 +02:00
Matt-Yorkley
c009fed6be Update StrongParams for Pin Payments 2020-07-15 14:00:19 +02:00
dependabot-preview[bot]
5fae2c08c8 Bump i18n-js from 3.7.0 to 3.7.1
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/fnando/i18n-js/releases)
- [Changelog](https://github.com/fnando/i18n-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fnando/i18n-js/compare/v3.7.0...v3.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-15 08:13:42 +00:00
Pau Pérez Fabregat
d4fea5223d Merge pull request #5762 from openfoodfoundation/dependabot/bundler/oj-3.10.7
Bump oj from 3.10.6 to 3.10.7
2020-07-15 10:13:19 +02:00
Maikel Linke
25155cab18 Provide credit card brand to Pin Payments
Spree replaced the Ruby code providing the credit card brand with a
jquery plugin providing it on the checkout screen.

I re-added Ruby code because it's easier and more robust than updating
the user interface with new Javascript.
2020-07-15 17:13:46 +10:00
Steve Roberts
dbc7632c4e Add inline comment to explain two height properties 2020-07-15 09:52:04 +10:00
Luis Ramos
646f48f0af Add translation keys for test and shipment emails and make them lazy lookups 2020-07-14 14:35:36 +01:00
Luis Ramos
f66538d2cb Convert test and shipment email templates to haml 2020-07-14 14:26:05 +01:00
Luis Ramos
55f160c309 Bring test and shipment email templates from spree_core 2020-07-14 14:23:09 +01:00
Luis Ramos
5835a0ee3a Transpec mailer specs 2020-07-14 14:20:30 +01:00
Luis Ramos
e96d9c1f45 Fix mailer specs brought from spree_core 2020-07-14 14:19:19 +01:00
Luis Ramos
5162964936 Fix easy rubocop issues 2020-07-14 13:46:01 +01:00
Luis Ramos
d12495f3db Merge decorators with original classes brought from spree and merge order_mailer specs 2020-07-14 13:38:11 +01:00
Luis Ramos
c6cd695b3c Bring remaing mailers from spree_core 2020-07-14 13:28:11 +01:00
Steve Roberts
c4d7899a99 Use vh units for new browsers and align tagline bg to top. 2020-07-14 19:26:12 +10:00
Transifex-Openfoodnetwork
f79269e96b Updating translations for config/locales/ca.yml 2020-07-14 17:46:12 +10:00
Steve Roberts
60870a1215 Fix linting errors 2020-07-14 12:58:48 +10:00
Steve Roberts
63a080266e Merge branch 'master' of https://github.com/openfoodfoundation/openfoodnetwork into issue/1253 2020-07-14 12:45:14 +10:00
dependabot-preview[bot]
f4cb14ab1a Bump oj from 3.10.6 to 3.10.7
Bumps [oj](https://github.com/ohler55/oj) from 3.10.6 to 3.10.7.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.10.6...v3.10.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-14 00:10:40 +00:00
Luis Ramos
9c8318d828 Merge pull request #5613 from luisramos0/calculators
Move all Calculators from spree to OFN and out of the Spree namespace
2020-07-13 15:16:15 +01:00
Luis Ramos
d536cc8108 Merge pull request #5755 from Matt-Yorkley/groups-images
Fix StrongParameters for groups images
2020-07-13 14:50:24 +01:00
Matt-Yorkley
f450c21308 Merge pull request #5759 from luisramos0/vo_spec
Comment very flaky spec
2020-07-10 21:44:03 +02:00
Luis Ramos
eb4d648a23 Comment this very flaky spec for now 2020-07-10 19:27:31 +01:00
Pau Perez
cf64d3a290 Merge skipped callback from decorator into model
If we don't want that callback we can just as well remove it now that we
own that code.
2020-07-10 15:07:12 +02:00
Pau Perez
55d52b875f Run rubocop autocorrect on payment model 2020-07-10 15:04:29 +02:00
Luis Ramos
5afb862ce1 Extract setup and authorize to a new method called prepare_for_payment to fix rubocop ABCsize issue
It looks like this rubocop rule weights a raise over a return...
2020-07-10 13:14:07 +01:00
Pau Perez
6389fdb16e Simplify code related to error handling 2020-07-10 13:14:07 +01:00
Luis Ramos
01ab974a3b Add rescue statment to failed payment email so that the processing of other orders continues if there is a problem while sending the email 2020-07-10 13:14:07 +01:00
Luis Ramos
7a9f9a5624 Log bugsnag and still send failed payment email when any exception is caught during the confirmation process 2020-07-10 13:14:05 +01:00
Transifex-Openfoodnetwork
50427472c4 Updating translations for config/locales/en_NZ.yml 2020-07-10 20:25:20 +10:00
Pau Perez
683794636b Rename spec file 2020-07-10 11:57:36 +02:00
Pau Perez
2f4648342f Merge decorator specs with Spree's ones
They are now isolated from each other.
2020-07-10 11:50:20 +02:00
Pau Perez
562f397b22 Isolate Spree's specs into their own context
This way we don't mix contexts while merging in our own decorator tests.
2020-07-10 11:46:59 +02:00
Pau Perez
8fbbb0bb64 Bring back our card factory modification
Merging Spree's an our factory didn't really work.
2020-07-10 11:42:56 +02:00
Pau Perez
d8b748a851 Merge alias_method method and its original version 2020-07-10 10:41:44 +02:00
Pau Perez
d49068ce66 Move method delegation from decorator to model 2020-07-10 10:41:44 +02:00
Pau Perez
cf6138da66 Replace model method with its decorated version 2020-07-10 10:41:44 +02:00
Pau Perez
3fb6193098 Move adjustments logic from decorator into model 2020-07-10 10:41:44 +02:00
Pau Perez
861726200c Move localize_number from decorator to model 2020-07-10 10:41:44 +02:00
Pau Perez
48910aeb77 Move #refund! to the processing.rb 2020-07-10 10:41:44 +02:00
Pau Perez
6d9a518616 Move method from decorator to model 2020-07-10 10:41:44 +02:00
Pau Perez
322c4d0f3f Move decorator's callbacks to model 2020-07-10 10:41:44 +02:00
Pau Perez
eafaa97b0e Temporarily skip spec
I'll move on to other easier issues and get back to it when we're in
a better position.
2020-07-10 10:41:44 +02:00
Pau Perez
31d0d4bcae Fix error "no parent is saved"
The exact error is

```
ActiveRecord::RecordNotSaved:
       You cannot call create unless the parent is saved
```

raised from app/models/spree/payment_decorator.rb:29:in `ensure_correct_adjustment'
2020-07-10 10:41:44 +02:00
Pau Perez
9935df9f2d Move Pin payment method from decorator into model 2020-07-10 10:41:44 +02:00
Pau Perez
0ad8dcc2c5 Fix payment log entries specs
The tight coupling between doesn't give other option but to check the
private method is called. The specs successfully stub
`log_entries#create` but for some reason the model instance that gets
evaluated it's not the stubbed one.
2020-07-10 10:41:44 +02:00
Pau Perez
a01f601363 Fix yet another spec 2020-07-10 10:41:44 +02:00
Pau Perez
34de219233 Bring in missing translation 2020-07-10 10:41:44 +02:00
Pau Perez
e1ea5dbcb3 Fix all but the 7 last payment specs 2020-07-10 10:41:44 +02:00
Pau Perez
abacd06f6b Fix credit card instance in specs 2020-07-10 10:41:44 +02:00
Pau Perez
06aa56164f Bring in Payment model from Spree 2020-07-10 10:41:44 +02:00
Maikel
c1d700196b Merge pull request #5739 from Matt-Yorkley/flaky-spec-complex-oc
Flaky spec order_cycles/complex_updating_specific_time
2020-07-10 14:59:59 +10:00
Luis Ramos
cc3361aaac Merge pull request #5659 from dmarcoux/issue-5555
Filter orders on inclusive dates in admin/orders
2020-07-09 20:40:45 +01:00
Luis Ramos
ed915006fa Merge pull request #5738 from openfoodfoundation/dependabot/bundler/wicked_pdf-2.1.0
Bump wicked_pdf from 1.4.0 to 2.1.0
2020-07-09 20:40:11 +01:00
Matt-Yorkley
1a132924d2 Fix StrongParameters for groups images 2020-07-09 10:00:02 +02:00
Transifex-Openfoodnetwork
e3980521ea Updating translations for config/locales/fr_CA.yml 2020-07-09 07:58:41 +10:00
Transifex-Openfoodnetwork
e6a2eb8af9 Updating translations for config/locales/en_CA.yml 2020-07-09 07:53:34 +10:00
Luis Ramos
5648b2e281 Add rescue statements to subs jobs so that when an order placement or confirmation fails, there's a bugsnag alert for it and the job continues processing the rest of the orders 2020-07-08 18:41:14 +01:00
Luis Ramos
fabddbd1c0 Merge pull request #5746 from coopdevs/remove-specs-dead-code
Remove dead specs helper method
2020-07-08 12:38:24 +01:00
Steve Roberts
2f562809c0 Ensure the hero image doesn't attempt to use the full height of all page content
Not sure exactly why this happens, but when the mobile nav is opened the hero image at #tagline:before uses the height of the full window - often around 4000px. Adding max-height of 100% to the nearest safe parent prevents this behaviour.
2020-07-08 21:31:52 +10:00
Matt-Yorkley
a763a5ee0b Update all locales with the latest Transifex translations 2020-07-08 12:49:20 +02:00
Matt-Yorkley
d718eb9a23 Merge pull request #5726 from openfoodfoundation/transifex
Transifex
2020-07-08 12:33:09 +02:00
Matt-Yorkley
d78db16abe Merge pull request #5718 from Matt-Yorkley/available-locales-bug
Available locales bug
2020-07-08 12:30:18 +02:00
Steve Roberts
eda9293619 Change to new directive that prevents enter default and blurs the input field 2020-07-08 19:19:46 +10:00
Matt-Yorkley
e742069959 Refactor UI interactions for opening exchange product tabs in OC edit 2020-07-08 11:11:39 +02:00
Matt-Yorkley
c8254b8338 Adjust exchange_row assertion to use slightly more specific criteria 2020-07-08 11:11:39 +02:00
Matt-Yorkley
be1e39f0cb Ensure next page has loaded before interacting with form elements 2020-07-08 11:11:39 +02:00
Pau Perez
a1e8c8ad03 Remove dead specs helper method
I found it while reviewing
https://github.com/openfoodfoundation/openfoodnetwork/pull/5718#discussion_r451390809.
2020-07-08 10:59:13 +02:00
Luis Ramos
312e78ba61 Merge pull request #5742 from Matt-Yorkley/flaky-spec-shopping
Fix flaky shopping_spec
2020-07-07 18:11:00 +01:00
Luis Ramos
207c6bc205 Merge pull request #5741 from Matt-Yorkley/flaky-spec-exchange-renderer
Re-enable and fix flaky exchange products renderer spec
2020-07-07 18:09:02 +01:00
Luis Ramos
f8f7b30095 Merge pull request #5716 from openfoodfoundation/dependabot/bundler/database_cleaner-1.8.5
Bump database_cleaner from 1.7.0 to 1.8.5
2020-07-07 17:29:10 +01:00
Luis Ramos
ebc1ab4469 Merge pull request #5710 from openfoodfoundation/dependabot/bundler/mini_racer-0.2.15
Bump mini_racer from 0.2.14 to 0.2.15
2020-07-07 17:28:33 +01:00
Luis Ramos
5e6739c9f7 Fix long lines in new spec 2020-07-07 17:26:24 +01:00
Luis Ramos
99e12b6f07 Convert calculators in new spec 2020-07-07 17:26:24 +01:00
Luis Ramos
0b79e7c48c Fix rubucop issue in enterprise_fee model 2020-07-07 17:26:24 +01:00
Luis Ramos
d92f97716a Extract compute_for and thus resolve the rubocop complexity issue 2020-07-07 17:26:24 +01:00
Luis Ramos
68359d4d1a Remove unnecessary variable (this sum and += come from the original
spree code and is not necessary here now)
2020-07-07 17:26:24 +01:00
Luis Ramos
70432e301d Early exit if max is zero to make method shorted 2020-07-07 17:26:24 +01:00
Luis Ramos
fbe0a3246d Extract applicable_rate? and thus resolve rubocop complexity issue 2020-07-07 17:26:24 +01:00
Luis Ramos
b096717172 Extract per_order_fees_total out of compute_order 2020-07-07 17:26:24 +01:00
Luis Ramos
21120dd6ab Extract per_item_fees_total out of compute_order 2020-07-07 17:26:24 +01:00
Luis Ramos
4b12a5f592 Extract line_items_total from compute_order 2020-07-07 17:26:24 +01:00
Luis Ramos
eedf31e449 Make migration a bit easier to read 2020-07-07 17:26:24 +01:00
Luis Ramos
e225c5ce3a Migrate calculators to outside spree namespace 2020-07-07 17:26:24 +01:00
Luis Ramos
f62546254f Define DefaultTax calculator outside of spree namespace the tax_rate to be used by the app and make spree specs use calculators outside the spree namespace 2020-07-07 17:26:24 +01:00
Luis Ramos
6a94168ee5 Remove Spree namespace from DefaultTax 2020-07-07 17:26:24 +01:00
Luis Ramos
9c7cb23262 Move calculator specs out of the spree namespace 2020-07-07 17:26:24 +01:00
Luis Ramos
5e8438c446 Move all calculators outside the spree namespace 2020-07-07 17:26:23 +01:00
Luis Ramos
9c3eb3725e Remove dead code related to promotions, we dont have promotions in OFN 2020-07-07 17:20:22 +01:00
Luis Ramos
a544102b1b Fix some rubocop issues 2020-07-07 17:20:22 +01:00
Luis Ramos
f2a46d2cef Merge decorators into original classes brought from spree_core 2020-07-07 17:20:22 +01:00
Luis Ramos
6b04df0dea Fix indentation and extract Calculator as a separate module declaration 2020-07-07 17:20:22 +01:00
Luis Ramos
c2898ba389 Bring calculators from spree_core 2020-07-07 17:20:22 +01:00
Transifex-Openfoodnetwork
6be0ae543a Updating translations for config/locales/pt_BR.yml 2020-07-07 21:46:44 +10:00
Matt-Yorkley
f2e0b0f35a Ensure products list has loaded before interacting with product list UI elements 2020-07-07 13:14:11 +02:00
Matt-Yorkley
0f659d0f5e Merge pull request #5728 from luisramos0/ams_comment
Update ams dependency comment
2020-07-07 12:32:03 +02:00
Matt-Yorkley
30492157f9 Re-enable and fix flaky exchange products renderer spec
For some inexplicable reason `order_cycle.exchanges.incoming.first` and `order_cycle.exchanges.incoming.second` were returning the same exchange. Subsequently the inventory items being created were for the same variant, which throws an error due to a uniqueness validation in InventoryItem on variant_id. Changing from #first and #second to #first and #last results in the correct exchanges being assigned.
2020-07-07 11:21:18 +02:00
Luis Ramos
c1fa4fcc85 Merge pull request #5736 from Matt-Yorkley/flaky-spec-embedded
Fix flaky embedded shopping spec
2020-07-07 09:36:27 +01:00
dependabot-preview[bot]
4bee038109 Bump wicked_pdf from 1.4.0 to 2.1.0
Bumps [wicked_pdf](https://github.com/mileszs/wicked_pdf) from 1.4.0 to 2.1.0.
- [Release notes](https://github.com/mileszs/wicked_pdf/releases)
- [Changelog](https://github.com/mileszs/wicked_pdf/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mileszs/wicked_pdf/compare/1.4.0...2.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-06 23:50:22 +00:00
Matt-Yorkley
447a873e5c Fix flaky embedded spec
The new cart sidebar takes 300ms to animate in. If we try to click the button on the left during this time, we may click the button on the right as it slides in.
2020-07-07 00:23:43 +02:00
Matt-Yorkley
3d955a952c Merge pull request #5674 from mkllnk/caching_spec
Fix flaky caching spec
2020-07-06 21:56:02 +02:00
Luis Ramos
ce1114556d Merge pull request #5578 from mbudm/issue/3770-manual-update
Update orders swagger spec and fix api_key access to orders endpoint
2020-07-06 20:32:25 +01:00
Luis Ramos
761871c90e Merge pull request #5715 from luisramos0/ship_method
Fix issue in Spree 2.1 and bring Spree::Stock classes to OFN 🎉
2020-07-06 19:15:50 +01:00
Transifex-Openfoodnetwork
2a68e0fbba Updating translations for config/locales/tr.yml 2020-07-07 03:55:56 +10:00
Luis Ramos
ceac8a5d40 Merge pull request #5725 from Matt-Yorkley/admin-order-images
Fix default image display in admin order edit
2020-07-06 14:03:56 +01:00
Luis Ramos
b0dd83b773 Update ams dependency comment 2020-07-05 19:55:53 +01:00
Dany Marcoux
3dfabdc117 Filter orders on inclusive dates in admin/orders
Closes #5555

Co-authored-by: Luis Ramos <luisramos0@gmail.com>
2020-07-05 20:12:16 +02:00
Transifex-Openfoodnetwork
b951bcc379 Updating translations for config/locales/en_IN.yml 2020-07-05 04:34:29 +10:00
Transifex-Openfoodnetwork
6f6e8c0c92 Updating translations for config/locales/en_IN.yml 2020-07-05 04:29:50 +10:00
Transifex-Openfoodnetwork
787648eff2 Updating translations for config/locales/en_FR.yml 2020-07-04 23:52:01 +10:00
Transifex-Openfoodnetwork
7a4a673578 Updating translations for config/locales/fr.yml 2020-07-04 23:51:45 +10:00
Matt-Yorkley
96138e9129 Refactor UserLocaleSetter public methods 2020-07-04 10:15:35 +02:00
Matt-Yorkley
f08a530877 Make #valid_locale_for_user an instance method 2020-07-04 09:51:00 +02:00
Luis Ramos
d2adcd20e5 Merge pull request #5719 from coopdevs/index-state-changes
Index spree_state_changes.stateful_id column
2020-07-03 23:02:01 +01:00
Luis Ramos
ff9133b7aa Merge pull request #5699 from coopdevs/fix-order-button-radius
Make button border radius consistent
2020-07-03 23:01:14 +01:00
Luis Ramos
b917238d1e Merge pull request #5446 from luisramos0/sca_refunds
Make StripeSCA void action work
2020-07-03 22:45:35 +01:00
Transifex-Openfoodnetwork
45b960a7ee Updating translations for config/locales/pt_BR.yml 2020-07-04 07:39:50 +10:00
Matt-Yorkley
e2626a0c3b Add unit tests for UserLocaleSetter service 2020-07-03 23:14:38 +02:00
Matt-Yorkley
46c40bdf33 Fix default image display in admin order edit 2020-07-03 22:58:29 +02:00
Luis Ramos
a472b6525f Merge pull request #5707 from luisramos0/missing_spaces
Add space after translations so that translators dont have to guess a space is needed
2020-07-03 16:10:55 +01:00
Matt-Yorkley
05c1f093b2 Delete dead code
There's nothing done in this bit of code that isn't already done somewhere else, and more effectively.
2020-07-03 16:44:37 +02:00
Matt-Yorkley
0c2fd4bfd2 Fix ensure_valid_locale_persisted and change public interface of service 2020-07-03 16:39:24 +02:00
Matt-Yorkley
cc7b5e2df3 Add pending test for setting locale from cookies during login
This test currently fails
2020-07-03 16:39:23 +02:00
Luis Ramos
804450bcc5 Fix buggy spec
The different shipping method was in the page but only as an option in the dropdown, not as the final selected shipping method! That was the cause of bug #5694. We now check for the label Shipping which preceeds the final shipping method selection in the order page
2020-07-03 15:35:13 +01:00
Luis Ramos
b883a0eb75 Fix easy rubocop issues in shipment_spec 2020-07-03 13:48:12 +01:00
Luis Ramos
7b89b52ab8 Transpec shipment_spec brough from spree_core 2020-07-03 13:48:12 +01:00
Luis Ramos
07a44cfaf3 Update selected shipping rate if there is an original shipping method to keep and it is different from the one selected through the Estimator process
Make sure the shipment is saved (callbacks!) whenever the ship method has changed in the refresh_rates process
2020-07-03 13:48:12 +01:00
Luis Ramos
cd60ee2116 Use flat_map to make ship methods selection faster 2020-07-03 13:48:08 +01:00
Matt-Yorkley
ab63d2234c Guard against nils in conditions 2020-07-03 14:22:32 +02:00
Matt-Yorkley
078726dcca Add explanatory comment on saving selected locale in cookies 2020-07-03 14:21:45 +02:00
Matt-Yorkley
dab0add492 Make conditional more concise 2020-07-03 14:20:51 +02:00
Matt-Yorkley
ebffa381c6 Update cookies[:locale] logic 2020-07-03 14:06:05 +02:00
Matt-Yorkley
faa7c0a7c5 Extract save_cookies_from_locale comment-method 2020-07-03 14:03:52 +02:00
Matt-Yorkley
02549d1b0f Extract all locale-setting logic to a service 2020-07-03 13:44:13 +02:00
Matt-Yorkley
7a00a3ba1e Rename method and add explanatory comment 2020-07-03 11:52:21 +02:00
Matt-Yorkley
c726340ba3 Extract #save_locale_from_params comment-method 2020-07-03 11:48:39 +02:00
Luis Ramos
fcaa9d1b37 Remove extra space from base translations in closing and welcome to 2020-07-03 10:32:09 +01:00
Matt-Yorkley
d2db9b3a66 Merge pull request #5599 from luisramos0/submit_on_enteer
Make Enter submit the form on both products and orders admin
2020-07-03 11:14:57 +02:00
Luis Ramos
91026e6606 Merge pull request #5601 from jeduardo824/enhancement/5454-links-to-shops-in-new-tabs
Enhancement/5454 make links to shops under Groups > Producers open in new tab
2020-07-02 23:51:59 +01:00
Luis Ramos
d9ab7a8d49 Merge pull request #5667 from mkllnk/shopping-spec
Stabilise shopping specs and open them for change
2020-07-02 23:51:25 +01:00
Luis Ramos
758bb17142 Fix some easy rubocop issues and add some exceptions to to manual todo list 2020-07-02 21:24:15 +01:00
Luis Ramos
659de3d24d Replay spree commit a4622ee13a723f0dba2943967b445b9989f67fb2 to fix issue introduced in spree 2.1 2020-07-02 21:24:15 +01:00
Luis Ramos
21ec6ccf0d Remove unused sort packages from prioritizer 2020-07-02 21:24:15 +01:00
Luis Ramos
d323c5bdcb Simplify packer and coordinator baed on the fact that there's only one stock_location so there will only be one package per order 2020-07-02 21:24:15 +01:00
Luis Ramos
ff046f7a6c Remove conditionals related to Config.track_inventory_levels, this config is always true in OFN 2020-07-02 21:24:14 +01:00
Luis Ramos
ee937988e8 Fix easy rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
ee66e37521 Move adjuster, estimator, packer and prioritizer to order management engine 2020-07-02 21:24:14 +01:00
Luis Ramos
83974a832c Move Coordinator from Spree::Stock to OrderManagement::Stock 2020-07-02 21:24:14 +01:00
Luis Ramos
01b1abbd52 Bring method from Spree::Order so that we can move Coordiantor to the order management engine 2020-07-02 21:24:14 +01:00
Luis Ramos
b487185a65 Remove package factory, it is no longer needed, we can just call the Package class in the two places where it is used 2020-07-02 21:24:14 +01:00
Luis Ramos
f0b3ed0d79 Merge Spree::Stock::Package into OrderManagement::Stock::Package 2020-07-02 21:24:14 +01:00
Luis Ramos
943cb7bf05 Move Stock::Package to OrderManagement::Stock::Package 2020-07-02 21:24:14 +01:00
Luis Ramos
1b28592f58 Now that the stock code is on out side we can clean up!
Remove everything related to splitters (including bringing environment.rb so we remove the splitters variable from it
2020-07-02 21:24:14 +01:00
Luis Ramos
8e116dd58a Make ensure_correct_adjustment a public method because we call it in OFN 2020-07-02 21:24:14 +01:00
Luis Ramos
46cf106047 Fix shipment spec brought from spree 2020-07-02 21:24:14 +01:00
Luis Ramos
2e33e02d7f Remove dead code, this method was removed in spree 2.0.4 2020-07-02 21:24:14 +01:00
Luis Ramos
7a03f57da0 Merge shipment decorator with class brought from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
494251b7cf Fix simple rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
4e5259f491 Bring shipment from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
55a4021157 Convert to modern rspec syntax 2020-07-02 21:24:14 +01:00
Luis Ramos
bdb40d68e9 Fix easy rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
b7255130b6 Bring Package from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
0ca8b6aab6 Fix easy rubocop issue 2020-07-02 21:24:14 +01:00
Luis Ramos
3e14c9777e Merge decorator with class brought from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
d505fc2131 Bring availability validator from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
720ad9de0e Convert specs to modern rsspec syntax 2020-07-02 21:24:14 +01:00
Luis Ramos
feadbb086f Adapt spec to OFN context 2020-07-02 21:24:14 +01:00
Luis Ramos
b16db2f40e Fix easy rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
8c3b8c4db5 Bring estimator from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
4711a7469a Adapt coordinator spec to ofn and remove spec that is not applicable (multi stock locations) 2020-07-02 21:24:14 +01:00
Luis Ramos
69b9cfbad2 Make packer use BasicSplitter by default 2020-07-02 21:24:14 +01:00
Luis Ramos
fdc085f701 Convert to modern rspec and remove specs not applicable to ofn 2020-07-02 21:24:14 +01:00
Luis Ramos
ccf928df12 Fix simple rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
e0f9894b7a Bring packer from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
ec50a788a6 Fix easy rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
c2ec34ab9f Bring coordinator from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
a6d7acb6f1 Convert spec to modern rspec syntax 2020-07-02 21:24:14 +01:00
Luis Ramos
eb13595fd3 Fix simple rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
3ae2877d4e Bring adjuster and prioritizer from spree_core 2020-07-02 21:24:14 +01:00
Luis Ramos
d18fec7125 Move Base splitter from main app models to order management engine services 2020-07-02 21:24:14 +01:00
Luis Ramos
735ee1e7ed Fix simple rubocop issues 2020-07-02 21:24:14 +01:00
Luis Ramos
4fce506201 Bring splitter/base from spree 2020-07-02 21:24:14 +01:00
Luis Ramos
658c77f3f5 Merge pull request #5701 from Matt-Yorkley/noimage
Noimage
2020-07-02 20:17:04 +01:00
Luis Ramos
510449547f Merge pull request #5644 from coopdevs/manage-font-with-asset-pipeline
Manage OFN's font through the asset pipeline
2020-07-02 20:09:08 +01:00
Matt-Yorkley
8fc407a9d5 Extract repeated variant thumbnail code to a shared partial 2020-07-02 18:36:43 +02:00
Matt-Yorkley
eeb6c57f99 Update missing image paths in other order views 2020-07-02 18:36:27 +02:00
Matt-Yorkley
b10fd99a53 Update all locales with the latest Transifex translations 2020-07-02 16:46:53 +02:00
Matt-Yorkley
e328dc7657 Merge pull request #5717 from openfoodfoundation/transifex
Transifex
2020-07-02 16:43:58 +02:00
Pau Perez
dee61e8b82 Index spree_state_changes.stateful_id column
This speeds up a great deal one of the most awful queries our DB servers
execute. It's not rare to see traces above 20s in Datadog 😱.

In staging, with no traffic, we go from

```
EXPLAIN ANALYZE SELECT COUNT ( * )
FROM spree_state_changes
WHERE spree_state_changes . stateful_id = 2024
  AND spree_state_changes . stateful_type = 'Spree::Order';

Planning time: 0.142 ms
Execution time: 9.073 ms
```

to

```
EXPLAIN ANALYZE SELECT COUNT ( * )
FROM spree_state_changes
WHERE spree_state_changes . stateful_id = 2024
  AND spree_state_changes . stateful_type = 'Spree::Order';

Planning time: 0.284 ms
Execution time: 0.202 ms
```
2020-07-02 15:39:08 +02:00
Matt-Yorkley
4e08d2049f Ensure a valid locale is persisted during login
This action has to be performed here and not in I18nHelper, as spree_current_user is not initialized yet during the other checks / setting the selected locale value in the app
2020-07-02 15:33:19 +02:00
Matt-Yorkley
91880cdbec Make I18nHelper #available_locale? method public 2020-07-02 14:35:59 +02:00
Matt-Yorkley
d70d61439a Always return an available locale 2020-07-02 14:35:59 +02:00
Matt-Yorkley
aa6f4d4fb9 Don't set unavailable locales on the current user 2020-07-02 14:35:59 +02:00
Matt-Yorkley
8dfaea629b Refactor current_user_locale to a new method 2020-07-02 14:35:59 +02:00
Matt-Yorkley
3326366c6e Add specs for applying stored locales during login 2020-07-02 14:35:58 +02:00
dependabot-preview[bot]
cc34f126ec Bump mini_racer from 0.2.14 to 0.2.15
Bumps [mini_racer](https://github.com/discourse/mini_racer) from 0.2.14 to 0.2.15.
- [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.2.14...v0.2.15)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-02 11:22:57 +00:00
Pau Pérez Fabregat
4ced16c206 Merge pull request #5709 from luisramos0/empty
Replace empty? with blank? and replace unless empty? with if present?
2020-07-02 11:36:37 +02:00
Matt-Yorkley
26c511d47e Remove taxon icons
These icons are inconsistently used across instances and have already been removed in a few places in the app in the mobile UX redesign.
2020-07-02 11:25:17 +02:00
Transifex-Openfoodnetwork
1b8669bb0b Updating translations for config/locales/en_NZ.yml 2020-07-02 18:28:33 +10:00
Pau Pérez Fabregat
c1b635903c Merge pull request #5658 from openfoodfoundation/transifex
Transifex
2020-07-02 10:05:16 +02:00
dependabot-preview[bot]
eff9d6edd0 Bump database_cleaner from 1.7.0 to 1.8.5
Bumps [database_cleaner](https://github.com/DatabaseCleaner/database_cleaner) from 1.7.0 to 1.8.5.
- [Release notes](https://github.com/DatabaseCleaner/database_cleaner/releases)
- [Changelog](https://github.com/DatabaseCleaner/database_cleaner/blob/master/History.rdoc)
- [Commits](https://github.com/DatabaseCleaner/database_cleaner/compare/v1.7.0...v1.8.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-07-02 00:06:17 +00:00
Luis Ramos
7dcc2bb27c Merge pull request #5703 from Matt-Yorkley/checkout-addresses
Checkout addresses
2020-07-01 19:06:29 +01:00
Luis Ramos
e8417b8be6 Remove specs testing filtering of master variants
Master variants are not used in the report
2020-07-01 18:13:30 +01:00
Luis Ramos
6555f8bfba Add specs to cover stripeSCA refunds
Duplication between stripe connect and stripeSCA is done on purpose so we can easily delete stripeConnect code when the migration is done
2020-07-01 18:13:27 +01:00
Pau Pérez Fabregat
66ddde1808 Merge pull request #5682 from Matt-Yorkley/in-digest-ion
Move default versions of Paperclip-managed images to /public
2020-07-01 18:02:15 +02:00
Pau Pérez Fabregat
28376b1056 Merge pull request #5561 from coopdevs/defend-from-invoice-without-bill-address
Do not print the bill addr. name when there's none
2020-07-01 17:50:09 +02:00
Luis Ramos
2d4326ded3 Replace empty? with blank? which is equivalent but a bit more resilient, returns false for nil
Present is not blank, so unless blank? becomes if present?
2020-07-01 14:08:07 +01:00
Luis Ramos
ce493866f9 Extract refunds specs from payments controller spec 2020-07-01 13:19:38 +01:00
Luis Ramos
ecb1920fa9 Move payment_controller_spec to specific folder so we can break it in more specific parts 2020-07-01 13:14:39 +01:00
Luis Ramos
9e4a793b24 Fix rubocop issues 2020-07-01 13:14:39 +01:00
Luis Ramos
2179cc7faf Make StripeSCA void action make a refund instead
StripeSCA does not support voiding confirmed payment intents so we need to make a refund instead
2020-07-01 13:10:56 +01:00
Luis Ramos
63934b7863 Add space after translation so that translators dont have to guess a space is needed after the translation 2020-07-01 11:56:37 +01:00
Pau Pérez Fabregat
819af03239 Merge pull request #5706 from luisramos0/ent
Fix admin enterprises controller spec
2020-07-01 12:28:19 +02:00
Pau Pérez Fabregat
5a72526107 Merge pull request #5692 from luisramos0/taxonomies
Fix taxonomies flaky spec
2020-07-01 12:26:56 +02:00
Pau Perez
8c371fd0d1 Do not print bill addr. in invoice2 either 2020-07-01 11:27:57 +02:00
Matt-Yorkley
49fb01a3bb Add assign default value of current time whilst altering NOT NULL constraint
This argument in #change_column_null assigns this value where any NULL values are found, but it doesn't alter the table's `:default` value
2020-07-01 10:00:21 +02:00
Luis Ramos
2dce10bec2 Fix admin enterprises controller spec, for some reason the correct controller is not being picked up in the test 2020-06-30 10:49:45 +01:00
Matt-Yorkley
11da385624 Enable pending checkout spec 2020-06-30 11:30:16 +02:00
Matt-Yorkley
3e7f5a4ea9 Update user address tests
I considered deleting these tests, as they're not very good and are testing Rails functionality. I decided to leave them in case something explodes in a future upgrade. For reference: there are issues in Rails 4 when using `object.clone.attributes`, and with assigning a hash containing `created_at` and `updated_at` values with `object.update(attributes_hash)`.
2020-06-30 11:30:16 +02:00
Matt-Yorkley
87cd936c94 Blacklist timestamp attributes when assigning for update
Doing #clone or #dup of an object's attributes then passing it to an #update/#update_attributes call means we are manually passing values for created_at and updated_at, which can cause problems, especially if the object being duped hasn't been persisted yet: in this case we would be manually attempting to save timestamps with nil values, which is not a good idea. Here they are blacklisted from the attributes hash.
2020-06-30 11:30:16 +02:00
Matt-Yorkley
ce8908f53b Use #dup when copying attributes hash
In Rails 4, #clone behaves differently. The attributes hash of the cloned object is shared with the original, it's not a separate object! https://github.com/rails/rails/blob/4-0-stable/activerecord/lib/active_record/core.rb#L217-L220
2020-06-30 11:30:16 +02:00
Matt-Yorkley
abe96c6f32 Add specs for updating existing default addresses during checkout
These specs fail with the "NULL values for created_at / updated_at" errors we've been seeing.
2020-06-30 11:30:14 +02:00
Pau Pérez Fabregat
e69d3e5e0c Merge pull request #5693 from luisramos0/knapsack
Reload knapsack report
2020-06-30 09:43:36 +02:00
Pau Pérez Fabregat
2a1fe3f05f Merge pull request #5684 from openfoodfoundation/dependabot/bundler/ddtrace-0.37.0
Bump ddtrace from 0.36.0 to 0.37.0
2020-06-30 09:41:48 +02:00
Matt-Yorkley
57ba2481c4 Require timestamps 2020-06-30 09:09:35 +02:00
Pau Perez
0c93de8298 Manage OFN's font through the asset pipeline 2020-06-30 09:02:36 +02:00
Pau Perez
23178763b0 Do not print the bill addr. name when there's none
The error

```
ActionView::Template::Error: undefined method `full_name' for nil:NilClass
```

happens a few times a day and raises exceptions we don't pay attention to.
They add unnecessary noise that hides other more relevant issues.

This, however, is a symptom of a deeper data integrity problem that needs
solving at some point. This is just a countermeasure.
2020-06-30 08:46:01 +02:00
Luis Ramos
de8b97b2e1 Merge pull request #5526 from cillian/drop-blockenspiel
Drop blockenspiel
2020-06-29 20:09:26 +01:00
Matt-Yorkley
be0131b94c Merge pull request #5645 from coopdevs/fix-scss-deprecation-warning
Rename *.css.scss to *.scss
2020-06-29 20:36:42 +02:00
Matt-Yorkley
bd0e4c75c4 Merge pull request #5636 from fatihorhan/make-user-guide-links-consistent
Update Sell page to use User Guide links from configuration
2020-06-29 20:33:00 +02:00
Matt-Yorkley
b441ac2644 Update paths to "noimage" images 2020-06-29 20:07:08 +02:00
Matt-Yorkley
5bec887f93 Move /assets/images/noimage/* to /public/noimage/* 2020-06-29 19:58:38 +02:00
Cillian O'Ruanaidh
a9664e103d Merge latest :master into :drop-blockenspiel branch and resolve conflicts related to Rubocop fixes. 2020-06-29 18:11:08 +01:00
Pau Perez
c892f9c69b Make button border radius consistent 2020-06-29 12:01:59 +02:00
Transifex-Openfoodnetwork
bb80c81097 Updating translations for config/locales/en_US.yml 2020-06-29 05:22:13 +10:00
Luis Ramos
6516037420 Reload knapsack report 2020-06-27 20:36:33 +01:00
Luis Ramos
10b8c2b789 Relax the assertion and dont check row number so that it passes even if order of elements is not the same 2020-06-27 15:54:58 +01:00
Matt-Yorkley
b325e48957 Update content config spec to use new default image paths 2020-06-27 10:32:38 +02:00
Matt-Yorkley
a5f541b59d Update admin logo path 2020-06-27 08:53:05 +02:00
Matt-Yorkley
ff8cb43717 Move default versions of Paperclip-managed images to /public
Image paths for these files are handled by Paperclip, which (with our current version) does not handle fingerprints on assets. Therefore we need to make these images available under /public
2020-06-27 08:45:59 +02:00
Cillian O'Ruanaidh
1199a356c4 Extract out a JS service for calculating where to centre the map when given a set of coordinates.
Also removing the hardcoded default latitude/longitude from open_street_map directive because it's probably not very likely that it will be needed.
2020-06-26 22:26:39 +01:00
dependabot-preview[bot]
032a70fa7e Bump ddtrace from 0.36.0 to 0.37.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.36.0 to 0.37.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.36.0...v0.37.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-26 19:16:32 +00:00
Transifex-Openfoodnetwork
4f2d32b262 Updating translations for config/locales/tr.yml 2020-06-27 04:22:14 +10:00
Cillian O'Ruanaidh
c40697cf61 If no enterprises have been geocoded yet make sure Open Street Map still displays correctly.
Before it would display a gray/blank div instead of map because the map latitude, longitude couldn't be calculated without geocoded enterprises. This adds a setting so the default coordinates can be set even if no geocoded enterprises present.
2020-06-26 15:45:58 +01:00
Luis Ramos
5e3d7be545 Merge pull request #5630 from openfoodfoundation/dependabot/bundler/ransack-1.8.10
Bump ransack from 1.2.3 to 1.8.10
2020-06-26 13:37:03 +01:00
Transifex-Openfoodnetwork
0d5ad6fac3 Updating translations for config/locales/en_IE.yml 2020-06-26 21:04:54 +10:00
Transifex-Openfoodnetwork
a1227d93ae Updating translations for config/locales/en_GB.yml 2020-06-26 20:27:34 +10:00
Transifex-Openfoodnetwork
f47271ba98 Updating translations for config/locales/fr.yml 2020-06-26 16:59:37 +10:00
Transifex-Openfoodnetwork
1266bcde1b Updating translations for config/locales/en_FR.yml 2020-06-26 16:56:19 +10:00
Maikel Linke
e567348a69 Ensure that enough time passes for caching spec 2020-06-26 14:24:01 +10:00
Maikel Linke
4b25c2d49a Correct typo in file naming 2020-06-26 14:21:21 +10:00
Maikel Linke
d7c9bb2e5a Navigate more efficiently in spec
The spec is not supposed to test the navigation to the shop. Going
directly to the shop reduces the test execution time by 7%.
2020-06-26 09:55:57 +10:00
Maikel Linke
70347148a1 Stabilise shopping specs and open them for change
The way we add items to the cart will change. Encapsulating that code in
a common place will make the mobile ux work clearer and avoid merge
conflicts.

The waiting for background requests has also been improved and made more
consistent which should make these specs more reliable.
2020-06-26 09:55:57 +10:00
Maikel Linke
a0c7dc2ccb Remove leftover empty spec context 2020-06-26 09:55:57 +10:00
Luis Ramos
5929b9c1e5 Merge pull request #5627 from openfoodfoundation/dependabot/bundler/geocoder-1.6.3
[Security] Bump geocoder from 1.5.2 to 1.6.3
2020-06-25 20:34:19 +01:00
Luis Ramos
2ad2836ac6 Merge pull request #5563 from luchiago/fix-missing-closed-oc-info-i18n
add missing i18n key for closed OC
2020-06-25 20:33:55 +01:00
Luis Ramos
93a2e57bc6 Merge pull request #5538 from jeduardo824/bug/4592-payment-methods-table-in-dashboard
Fix Payment Methods table to show proper provider name
2020-06-25 20:32:04 +01:00
Luis Ramos
cb2ccf76d2 Merge pull request #5590 from rmklaus12/5558-shippingcategory-translation
Added translation key to config/locales/en.yml file for shipping_cat…
2020-06-25 20:31:48 +01:00
Luis Ramos
f44533bbd5 Merge pull request #5589 from rmklaus12/2617-mainmenu-translation
Added more key to en.yml to translate More dropdown text
2020-06-25 20:27:46 +01:00
Luis Ramos
bfc134c9e6 Merge pull request #5615 from openfoodfoundation/dependabot/bundler/acts-as-taggable-on-4.0.0
Bump acts-as-taggable-on from 3.5.0 to 4.0.0
2020-06-25 20:26:59 +01:00
Pau Pérez Fabregat
7338f196e9 Merge pull request #5663 from luisramos0/constraints
Make db timestamps nullable
2020-06-25 13:14:41 +02:00
Luis Ramos
68946a765e Make timestamps nullable 2020-06-25 08:47:18 +01:00
Transifex-Openfoodnetwork
0b48a53c2f Updating translations for config/locales/tr.yml 2020-06-25 16:02:01 +10:00
Transifex-Openfoodnetwork
54ce5d8c0f Updating translations for config/locales/en_CA.yml 2020-06-25 09:15:11 +10:00
Luis Ramos
ba50491c6d Restructure the spec a little 2020-06-24 16:16:58 +01:00
Luis Ramos
34207fc20f Bring changes to stock_item from spree 2.1, the previous version was from spree 2.0.4 2020-06-24 16:16:58 +01:00
Luis Ramos
e12e50aa84 Move rubocop exception to rubocop todo 2020-06-24 16:16:58 +01:00
Kristina Lim
20fd3c2642 Reset negative count on hand in existing non backorderable stock items 2020-06-24 16:16:58 +01:00
Kristina Lim
4694f1b21a Require count on hand in non backorderable StockItem to be positive or zero
Fix setting of count on hand in line item specs
2020-06-24 16:16:45 +01:00
Kristina Lim
e53913756c Add lock_version to Spree::StockItem 2020-06-24 16:15:37 +01:00
Kristina Lim
774b3720d5 Update stock item count on hand in Spree core specs 2020-06-24 16:15:09 +01:00
Kristina Lim
13ecf0ec73 Update specs for StockItem with transpec 2020-06-24 16:15:09 +01:00
Kristina Lim
fb20f220c0 Use break instead of return in StockItem#process_backorders
We are not using the return value of this method anywhere.
2020-06-24 16:15:09 +01:00
Kristina Lim
0a1cb71ee4 Ignore Rails/UniqueValidationWithoutIndex for unique index of StockItem#stock_location 2020-06-24 16:15:09 +01:00
Kristina Lim
bc530b92b5 Address violation of Rubocop Rails/Validation: 2020-06-24 16:15:09 +01:00
Kristina Lim
2acf61fd0f Address violation of Rubocop Rails/Delegate 2020-06-24 16:15:09 +01:00
Kristina Lim
1e8543dfe7 Address violation of Rubocop Rails/ReadWriteAttribute 2020-06-24 16:15:09 +01:00
Kristina Lim
22c0693beb Address violation of Rubocop Style/NumericPredicate 2020-06-24 16:15:09 +01:00
Kristina Lim
d1725014c4 Auto-correct violationso of Rubocop Layout/* 2020-06-24 16:15:09 +01:00
Kristina Lim
0fd66f9a55 Auto-correct violationso of Rubocop Style/* 2020-06-24 16:15:09 +01:00
Kristina Lim
b783118700 Auto-correct violationso of Rubocop Style/RedundantSelf 2020-06-24 16:15:09 +01:00
Kristina Lim
84d973d383 Specify RSpec.describe in StockItem spec file 2020-06-24 16:15:09 +01:00
Kristina Lim
0e711832fd Bring Spree::StockItem code from spree_core into the app 2020-06-24 16:15:09 +01:00
Transifex-Openfoodnetwork
8d4a9cba21 Updating translations for config/locales/nb.yml 2020-06-24 23:33:12 +10:00
Steve Roberts
3d2a0d4d67 Remove UI and API engine as we will not host the swagger spec right now 2020-06-24 15:51:08 +10:00
Steve Roberts
9541dbf495 Fix order api spec and add incomplete generated swagger.yml 2020-06-24 15:15:18 +10:00
Steve Roberts
b59dbebba6 Revert Gemfile change to specific version of rubocop
Turns out it wasn't necessary. I thought it was needed to install a compatible version of rswag
2020-06-24 13:21:49 +10:00
Steve Roberts
e619ae621c Add rswag and coverage for orders endpoint
Add coverage for core orders endpoint queries (WIP)
2020-06-24 13:21:49 +10:00
Steve Roberts
9e19d79337 Add more detail on the ransack based queries in the description 2020-06-24 13:21:49 +10:00
Steve Roberts
8b79d41b81 Update orders swagger spec and fix api_key access to orders endpoint 2020-06-24 13:21:49 +10:00
Luis Ramos
9e39d970ca Result of running db:migrate 2020-06-23 19:19:18 +01:00
Pau Pérez Fabregat
9e730e6445 Merge pull request #5660 from coopdevs/fix-spree-preferences
Migrate all spree pref. keys to the new format
2020-06-23 18:00:01 +02:00
Transifex-Openfoodnetwork
99096eee2d Updating translations for config/locales/ca.yml 2020-06-24 01:41:21 +10:00
Pau Perez
a81e17f23c Flush the cache
So all preferences are fetch from DB now that they have changed.
2020-06-23 17:23:22 +02:00
Pau Perez
190797717a Defend from the running the migration twice
We only migrate preferences if there are any to migrate.
2020-06-23 17:22:11 +02:00
Pau Perez
0ffa7b3734 Migrate all spree pref. keys to the new format
We realized in Spree v2.1 they follow this format instead and this is
what's causing issues to Katuma production.

This will remove the duplicate ones and convert the current preferences
to the new thus, keeping the values.
2020-06-23 16:21:20 +02:00
Transifex-Openfoodnetwork
923b905a9c Updating translations for config/locales/en_GB.yml 2020-06-23 22:30:53 +10:00
Pau Pérez Fabregat
973ea2ea2d Merge pull request #5641 from openfoodfoundation/transifex
Transifex
2020-06-23 10:43:26 +02:00
Pau Pérez Fabregat
3939febc2f Merge pull request #5653 from luisramos0/rubocop_refresher
Auto correct rubocop, refresh todo lists and fix some more rubocop issues
2020-06-23 10:25:59 +02:00
Luis Ramos
91fc0cd26f Adapt specs to new Ar method update that replaces update_attributes 2020-06-22 17:39:20 +01:00
Luis Ramos
f004b3d573 Fix rubocop issue 2020-06-22 17:39:20 +01:00
Luis Ramos
b49eef5fa9 Fix rubocop issue 2020-06-22 17:39:20 +01:00
Luis Ramos
1c550a594f Fix rubocop issue 2020-06-22 17:39:20 +01:00
Luis Ramos
0ba1642bd2 Fix rubocop issues 2020-06-22 17:39:20 +01:00
Luis Ramos
1e5975c6e2 Fix rubocop issues 2020-06-22 17:39:20 +01:00
Luis Ramos
aa14fd236c Fix rubocop issue 2020-06-22 17:39:20 +01:00
Luis Ramos
ab59ab45f5 Use auto correct to fix rubocop issues 2020-06-22 17:39:20 +01:00
Luis Ramos
f54abbd376 Fix rubocop issues 2020-06-22 17:39:20 +01:00
Luis Ramos
730959f85f Fix rubocop issue 2020-06-22 17:39:20 +01:00
Luis Ramos
8870dc4b06 Move rubocop exception to code 2020-06-22 17:39:20 +01:00
Luis Ramos
1b5f9f105a Fix block alignment 2020-06-22 17:39:20 +01:00
Luis Ramos
ed5fc29c44 Fix hash alignment issue 2020-06-22 17:39:20 +01:00
Luis Ramos
ff68303ef6 Fix long lines 2020-06-22 17:39:20 +01:00
Luis Ramos
0f2e07cc2d Fix long lines 2020-06-22 17:39:20 +01:00
Luis Ramos
0e3b5ad4c3 Revert rubocop auto correct because update! is a method in the adjustment model 2020-06-22 17:39:17 +01:00
Luis Ramos
41ff406e86 Fix rubocop issue by avoiding rails method name update_attributes 2020-06-22 16:51:46 +01:00
Luis Ramos
6a7ed6e0c9 Rebuild .rubocop_manual_todo.yml 2020-06-22 16:51:46 +01:00
Luis Ramos
4e9c21d525 Add new regenerated rubocop_todo 2020-06-22 16:51:46 +01:00
Luis Ramos
b879439d58 Use rubocop auto correct to fix Style/SafeNavigation issue 2020-06-22 16:51:46 +01:00
Luis Ramos
1b6e51c79e Fix rubocop issue 2020-06-22 16:51:46 +01:00
Luis Ramos
f848a89a00 Rename update_attributes to update #rails4 2020-06-22 16:51:43 +01:00
Luis Ramos
8a61257547 Rename all before_filter to before_action, it's the same function with a new name 2020-06-22 13:11:57 +01:00
Luis Ramos
46a1c1cf26 Fix rubocop issue 2020-06-22 13:08:54 +01:00
Luis Ramos
adfe1f89b6 Revert previous rubocop auto correct fix that breaks the cart spec 2020-06-22 13:08:38 +01:00
Luis Ramos
473fee19eb Fix rubocop issues 2020-06-22 13:03:18 +01:00
Luis Ramos
6eebb0e399 Use rubocop autocorrect to fix rubocop issue 2020-06-22 12:58:33 +01:00
Luis Ramos
e574e254db Use rubocop autocorrect to fix rubocop issue 2020-06-22 12:57:12 +01:00
Luis Ramos
3b91dd9dea Use rubocop auto-correct to fix more issues 2020-06-22 12:51:47 +01:00
Luis Ramos
5d710f1e24 Use ruboccop autocorrect to fix issues 2020-06-22 12:46:07 +01:00
Luis Ramos
fb92745db4 Fix rubocop issues 2020-06-22 12:41:31 +01:00
Luis Ramos
8a9dae0ee2 Run rubocop autocorrect
This is the result of bundle exec rubocop --auto-correct
2020-06-22 12:23:10 +01:00
Luis Ramos
15babd8bc4 Merge pull request #5651 from luisramos0/xhr
[Rails 4.1] Change for xhr rquest to avoid csrf during testing
2020-06-22 12:20:41 +01:00
Luis Ramos
57d925a7de Add new rubocop rules and fix the single offence 2020-06-22 12:19:19 +01:00
Lucas Hiago
357c2c7b25 change for xhr to avoid csrf during testing 2020-06-21 20:22:33 +01:00
Transifex-Openfoodnetwork
eb55d00051 Updating translations for config/locales/en_US.yml 2020-06-20 03:34:37 +10:00
Transifex-Openfoodnetwork
c5d3156351 Updating translations for config/locales/fr.yml 2020-06-20 02:37:11 +10:00
Transifex-Openfoodnetwork
28a6f694de Updating translations for config/locales/en_FR.yml 2020-06-20 02:34:30 +10:00
Pau Pérez Fabregat
dd9d9e3316 Merge pull request #5639 from luchiago/fix-seeds-on-setup
FIx setup seed
2020-06-19 16:49:16 +02:00
Pau Perez
f36e08a163 Rename *.css.scss to *.scss
This fixes the following deprecation warning

```
DEPRECATION WARNING: Extra .css in SCSS file is unnecessary. Rename /usr/src/app/app/assets/stylesheets/darkswarm/variables.css.scss to /usr/src/app/app/assets/stylesheets/darkswar
m/variables.scss. (called from _app_views_layouts_darkswarm_html_haml___3990351141569700945_46957256630860 at /usr/src/app/app/views/layouts/darkswarm.html.haml:18)
(...)
```
2020-06-19 16:29:08 +02:00
Matt-Yorkley
66de0a4a71 Merge pull request #5642 from Matt-Yorkley/fix-table-width
Ensure cart page table is full-width
2020-06-19 14:27:00 +02:00
Matt-Yorkley
cda5a042b3 Ensure cart page table is full-width 2020-06-19 12:56:47 +02:00
Transifex-Openfoodnetwork
fd6cbe064d Updating translations for config/locales/tr.yml 2020-06-19 20:27:09 +10:00
Pau Pérez Fabregat
db80992326 Merge branch 'master' into drop-blockenspiel 2020-06-19 12:12:10 +02:00
Matt-Yorkley
444097c75f Merge pull request #5559 from luisramos0/display_only_shop
Make display only shops work again
2020-06-19 11:12:55 +02:00
Matt-Yorkley
be4a4c48d9 Merge pull request #5480 from Matt-Yorkley/mobile-cart-restyle
[Mobile] Cart Dropdown
2020-06-19 09:25:04 +02:00
Matt-Yorkley
b189d06eb7 Update shopping CTA logic
Shows "Take me shopping!" button on /shops page if a shop is selected
2020-06-19 08:59:43 +02:00
Lucas Hiago
52da896b03 Fix name when try to search on seed 2020-06-18 21:06:04 -03:00
Eduardo
573f7b1087 make shop links on the producers page open in new tab 2020-06-18 19:55:06 -03:00
Matt-Yorkley
ff6ba8819f Use image_tag helper with relative paths when loading static images in /app/assets/images folder
This seems to be needed for Rails 4
2020-06-18 22:22:31 +02:00
Matt-Yorkley
7c7ab322bb Ensure cart-header has the same height when the cart is empty
Fixes a minor visual bug
2020-06-18 22:21:55 +02:00
Matt-Yorkley
5a480439ca Remove test for items from previous orders looking in cart dropdown
This feature has been removed
2020-06-18 22:21:55 +02:00
Matt-Yorkley
a6edc1c973 Enable control over body scroll with BodyScroll service 2020-06-18 22:21:55 +02:00
Matt-Yorkley
ed086c2db5 Add character limit to product and variant names in cart sidebar 2020-06-18 22:21:55 +02:00
Matt-Yorkley
2cc02d9711 Make cart header stick to top of cart 2020-06-18 22:21:55 +02:00
Matt-Yorkley
886df0e87d Fix cart page button style regression 2020-06-18 22:21:55 +02:00
Matt-Yorkley
076ecfdb43 Adjust scrollbar visibility in sidebar 2020-06-18 22:21:55 +02:00
Matt-Yorkley
7093e0f7a3 Use plural or singular description in cart, depending on number of items 2020-06-18 22:21:55 +02:00
Matt-Yorkley
850e1b0364 Reduce specificity in cart css rules 2020-06-18 22:21:55 +02:00
Matt-Yorkley
b58ccc02ee Adjust shop.css.scss and remove indentation 2020-06-18 22:21:55 +02:00
Matt-Yorkley
234f0f94cf Change images in serializer to use product.images over variant.images 2020-06-18 22:21:55 +02:00
Matt-Yorkley
9c6dd1b324 Add comment on z-index 2020-06-18 22:21:55 +02:00
Matt-Yorkley
1eb9d11e27 Update colour variables 2020-06-18 22:21:55 +02:00
Matt-Yorkley
17c2721ab6 Remove unused translation keys 2020-06-18 22:21:55 +02:00
Matt-Yorkley
656c23f407 Replace previous min-width breakpoint.
This was mistakenly changed to use a max-width breakpoint in a previous commit.
2020-06-18 22:21:55 +02:00
Matt-Yorkley
1d8386bee8 Disable two SCSS-lint rules 2020-06-18 22:21:55 +02:00
Matt-Yorkley
c0282b57b6 Fix some linting warnings 2020-06-18 22:21:55 +02:00
Matt-Yorkley
042b4fc395 Remove tests for viewing previous order items in cart dropdown
This behavior has been removed
2020-06-18 22:21:55 +02:00
Matt-Yorkley
bd97939062 Move homepage "register here" CTA to bottom of screen.
The CTA breaks the layout when the new cart sidebar is open. I can't see a nice way to keep it at the top without making a mess.
2020-06-18 22:21:55 +02:00
Matt-Yorkley
2bcadd52e8 Hide "Take me shopping" button on /shop and /shops pages 2020-06-18 22:21:55 +02:00
Matt-Yorkley
387a5ec950 Implement "Take me shopping" button 2020-06-18 22:21:55 +02:00
Matt-Yorkley
10b8470e29 Set a fixed width for cart sidebar on tablet up 2020-06-18 22:21:55 +02:00
Matt-Yorkley
4acb08e52b Update hamburger menu icon 2020-06-18 22:21:55 +02:00
Matt-Yorkley
786348bc71 Remove colon from cart total text 2020-06-18 22:21:55 +02:00
Matt-Yorkley
8ac971651c Fix flaky spec 2020-06-18 22:21:55 +02:00
Matt-Yorkley
459e53f43d Adjust specs for new cart display 2020-06-18 22:21:55 +02:00
Matt-Yorkley
2f2ef28351 Use links instead of buttons and fix up styles 2020-06-18 22:21:55 +02:00
Matt-Yorkley
b74b9fbd1d Shift sidebar down vertically (below navigation) and bring navigation up (z-index) 2020-06-18 22:21:55 +02:00
Matt-Yorkley
4a0f43a831 Ensure cart item count is visible in header cart button (for screens smaller than desktop) 2020-06-18 22:21:55 +02:00
Matt-Yorkley
439674ad9c Make cart view fullwidth on mobile 2020-06-18 22:21:55 +02:00
Matt-Yorkley
8ca0119f5d Add empty cart feedback 2020-06-18 22:21:55 +02:00
Matt-Yorkley
95686eda78 Update translations 2020-06-18 22:21:54 +02:00
Matt-Yorkley
7efccac7bb Add close functionality to close button 2020-06-18 22:21:54 +02:00
Matt-Yorkley
4362b8b25b Improve line spacing on cart product list 2020-06-18 22:21:54 +02:00
Matt-Yorkley
be8c0f3600 Remove old cart dropdown view and directive 2020-06-18 22:21:54 +02:00
Matt-Yorkley
33a2dd100e Add new layout for cart sidebar 2020-06-18 22:21:54 +02:00
Matt-Yorkley
400fce8ef9 Separate cart page and cart dropdown styles 2020-06-18 22:21:54 +02:00
Matt-Yorkley
b4e5542e5f Extract re-usable sidebar styes 2020-06-18 22:21:54 +02:00
Matt-Yorkley
a8b981e9cd Add product thumbnais to serializer for cart dropdown images 2020-06-18 22:21:54 +02:00
Matt-Yorkley
b1ce7f2c15 Simplify product naming in cart 2020-06-18 22:21:54 +02:00
Matt-Yorkley
85abfd2056 Create Cart sidebar and controller 2020-06-18 22:21:54 +02:00
Matt-Yorkley
7290d68687 Update all locales with the latest Transifex translations 2020-06-18 20:46:41 +02:00
Fatih Orhan
27fb3f156c Update sell.html.haml 2020-06-18 20:36:50 +03:00
Luis Ramos
208623bb0a Merge pull request #5635 from Matt-Yorkley/map-icons
Ensure map icon URLs are correctly generated with fingerprints
2020-06-18 18:02:47 +01:00
Matt-Yorkley
130f639b61 Rename service and use #call 2020-06-18 17:14:50 +02:00
Pau Pérez Fabregat
63f8830eba Merge pull request #5530 from cillian/remove-spinjs
Remove spinjs-rails dependency and use spinning-circles.svg instead.
2020-06-18 16:47:09 +02:00
Matt-Yorkley
5338e782f8 Extract serializer helper method to service so the method isn't globally available 2020-06-18 16:44:15 +02:00
Luis Ramos
66f955f00d Merge pull request #5597 from luisramos0/bo_stripe_payments
[Spree 2.1] Make backoffice stripe payments work in rails 4
2020-06-18 14:50:27 +01:00
Matt-Yorkley
75e57e5c2c Call #image_path on map cluster icon 2020-06-18 14:14:41 +02:00
Matt-Yorkley
9a39cbbbc5 Convert MapConfiguration service to .js.erb.coffee 2020-06-18 14:14:41 +02:00
Matt-Yorkley
551daaadea Use #image_path correctly on map marker icons 2020-06-18 14:14:41 +02:00
Matt-Yorkley
2143122a30 Add helper method for correctly generating with fingerprints in Serializers 2020-06-18 14:14:39 +02:00
Pau Pérez Fabregat
e02191078d Merge pull request #5595 from coopdevs/improve-payments-report-performance
Remove N+1 fetching payments in report
2020-06-18 12:32:40 +02:00
Pau Pérez Fabregat
762b3a4a59 Merge pull request #5618 from openfoodfoundation/dependabot/bundler/httparty-0.18.1
Bump httparty from 0.17.3 to 0.18.1
2020-06-18 12:30:18 +02:00
Pau Pérez Fabregat
98490efbb3 Merge pull request #5600 from openfoodfoundation/transifex
Transifex
2020-06-18 12:29:10 +02:00
Matt-Yorkley
7cc47d652c Merge pull request #5624 from Matt-Yorkley/rails4-image-precompile
v3 image precompile
2020-06-18 12:01:23 +02:00
Luis Ramos
52dd7ce916 Improve comment about httparty 2020-06-18 10:12:37 +01:00
dependabot-preview[bot]
669330ee90 Bump httparty from 0.17.3 to 0.18.1
Bumps [httparty](https://github.com/jnunemaker/httparty) from 0.17.3 to 0.18.1.
- [Release notes](https://github.com/jnunemaker/httparty/releases)
- [Changelog](https://github.com/jnunemaker/httparty/blob/master/Changelog.md)
- [Commits](https://github.com/jnunemaker/httparty/compare/v0.17.3...v0.18.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-18 10:12:37 +01:00
Transifex-Openfoodnetwork
20c41ce69e Updating translations for config/locales/it.yml 2020-06-18 19:11:23 +10:00
Luis Ramos
f6e3e01a10 Extract permitted payment_source attributes from checkout to use them in the backoffice payments controller
Add spec to verify payment source attributes are passed
2020-06-18 09:54:34 +01:00
Transifex-Openfoodnetwork
b5a67e65c5 Updating translations for config/locales/es.yml 2020-06-18 17:42:06 +10:00
Transifex-Openfoodnetwork
da7d36cd0e Updating translations for config/locales/ca.yml 2020-06-18 17:41:48 +10:00
Pau Pérez Fabregat
8f885dd1c5 Merge pull request #5628 from Matt-Yorkley/flaky-caching-spec
Flaky caching spec
2020-06-18 09:37:45 +02:00
Transifex-Openfoodnetwork
fba5f96968 Updating translations for config/locales/nb.yml 2020-06-18 17:33:09 +10:00
Transifex-Openfoodnetwork
0c634c566c Updating translations for config/locales/fr.yml 2020-06-18 17:08:17 +10:00
Transifex-Openfoodnetwork
a9ed081488 Updating translations for config/locales/en_FR.yml 2020-06-18 17:01:02 +10:00
dependabot-preview[bot]
9c643447c2 Bump ransack from 1.2.3 to 1.8.10
Bumps [ransack](https://github.com/activerecord-hackery/ransack) from 1.2.3 to 1.8.10.
- [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/v1.2.3...v1.8.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-17 19:15:45 +00:00
Luis Ramos
37cbcf4172 Merge pull request #5605 from luisramos0/spree_rev
Update spree revision and upgrade ransack to 1.2.3
2020-06-17 20:00:25 +01:00
Luis Ramos
06a37d8ff0 Merge pull request #5566 from rioug/5132-no-error-when-product-csv-malformed
Add handling of CSV::MalformedCSVError for product_importer
2020-06-17 19:58:35 +01:00
Luis Ramos
d0bb625c19 Merge pull request #5593 from coopdevs/fix-report-order-link
Fix link from report to order
2020-06-17 19:55:40 +01:00
Luis Ramos
5163317b10 Merge pull request #5623 from luisramos0/zones
Make Zones editable again
2020-06-17 19:41:20 +01:00
Luis Ramos
91489827a1 Merge pull request #5614 from openfoodfoundation/dependabot/bundler/coffee-rails-4.2.2
Bump coffee-rails from 4.0.1 to 4.2.2
2020-06-17 19:40:59 +01:00
Matt-Yorkley
64b5bde952 Wait for page to actually load after visit shops_path 2020-06-17 12:47:08 +02:00
Matt-Yorkley
86fe032cdb Update calls to #update_attributes! (Rails 4 Rubocop violation) 2020-06-17 12:37:20 +02:00
Matt-Yorkley
640c9e6d2b Re-enable flaky spec 2020-06-17 12:36:42 +02:00
dependabot-preview[bot]
d67fa6fa5a [Security] Bump geocoder from 1.5.2 to 1.6.3
Bumps [geocoder](https://github.com/alexreisner/geocoder) from 1.5.2 to 1.6.3. **This update includes a security fix.**
- [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/v.1.5.2...v1.6.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-16 23:49:32 +00:00
Lucas Hiago
419b3ef26e add missing i18n key for check hub ready for checkout 2020-06-16 19:49:43 -03:00
Lucas Hiago
e9e43c985f add missing i18n key for closed OC 2020-06-16 19:48:24 -03:00
Luis Ramos
01e27dd68c Merge pull request #5492 from pacodelaluna/include-negative-tax-adjustments-in-sales-report
Include adjustments with negative taxes on Sales Tax reports
2020-06-16 20:23:04 +01:00
Matt-Yorkley
add38bf550 Use #image_path helper correctly
Paths should be relative. For example an image under `/app/assets/images/home/banner.jpg` should be: `image_path("home/banner.jpg")`
2020-06-16 18:25:13 +02:00
Matt-Yorkley
c07476e22c Use new Rails 4 #image-url SCSS helper
Paths should be relative. For example an image under `/app/assets/images/home/banner.jpg` should be: `image-url("home/banner.jpg")`
2020-06-16 18:25:12 +02:00
Matt-Yorkley
c370ab04d7 Ensure images in /assets/images** are precompiled and moved correctly to /public/assets folder 2020-06-16 17:01:58 +02:00
Pau Pérez Fabregat
6a31c56601 Merge pull request #5598 from luisramos0/checkout_error
Make checkout js error handling a bit more defensive
2020-06-16 16:18:49 +02:00
François Turbelin
6672cfdaf5 Readd price_adustments after bad rebase 2020-06-16 16:13:56 +02:00
Luis Ramos
2fcafdcf45 Add spec to cover editing zones 2020-06-16 15:13:54 +01:00
Pau Pérez Fabregat
3cfec157ed Merge pull request #5621 from Matt-Yorkley/xit-caching-spec
Set flaky caching spec to pending
2020-06-16 16:11:34 +02:00
Luis Ramos
774b75b649 Make zones spec faster by going directly to zone list page withouth repeating the navigation through Configuration menu 2020-06-16 14:06:01 +01:00
Luis Ramos
3f7fb0ecc2 Add missing permitted attributes to zones 2020-06-16 13:56:39 +01:00
Pau Perez
ff4d7fbc45 Refactor with Arel to perform a single query 2020-06-16 14:01:27 +02:00
Pau Perez
00c9dd7ece Remove N+1 fetching order and li adjustments 2020-06-16 14:01:27 +02:00
François Turbelin
b4952dcbfb Cosmetics 2020-06-16 14:01:27 +02:00
François Turbelin
9abe41f6cb Use OrderTaxAdjustmentsFetcher service 2020-06-16 14:01:27 +02:00
François Turbelin
c729f64fcf Include adjustments without positive taxes 2020-06-16 14:01:27 +02:00
Matt-Yorkley
cf214251fa Set flaky caching spec to pending 2020-06-16 12:59:58 +02:00
dependabot-preview[bot]
f8c66cae81 Bump acts-as-taggable-on from 3.5.0 to 4.0.0
Bumps [acts-as-taggable-on](https://github.com/mbleigh/acts-as-taggable-on) from 3.5.0 to 4.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/v3.5.0...v4.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-16 02:30:03 +00:00
dependabot-preview[bot]
dfdf57746a Bump coffee-rails from 4.0.1 to 4.2.2
Bumps [coffee-rails](https://github.com/rails/coffee-rails) from 4.0.1 to 4.2.2.
- [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.0.1...v4.2.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-16 02:29:08 +00:00
Luis Ramos
7db519ab62 Merge pull request #5570 from luisramos0/ship_methods_form
[Spree 2.1] Make Shipping methods form save calculator details
2020-06-15 15:05:50 +01:00
Luis Ramos
0c97278d69 Upgrade ransack to 1.2.3 2020-06-15 14:20:34 +01:00
Luis Ramos
2c794c148b Update spree rev 2020-06-15 14:14:53 +01:00
Pau Pérez Fabregat
257b311e04 Merge pull request #5158 from openfoodfoundation/3-0-stable
Merge 3-0-stable to master
2020-06-15 13:35:58 +02:00
Pau Pérez Fabregat
62fe54d90d Merge pull request #5604 from luisramos0/xit_vo_flaky_2
Comment out flaky variant overrides spec
2020-06-15 13:11:24 +02:00
Luis Ramos
d5bdf306a9 Comment out flaky variant overrides spec 2020-06-15 11:43:30 +01:00
Luis Ramos
538d886c83 Merge pull request #5573 from Matt-Yorkley/payment-report-500
Fix fatal error in reports helper for orders without payments
2020-06-15 11:27:17 +01:00
Luis Ramos
c113ee92e6 Merge pull request #5603 from luisramos0/xit_exchange_prods
Comment out Exchange Products Renderer spec
2020-06-15 11:13:50 +01:00
Luis Ramos
d82a1c3bf1 Merge pull request #5602 from coopdevs/fix-style-issues
Fix outstanding Rubocop violations
2020-06-15 11:13:21 +01:00
Luis Ramos
ea8c5d2711 Comment out flaky spec 2020-06-15 11:01:35 +01:00
Pau Pérez Fabregat
e2e3b16250 Merge pull request #5549 from luisramos0/vo_flaky
[Spree 2.1] Make Variant Overrides spec less flaky and... comment it anyway
2020-06-15 12:00:16 +02:00
Pau Perez
456f369b76 Fix outstanding Rubocop violations 2020-06-15 10:17:34 +02:00
Pau Perez
df887b5576 Wrap long line
pick e84e0aebe Fix fatal error in reports helper for orders without payments
pick e725f3331 Defend from an order w/o payments when building table
2020-06-15 09:25:30 +02:00
Transifex-Openfoodnetwork
40dd9a8fda Updating translations for config/locales/en_NZ.yml 2020-06-14 08:11:27 +10:00
Eduardo
27c76cfae2 add view spec to replace feature spec 2020-06-13 14:24:17 -03:00
Cillian O'Ruanaidh
430e5ea9cc Permission to view :bulk_coop report is now added in the #add_bulk_coop_abilities method. 2020-06-13 16:57:43 +01:00
Cillian O'Ruanaidh
0ef3a7e24f Fix some more code climate violations for bulk coop specs which have been moved to the order management engine. 2020-06-13 16:23:11 +01:00
Cillian O'Ruanaidh
fdf0d92366 Move feature spec for bulk coop report to the order management engine. 2020-06-13 15:52:42 +01:00
Cillian O'Ruanaidh
ba126d5afc Move the bulk coop controller specs to the order management engine.
Also deleting old :bulk_coop_report action from the Spree::Admin::ReportsController.
2020-06-13 15:42:26 +01:00
Cillian O'Ruanaidh
c1e57fcc12 Adjust CanCan ability to reflect that the bulk coop report now runs from the order management engine. 2020-06-13 15:41:09 +01:00
Cillian O'Ruanaidh
3abcb5b23c Don't move the :parameter_not_allowed_error translation to a different scope yet.
It will make it harder to merge and deploy this PR if every translation locale file has to be updated too.
2020-06-13 15:37:44 +01:00
Cillian O'Ruanaidh
bcf79ef803 Fix code climate violations related to removing blockenspiel. 2020-06-13 13:27:44 +01:00
Cillian O'Ruanaidh
6dbb6f3f09 Add an underscore before unused method arguments rather than an empty splat operator so it's easier to understand what is being passed in. 2020-06-13 13:09:09 +01:00
Cillian O'Ruanaidh
293e8949a9 Remove unused AuthenticationWorkflow module from the BulkCoopReport specs. 2020-06-13 12:59:23 +01:00
Cillian O'Ruanaidh
bfc6daf076 Remove duplicate PackingReport tests from the BulkCoopReport spec.
These tests already exist in spec/lib/open_food_network/packing_report_spec.rb:72
2020-06-13 12:57:14 +01:00
Cillian O'Ruanaidh
ed82c7e3db BulkCoopReport has been moved to the engines/order_management so move it's spec there too. 2020-06-13 12:51:29 +01:00
Cillian O'Ruanaidh
e9ff84a746 Add a partial for the AJAX progress spinner so it can be reused in the spree admin and bare admin layouts. 2020-06-13 12:26:17 +01:00
Luis Ramos
e6e4b6f95c Add keypress events to text input fields on orders search page 2020-06-13 12:15:49 +01:00
Luis Ramos
1740879261 Revert directive and just use ng-kkeypress 2020-06-13 12:07:45 +01:00
Luis Ramos
f08b837115 Make enter submit the search form in products list 2020-06-13 11:51:00 +01:00
Eduardo
5ed5ed2873 fix payment methods table to show proper provider name 2020-06-12 18:26:54 -03:00
Luis Ramos
ed262a19a9 Make checkout js error handling a bit more defensive 2020-06-12 20:33:22 +01:00
Luis Ramos
02b351b9d5 Make display only shops work again, this will show the product list when the OC is open but ship and pay methods are not available
Add spec to cover display only shops, it's oficially a feature now :-)
2020-06-12 20:15:08 +01:00
Pau Perez
018772bbba Remove N+1 fetching payments in report 2020-06-12 16:42:40 +02:00
Pau Perez
29246c15fe Defend from order without billing address
This a data integrity issue that needs deeper investigation but while
this happens, our users can still render their reports.
2020-06-12 16:34:23 +02:00
Luis Ramos
6dcb2d4a3b Add xit, spec is still too flaky on semaphore
It's not the most important spec, this scenario should never happen as
the user will not be able to access the page.
2020-06-12 15:33:34 +01:00
Luis Ramos
f56e0ba0c0 Mock current_spree_user to return a user without permissions so that the controller does not use an already loaded version of current_spree_user that still has enough permissions 2020-06-12 14:23:45 +01:00
Luis Ramos
cf5af68438 Make spec less flaky by making it wait for the Saving text to go away 2020-06-12 13:04:33 +01:00
Luis Ramos
72870530ce Merge pull request #5594 from Matt-Yorkley/3-0-reports-subquery
[Spree 2.1] Fix "subquery has too many columns" in reports query
2020-06-12 12:42:04 +01:00
Matt-Yorkley
86db1b6d68 Fix "subquery has too many columns" in reports query 2020-06-12 12:55:50 +02:00
Pau Perez
6a7df0b165 Fix link from report to order 2020-06-12 12:26:56 +02:00
Pau Pérez Fabregat
034c3d9568 Merge pull request #5548 from luisramos0/3-0-stable-jun-2
[Spree 2.1] Merge master into 3-0-stable
2020-06-12 11:27:29 +02:00
Pau Pérez Fabregat
a91c81059f Merge pull request #5588 from openfoodfoundation/transifex
Transifex
2020-06-12 11:00:10 +02:00
Luis Ramos
7245a80f94 Merge branch 'master' into 3-0-stable-jun-2 2020-06-12 09:22:47 +01:00
Robin Klaus
f8ebe11728 Added translation keyt to config/locales/en.yml file for shipping_category 2020-06-12 13:19:15 +10:00
Transifex-Openfoodnetwork
10f0958819 Updating translations for config/locales/fr_CA.yml 2020-06-12 12:19:08 +10:00
Transifex-Openfoodnetwork
fce74bd008 Updating translations for config/locales/es.yml 2020-06-12 12:19:00 +10:00
Transifex-Openfoodnetwork
9908692da9 Updating translations for config/locales/en_FR.yml 2020-06-12 12:16:07 +10:00
Transifex-Openfoodnetwork
ff0e3ed379 Updating translations for config/locales/fr.yml 2020-06-12 12:16:00 +10:00
Transifex-Openfoodnetwork
2914500d5b Updating translations for config/locales/ca.yml 2020-06-12 12:15:53 +10:00
Robin Klaus
b8f228cc3d Added more key to en.yml to translate More dropdown text 2020-06-12 11:34:22 +10:00
Luis Ramos
898d525201 Merge pull request #5552 from coopdevs/remove-forgotten-photos
Remove unused stock photo
2020-06-11 20:41:01 +01:00
Luis Ramos
e2265dd165 Fix issue in product_spec 2020-06-11 20:26:57 +01:00
Luis Ramos
983bed3c4e Merge branch 'master' into 3-0-stable-jun-2 2020-06-11 19:50:56 +01:00
Transifex-Openfoodnetwork
17bf163378 Updating translations for config/locales/fr_CA.yml 2020-06-12 03:53:33 +10:00
Transifex-Openfoodnetwork
e371c5f788 Updating translations for config/locales/en_CA.yml 2020-06-12 03:48:39 +10:00
Pau Pérez Fabregat
5cca8693b3 Merge pull request #5540 from romale/patch-1
Missing translation key "return_authorizations"
2020-06-11 16:39:15 +02:00
Transifex-Openfoodnetwork
bfcf5f8ca0 Updating translations for config/locales/ca.yml 2020-06-12 00:38:46 +10:00
Transifex-Openfoodnetwork
ab76319861 Updating translations for config/locales/en_FR.yml 2020-06-12 00:35:51 +10:00
Transifex-Openfoodnetwork
30917c64f5 Updating translations for config/locales/fr.yml 2020-06-12 00:35:44 +10:00
Transifex-Openfoodnetwork
6d7c1b7933 Updating translations for config/locales/es.yml 2020-06-12 00:35:36 +10:00
Pau Perez
9d5c657ff9 Update all locales with the latest Transifex translations 2020-06-11 15:49:05 +02:00
Pau Pérez Fabregat
e0bcc71882 Merge pull request #5569 from rmklaus12/5204-inventory-translation
Add translation keys to en.yml file for variant_override error messag…
2020-06-11 15:35:30 +02:00
Pau Pérez Fabregat
06feae994d Merge pull request #5353 from pacodelaluna/sort-invoices-in-bulk-invoice-with-forced-order
Sort invoices in bulk invoice with completed_at desc order
2020-06-11 15:34:39 +02:00
Pau Pérez Fabregat
2052756169 Merge pull request #5556 from Matt-Yorkley/geocoding-service
Rename Angular Geo service
2020-06-11 15:19:08 +02:00
Pau Pérez Fabregat
bc8a10c6a0 Merge pull request #5541 from luisramos0/has_variants
Delete dead code related to products without variants
2020-06-11 15:18:13 +02:00
Pau Pérez Fabregat
01a9b33fc9 Merge pull request #5482 from rmklaus12/5094-new-order-translation
created partial for order page title to resolve French translation of…
2020-06-11 13:23:28 +02:00
Pau Pérez Fabregat
ab743c3af9 Merge pull request #5407 from luisramos0/oc_sweep
Order Cycle design sweep
2020-06-11 12:49:04 +02:00
Pau Pérez Fabregat
246a4995cb Merge pull request #5490 from luchiago/change-price-sack-amount-int-to-float
Change minimal amount in price sack calculator to float
2020-06-11 12:42:11 +02:00
Matt-Yorkley
e725f33318 Defend from an order w/o payments when building table 2020-06-11 12:37:51 +02:00
Matt-Yorkley
e84e0aebe6 Fix fatal error in reports helper for orders without payments 2020-06-11 11:22:07 +02:00
Pau Pérez Fabregat
75d24c19fc Merge pull request #5206 from chrishil1/clear_filters
Clear filters on admin/products page
2020-06-11 10:37:17 +02:00
Pau Pérez Fabregat
bdc4340034 Merge pull request #5582 from openfoodfoundation/transifex
Transifex
2020-06-11 10:30:13 +02:00
Pau Pérez Fabregat
961be38734 Merge pull request #5581 from openfoodfoundation/dependabot/bundler/test-unit-3.3.6
Bump test-unit from 3.3.5 to 3.3.6
2020-06-11 09:16:57 +02:00
Transifex-Openfoodnetwork
e76bc07d72 Updating translations for config/locales/es.yml 2020-06-11 17:11:55 +10:00
Transifex-Openfoodnetwork
6ef94febe5 Updating translations for config/locales/ca.yml 2020-06-11 17:10:49 +10:00
Gaetan Riou
359c0b9d85 fix typo 2020-06-11 16:54:00 +10:00
Gaetan Riou
d3943bc92a refactor error handling of CSV::MalformedCSVError and fix some typos 2020-06-11 16:47:58 +10:00
Transifex-Openfoodnetwork
472338b522 Updating translations for config/locales/fr.yml 2020-06-11 16:32:02 +10:00
Transifex-Openfoodnetwork
220c84075f Updating translations for config/locales/en_FR.yml 2020-06-11 16:25:36 +10:00
Luis Ramos
ccf6cbb003 Merge pull request #5483 from rmklaus12/5281-missing-translation-ordercreation
Changed translation syntax to normal t() call and lazy lookup.
2020-06-10 23:00:44 +01:00
Luis Ramos
13a4a3edbe Merge pull request #5532 from luchiago/fix-admin-config-separator-withou-highlight
Fix admin config separator without highlight
2020-06-10 23:00:30 +01:00
Luis Ramos
21746e72ce Merge pull request #5484 from rmklaus12/5336-errormsg-translation
Added translation keys to error messages partial and en.yml file to a…
2020-06-10 23:00:07 +01:00
Luis Ramos
1e248c1848 Merge pull request #5354 from jeduardo824/enhancement/5277-be-able-to-filter-orders-according-to-shipping-method
Enhancement/5277 be able to filter orders according to shipping method
2020-06-10 20:50:06 +01:00
Luis Ramos
28f126eed1 Merge pull request #5545 from mbudm/task/matomo-tag-manager
Add configuration to enable Matomo Tag Manager
2020-06-10 20:49:34 +01:00
dependabot-preview[bot]
1a700f870c Bump test-unit from 3.3.5 to 3.3.6
Bumps [test-unit](https://github.com/test-unit/test-unit) from 3.3.5 to 3.3.6.
- [Release notes](https://github.com/test-unit/test-unit/releases)
- [Commits](https://github.com/test-unit/test-unit/compare/3.3.5...3.3.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-10 19:16:40 +00:00
Luis Ramos
113533e3b1 Merge pull request #5557 from Matt-Yorkley/reports-improvement
Improve performance in various reports
2020-06-10 18:54:51 +01:00
Pau Pérez Fabregat
a547aae770 Merge pull request #5562 from openfoodfoundation/transifex
Transifex
2020-06-10 17:57:07 +02:00
Transifex-Openfoodnetwork
1abbd7261e Updating translations for config/locales/es.yml 2020-06-11 01:13:33 +10:00
Transifex-Openfoodnetwork
9a2618cd39 Updating translations for config/locales/ca.yml 2020-06-11 01:09:41 +10:00
Steve Roberts
f8673fb575 Moved tag manager instructions to be directly below the field 2020-06-10 15:06:53 +10:00
Maikel Linke
7d53b12baf Preserve sorting by completion date 2020-06-10 10:19:15 +10:00
Maikel Linke
680ee3dc86 Check the bulk invoice rendering order
As it turns out, our performance optimisation with `find_each` overrides
or custom sorting.
2020-06-10 10:05:47 +10:00
Luis Ramos
89003aece7 Merge pull request #5414 from openfoodfoundation/dependabot/bundler/stripe-5.22.0
Bump stripe from 5.15.0 to 5.22.0
2020-06-09 17:41:20 +01:00
Pau Pérez Fabregat
86d59c4e86 Merge pull request #5564 from dmarcoux/improve-dockerfile
Improve Dockerfile
2020-06-09 16:17:37 +02:00
Luis Ramos
0c1ed1731d Add more specs to ship method controller 2020-06-09 12:33:55 +01:00
Luis Ramos
87292a8ce5 Refactor spec to add more similar specs 2020-06-09 12:15:52 +01:00
Luis Ramos
f05b0d1a57 Add missing fields to ship method controller permitted params list 2020-06-09 12:02:59 +01:00
Luis Ramos
fd5062429a Add context to delete specs so we can add other specs 2020-06-09 12:02:59 +01:00
Luis Ramos
7924330321 Fix problem with stub_const, we need auto load the controller before the const is stubbed otherwise the controller will be broken
See details here: https://github.com/rspec/rspec-mocks/issues/1079#issuecomment-215620243
2020-06-09 10:52:53 +01:00
Robin Klaus
c4fbce30c8 Add translation keys to en.yml file for variant_override error message translation 2020-06-09 19:20:29 +10:00
François Turbelin
795106aaa2 Use real orders inside spec to extend coverage 2020-06-09 10:11:11 +02:00
François Turbelin
6056c1699f Use batches in order to fetch orders 2020-06-09 10:10:34 +02:00
Steve Roberts
5fcc0dcd14 Add configuration to enable matomo tag manager
- Update embed codes and allow both scripts concurrently
- Add lines around blocks
- Update MTM copy based on PR feedback
- checked cookies unchanged
2020-06-09 10:21:11 +10:00
Luis Ramos
88896b7730 Merge branch 'master' into 3-0-stable-jun-2 2020-06-08 19:17:11 +01:00
jeffrey s hill md
c4e910a7c8 Make clear filters fetch products automatically without filters
The spec change is needed: fetchProducts() makes cleared filters values undefined in removeClearedValues.
2020-06-08 18:27:10 +01:00
Transifex-Openfoodnetwork
dceae2a98b Updating translations for config/locales/it.yml 2020-06-08 23:23:41 +10:00
Transifex-Openfoodnetwork
7515b9c86c Updating translations for config/locales/it.yml 2020-06-08 23:20:30 +10:00
Gaetan Riou
9b8a97aadd Add handling of CSV::MalformedCSVError for product_importer 2020-06-08 16:21:02 +10:00
Dany Marcoux
a751d24562 Run bundler install in parallel with the amount of available CPUs 2020-06-07 23:32:50 +02:00
Dany Marcoux
6c564dc7b2 Shallow clone specific release for rbenv and ruby-build
We don't need the whole git history, so doing a shallow clone is
favourable. Cloning a specific release (the latest at the time of
writing this) allows us to have reproducible results since we're not
cloning whatever is on master at the time of building the Docker image.
2020-06-07 23:29:17 +02:00
Transifex-Openfoodnetwork
e8f59ca80f Updating translations for config/locales/tr.yml 2020-06-06 20:02:55 +10:00
Cillian O'Ruanaidh
f90969134d Fix a couple of Rubocop violations. 2020-06-05 20:03:17 +01:00
Pau Perez
a287f370b5 Remove unused home photos 2020-06-05 18:05:58 +02:00
Cillian O'Ruanaidh
bafa8beab3 Use :parameter_not_allowed_error_message to from base Reports::Authorizer. 2020-06-05 17:05:26 +01:00
Cillian O'Ruanaidh
e58852289f Move the :require_valid_datetime_range method to OrderManagement::Reports::Parameters::Base so it can be reused on multiple reports. 2020-06-05 16:58:56 +01:00
Cillian O'Ruanaidh
9172606780 Allow the order management report partial to be reused on different reports. 2020-06-05 16:51:43 +01:00
Cillian O'Ruanaidh
406309c577 Move BulkCoop reports out of deprecated lib/ directory into OrderManagement engine.
The BulkCoop reports are not generated the same way as the EnterpriseFeeSummary report is generated yet so that may need to be updated.
2020-06-05 16:43:38 +01:00
Pau Pérez Fabregat
ca458018ca Merge pull request #5547 from luisramos0/ctrl_hacks
Bring the spree_get spec helpers from spree and move them together with the api_get spec helpers
2020-06-05 17:34:16 +02:00
Matt-Yorkley
9e278d5b2f Improve performance in various reports 2020-06-05 16:39:01 +02:00
Luis Ramos
e2e3ae68b7 Update all locales with the latest Transifex translations 2020-06-05 11:36:27 +01:00
Luis Ramos
8ba15931e3 Merge pull request #5521 from openfoodfoundation/transifex
Transifex
2020-06-05 11:34:13 +01:00
Cillian O'Ruanaidh
d436d18d19 Fix code climate violations in removal of Blockenspiel dependency. 2020-06-05 10:13:06 +01:00
Transifex-Openfoodnetwork
c317ae7bf3 Updating translations for config/locales/en_FR.yml 2020-06-05 17:51:47 +10:00
Transifex-Openfoodnetwork
76aded5fb5 Updating translations for config/locales/fr.yml 2020-06-05 17:51:06 +10:00
Matt-Yorkley
78fc6b7138 Rename "Geo" service to "GmapsGeo" for clarity.
This service directly calls methods in the google maps javascript included in the darkswarm layout. If we're moving away from it, we should clarify where it's used.
2020-06-05 08:35:15 +02:00
Robin Klaus
d5d6fbc01d created partial for order page title to resolve French translation of new order 2020-06-05 11:27:51 +10:00
Luis Ramos
82290bb5e1 Merge pull request #5448 from rmklaus12/5302-paypal-missingkey
Added translation keys for PayPalExpress payment method
2020-06-04 21:32:27 +01:00
Luis Ramos
3a20de1465 Merge pull request #5398 from cillian/open-street-map
Add support for using Open Street Map on the Map and Group pages.
2020-06-04 17:01:25 +01:00
Transifex-Openfoodnetwork
52323887b6 Updating translations for config/locales/en_FR.yml 2020-06-04 15:58:45 +10:00
Transifex-Openfoodnetwork
095d0f4ca8 Updating translations for config/locales/fr.yml 2020-06-04 15:58:22 +10:00
Luis Ramos
12000d2d44 Merge pull request #5425 from luisramos0/pay_method_warning
Add warning to payment method edit page
2020-06-03 21:03:56 +01:00
Luis Ramos
cce26cb453 Merge branch '3-0-stable' into 3-0-stable-jun-2 2020-06-03 19:51:43 +01:00
Pau Pérez Fabregat
93dd61c6fc Merge pull request #5456 from luisramos0/3-0-stable-with-spree-deps
[Spree 2.1] Move all spree_core dependencies to OFN so we can upgrade them later
2020-06-03 18:57:24 +02:00
Luis Ramos
0b76a25941 Add spree_core dependencies to OFN so we can upgrade them
This will enable us to upgrade these dependencies independently
2020-06-03 14:25:27 +01:00
Lucas Hiago
bfe17f54d7 Change minimal amount in price sack calculator to float 2020-06-03 08:51:41 -03:00
Pau Perez
7900cf9438 Style spinner SVG by inlining it
This way we can tweak the `fill` property of the SVG and style it with
CSS as the documented in the author's repo
(https://github.com/SamHerbert/SVG-Loaders)

> An icon's color can be manipulated by changing the fill attribute in
the SVG file.
2020-06-03 11:13:03 +02:00
Transifex-Openfoodnetwork
bbf381d130 Updating translations for config/locales/es.yml 2020-06-03 18:32:57 +10:00
Pau Pérez Fabregat
da3d51b500 Merge pull request #5539 from luisramos0/dev_docs
Improve Dev onboarding docs
2020-06-03 09:50:03 +02:00
Transifex-Openfoodnetwork
61d85eda61 Updating translations for config/locales/ca.yml 2020-06-03 17:40:19 +10:00
Pau Pérez Fabregat
8a62c8aeb5 Merge pull request #5544 from luisramos0/api_ctrl
[Spree 2.1] Fix specs in Api::EnterprisesController and Api::ShopsController
2020-06-03 09:34:43 +02:00
Pau Pérez Fabregat
833e2ff9c4 Merge pull request #5543 from luisramos0/product_stock
[Spree 2.1] Fix product_stock spec
2020-06-03 09:18:52 +02:00
Pau Pérez Fabregat
4935932e45 Merge pull request #5531 from openfoodfoundation/dependabot/bundler/i18n-js-3.7.0
Bump i18n-js from 3.6.0 to 3.7.0
2020-06-03 09:17:58 +02:00
Pau Pérez Fabregat
d9cf22fed5 Merge pull request #5528 from luisramos0/checkout_js
Make checkout JS code send bugsnag alert even if there's an error processing an error
2020-06-03 09:13:40 +02:00
Pau Pérez Fabregat
fb339d6a99 Merge pull request #5263 from luisramos0/pdp
[Mobile] Restyle product modal
2020-06-03 08:55:20 +02:00
Transifex-Openfoodnetwork
4e497d93b7 Updating translations for config/locales/en_CA.yml 2020-06-03 10:31:14 +10:00
romale
325cbbf3c7 formatting 2020-06-02 23:40:57 +03:00
Luis Ramos
f9d86eb7ed Join module and describe declaration so that rspec picks up correct controller under Api namespace and not the controller with the same name in the base namespace 2020-06-02 20:17:46 +01:00
Luis Ramos
251c04f2d9 Make all tests in enterprises_controller_spec use api_post instead of spree_post 2020-06-02 20:17:07 +01:00
Luis Ramos
ff0c93a76b Join module and describe declaration so that rspec picks up correct
controller under Api namespace and not the controller with the same name
in the base namespace
2020-06-02 20:15:25 +01:00
Luis Ramos
c68459f212 Make enterprises_controller_spec use api_post instead of spree_post 2020-06-02 20:06:52 +01:00
Luis Ramos
5fd0a6028f Merge pull request #5420 from luisramos0/pi_fix
[Spree 2.1] Product Import - Add variant_unit_name to the list of fields to be ignored when creating a variant
2020-06-02 18:13:48 +01:00
Luis Ramos
53a80de503 Improve method names and set use_route with reverse_merge so it can be overridden 2020-06-02 17:32:46 +01:00
Luis Ramos
4438f620e9 Merge pull request #5421 from luisramos0/more_strong_params
[Spree 2.1] Add missing strong params to less important controllers missed by specs
2020-06-02 16:59:27 +01:00
Luis Ramos
23b677f547 Merge pull request #5388 from luisramos0/reg_proc
[Spree 2.1] Fix enterprise package selection submit button
2020-06-02 16:23:52 +01:00
Luis Ramos
beb1b3f3bc Replay 02d46b7c51 lost in the last merge from master 2020-06-02 16:11:03 +01:00
Luis Ramos
c9a7a6e897 Merge branch 'master' into 3-0-stable-jun-2 2020-06-02 16:00:45 +01:00
Luis Ramos
8bb4310cba Merge pull request #5383 from luisramos0/admin_orders_bug
[Spree 2.1] Fix Update and Calculate Fees button
2020-06-02 15:30:16 +01:00
Luis Ramos
7b89f4d6c5 Switch controller helper calls routes from spree to main_app, this will include all routes all the time 2020-06-02 15:00:57 +01:00
Luis Ramos
13836a62bb Rename parameters to params and change default from nil to {} 2020-06-02 14:36:06 +01:00
Luis Ramos
3136aa5a8b Make api_process use process_spree_action 2020-06-02 14:00:24 +01:00
romale
9d56c180b2 formatting 2020-06-02 15:56:59 +03:00
Luis Ramos
2f76e0b15b Bring methods from Spree::TestingSupport::ControllerRequests to our ControllerRequestsHelper so we can merge them later 2020-06-02 13:54:33 +01:00
Luis Ramos
5d0856e5a3 Rename ControllerHacks to ControllerRequestsHelper and move it's configuration to spec_helper 2020-06-02 13:47:59 +01:00
Luis Ramos
cd3bc54c37 Remove resource_scoping to make things more simple 2020-06-02 13:43:33 +01:00
Luis Ramos
2c2263ab78 Fix rubocop issues in shipments_controller_spec 2020-06-02 13:41:50 +01:00
Luis Ramos
092e047b44 Remove resource_scoping from api/shipments_controller spec 2020-06-02 13:35:48 +01:00
Luis Ramos
a0aa42cd58 Remove resource_scoping from api/variants spec 2020-06-02 13:26:12 +01:00
romale
d16bfe3779 formatting 2020-06-02 14:44:16 +03:00
romale
9d3f010173 formating 2020-06-02 14:42:50 +03:00
Luis Ramos
89c461662f Merge pull request #5502 from Matt-Yorkley/dropshadow-regression
[mobile ux] Fix missing drop-shadow
2020-06-02 12:07:37 +01:00
romale
35648025df formating 2020-06-02 12:09:38 +03:00
romale
b21904ada1 moved to 2882 2020-06-02 10:38:36 +03:00
Robin Klaus
f4a64e89c2 Added translation keys to error messages partial and en.yml file to add translation to error messages 2020-06-02 15:41:01 +10:00
Luis Ramos
2d7f1ce283 Delete all variants from test product not just the first one 2020-06-01 21:21:26 +01:00
Luis Ramos
072da7316e Remove views code that tests for the existence of product variants
A product always has the standard variant, the only case where a product will not have variants is immediatly after creation and before being saved
2020-06-01 14:09:14 +01:00
Luis Ramos
e7828e107b Delete dead methods from product_decorator 2020-06-01 14:07:34 +01:00
Luis Ramos
a4a6431faf Fix strong params problem where order object is not sent to controller 2020-06-01 13:42:22 +01:00
Luis Ramos
48985bbcd1 Use patch instead of put, because it's rails 4
Extend the registration process spec to cover package selection
2020-06-01 13:41:37 +01:00
Luis Ramos
c6842ada7f Add variant_unit_name to the list of fields to be ignored when creating a variant, it's a product field 2020-06-01 13:41:15 +01:00
Luis Ramos
754b657f81 Move controller methods to protected to keeep consitency and isolation 2020-06-01 13:40:59 +01:00
Luis Ramos
bae128738b Add spec for return authorizations controller 2020-06-01 13:40:59 +01:00
Luis Ramos
583b4a1df7 Add spec to countries_controller 2020-06-01 13:40:59 +01:00
Luis Ramos
73f2844fe3 Add spec for shipping categories 2020-06-01 13:40:59 +01:00
Luis Ramos
e77d9aba7b Add missing strong params to less important controllers not tested in specs 2020-06-01 13:40:59 +01:00
romale
069241f307 Missing translation key "return_authorizations"
return_authorizations: Return Authorizations
2020-06-01 15:25:46 +03:00
Transifex-Openfoodnetwork
e5cc425662 Updating translations for config/locales/tr.yml 2020-06-01 16:39:17 +10:00
Luis Ramos
5d9e88a3bc Restructure GETTING STARTED to make it clear what the wiki pages are for 2020-05-31 23:00:32 +01:00
Luis Ramos
fb45cb602e Remove duplication from CONTRIBUTING 2020-05-31 21:07:52 +01:00
Matt-Yorkley
8e57f9d929 Adjust shared map partial 2020-05-31 19:21:20 +02:00
Cillian O'Ruanaidh
94b85fb9e3 Fix up Code Climate issues with Open Street Map code. 2020-05-31 18:42:55 +02:00
Cillian O'Ruanaidh
deafe32354 Add support for using Open Street Map on the Map and Group pages.
The map is displayed using https://leafletjs.com/

To enable Open Street Map go to the Admin -> Configuration -> Content section and click 'Open Street Map Enabled'.

The 'Open Street Map Provider Name' setting can be used to configure different tile providers thanks to the Leaflet-providers extension (https://github.com/leaflet-extras/leaflet-providers)

Some tile providers require an API key, this can provided in JSON format e.g. '{ apiKey: 123 }' in the 'Open Street Map Provider Options' setting.

Each tile provider has their own usage policy so this should be checked before enabling Open Street Map.

The search field for the Open Street Map works differently than searching on Google Maps. It matches producers by their name or address because it was easier to implement instead of matching place names all over the world.
2020-05-31 18:42:55 +02:00
Matt-Yorkley
1e3bf7fec4 Merge pull request #5487 from coopdevs/fix-schedule-factory
[Spree 2.1] Allow to create order_cycle_schedules
2020-05-30 13:49:47 +02:00
Luis Ramos
c01da01c70 Merge pull request #5518 from openfoodfoundation/dependabot/bundler/ddtrace-0.36.0
Bump ddtrace from 0.35.2 to 0.36.0
2020-05-30 11:05:40 +01:00
Lucas Hiago
528db54f36 Correct controller name for matching 2020-05-29 22:24:41 -03:00
Lucas Hiago
19ef66f3ad Change mail method config route 2020-05-29 21:51:57 -03:00
dependabot-preview[bot]
f773e57dee Bump i18n-js from 3.6.0 to 3.7.0
Bumps [i18n-js](https://github.com/fnando/i18n-js) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/fnando/i18n-js/releases)
- [Changelog](https://github.com/fnando/i18n-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fnando/i18n-js/compare/v3.6.0...v3.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-29 19:20:40 +00:00
Cillian O'Ruanaidh
e6fa296d03 Remove spinjs-rails dependency and use spinning-circles.svg instead.
For https://github.com/openfoodfoundation/openfoodnetwork/issues/3491

The spinjs-rails gem provides a CSS3 a spinning activity indicator. This commit removes the gem so we don't have to keep the gem up-to-date and uses the spinning-circles.svg which is used already in other places.

The spinjs spinner can be seen when viewing or editing taxonomies in /admin/taxonomies. It is loaded from the .ajaxStart call in app/assets/javascripts/admin/spree/progress.coffee

To test or restyle this spinner you can change the display property of the #progress element in app/assets/stylesheets/admin/components/progress.scss to 'block'.
2020-05-29 18:04:49 +01:00
Pau Perez
24e897d145 Do not build OC with schedules at the same time
It's not possible when neither the OC nor the schedule has an id due to
the new join table order_cycle_schedules.
2020-05-29 17:00:52 +02:00
Pau Perez
538c53fe9e Improve code readability
Also removing an useless vars
2020-05-29 15:56:05 +02:00
Luis Ramos
6e842212ea Always throw back error even if there is an error loading the flash for example translating the error message 2020-05-29 14:45:22 +01:00
Luis Ramos
3e0839de73 Increase warning sign line height so that it renders correctly on smaller screens 2020-05-29 12:56:22 +01:00
Luis Ramos
2c55bef544 Remove unnecessary padding
This is looking broken in ipad mini 3
2020-05-29 12:56:22 +01:00
Luis Ramos
a376a17f64 Group related properties together 2020-05-29 12:56:20 +01:00
Cillian O'Ruanaidh
d02f64da06 Define bulk coop report summary row and columns with lists of method names instead of Procs. 2020-05-29 11:34:12 +01:00
Matt-Yorkley
c73defa8a1 Merge pull request #5494 from Matt-Yorkley/group-maps-fix
Fix group maps
2020-05-29 12:05:55 +02:00
Pau Pérez Fabregat
c0ad992352 Merge pull request #5465 from luisramos0/rename_accessible_by
[Rails 4.1] Rename order_cycle.accessible_by to remove name clash with active record
2020-05-29 12:04:19 +02:00
Pau Pérez Fabregat
8d1944d714 Merge pull request #5506 from Matt-Yorkley/3-0-dfc-specs
[Spree 2.1] DFC specs updates
2020-05-29 11:43:19 +02:00
Pau Perez
815cd73ff3 DRY specs 2020-05-29 11:15:47 +02:00
Pau Perez
032dce1a88 Move OC save within success block
This makes more evident there are two scenarios: schedule save success
or failure. We deal with OCs failures raising an exception.
2020-05-29 10:46:29 +02:00
Pau Perez
768568c75c Rename @object to @schedule
This level of abstraction makes sense in the framework-like code in
ResourceController but here it just makes things more difficult.
2020-05-29 10:44:43 +02:00
Pau Perez
4f3d01bd93 Remove unused HTML response format 2020-05-29 10:43:16 +02:00
Pau Perez
56b590a6f8 Extract #sync_subscription
This makes it far easier to spot what's the difference between create
and update regarding subs syncing without having to mess with `#update`
and its callbacks (for now).
2020-05-29 10:41:42 +02:00
Pau Perez
65c53df2ef Remove unnecessary callback invocations
There are no registered callback methods to execute.
2020-05-29 10:25:38 +02:00
Pau Perez
f25ee8c998 Extract #editable_order_cycles
This makes it far easier to spot what's the difference between create
and update regarding the editable order cycles.

I stop here before a slightly deeper refactor which would make the PR
quite hard to review. This will come an upcoming one.
2020-05-29 10:25:37 +02:00
Pau Perez
862364ebbb Fix schedule destroy spec 2020-05-29 10:24:50 +02:00
Pau Perez
4f635339e3 Fix schedule creation and subs syncing 2020-05-29 10:24:42 +02:00
Transifex-Openfoodnetwork
5e0e88bf2c Updating translations for config/locales/fr.yml 2020-05-29 17:24:01 +10:00
Transifex-Openfoodnetwork
9fbd8b4fe1 Updating translations for config/locales/en_FR.yml 2020-05-29 16:46:33 +10:00
Maikel
2f82a58055 Merge pull request #5365 from mbudm/task/orderCycleSpecSplit
Split order_cycle_spec into smaller specs grouped by theme
2020-05-29 13:46:42 +10:00
Transifex-Openfoodnetwork
11f33bd911 Updating translations for config/locales/pt_BR.yml 2020-05-29 08:12:24 +10:00
Luis Ramos
2203bca1ce Merge pull request #5489 from luisramos0/3-0-stable-may-22
[Spree 2.1] Merge master into 3-0-stable
2020-05-28 19:55:14 +01:00
Luis Ramos
bb8401a0fc Merge pull request #5444 from luisramos0/dead_js_code
Remove some dead JS code related to admin sub menus
2020-05-28 19:54:42 +01:00
Luis Ramos
bd5de9d82f Delete unused translations 2020-05-28 19:51:23 +01:00
Luis Ramos
bec798c6c9 Bring some spree translations to ofn in payment methods pages 2020-05-28 19:51:23 +01:00
Luis Ramos
fe6bcb5093 Add de-activation warning to payment methods edit page 2020-05-28 19:50:58 +01:00
Luis Ramos
26f1dfb080 Move payment_method display field translations to OFN and adapt them to changes on same field in shipping method 2020-05-28 19:50:58 +01:00
Luis Ramos
83edfbd1dd Merge pull request #5266 from luchiago/improve-order-cancellation-email
Improve order cancellation email
2020-05-28 19:48:26 +01:00
Cillian O'Ruanaidh
1fba998b9e Drop Blockenspiel and use :rules/:columns methods instead of :organise/:summary_columns DSL.
For https://github.com/openfoodfoundation/openfoodnetwork/issues/3231
2020-05-28 19:04:18 +01:00
Pau Perez
9a29e634fc Deal with Schedule creation in its own controller
This way it can assign the order cycles to the schedule when this is
persisted. An OrderCycleSchedule (the join table) can't be created until
both schedule and order_cycle got an id.

Also, we do not call `#adapt_params` when creating the Schedule as that
assigns `order_cycle_ids` to `@object.attributes` thus, attempting to
create the OrderCycleSchedule without a schedule_id.
2020-05-28 17:49:36 +02:00
Transifex-Openfoodnetwork
29f266d3a5 Updating translations for config/locales/tr.yml 2020-05-28 23:17:00 +10:00
Transifex-Openfoodnetwork
c428b2f133 Updating translations for config/locales/tr.yml 2020-05-28 23:07:06 +10:00
Pau Perez
06b7a95fb1 DRY duplicate subscription declaration 2020-05-28 14:00:53 +02:00
Matt-Yorkley
ea7a2c91ee Update all locales with the latest Transifex translations 2020-05-28 13:12:12 +02:00
Matt-Yorkley
2ae84ad710 Merge pull request #5491 from openfoodfoundation/transifex
Transifex
2020-05-28 13:08:36 +02:00
dependabot-preview[bot]
8632383e60 Bump ddtrace from 0.35.2 to 0.36.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.35.2 to 0.36.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.35.2...v0.36.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-27 20:23:11 +00:00
Luis Ramos
6f0106251e Move product-img css class to parent div so we can center align it and keep existing img styling 2020-05-27 19:16:31 +01:00
Pau Pérez Fabregat
3b4266cbc8 Merge pull request #5495 from luisramos0/byebug
Fix error in dependency requirement specification for byebug and pry-byebug
2020-05-27 08:54:32 +02:00
Pau Pérez Fabregat
22be41ebed Merge pull request #5498 from mbudm/task/local_db_port_config
Add support for an env var to override DB port
2020-05-27 08:53:29 +02:00
Pau Pérez Fabregat
127e48e579 Merge pull request #5413 from luisramos0/edit_orders_mobile
Show order edit link on mobile instead of the cancel link
2020-05-27 08:51:41 +02:00
Pau Pérez Fabregat
4d3ae8fa53 Merge pull request #5439 from coopdevs/fix-misplaced-paragraph
[mobile ux] Fix misplaced paragraph in shop tab
2020-05-27 08:51:13 +02:00
Luis Ramos
7313e3c096 Merge pull request #5501 from luisramos0/grumpy_cat_take_2
Enterprises Controller: reset_distributor must be called before any call to memoized current_distributor
2020-05-26 23:06:59 +01:00
Transifex-Openfoodnetwork
d2e46b8561 Updating translations for config/locales/ca.yml 2020-05-27 00:32:12 +10:00
Transifex-Openfoodnetwork
8d3c8c62fb Updating translations for config/locales/en_CA.yml 2020-05-27 00:02:52 +10:00
Transifex-Openfoodnetwork
daf9fab16d Updating translations for config/locales/en_CA.yml 2020-05-26 23:59:48 +10:00
Matt-Yorkley
89dd7ddb86 Update setting of request headers in DFC controller spec 2020-05-26 15:32:07 +02:00
Matt-Yorkley
bde4acd22f Update get calls in DFC controller spec 2020-05-26 15:21:02 +02:00
Matt-Yorkley
953e1f8ff4 Adjust z-index on overlapping elements to fix missing drop-shadow regression 2020-05-26 12:59:51 +02:00
Luis Ramos
52810b0f4a Make enterprises controller spec assert the corrrect state of current_distributor
This validates bug #5496 is fixed
2020-05-26 11:26:20 +01:00
Luis Ramos
4026e072d5 Break OrderCartReset in two steps so that memoized method current_customer (that uses memoized current_distributor) is called after reset_distributor 2020-05-26 11:13:16 +01:00
Luis Ramos
a582261d7a Merge pull request #5493 from luisramos0/display_on_4_managers
Make display_on attribute available for managers to change in shipping and payment methods
2020-05-26 09:57:56 +01:00
Pau Pérez Fabregat
c3f66203bb Merge pull request #5497 from openfoodfoundation/dependabot/bundler/rack-mini-profiler-2.0.2
Bump rack-mini-profiler from 2.0.1 to 2.0.2
2020-05-26 09:55:26 +02:00
Robin Klaus
50a63139e3 Changed translation syntax to normal t() call and lazy lookup. 2020-05-26 15:14:26 +10:00
Steve Roberts
d4a256fcca Add support for an env var to override DB port 2020-05-26 11:04:42 +10:00
Steve Roberts
2bb3cf1c54 Name checkbox element id var more informatively 2020-05-26 09:53:51 +10:00
dependabot-preview[bot]
fc186f5342 Bump rack-mini-profiler from 2.0.1 to 2.0.2
Bumps [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler) from 2.0.1 to 2.0.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.0.1...v2.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-25 21:24:42 +00:00
Luis Ramos
513ee6393a Make product modal display image on the right for medium screens like it was doing for large screens 2020-05-25 19:31:02 +01:00
Luis Ramos
1e0e3a063d Add margin right to product modal title so that the close button doesnt overlap with it 2020-05-25 19:14:40 +01:00
Luis Ramos
50e4896e32 Fix error in dependency requirement specification
~> 11.0 allows upgrades to 11.1, we want to lock it to 11.0.x so we need ~> 11.0.0

Same logic for pry-byebug
2020-05-25 18:15:47 +01:00
Matt-Yorkley
8095371304 Ensure OpenStreetMap credits are aways shown with map and fix credits positioning for /groups page map display 2020-05-25 14:12:12 +02:00
Matt-Yorkley
a3660dfe37 Extract repeated map code to new partial 2020-05-25 14:04:11 +02:00
Matt-Yorkley
e03005ed56 Fix maps and tidy up groups map code 2020-05-25 13:52:56 +02:00
Luis Ramos
cb0aefd29c Make display on attribute available for managers to change, not just super admins 2020-05-25 11:21:53 +01:00
Transifex-Openfoodnetwork
d9d221e4f3 Updating translations for config/locales/en_GB.yml 2020-05-25 18:46:48 +10:00
François Turbelin
b2b988b063 Apply new order directly inside service 2020-05-24 14:41:40 +02:00
Transifex-Openfoodnetwork
5de3fbba1e Updating translations for config/locales/en_FR.yml 2020-05-24 19:14:49 +10:00
Transifex-Openfoodnetwork
ed27ed32e3 Updating translations for config/locales/fr.yml 2020-05-24 19:14:25 +10:00
Luis Ramos
f34f693620 Merge branch 'master' into 3-0-stable-may-22 2020-05-22 22:54:19 +01:00
Kristina Lim
cf534237cd Update all locales with the latest Transifex translations 2020-05-23 01:51:23 +08:00
Pau Pérez Fabregat
da88399ca6 Merge pull request #5411 from Matt-Yorkley/orders-closed-fullwidth
Fix closed shop message not displaying full-width
2020-05-22 19:32:08 +02:00
Pau Pérez Fabregat
a5b4c5316c Merge pull request #5458 from Matt-Yorkley/oc-form-ui-bug
Fix display issue on order cycle edit form
2020-05-22 19:31:41 +02:00
Pau Pérez Fabregat
f1dbad1007 Merge pull request #5466 from Matt-Yorkley/shop-search-fix
Fix search bar in /shops and /groups
2020-05-22 18:40:27 +02:00
Pau Pérez Fabregat
17e77df14f Merge pull request #5451 from Matt-Yorkley/oc-selector-fix
Fix tab-buttons element overlapping order cycle selector
2020-05-22 18:39:10 +02:00
Pau Pérez Fabregat
3f593d6246 Merge pull request #5440 from luisramos0/grumpy_cat
Fix Grumpy Cat on shop page (cart with items from a closed OC)
2020-05-22 18:38:41 +02:00
Pau Pérez Fabregat
72399cb6df Merge pull request #5485 from luisramos0/byeby_phantom_js
Rename method refering to phantomjs
2020-05-22 18:37:28 +02:00
Pau Pérez Fabregat
ff0e85c877 Merge pull request #5486 from Matt-Yorkley/3-0-caching
[Spree 2.1] Caching
2020-05-22 18:36:49 +02:00
Pau Pérez Fabregat
b804036822 Merge pull request #5469 from openfoodfoundation/transifex
Transifex
2020-05-22 18:24:14 +02:00
Pau Perez
a33396984f Fix and DRY specs 2020-05-22 18:17:59 +02:00
Pau Perez
d9686d6982 Enable spec files to be executed alone
This fixes the annoying error

```
NameError:
  uninitialized constant OrderManagement::Subscriptions::Whatever
```

and let's you execute the spec file in isolation. It slows down way too
much having the run the entire engine test suite while developing. And
it makes me nervous too.
2020-05-22 15:55:03 +02:00
Transifex-Openfoodnetwork
88ab5c2dd7 Updating translations for config/locales/fr.yml 2020-05-22 23:31:48 +10:00
Transifex-Openfoodnetwork
466bbe52ae Updating translations for config/locales/en_FR.yml 2020-05-22 23:29:08 +10:00
Luis Ramos
9a71ffc093 Merge pull request #5438 from Matt-Yorkley/cart-stock-ux
Cart stock UX
2020-05-22 14:21:16 +01:00
Matt-Yorkley
f0525b861c Update expectations in API caching test
Rails 4 has slightly changed the format of the cache keys here, so the response was not as expected.
2020-05-22 14:54:57 +02:00
Pau Perez
e339a37cd5 Allow to create order_cycle_schedules
There's no way we can create an order_cycle_schedules if the schedule
doesn't have an id, which we can't get if to persist it we need an OC
first, which in turn, will create an order_cycle_schedules.
2020-05-22 14:22:31 +02:00
Matt-Yorkley
b00fbd69ae Update Fragment Caching for Rails 4
Rails 4 introduced "automagically" modified cache keys, that included a digest in the key on any cache entry related to views. This is not what we want at all, fixed here with the `skip_digest: true` option.
2020-05-22 14:22:21 +02:00
Matt-Yorkley
a9abe48ede Re-enable cache invalidation test 2020-05-22 14:21:45 +02:00
Matt-Yorkley
04ffe7b911 Fix expectations and mock responses for Rails 4
Mocking these objects is working differently in Rails 4, and utilising `#and_call_original` helped to ensure different parts of the codebase were receiving the correct response objects (AR relations, etc).
2020-05-22 14:21:45 +02:00
Pau Perez
be9fbae300 Fix misplaced paragraph in shop tab
By wrapping message within 12-cols container, keeping consistency with
the other shop tabs.
2020-05-22 12:37:07 +02:00
Luis Ramos
b7c601abcd Merge pull request #5424 from luisramos0/ship_method_warning
Add warning to enterprise Shipping Method list and to Shipping method edit page
2020-05-22 11:24:12 +01:00
Luis Ramos
639c1e1ccc Rename method, it's not phantomjs running underneath any more 2020-05-22 10:57:51 +01:00
Robin Klaus
53c0bcbd0b Changed translation syntax to normal t() call and lazy lookup. 2020-05-22 13:22:57 +10:00
Luis Ramos
6fcca0197c Merge pull request #5450 from rmklaus12/5095-ordercycle-amtqty-translations
Changed report_header fields for amount and quantity to reflect corre…
2020-05-21 21:21:14 +01:00
Luis Ramos
12f512e98b Move arrow on OC selector a little to the right so it's centered between end of text (if max length reached) and border 2020-05-21 15:41:26 +01:00
Luis Ramos
b2bfe28173 Remove extra right pad on OC selector, in mobile, this will make the selector be centered 2020-05-21 15:38:55 +01:00
Luis Ramos
ed14a92c7b Make OC selector wider to support more characters where there is enough space for that 2020-05-21 15:38:54 +01:00
Transifex-Openfoodnetwork
adb3c9e56f Updating translations for config/locales/en_NZ.yml 2020-05-22 00:22:33 +10:00
Pau Pérez Fabregat
c6c9dcc345 Merge pull request #5478 from luisramos0/bundler1-17-3
Upgrade bundler, byebug and pry-byebug
2020-05-21 16:10:38 +02:00
Pau Pérez Fabregat
16dfb3c7e9 Merge pull request #5408 from luisramos0/columns_params
[Spree 2.1] Add missing permitted param to Column Preferences controller
2020-05-21 14:41:30 +02:00
Luis Ramos
6e6dab8f72 Merge pull request #5474 from openfoodfoundation/dependabot/bundler/activerecord-import-1.0.5
Bump activerecord-import from 1.0.4 to 1.0.5
2020-05-21 13:17:51 +01:00
Luis Ramos
574e4a02c0 Force pry to 0.12 so that it works well with pry-byebug 3.7 2020-05-21 13:10:59 +01:00
Luis Ramos
01eda90a00 Upgrade bundler, byebug and pry-byebug 2020-05-21 12:59:57 +01:00
Pau Pérez Fabregat
050e83e745 Merge pull request #5410 from luisramos0/fix_some_specs
[Spree 2] Make api/enterprises_controller_spec less flaky
2020-05-21 13:45:39 +02:00
Pau Pérez Fabregat
6851921e9d Merge pull request #5443 from openfoodfoundation/dependabot/bundler/mini_racer-0.2.14
Bump mini_racer from 0.2.11 to 0.2.14
2020-05-21 13:32:30 +02:00
Luis Ramos
8cdc9b82df Merge pull request #5427 from luisramos0/jquery-ui-rails
Upgrade jquery-ui-rails to v4.2.1
2020-05-21 10:57:10 +01:00
Luis Ramos
2ae34d8df3 Merge pull request #5355 from jeduardo824/enhancement/make-shop-names-links-on-transactions-page
change shop name to be link to shop on transactions page
2020-05-21 10:56:19 +01:00
Luis Ramos
35b249f40d Merge pull request #5390 from rmklaus12/fix-enyml-keys
Fix translation keys in en.yml file from previous conflicting PRs
2020-05-21 10:56:01 +01:00
Luis Ramos
a6ea79d3a5 Add warning message to enterprise ship methods list and ship method edit page 2020-05-21 10:47:22 +01:00
Luis Ramos
d017c0b701 Change base translation from applies to active so the naming is consistent: ship methods can be active or inactive for an enterprises which means they can be linked or not to that enterprise 2020-05-21 10:45:58 +01:00
Luis Ramos
cf0ad179a1 Move hubs_sidebar to the last 4 columns at the top of the page 2020-05-21 10:45:58 +01:00
Transifex-Openfoodnetwork
8bb47ef467 Updating translations for config/locales/en_NZ.yml 2020-05-21 16:43:58 +10:00
Maikel
da55956a6e Merge pull request #5392 from luisramos0/ship_method_bo
Make "backoffice only" ship methods work and remove option "frontoffice only"
2020-05-21 10:16:15 +10:00
dependabot-preview[bot]
0e1ae03454 Bump activerecord-import from 1.0.4 to 1.0.5
Bumps [activerecord-import](https://github.com/zdennis/activerecord-import) from 1.0.4 to 1.0.5.
- [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.4...v1.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-20 20:02:29 +00:00
Luis Ramos
e287680c1b Merge pull request #5429 from mkllnk/5400-orders-distributors-report
5400 List each order only once in Orders And Distributors report
2020-05-20 20:36:58 +01:00
Matt-Yorkley
6b3a7228ce Update flash message with instruction to update the quantities 2020-05-20 09:43:29 +02:00
Transifex-Openfoodnetwork
8387c71b6e Updating translations for config/locales/tr.yml 2020-05-20 15:55:52 +10:00
Robin Klaus
16f2c8d7d1 Removed 5 keys per change request in ref to pr5425 2020-05-20 14:13:42 +10:00
Luis Ramos
76b721b663 Merge pull request #5457 from Matt-Yorkley/cart-fix
Fix cart fields sharing same scope
2020-05-19 19:31:49 +01:00
Luis Ramos
942dde62ff Merge pull request #5464 from luisramos0/3-0-action-caching
[Spree 2.1] Add actionpack-action_caching gem to make action caching work again
2020-05-19 18:47:55 +01:00
Matt-Yorkley
3df2d4721b Fix search bar in /shops and /groups 2020-05-19 14:00:20 +02:00
Luis Ramos
758d7c82f7 Rename order_cycle.accessible_by to remove name clash with active record 2020-05-19 12:21:13 +01:00
Luis Ramos
2e9f911958 Add actionpack-action_caching to support action caching 2020-05-19 12:06:24 +01:00
Matt-Yorkley
4a837e8c07 Fix display issue on order cycle form
Some of the form elements on the first OC edit page were covered up by the save bar in some cases. this ensures they are always visible and clickable.
2020-05-19 11:56:41 +02:00
Matt-Yorkley
05e6f5792d Fix cart fields sharing same scope
All cart page quantity fields were displaying a single max quantity instead of a different value for each one.
2020-05-19 10:23:12 +02:00
Matt-Yorkley
e54fad9bfd Add spec for maximum quantities with multiple items in cart
This currently fails
2020-05-19 10:21:24 +02:00
Steve Roberts
446bf268b4 scroll_to substitute 2020-05-19 14:16:45 +10:00
Lucas Hiago
ba30f55e70 Add fullwidth for table selector 2020-05-18 22:53:46 -03:00
Maikel Linke
2d95e9ebc0 List each order only once in report 2020-05-19 10:38:28 +10:00
Maikel Linke
19f7f04816 Add spec for report bug 2020-05-19 10:38:28 +10:00
Maikel Linke
359fd1ac98 Improve readability of report spec 2020-05-19 10:38:28 +10:00
Steve Roberts
049b1b4638 Split up the specs again.
This now shows that there is one consistent spec erroring, spec/features/admin/order_cycles/complex_editing_multiple_product_pages_spec.rb:
Capybara::ElementNotFound:
       Unable to find visible checkbox "order_cycle_incoming_exchange_0_select_all_variants" that is not disabled
2020-05-19 10:14:26 +10:00
Eduardo
6d54e6d4a0 change SearchOrders service to search with shipping_method 2020-05-18 20:44:55 -03:00
Eduardo
473b4c63c4 add Shipping Method filter to admin/orders page 2020-05-18 18:46:43 -03:00
Matt-Yorkley
e3c337ef7e Fix mixed error display issue 2020-05-18 16:41:57 +02:00
Matt-Yorkley
d70174becc Use fresh scope for each quantity field 2020-05-18 16:28:07 +02:00
Matt-Yorkley
f9f76f9082 Move reused available stock logic to service 2020-05-18 16:19:49 +02:00
Matt-Yorkley
111e700799 Update invalid input feedback 2020-05-18 16:14:14 +02:00
Luis Ramos
d1eebe1cfb Merge pull request #5426 from luisramos0/3-0-stable-may13
[Spree 2.1] Merge master into 3-0-stable
2020-05-18 15:05:11 +01:00
Matt-Yorkley
f7b4717f29 Improve validation code 2020-05-18 14:51:11 +02:00
Matt-Yorkley
fe27c8466e Add feature specs for full cart page stock correction process 2020-05-18 14:51:11 +02:00
Matt-Yorkley
63e4430ea4 Update cart page links to be disabled when changes are required and form is unsaved
See: https://stackoverflow.com/questions/23425254/enable-disable-anchor-tags-using-angularjs
2020-05-18 14:51:08 +02:00
Matt-Yorkley
5dd801b432 Fix tab-buttons element overlapping order cycle selector 2020-05-18 14:27:05 +02:00
Matt-Yorkley
3a46f32aa3 Merge pull request #5435 from openfoodfoundation/transifex
Transifex
2020-05-18 13:44:32 +02:00
Luis Ramos
ea8157a5c6 Merge pull request #5304 from dacook/5299-orders-filter-several-tags
5299 Impossible to filter orders with several tags
2020-05-18 11:25:54 +01:00
Luis Ramos
37350fcbb0 Add table name to condition so it doesnt cause trouble in the future if mixed with other tables in the same query 2020-05-18 10:55:03 +01:00
Luis Ramos
05136b51d1 Merge pull request #5356 from rmklaus12/4534-mobile-searchkey
Changed search input to inputmode to enable 'go' button on dynamic mo…
2020-05-18 10:30:56 +01:00
Robin Klaus
311bbd2aa2 Changed report_header fields for amount and quantity to reflect correct translation to French 2020-05-18 18:41:04 +10:00
Robin Klaus
a0334953db Added 14 translation keys for PayPalExpress payment method 2020-05-18 17:06:07 +10:00
Transifex-Openfoodnetwork
d2b8b5e888 Updating translations for config/locales/pt_BR.yml 2020-05-18 05:14:19 +10:00
Luis Ramos
6c81c19f00 Remove dead code 2020-05-16 14:19:25 +01:00
Robin Klaus
438c0ecde9 delete extra lines 2020-05-16 20:12:54 +10:00
Robin Klaus
ba8ecf19ac Added input code to two additional pages to cover shop tab search boxes 2020-05-16 12:56:06 +10:00
dependabot-preview[bot]
f4afc8ffcd Bump mini_racer from 0.2.11 to 0.2.14
Bumps [mini_racer](https://github.com/discourse/mini_racer) from 0.2.11 to 0.2.14.
- [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.2.11...v0.2.14)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-15 19:20:08 +00:00
Luis Ramos
ace73be4e2 Add unit tests to order_cart_reset 2020-05-15 20:05:45 +01:00
Luis Ramos
1c749a8029 Extract order_cycle_not_listed? method and rename order_cycles to listed_order_cycles 2020-05-15 19:36:59 +01:00
Luis Ramos
f22eae752d Adapt spec to validate issue #5340 2020-05-15 19:30:01 +01:00
Luis Ramos
a438317d69 Extract order_cart_reset service from enterprises_controller 2020-05-15 19:30:00 +01:00
Luis Ramos
35824c7aa1 Rename restartCheckout to order_checkout_restart to make it follow service naming convention 2020-05-15 19:29:37 +01:00
Luis Ramos
ba585064e1 Rename ResetOrderService to OrderCompletionReset to follow new service naming convention and also to make it more specific to completed orders 2020-05-15 19:29:37 +01:00
Luis Ramos
21d1a7bc04 Remove dead code 2020-05-15 19:29:37 +01:00
Luis Ramos
6827ce5c7f Refactor order.set_order_cycle, return early and remove indentation 2020-05-15 19:29:37 +01:00
Luis Ramos
493adc8b1f Fix problem in spec where wrong enterprise was being used 2020-05-15 19:29:37 +01:00
Luis Ramos
94bb95861b If selected OC is not in the available OCs, empty the order 2020-05-15 19:29:35 +01:00
Lucas Hiago
98cbe5762a Remove unused css property from image in cancel email 2020-05-15 10:59:56 -03:00
Lucas Hiago
0caa91d057 Remove second table of cancel email instructions style 2020-05-15 10:59:56 -03:00
Lucas Hiago
5d286cb349 Add i18n of new symbols for order cancel mail 2020-05-15 10:59:56 -03:00
Lucas Hiago
f72da4abe4 Add refund message in order cancel mail 2020-05-15 10:59:56 -03:00
Lucas Hiago
42012d6482 Add new order sumary in order cancel mail 2020-05-15 10:59:55 -03:00
Lucas Hiago
1c1200125e Add new greeting table in order cancel mail 2020-05-15 10:59:55 -03:00
Lucas Hiago
0b8771ccf0 Add connect with us footer to order cancelation email 2020-05-15 10:59:55 -03:00
Luis Ramos
52e7ca2417 Select first default OC only if no OC is already selected 2020-05-15 14:26:56 +01:00
Luis Ramos
c3f0c0ed7f Extract method to prepare work ahead 2020-05-15 14:25:20 +01:00
Transifex-Openfoodnetwork
4f14d7910a Updating translations for config/locales/en_IE.yml 2020-05-15 23:04:12 +10:00
Pau Pérez Fabregat
5c7541e63d Merge pull request #5415 from openfoodfoundation/dependabot/bundler/bugsnag-6.13.1
Bump bugsnag from 6.13.0 to 6.13.1
2020-05-15 13:47:46 +02:00
Matt-Yorkley
c2efa901c2 Don't highlight update button when form is invalid 2020-05-15 13:38:17 +02:00
Luis Ramos
4292636e70 Remove close button in product modal 2020-05-15 12:16:19 +01:00
Luis Ramos
d95b2a97b0 Add missing padding above close button (both for the case with image or just with text) and also below product image 2020-05-15 12:12:07 +01:00
Luis Ramos
edaf419857 Use rem instead of px or em 2020-05-15 12:12:07 +01:00
Luis Ramos
38bc076c77 Fix some rubocop issues 2020-05-15 12:12:07 +01:00
Luis Ramos
30fe457cb5 Make product modal show close button only if there is a scroll bar 2020-05-15 12:12:07 +01:00
Luis Ramos
e239bb33f8 Improve the mobile cookies policy modal with a margin 2020-05-15 12:12:07 +01:00
Luis Ramos
3a512478d6 Improve the mobile registration modal by adding a margin 2020-05-15 12:12:07 +01:00
Luis Ramos
4b63893377 Improve mobile login modal with a margin 2020-05-15 12:12:07 +01:00
Luis Ramos
50fa4fc93d Make modal close buttons a little darker with a white cross 2020-05-15 12:12:07 +01:00
Luis Ramos
cbfaaabb72 Adjust different paddings and margins to make mobile product modal contents similar to required design 2020-05-15 12:12:07 +01:00
Luis Ramos
0a378a897b Add close button to mobile product modal, this can be reused in other modals later 2020-05-15 12:12:07 +01:00
Luis Ramos
35ac5e093e Adapt modal size to leave some background visible so that user can click to disable modal 2020-05-15 12:12:07 +01:00
Luis Ramos
39e47998e1 Make the background opacity of modals in the FrontOffice a litle darker according to design 2020-05-15 12:12:07 +01:00
Luis Ramos
14478d5fc1 Style producer name and properties in product modal 2020-05-15 12:12:07 +01:00
Luis Ramos
59a13adff0 Remove product category from product modal 2020-05-15 12:11:32 +01:00
Luis Ramos
fee03c4101 Remove repeated/dead rules 2020-05-15 12:11:32 +01:00
Luis Ramos
9a115afd4f Remove bars around product description and border around product image 2020-05-15 12:11:32 +01:00
Matt-Yorkley
3ba1182661 Dynamically mark quantity field as invalid when stock is incorrect 2020-05-15 12:59:29 +02:00
Matt-Yorkley
42195b76d3 Highlight update button when cart page form is "dirty" 2020-05-15 12:59:29 +02:00
Matt-Yorkley
73b533690e Refactor cart update button syntax 2020-05-15 12:59:29 +02:00
Matt-Yorkley
78f736db45 Add red border on quantity field when it must be updated 2020-05-15 12:59:28 +02:00
Luis Ramos
367de87c61 Upgrade jquery-ui-rails to v4.2 2020-05-15 08:58:40 +01:00
Luis Ramos
4fe1135a33 Merge pull request #5376 from rmklaus12/5104-mobile-keyboard-inputs
Added inputmode attribute to show appropriate mobile keyboard for sel…
2020-05-15 08:49:42 +01:00
Transifex-Openfoodnetwork
78db7e0e5f Updating translations for config/locales/en_GB.yml 2020-05-15 17:36:21 +10:00
David Cook
b4228e8cdd 5299 Remove unnecessary comments 2020-05-15 15:11:26 +10:00
David Cook
f5629d59b0 5299: Add trailing square brackets for array parameters (distributor and order_cycle) 2020-05-15 15:04:01 +10:00
David Cook
8a2c65b6bb Remove duplicate line 2020-05-15 15:04:01 +10:00
David Cook
79df4868de 5299: Unit and feature test for filtering by multiple order cycles 2020-05-15 15:04:01 +10:00
Maikel Linke
51feef83ca Update translations from Transifex 2020-05-15 14:10:36 +10:00
Maikel
90baec0e2c Merge pull request #5393 from openfoodfoundation/transifex
Transifex
2020-05-15 13:53:56 +10:00
Maikel
d566051e7d Merge pull request #5432 from openfoodfoundation/dependabot/bundler/mini_racer-0.2.11
Bump mini_racer from 0.2.10 to 0.2.11
2020-05-15 11:20:46 +10:00
Maikel
6c409d6c70 Merge pull request #5380 from ckhung5/5201-fix-missing-jquery-ui
Update jquery-ui-rails version to 4.1.1
2020-05-15 11:11:36 +10:00
dependabot-preview[bot]
4613502707 Bump bugsnag from 6.13.0 to 6.13.1
Bumps [bugsnag](https://github.com/bugsnag/bugsnag-ruby) from 6.13.0 to 6.13.1.
- [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.13.0...v6.13.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-14 21:04:00 +00:00
dependabot-preview[bot]
3bc09cfcfb Bump stripe from 5.15.0 to 5.22.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 5.15.0 to 5.22.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.15.0...v5.22.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-14 21:03:21 +00:00
dependabot-preview[bot]
99ab7688b6 Bump mini_racer from 0.2.10 to 0.2.11
Bumps [mini_racer](https://github.com/discourse/mini_racer) from 0.2.10 to 0.2.11.
- [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.2.10...v0.2.11)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-14 20:36:44 +00:00
Luis Ramos
644c65b124 Merge pull request #5430 from coopdevs/make-logger-spec-more-reliable
Make JobLogger spec more reliable
2020-05-14 14:33:52 +01:00
Pau Perez
403e1d317d Make JobLogger spec more reliable
This will hopefully fix our bild. I believe that the underlying issue is
that the logger's test double gets leaked into other examples, as RSpec
tells when running `spec/jobs/` specs.

```
5) SubscriptionPlacementJob performing the job when unplaced proxy_orders exist processes placeable proxy_orders
     Failure/Error: JobLogger.logger.info("Placing Order for Proxy Order #{proxy_order.id}")
       #<InstanceDouble(Logger) (anonymous)> was originally created in one example but has leaked into another example and can no longer be used. rspec-mocks' doubles are designed to only last for one example, and you need to create a new one in each example you wish to use it for.
     # ./app/jobs/subscription_placement_job.rb:31:in `place_order_for'
```
Read more: https://relishapp.com/rspec/rspec-mocks/v/3-4/docs/basics/scope#doubles-cannot-be-reused-in-another-example

For whatever reason the JobLogger keeps its `.logger` being stubbed
after this spec.
2020-05-14 13:51:57 +02:00
Transifex-Openfoodnetwork
bd8b3f11d1 Updating translations for config/locales/en_FR.yml 2020-05-14 05:42:38 +10:00
Transifex-Openfoodnetwork
937c981dd8 Updating translations for config/locales/fr.yml 2020-05-14 05:41:55 +10:00
Luis Ramos
19da0ba969 Merge branch 'master' into 3-0-stable-may13 2020-05-13 19:50:32 +01:00
Luis Ramos
5f7c1474a2 Merge pull request #5377 from manvil/1782_enterprise_at_same_address
Handling multiple enterprises at the same location
2020-05-13 19:31:14 +01:00
Luis Ramos
1671184a3c Merge pull request #5375 from luisramos0/sample_order
[Spree 2.1] OFN v3 comes with sample orders :-)
2020-05-13 12:04:06 +01:00
Luis Ramos
be998a9eb6 Reload shipment before shipping otherwise shipment stays as ready but with shipped_at defined 2020-05-13 12:00:37 +01:00
Transifex-Openfoodnetwork
9b7de5ee6e Updating translations for config/locales/en_NZ.yml 2020-05-13 19:27:55 +10:00
Luis Ramos
ef2d7f9485 Merge pull request #5330 from openfoodfoundation/mobile-ux-filters
[mobile ux] Merge search and filter epic to master
2020-05-13 08:59:32 +01:00
Luis Ramos
58842e8cab Show order edit link on mobile instead of the cancel link 2020-05-12 19:44:01 +01:00
Matt-Yorkley
598071fa78 Remove conflicting "clear search" buttons added by Chrome 2020-05-12 18:59:15 +02:00
Matt-Yorkley
70e3f0f1f1 Fix closed shop message not displaying full-width 2020-05-12 18:29:48 +02:00
Matt-Yorkley
265a8ed573 Move messages and products form outside of row and columns to enable full-width 2020-05-12 18:24:10 +02:00
Luis Ramos
83381ad439 Relax array order verification 2020-05-12 15:46:23 +01:00
Luis Ramos
7804c740a6 Add name to permitted params and fix some rubocop issues 2020-05-12 15:35:47 +01:00
Luis Ramos
41645e8351 Merge pull request #5334 from coopdevs/output-logs-in-djs-log-file
Output logs in Delayed Job's log file
2020-05-12 10:05:26 +01:00
Luis Ramos
5f4882fc32 Merge pull request #5403 from openfoodfoundation/dependabot/bundler/ddtrace-0.35.2
Bump ddtrace from 0.35.1 to 0.35.2
2020-05-12 08:39:26 +01:00
dependabot-preview[bot]
1114e062b5 Bump ddtrace from 0.35.1 to 0.35.2
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.35.1 to 0.35.2.
- [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.35.1...v0.35.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-11 22:07:52 +00:00
Luis Ramos
dcd097a22e Merge pull request #5231 from pacodelaluna/add-dfc-provider-engine
Add DFC Provider engine
2020-05-11 20:27:21 +01:00
Matt-Yorkley
ab143ceaed Merge pull request #5352 from pacodelaluna/change-date-displayed-on-sales-tax-report
Change date displayed on sales_tax reports
2020-05-11 09:56:38 +02:00
Matt-Yorkley
0cd4ad0a1a Ensure large amount of search text doesn't break layout with clear all button 2020-05-10 09:44:12 +02:00
Matt-Yorkley
9f882a8674 Ensure search results feedback wraps nicely onto next line 2020-05-10 09:44:12 +02:00
Matt-Yorkley
cb9c56d8aa Ensure correct left-alignment on text in search results feedback 2020-05-10 09:44:12 +02:00
Matt-Yorkley
dee793a392 Change join word between the two filter sets to be "and", to match the actual logic 2020-05-10 09:44:12 +02:00
Matt-Yorkley
7e6683581a Remove full stop from translation
This doesn't fit with the new syntax structure
2020-05-10 09:44:12 +02:00
Matt-Yorkley
b78976fcd7 Ensure consistent styling in both "no results" and "searching for" text 2020-05-10 09:44:12 +02:00
Matt-Yorkley
82b11d6947 Ensure join words are not bold 2020-05-10 09:44:12 +02:00
Matt-Yorkley
a75d3276a4 Include applied filters list in "no results" feedback 2020-05-10 09:44:12 +02:00
Matt-Yorkley
a1435e78c9 Extract applied filters feedback to partial 2020-05-10 09:44:12 +02:00
Matt-Yorkley
7be85d1dab Use bold font with teal colour for both applied taxons and applied properties 2020-05-10 09:44:12 +02:00
Matt-Yorkley
483a654d31 Add join word "or" when both categories and properties are present
Previously for example with "Organic" property and "Fruit" and "Nuts" categories it rendered as: "Fruit or Nuts Organic" instead of: "Fruit or Nuts or Organic"
2020-05-10 09:44:12 +02:00
Matt-Yorkley
f6b910b38a Fix clear search (x) button position on some layouts
Hopefully this will work on iPhones as well...?
2020-05-10 09:44:12 +02:00
Matt-Yorkley
ea06ec7ede Remove smaller (less than 1em) scaling in search bar on mobile 2020-05-10 09:44:12 +02:00
Matt-Yorkley
07ac7dd9c7 Add explicit 'search' input type to search field.
In theory this should improve some of the custom-keyboard functionality added by mobiles, but the implementations will be vary...
2020-05-10 09:44:12 +02:00
Matt-Yorkley
71fb3b1845 Focus search field after it's cleared, ready for immediate typing of new search term on mobile 2020-05-10 09:44:12 +02:00
Matt-Yorkley
e0cb514cad Add hover state to filters button with darker background 2020-05-10 09:44:12 +02:00
Matt-Yorkley
5ceaff24e9 Darken overlay background colour to reduce distraction 2020-05-10 09:44:11 +02:00
Matt-Yorkley
a7771a20c4 Adjust border-radius on filters button 2020-05-10 09:44:11 +02:00
Matt-Yorkley
03afae01b3 Decrease sidebar width on mobile for more tapping space 2020-05-10 09:44:11 +02:00
Matt-Yorkley
96c6da304a Increase margin between filter selectors 2020-05-10 09:44:11 +02:00
Matt-Yorkley
2964ec138d Update display of join words in filters list and rearrange code a bit for clarity
Here we need to build a really dynamic structure on the page like "Results for: <search-term> in <filter1> or <filter2>" and the styling on each of the words needs to be a bit different, specifically the filter terms need to be differently styled to the join words like "in" and "or". We have to generate those bits on the Angular side, but they also have to be wrapped in HTML in a specific way.

$sce.trustAsHtml() marks the injected HTML as "safe" (in relation to security issues like XSS). In this case the injected content doesn't involve any user-defined data, so it should be fine.
2020-05-10 09:44:11 +02:00
Matt-Yorkley
14d928c39d Fix feature specs where UI has changed 2020-05-10 09:44:11 +02:00
Matt-Yorkley
6b66787004 Update "no results" layout on mobile and tablet 2020-05-10 09:44:11 +02:00
Matt-Yorkley
4b695014e4 Update "no results" styling 2020-05-10 09:44:11 +02:00
Matt-Yorkley
c9bfccf465 Update styling on search feedback bar 2020-05-10 09:44:11 +02:00
Matt-Yorkley
026b98022c Add clear search button in shop searchbar 2020-05-10 09:44:11 +02:00
Matt-Yorkley
ff69389bb0 Make search bar "sticky" for tablets and mobile 2020-05-10 09:44:11 +02:00
Matt-Yorkley
f24969edb1 Remove gutter padding on shop content to gain a bit more horizontal real-estate 2020-05-10 09:44:11 +02:00
Matt-Yorkley
cbb67e15ed Extract button styles 2020-05-10 09:44:11 +02:00
Matt-Yorkley
865dcf79cb Extract some properties to variables 2020-05-10 09:44:11 +02:00
Matt-Yorkley
ebe00bdc31 Update filters clear button functionality 2020-05-10 09:44:11 +02:00
Matt-Yorkley
9eaf55f4c0 Add missing translation key 2020-05-10 09:44:11 +02:00
Matt-Yorkley
d1ea2c5f77 Extract shop searchbar styles to separate file 2020-05-10 09:44:11 +02:00
Matt-Yorkley
035bde9eff Define breakpoints in mixin and refactor 2020-05-10 09:44:11 +02:00
Matt-Yorkley
cbd77b4941 Improve element sizing and position on small screens 2020-05-10 09:44:11 +02:00
Matt-Yorkley
f337fd49e1 Extract search feedback bar into partial and move into main column 2020-05-10 09:44:11 +02:00
Matt-Yorkley
e25e4e7482 Fix issue with button submitting form instead of opening popup 2020-05-10 09:44:11 +02:00
Matt-Yorkley
ff07b97033 Add sidebar footer and buttons
Also includes a minor refactor to resolve an issue with animation timings. Angular was not adding the "shown" class to the different elements at the same time in the digest cycle, and it looked a bit shaky.
2020-05-10 09:44:11 +02:00
Matt-Yorkley
94145d0f7e Improve layout and sizing on mobile 2020-05-10 09:44:11 +02:00
Matt-Yorkley
da1d8e90e2 Update search placeholder 2020-05-10 09:44:11 +02:00
Matt-Yorkley
7c00d41fc4 Add some animation effects 2020-05-10 09:44:11 +02:00
Matt-Yorkley
8e9833fd06 Implement overlaid sidebar on mobile and tablet 2020-05-10 09:44:11 +02:00
Matt-Yorkley
f43bf3880c Add filters button on mobile and tablet 2020-05-10 09:44:11 +02:00
Matt-Yorkley
142cef3f3a Add filters count 2020-05-10 09:44:11 +02:00
Matt-Yorkley
0d9f049d24 Add inner icon and restyle search input element 2020-05-10 09:44:11 +02:00
Matt-Yorkley
f46ca0c595 Move search to new searchbar
This required a lot of refactoring, as the search needed to be inside both the form element and the Angular ProductsCtrl element, but to get a full-width row for the searchbar it needed to be outside of the 12 column layout of the other shop page elements...
2020-05-10 09:44:11 +02:00
Matt-Yorkley
532e27b7e1 Move filters into new column on desktop 2020-05-10 09:37:56 +02:00
Matt-Yorkley
3ca491683a Merge pull request #5317 from Matt-Yorkley/caching-timed-shops
[Caching] Timed caching on shops data
2020-05-09 15:33:26 +02:00
Transifex-Openfoodnetwork
644d06fb08 Updating translations for config/locales/en_FR.yml 2020-05-09 18:41:29 +10:00
Transifex-Openfoodnetwork
3044e62d8b Updating translations for config/locales/fr.yml 2020-05-09 18:06:16 +10:00
Pau Pérez Fabregat
b85e439b0e Merge pull request #5395 from coopdevs/skip-broken-spec
Skip unreliable caching test
2020-05-08 17:11:12 +02:00
Pau Perez
fa8c1270ce Skip unreliable caching test
This spec failed two times in a row and it's blocking the release.
2020-05-08 16:37:30 +02:00
Pau Pérez Fabregat
09caf88b6c Merge pull request #5396 from coopdevs/fix-brittle-test
Make test not depend on response's order
2020-05-08 16:37:06 +02:00
Pau Perez
b99bcc3c12 Make test not depend on response's order
I'm assuming this is failing in CI due to the order in which the closed
shops are returned.
2020-05-08 15:56:20 +02:00
Transifex-Openfoodnetwork
296a927900 Updating translations for config/locales/en_FR.yml 2020-05-08 22:49:17 +10:00
Transifex-Openfoodnetwork
32ead7b6b7 Updating translations for config/locales/fr.yml 2020-05-08 22:49:02 +10:00
Luis Ramos
0a6bd1424c Make ship method display on back_end work correcly by making checkout ignore ship methods configured for backoffice only
Adding both unit and feature tests as this is important enough for that
2020-05-08 12:59:17 +01:00
Luis Ramos
34d8b1957e Improve variable names 2020-05-08 12:42:32 +01:00
Luis Ramos
40dd307a35 Remove shipping method display on front_end option, it is not working and it's not straight forward to make it work correctly 2020-05-08 12:00:58 +01:00
Transifex-Openfoodnetwork
4485dcd7fe Updating translations for config/locales/en_GB.yml 2020-05-08 20:57:56 +10:00
Pau Perez
ad70a63370 Update all locales with the latest Transifex translations 2020-05-08 12:01:42 +02:00
Pau Pérez Fabregat
60470aaf9f Merge pull request #5332 from coopdevs/add-timestamps-to-oc-schedule
Add timestamps to OC schedule join table
2020-05-08 10:51:43 +02:00
Pau Pérez Fabregat
2cf407ce35 Merge pull request #5349 from openfoodfoundation/transifex
Transifex
2020-05-08 10:20:07 +02:00
Pau Pérez Fabregat
c38c59b0b9 Merge pull request #5223 from luisramos0/def_user
Change default user from spree@example.com to ofn@example.com ❤️
2020-05-08 09:51:31 +02:00
Luis Ramos
424932d61b Merge pull request #5262 from luisramos0/closed_shop_msg
[Mobile] Improve the design of shop page messages (closed shop, private shop and select OC)
2020-05-08 07:52:58 +01:00
Robin Klaus
aa46aec935 Fix translation keys in en.yml file from previous conflicting PRs 2020-05-08 13:21:47 +10:00
Kok Hung Cheah
19d5bcb150 Upgrade jquery-ui-rails to 4.1.2 instead of 4.1.1 2020-05-08 09:54:10 +10:00
Matt-Yorkley
5518ffa856 Ensure validations are called when updating attributes in test 2020-05-07 19:37:43 +02:00
Luis Ramos
dd5041db65 Remove unnecessary default user email and pwd from docker setup
These are now the default values in the app
2020-05-07 18:18:42 +01:00
Luis Ramos
052dbca1ba Merge pull request #5370 from Matt-Yorkley/dont-render-twice
Don't render twice
2020-05-07 18:15:47 +01:00
Matt-Yorkley
86bfd1bebb Add explanatory comments on usages of Timecop.travel 2020-05-07 17:29:58 +02:00
Pau Perez
ee94101edd Log subs jobs to DJ's log file
There's a bunch of logging bits we need to find out what happened in
`#5294`, the first of which is logging as we are used to for Rails
itself.  Turns out we were already logging but the log lines weren't
displayed.

That's because workers have no access to the Rails logger unless we hack
things a bit in the config/initializer. If we want to keep DJ's logs in
a different file, which I think is good for debugging purposes, we need
to diverge from Rails.logger.

However, there's no access to Delayed::Worker.logger in custom job
classes either so there's no way other than mimicking that logger's format
if we want log lines to be consistent.

Now the current logs will see the light like:

```
2020-05-07T14:09:42+0000: [Worker(host:8dc5e7e6f434 pid:1)] Job SubscriptionPlacementJob (id=54) RUNNING
2020-05-07T14:09:42+0000: Placing Order for Proxy Order 1
2020-05-07T14:09:42+0000: Issue in Subscription Order 2: complete
2020-05-07T14:09:42+0000: Placing Order for Proxy Order 7
2020-05-07T14:09:42+0000: Issue in Subscription Order 3: complete
2020-05-07T14:09:43+0000: [Worker(host:8dc5e7e6f434 pid:1)] Job SubscriptionPlacementJob (id=54) COMPLETED after 0.3378
2020-05-07T14:09:43+0000: [Worker(host:8dc5e7e6f434 pid:1)] 1 jobs processed at 2.8054 j/s, 0 failed
```

We'll see if we need to format these messages differently to make them
more greppeable.
2020-05-07 17:21:39 +02:00
Luis Ramos
468576ee8a Merge pull request #5329 from romale/master
Correct translations
2020-05-07 16:04:24 +01:00
Luis Ramos
c9b60d0f62 Merge pull request #5341 from mathewdbutton/5173-show-outstanding-order-balance-on-orders-page
Show outstanding balance on orders page
2020-05-07 16:03:58 +01:00
Luis Ramos
52b39d04a4 Merge pull request #5359 from mbudm/issue/5108
Add NavigationCheck to order cycles edit form
2020-05-07 14:37:32 +01:00
Matt-Yorkley
01d741509f Fix test of rendered properties AMS
Here the displayed properties that we're testing also rely on shops data (including the list of supplied properties), which is now cached for 15 seconds. We clear that cache entry so we can cleanly test only the caching of the properties AMS array.
2020-05-07 15:20:37 +02:00
Manvil George
63a1a6fefa More optimsations: removing unwanted code 2020-05-07 22:58:09 +10:00
Luis Ramos
66fe26fcc5 Merge pull request #5295 from Matt-Yorkley/shopfront-optimising
Enterprise serializer optimisations
2020-05-07 13:08:14 +01:00
Matt-Yorkley
460ab6cdb4 Use #allow instead of #stub 2020-05-07 13:20:30 +02:00
Matt-Yorkley
7457543c2b Adds spec for timed caching on shops data 2020-05-07 13:20:30 +02:00
Matt-Yorkley
6b6ab864ef Improve comment on Fragment Caching 2020-05-07 13:20:30 +02:00
Matt-Yorkley
e73c8232de Improve unit test in cache_service_spec 2020-05-07 13:20:30 +02:00
Matt-Yorkley
37821beb1b Extract home stats caching to method in service 2020-05-07 13:20:30 +02:00
Matt-Yorkley
2292cbaae4 Extract timed enterprise AMS fragment caching options to service 2020-05-07 13:20:28 +02:00
Luis Ramos
987347d5ab Move translation keys to new correct location 2020-05-07 12:18:40 +01:00
Luis Ramos
3c7970f72f Add select oc message when there are multiple OCs 2020-05-07 12:18:40 +01:00
Luis Ramos
d4980893a1 Refactor darker-background directive, extract method 2020-05-07 12:17:43 +01:00
Luis Ramos
0d6d071db2 Remove dead class .shopfront_hidden_message 2020-05-07 12:17:43 +01:00
Luis Ramos
cba9382230 Replace line-height with margin 2020-05-07 12:17:43 +01:00
Luis Ramos
7fcee0fe6d Fix problem in warning sign 2020-05-07 12:17:43 +01:00
Luis Ramos
f3347a8e16 Make teal links appear only when the darker background is activated
This way links in producers, about, etc, where the background is white will still appear as orange, as per design
2020-05-07 12:17:43 +01:00
Luis Ramos
782988b61c Fix with-darker-background class by moving it inside page-view selector and using opacity instead of just grey so that other elements in the page (shadow from element above) can be seen 2020-05-07 12:17:43 +01:00
Luis Ramos
21a1ba2fb5 Move translation keys according to new location in the customer_required partial 2020-05-07 12:17:43 +01:00
Luis Ramos
ba25986756 Fix some css rubocop issues 2020-05-07 12:17:43 +01:00
Luis Ramos
098ad6f250 Merge partial messages back to home partial where it is only used 2020-05-07 12:17:43 +01:00
Luis Ramos
319657d2c5 Move closed shop partial to /messages 2020-05-07 12:17:43 +01:00
Luis Ramos
eb773a813e Extract open shop message to partial 2020-05-07 12:17:43 +01:00
Luis Ramos
5dedbc4231 Extract customer_required message to separate partial 2020-05-07 12:17:43 +01:00
Luis Ramos
84c00fe215 Remove duplicate conditionals already present in ShopHelper#shop_tabs, when these partials are rendered, these conditions will always be true
In the shops partial, by adding the else, we avoid rendering empty space with an empty
products list in case the shop is closed
2020-05-07 12:17:43 +01:00
Luis Ramos
77d7d2b804 Make the background darker only in specific cases 2020-05-07 12:17:43 +01:00
Luis Ramos
b34fb79d69 Move content div to messages partial so that it's not used in the closed shop message (no margin according to design) 2020-05-07 12:17:43 +01:00
Luis Ramos
1c41061f9e If shop is closed show closed shop message partial in the home tab 2020-05-07 12:17:43 +01:00
Luis Ramos
b86081090f Extract closed shop message to a partial 2020-05-07 12:17:43 +01:00
Luis Ramos
dbdbe01d6a Add new style to closed shop message 2020-05-07 12:17:43 +01:00
Luis Ramos
0996c28c09 Memoize helper methods that are called several times in the views 2020-05-07 12:17:43 +01:00
Luis Ramos
5f70ef6e75 Improve style of closed shop message and remove border from message 2020-05-07 12:17:43 +01:00
Luis Ramos
e0b3e9a040 Remove border of message and paddings, add background color, change link color and split message in two lines 2020-05-07 12:17:43 +01:00
Matt-Yorkley
2876b98155 Use time-based caching on rendered AMS data for shops 2020-05-07 13:11:53 +02:00
Matt-Yorkley
545ca85644 Extract caching of homepage stats to service 2020-05-07 13:11:28 +02:00
Luis Ramos
c64ba75e8d Merge pull request #5348 from luisramos0/single_oc_selector
Replace select box with text when only one OC is available for selection
2020-05-07 12:07:19 +01:00
Luis Ramos
56b9737676 Merge pull request #5343 from luisramos0/windows
Make OC selector options color explicitly gray and not white
2020-05-07 11:44:14 +01:00
Luis Ramos
d967d855fc Merge pull request #5319 from Matt-Yorkley/caching-by-class
[Caching] Caching data by class
2020-05-07 11:43:44 +01:00
Luis Ramos
1e9b4516cb Merge pull request #5318 from Matt-Yorkley/caching-api
[Caching] API Action Caching on shop filters
2020-05-07 11:42:52 +01:00
Transifex-Openfoodnetwork
ffebaee9c7 Updating translations for config/locales/tr.yml 2020-05-07 17:34:22 +10:00
Manvil George
a629e1ecb7 Remove incorrect commenting 2020-05-07 11:46:49 +10:00
Manvil George
d7cf825531 Minimised version of the svg 2020-05-07 11:33:35 +10:00
Manvil George
585a754b18 Missed out on inverting the boolean expression 2020-05-07 11:31:27 +10:00
Kok Hung Cheah
edcdae6b58 Update jquery-ui-rails version to 4.1.1 2020-05-07 10:48:07 +10:00
Manvil George
d3504c177e A better SVG 2020-05-07 10:40:48 +10:00
Manvil George
7123d8347a XML Formatted The SVG 2020-05-07 09:50:27 +10:00
Manvil George
7847c4ed9e Removing unwanted blank lines 2020-05-07 09:37:35 +10:00
Manvil George
5b009f606a More optimizations around coding standards 2020-05-07 09:07:32 +10:00
Luis Ramos
066f978c59 Update ruby version in GETTING_STARTED 2020-05-06 22:19:43 +01:00
François Turbelin
d5b69ec90c Remove before call when no factorization 2020-05-06 22:04:56 +02:00
François Turbelin
13f00480ce Use serialized_data 2020-05-06 22:04:56 +02:00
François Turbelin
f6e06b5658 Use default enterprise_id to get the entreprise 2020-05-06 22:04:56 +02:00
François Turbelin
99798b010f Use ActionController::Base 2020-05-06 22:04:56 +02:00
François Turbelin
43293f00df Make the endpoint unrelated to enterprise id
Better to avoid to have endpoint specific to an enterprise
as we don't know the enterprise id yet on DFC side
2020-05-06 22:04:56 +02:00
François Turbelin
f0f8224934 Put back former lighter inclusions 2020-05-06 22:04:56 +02:00
François Turbelin
013198b33b Update routes 2020-05-06 22:04:56 +02:00
François Turbelin
830bf796d0 Update authors and remove emails 2020-05-06 22:04:56 +02:00
François Turbelin
dd9c994f9d Use spree_api_controller_setup layer 2020-05-06 22:04:56 +02:00
François Turbelin
c1d173d601 Add the access token logic, light version 2020-05-06 22:04:56 +02:00
François Turbelin
a8fb059482 Add basic spec 2020-05-06 22:04:56 +02:00
François Turbelin
496174255f Add REAME.md file 2020-05-06 22:04:56 +02:00
François Turbelin
80bbd5d513 Adjust namespace and scope for routes 2020-05-06 22:04:56 +02:00
François Turbelin
b152e532d2 Cosmetics 2020-05-06 22:04:56 +02:00
François Turbelin
d9d218f661 Add DFC Provider engine 2020-05-06 22:04:56 +02:00
Luis Ramos
d1392d400a Merge pull request #5350 from luisramos0/edit_order_snail
Improve order edit page in data inconsistency scenario (follow up from S2 #4186)
2020-05-06 20:33:40 +01:00
Luis Ramos
20984ac008 Merge pull request #5379 from openfoodfoundation/dependabot/bundler/ddtrace-0.35.1
Bump ddtrace from 0.35.0 to 0.35.1
2020-05-06 20:31:20 +01:00
dependabot-preview[bot]
7f9dfb6142 Bump ddtrace from 0.35.0 to 0.35.1
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.35.0 to 0.35.1.
- [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.35.0...v0.35.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-06 19:20:07 +00:00
Transifex-Openfoodnetwork
6c71259b25 Updating translations for config/locales/en_FR.yml 2020-05-07 03:10:34 +10:00
Transifex-Openfoodnetwork
29a54cbfe4 Updating translations for config/locales/fr.yml 2020-05-07 03:10:22 +10:00
Manvil George
bf3bb4fb63 Review Comments incorporation 2020-05-07 00:54:01 +10:00
Transifex-Openfoodnetwork
05820c7ef0 Updating translations for config/locales/tr.yml 2020-05-07 00:14:33 +10:00
Transifex-Openfoodnetwork
492f96c90f Updating translations for config/locales/tr.yml 2020-05-07 00:11:28 +10:00
Pau Pérez Fabregat
ace3767eb2 Merge pull request #5333 from coopdevs/add-worker-docker-container
Create a container to run a DJ worker in dev
2020-05-06 16:11:21 +02:00
Luis Ramos
c7c8bfe212 Merge pull request #5347 from luisramos0/hide_oc_selector_for_private_shop
[Mobile] Hide OC selector if shop requires login/customer
2020-05-06 14:31:52 +01:00
Pau Pérez Fabregat
dadc17398f Merge pull request #5371 from Matt-Yorkley/cart-add-error
Cart add error handling
2020-05-06 15:22:06 +02:00
Pau Pérez Fabregat
194c87e805 Merge pull request #5361 from Matt-Yorkley/cart-with-soft-deletion
Cart with soft-deletion
2020-05-06 15:20:35 +02:00
Manvil George
6c51841039 Reverting unrelated changes 2020-05-06 23:05:34 +10:00
Luis Ramos
cb7a261594 Merge pull request #5374 from luisramos0/3-0-stable-may-5
[Spree 2.1] Merge master into 3-0-stable
2020-05-06 13:57:11 +01:00
Manvil George
d1e03909ec Minor CSS alterations to make the button visible at the bottom 2020-05-06 22:30:33 +10:00
Pau Pérez Fabregat
ead21a97cc Merge pull request #5327 from openfoodfoundation/luisramos0-patch-2
Add link to docker tips wiki page to Docker.md
2020-05-06 14:10:37 +02:00
Pau Pérez Fabregat
a0012e1c5b Merge pull request #5326 from openfoodfoundation/luisramos0-patch-1-1
Add link to Docker.md from GETTING_STARTED.md
2020-05-06 12:31:00 +02:00
Matt-Yorkley
9c24c1cd05 Ensure #caches_action works in test suite 2020-05-06 12:24:33 +02:00
Matt-Yorkley
4aac97c985 Add feature spec for action caching of taxon and properties endpoints 2020-05-06 11:47:51 +02:00
Matt-Yorkley
7e4c00ba3f Ensure caching works in cache tests for API controllers 2020-05-06 11:47:45 +02:00
Pau Pérez Fabregat
65433c6ac6 Merge pull request #5351 from luisramos0/improve_sample_data
Improve ship methods names on sample data
2020-05-06 11:27:34 +02:00
Pau Pérez Fabregat
b3205c5459 Merge pull request #5309 from luisramos0/better-karma
Make dockerfile install node and adapt karma browser config to work inside a docker container
2020-05-06 11:11:00 +02:00
Transifex-Openfoodnetwork
d52db51b29 Updating translations for config/locales/nb.yml 2020-05-06 17:25:07 +10:00
Mathew Button
e088b27a13 Always display the outstanding balance if not zero 2020-05-06 16:45:44 +10:00
Manvil George
f802775ad6 Fixing up old Enterprise Modal references 2020-05-06 15:37:28 +10:00
Manvil George
e9cba32f31 Appeasing the Codeclimate Workers 2020-05-06 13:13:35 +10:00
Manvil George
19b5f6a562 Handling multiple enterprises at the same location
Changes:
* Introduced a cluster marker to denote multiple points of interest at
the same location
* Seperated out a plain enterprise modal into 2 parts
  * A modal called EnterpriseModal for showing a list of enterprises at
  the same location
  * A box called EnterpriseBox(which by the way is also a technically a
  modal) that shows the details of that particular enterprise selected
* If at a location there exists only a single enterprise then only the
box is shown
2020-05-06 12:54:42 +10:00
Robin Klaus
f43380fce5 Added inputmode attribute to show appropriate mobile keyboard for selected field 2020-05-06 12:52:53 +10:00
Robin Klaus
7dce53a77b Added inputmode attribute to show appropriate mobile keyboard for selected field 2020-05-06 12:46:37 +10:00
Steve Roberts
4573127c59 Add NavigationCheck to order cycles edit form
- Simplify if statements with safe navigation operator
- Simplify order cycle nav check spec
- Rename nav check callback so a comment is not needed and remove unnecessary assignation to $scope
2020-05-06 10:43:21 +10:00
Luis Ramos
825f747dff Add more types of sample orders 2020-05-05 23:16:54 +01:00
Luis Ramos
4083da5b16 Add sample order to sample data 2020-05-05 23:16:54 +01:00
Luis Ramos
be4104d6f3 Merge branch 'master' into 3-0-stable-may-5 2020-05-05 19:11:20 +01:00
Matt-Yorkley
61d7adaf74 Enable optional caching tag in test metadata 2020-05-05 18:43:09 +02:00
Matt-Yorkley
bdc2d002fa Update karma tests 2020-05-05 17:22:12 +02:00
Matt-Yorkley
13e4411b89 Add error message on cart populate failure and don't keep re-sending the data to the server.
This was triggering many requests to be continuously re-sent in a very problematic way (server-melting), and with no user feedback.
2020-05-05 17:22:10 +02:00
Luis Ramos
c2a9a698f4 Merge pull request #5312 from openfoodfoundation/dependabot/bundler/unicorn-5.5.5
Bump unicorn from 5.5.4 to 5.5.5
2020-05-05 15:24:59 +01:00
Matt-Yorkley
9a7807b134 Don't continuously re-post data on cart error 2020-05-05 16:04:05 +02:00
Luis Ramos
24414b83dd Merge pull request #5325 from oeoeaio/enhancement-5214
Add order number and date/time to order cycles customer report
2020-05-05 14:34:47 +01:00
Matt-Yorkley
4f4b3fb206 Don't render twice 🙈 2020-05-05 15:21:05 +02:00
Matt-Yorkley
6afda87baf Add explanatory comment on soft-deleted variant stock logic 2020-05-05 13:57:50 +02:00
Matt-Yorkley
0a28abbf2d Add additional feature specs for soft-deleted variants in cart 2020-05-05 13:57:50 +02:00
Matt-Yorkley
26ba76cff9 Fix soft-deletion in CartService and update spec 2020-05-05 13:57:50 +02:00
Matt-Yorkley
a3458aa562 Ensure VariantStockLevels can process soft-deleted variants 2020-05-05 13:57:50 +02:00
Matt-Yorkley
0e429da377 Return zero available stock (total_on_hand) for variants that are soft-deleted 2020-05-05 13:57:50 +02:00
Matt-Yorkley
eb51b87bea Add spec for current soft deletion behaviour in OrderCycle#variants_distributed_by scope 2020-05-05 13:57:50 +02:00
Matt-Yorkley
d3de1ce47e Add spec for current soft deletion behaviour in VariantOverride#indexed 2020-05-05 13:57:50 +02:00
Matt-Yorkley
5639b21c77 Add tests for current soft-deleted variant behavior in CartService 2020-05-05 13:57:50 +02:00
Matt-Yorkley
068c8feea7 Merge pull request #5289 from Matt-Yorkley/cart-populate
Cart populate
2020-05-05 13:56:17 +02:00
François Turbelin
6e5cbebf4a Change date value on order_and_distributor_report 2020-05-05 12:27:17 +02:00
François Turbelin
9cfd7db99d Change date displayed on sales_tax reports 2020-05-05 12:27:17 +02:00
Luis Ramos
bcfa8982ef Merge pull request #5364 from openfoodfoundation/dependabot/bundler/ddtrace-0.35.0
Bump ddtrace from 0.34.2 to 0.35.0
2020-05-05 10:58:13 +01:00
Matt-Yorkley
805f91e838 Remove unnecessary #all call 2020-05-05 09:56:08 +02:00
Matt-Yorkley
a3757992b5 Use #tap to destroy and remove before block 2020-05-05 09:55:14 +02:00
Steve Roberts
3b8acdc577 Split order_cycle_spec into smaller specs grouped by theme 2020-05-05 15:39:45 +10:00
dependabot-preview[bot]
7180af2736 Bump ddtrace from 0.34.2 to 0.35.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.34.2 to 0.35.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.34.2...v0.35.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-05-04 22:46:59 +00:00
Eduardo
2fca16f02f change shop name to be link to shop on transactions page 2020-05-04 07:06:07 -03:00
Mathew Button
fe6c810505 Add brackets in view instead of API response 2020-05-04 19:09:18 +10:00
Luis Ramos
44872844ed Make ship methods in sample data have the name of the enterprise so it's easier to distinguish them 2020-05-03 16:36:12 +01:00
Luis Ramos
bf0b941e1c Merge pull request #4935 from coopdevs/data-archiving
Allow data archiving using the :truncate_data task
2020-05-03 12:58:31 +01:00
Luis Ramos
e2b26b2e9c Replace break with if
What we would need would be a continue, not break, so that other units will be processed without halting the cycle through the units
2020-05-03 12:00:23 +01:00
Luis Ramos
92d0a5b735 Change default user from spree@example.com to ofn@example.com 2020-05-03 10:12:43 +01:00
Luis Ramos
8e27ace563 Adapt specs where there is only one OC available to the absence of the OC selector 2020-05-02 20:16:41 +01:00
Transifex-Openfoodnetwork
93881a742e Updating translations for config/locales/en_GB.yml 2020-05-03 05:09:16 +10:00
Luis Ramos
b92e257e44 Fix codeclimate issue 2020-05-02 19:12:47 +01:00
Luis Ramos
fa908d4024 Extract change_order_cycle partial from main enterprise shop view 2020-05-02 19:01:36 +01:00
Luis Ramos
7fd14cf29b Adjust line height of select label and select itself 2020-05-02 19:01:36 +01:00
Luis Ramos
ef0e9dc0ca Replace select box with text when only one OC is available for selection 2020-05-02 19:01:33 +01:00
Luis Ramos
89cb447387 Hide OC selector if shop requires login/customer 2020-05-02 17:56:49 +01:00
Luis Ramos
b568d25446 Update all locales with the latest Transifex translations 2020-05-02 17:08:53 +01:00
Luis Ramos
303464a04e Merge pull request #5297 from openfoodfoundation/transifex
Transifex
2020-05-02 15:40:54 +01:00
Luis Ramos
0662c57d9d Merge pull request #5344 from luisramos0/debug_assets
Move PROFILE debug assets flag to another ENV var
2020-05-02 14:21:15 +01:00
Luis Ramos
acb7e9751b Move debug assets flag to another env var so we go back to having both profile and debug assets disabled by default 2020-05-02 10:42:49 +01:00
Luis Ramos
9ae3ad9279 Move rule on option out of the select rule to fix rubocop issue 2020-05-01 17:43:52 +01:00
Luis Ramos
240e2a36d3 Make option color explicitly gray and not white otherwise we will have options render white on white on some browsers, namely chrome on windows 10 2020-05-01 17:39:12 +01:00
Mathew Button
8087e6b31b Show outstanding balance on orders page
Prior to this change, there was no way of knowing how much was owed (or
in need of refunding) at a glance for each order on the orders index page,
this information was only available by clicking through to an order
payment page

This change adds the outstanding balance for each order
2020-05-01 21:38:20 +10:00
Transifex-Openfoodnetwork
39875308c2 Updating translations for config/locales/en_FR.yml 2020-05-01 04:55:35 +10:00
Transifex-Openfoodnetwork
c424e7b65e Updating translations for config/locales/fr.yml 2020-05-01 04:55:21 +10:00
Pau Perez
9d253e1e3e Create a container to run a DJ worker in dev 2020-04-30 17:52:22 +02:00
Matt-Yorkley
1990417b72 Test values are not fetched from database when cache exists 2020-04-30 17:37:48 +02:00
Matt-Yorkley
7a22f7f783 Move and rename caching spec 2020-04-30 17:37:45 +02:00
Luis Ramos
74c7a01151 Merge pull request #5259 from luchiago/add-extra-social-media-to-emails
Add extra social media to order confirmation email
2020-04-30 15:01:09 +01:00
Matt-Yorkley
f724d1b572 Add feature spec for caching properties and taxons AMS 2020-04-30 15:35:39 +02:00
Luis Ramos
8845260979 Merge pull request #5285 from rmklaus12/5246-missing-translation-orders-list
5246 missing translation orders list
2020-04-30 14:00:26 +01:00
Pau Perez
1903134e13 Add timestamps to OC schedule join table
This is critical to debug bugs related to subscriptions.

Essentially, `has_and_belongs_to_many` doesn't give us the option for
any other column that the foreign keys themselves:

> A has_and_belongs_to_many association creates a direct many-to-many
> connection with another model, with no intervening model.

Source: https://guides.rubyonrails.org/v3.2/association_basics.html#the-has_and_belongs_to_many-association

Note however, that there's no way to update an order_cycle_schedule,
that I can think of but `updated_at` doesn't do any harm.
2020-04-30 15:00:13 +02:00
Pau Pérez Fabregat
4174ea69a1 Merge pull request #5247 from chrishil1/Placeholders_variant
Added placeholders in variant edit page
2020-04-30 12:05:59 +02:00
Pau Pérez Fabregat
676add18c3 Merge pull request #5322 from luisramos0/dead_content
Delete some dead views
2020-04-30 12:02:14 +02:00
Matt-Yorkley
a35f8cdb02 Move cache keys used in views into the cache service 2020-04-30 09:45:15 +02:00
Luis Ramos
8a107bee98 Merge pull request #5235 from luisramos0/mail_methods
Remove smtp config from admin config page
2020-04-29 19:10:02 +01:00
Matt-Yorkley
210029aaff Enable optional caching tag in test metadata 2020-04-29 20:04:54 +02:00
Transifex-Openfoodnetwork
5bc5ef9a9d Updating translations for config/locales/pt_BR.yml 2020-04-30 03:52:57 +10:00
Matt-Yorkley
f2cd122ec8 Update variant_stock_spec for unsaved and soft-deleted cases 2020-04-29 18:29:44 +02:00
Matt-Yorkley
4054bdd722 Add Bugsnag call for "variant with no stock item" case 2020-04-29 17:34:48 +02:00
Pau Pérez Fabregat
e04b18c70e Merge pull request #5320 from luisramos0/vo_fix
[Spree 2.1] Fix variant overrides specs and shops spec
2020-04-29 17:30:41 +02:00
romale
3a4ef2697c Correct translations
Without it, some labels not translated to other language.
And, please check code:
en.admin.subscription.subscriptions - does not exists
but
en.admin.subscriptions.subscriptions - is exist
2020-04-29 18:27:09 +03:00
Matt-Yorkley
2bdda7de04 Change order of methods for easier reading 2020-04-29 17:22:46 +02:00
Matt-Yorkley
92a881c584 Simplify relation used in #exchanges_supplying 2020-04-29 17:19:16 +02:00
Pau Perez
647a7bdddf Clarify we won't use truncate_date in prod yet
We initially aimed at implementing data archiving in production reusing
this rake task but priorities have changed. It'll be just a refactor for
now.
2020-04-29 17:00:53 +02:00
Pau Perez
e0228f66af Default to archiving data older than 2 years.
This is safer than the current 3 months.
2020-04-29 16:49:43 +02:00
Pau Perez
38ea95ea85 Prevent nil input to turn into 0 2020-04-29 16:49:43 +02:00
Pau Perez
6ceeda7d9e Instrument TruncateData logging start and end 2020-04-29 16:49:43 +02:00
Pau Perez
703706ee0b Replace one-letter variable with full word 2020-04-29 16:49:43 +02:00
Pau Perez
e2a3dd0c6f Delete only return auths. of the deleted orders
They are associated to order and as such we can't remove them all
blindly.
2020-04-29 16:49:43 +02:00
Pau Perez
a3b8638faf Delete sessions older than two weeks
This affects users that are actively purchasing, so 2 weeks data is more
than enough. Others can afford to log in again.
2020-04-29 16:49:43 +02:00
Pau Perez
4f015320a3 Upper case DELETE statement
This keeps it consistent with the rest of the log.
2020-04-29 16:49:43 +02:00
Pau Perez
0f1d57db73 Delete LogEntries older than a month
They are useful for troubleshooting but a month data seems enough.
2020-04-29 16:49:43 +02:00
Pau Perez
5f84c51c13 Delete StateChanges older than a month
They are useful for troubleshooting but a month data seems enough.
2020-04-29 16:49:43 +02:00
Pau Perez
d215c76bc9 Make it even more explicit the action is dangerous
We're yelling at the person to make a backup before proceeding.
2020-04-29 16:49:43 +02:00
Pau Perez
e1a80edb7e Carefully doc how to archive data from an instance 2020-04-29 16:49:43 +02:00
Pau Perez
a4372e4d31 Fix long lines 2020-04-29 16:49:43 +02:00
Pau Perez
b6d3c3039a Fix "Method has too many lines" violation 2020-04-29 16:49:43 +02:00
Pau Perez
f199cb1bea Warn but allow executing :truncate_data in prod 2020-04-29 16:49:43 +02:00
Pau Perez
be123b2a72 Specify how much data to remove in :truncate_data 2020-04-29 16:49:43 +02:00
Pau Perez
60d29d619f Replace :truncate_data definition with new class
And cover it with a test.
2020-04-29 16:49:43 +02:00
Pau Perez
78fd785f0c Extract TruncateData out of :truncate_data task 2020-04-29 16:49:43 +02:00
Pau Pérez Fabregat
f9f4bdae8f Merge pull request #5238 from Matt-Yorkley/moar-performance
Improve Pain Points
2020-04-29 16:36:15 +02:00
Luis Ramos
0f16c43f21 Add link to docker tips wiki page to Docker.md 2020-04-29 14:16:59 +01:00
Luis Ramos
865024fc1f Add link to the docker setup guide to the getting started guide. 2020-04-29 14:05:45 +01:00
Luis Ramos
407d890d23 Merge pull request #5315 from Matt-Yorkley/ordercyles-controller-tweaks
OrderCylesController tweaks
2020-04-29 13:50:10 +01:00
Luis Ramos
0e5d7c1eb1 Add migration to drop dead spree_mail_methods table and some dead mail_methods preferences 2020-04-29 13:34:50 +01:00
Luis Ramos
a38b18bd0d Remove smtp config from admin config page 2020-04-29 13:34:19 +01:00
Rob H
6405c34428 Add order number and date/time to order cycles customer report 2020-04-29 21:20:14 +10:00
Pau Pérez Fabregat
e7df9bb58d Merge pull request #5178 from coopdevs/dont-populate-empty-cart
Dont populate empty cart
2020-04-29 13:08:26 +02:00
Matt-Yorkley
d3af3d3f27 Avoid extra query on stock_items every time #on_demand is called on a variant.
In the case where the variant has not been saved yet, we can use #new_record? here instead of #stock_items.empty?, to avoid an additional query. This can be called a vast number of times per request, in various N+1s. The other case where we need to return here is when a variant has been deleted, so #stock_items will be empty and #stock_item will be nil. Likewise, we can just check that with #deleted? and avoid #stock_items.empty?
2020-04-28 20:54:04 +02:00
Matt-Yorkley
9682544442 Eager-load and update BasicEnterpriseSerializer 2020-04-28 20:10:40 +02:00
Matt-Yorkley
f4bcf6c6d5 Eager-load line_item associations in order 2020-04-28 20:10:40 +02:00
Luis Ramos
e6fa08edfc Delete some dead views 2020-04-28 19:07:19 +01:00
Luis Ramos
f3e651b1f7 present? calls length which is breaking it with error ActiveModel::MissingAttributeError Exception: missing attribute: address_id
any? works well as it just verifies the size of the collection
2020-04-28 16:31:11 +01:00
Luis Ramos
7e12142f91 Collection must be after load_data so that hubs are already available for VOs calculation 2020-04-28 16:31:11 +01:00
Luis Ramos
794fb5dfc5 Merge pull request #5316 from luisramos0/3-0-stable-Apr28
[Spree 2.1] Merge master into 3-0-stable
2020-04-28 16:30:29 +01:00
Transifex-Openfoodnetwork
18fc4b7c92 Updating translations for config/locales/ca.yml 2020-04-29 01:13:42 +10:00
Transifex-Openfoodnetwork
612cc45ab7 Updating translations for config/locales/en_FR.yml 2020-04-29 01:13:35 +10:00
Transifex-Openfoodnetwork
16e289bf37 Updating translations for config/locales/en_GB.yml 2020-04-29 01:13:29 +10:00
Transifex-Openfoodnetwork
b54c6fcb26 Updating translations for config/locales/nb.yml 2020-04-29 01:13:26 +10:00
Transifex-Openfoodnetwork
8365c66add Updating translations for config/locales/fil_PH.yml 2020-04-29 01:13:22 +10:00
Transifex-Openfoodnetwork
5590671c23 Updating translations for config/locales/fr.yml 2020-04-29 01:13:19 +10:00
Luis Ramos
9e43661127 Merge pull request #5153 from luisramos0/bye_bye_ga
Bye bye Google Analytics
2020-04-28 16:09:16 +01:00
Luis Ramos
8c29797b23 Remove empty space on ffi line that was breaking bundle install
fuubar gets automatically moved to 2-5-0 as it is in master
2020-04-28 14:57:21 +01:00
Matt-Yorkley
ec581dccb8 Use class-based caching for queries in EnterpriseInjectionData 2020-04-28 15:11:59 +02:00
Matt-Yorkley
4d098448f5 Cache rendered AMS arrays in darkswarm layout based on latest timestamps of rendered object classes 2020-04-28 15:11:59 +02:00
Matt-Yorkley
53ebe10483 Fix issue with generic primary taxon in product factory changing which taxons are correctly counted as being in open order cycles. 2020-04-28 15:11:59 +02:00
Matt-Yorkley
eb5f8b85ff Touch primary taxon when a product's primary_taxon is changed 2020-04-28 15:11:59 +02:00
Matt-Yorkley
1b18808d21 Touch ShippingMethod when it's assigned to a new distributor 2020-04-28 15:11:59 +02:00
Matt-Yorkley
6ef345c5d8 Touch taxon when a taxon is applied to a product 2020-04-28 15:11:59 +02:00
Matt-Yorkley
a25a75bbe8 Ensure action caching includes GET params
By default the auto-generated action cache keys looks like this:
`views/0.0.0.0:3000/api/order_cycles/1/properties`

With this change the cache keys now look like this:
`views/0.0.0.0:3000/api/order_cycles/1/properties?distributor=3`
2020-04-28 15:11:14 +02:00
Matt-Yorkley
ea1ec1a1c6 Use ActionCaching in OrderCyclesController (taxons and properties) 2020-04-28 15:11:12 +02:00
Matt-Yorkley
975afb3152 Enable use of Action Caching in the API 🎉
See: https://guides.rubyonrails.org/api_app.html#adding-other-modules
2020-04-28 15:11:00 +02:00
Luis Ramos
839b373b5c Merge branch 'master' into 3-0-stable-Apr28 2020-04-28 13:40:19 +01:00
Kristina Lim
265871932f Merge pull request #5146 from coopdevs/dev-mode-profiling-settings
Add PROFILE var to set production-like settings
2020-04-28 20:31:13 +08:00
Kristina Lim
c34570e96e Merge pull request #5313 from kristinalim/fix/mirror_db_script_bucket
Fix script for syncing public/ in AWS bucket to local
2020-04-28 20:28:05 +08:00
Matt-Yorkley
ac166f3590 Add CacheService 2020-04-28 14:15:16 +02:00
Matt-Yorkley
e4985a9d51 Avoid needlessly fetching the current user records (for authentication and API key checks)
These endpoints are absolutely public, and don't need the current user at any point.
2020-04-28 14:06:02 +02:00
Matt-Yorkley
eb7de18298 Return early (before hitting the DB) in complex product list rendering if we already know the order cycle is closed 2020-04-28 13:51:25 +02:00
Matt-Yorkley
67a7140642 Memoize distributor and order_cycle in Api::OrderCyclesController 2020-04-28 13:48:07 +02:00
Luis Ramos
868929eed3 Merge pull request #4993 from luisramos0/move_ent_fees
Change engine routes to better work with specs in rails 4
2020-04-28 11:48:41 +01:00
Transifex-Openfoodnetwork
8e6d53f6c6 Updating translations for config/locales/nb.yml 2020-04-28 17:59:10 +10:00
Robin Klaus
f072e9d9c2 Add missing translations on order list page 2020-04-28 16:47:39 +10:00
Kristina Lim
7c985f39ab Fix script for syncing public/ in AWS bucket to local 2020-04-28 13:22:48 +08:00
Kristina Lim
efb83c2f95 Merge pull request #5250 from mkllnk/mirror-db-script
Add cache to mirror_db script
2020-04-28 13:18:29 +08:00
Matt-Yorkley
74e81b078f Avoid N+1s in Order#cap_quantity_at_stock! 2020-04-28 01:11:28 +02:00
Matt-Yorkley
3fa2b3161f Avoid N+1s when using OrderCycle#exchanges_supplying 2020-04-28 01:10:07 +02:00
Matt-Yorkley
fe2bf8d531 Eager-load variants and stock items when doing stock checks on multiple variants 2020-04-28 01:05:42 +02:00
Matt-Yorkley
eb858159ce Eager-load :default_price on variants 2020-04-28 01:04:22 +02:00
Matt-Yorkley
43869fc140 Replace fired events with clearer method call
The 'spree.cart.add' event has no listeners in spree_core on in ofn. The 'spree.order.contents_changed' just has a single listener that calls `order.update_distribution_charge`.
2020-04-28 00:56:18 +02:00
Matt-Yorkley
a5c4364f92 Fetch (or create) current_order only once 2020-04-28 00:52:09 +02:00
dependabot-preview[bot]
02775d033d Bump unicorn from 5.5.4 to 5.5.5
Bumps [unicorn](https://yhbt.net/unicorn/) from 5.5.4 to 5.5.5.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-27 20:50:56 +00:00
Luis Ramos
6559b4d3a4 Make dockerfile install node and adapt karma browser config to work inside a docker container 2020-04-27 19:05:11 +01:00
Luis Ramos
d851aa5106 Add model definition to migration to make migration more resilient 2020-04-27 18:40:56 +01:00
Luis Ramos
c5b9727177 Remove ga_cookies_preference from DB 2020-04-27 18:40:56 +01:00
Luis Ramos
248b0016d4 Remove trackers and google analytics 2020-04-27 18:40:33 +01:00
Luis Ramos
d8d6bad11c Remove config and sections related to google analytics in the cookies banner and cookies page 2020-04-27 18:40:00 +01:00
Luis Ramos
ab16931d70 Merge pull request #5257 from luisramos0/stripe_sca_payments_last
StripeSCA - reuse better method to fetch last payment of an order to avoid nasty bugs in the future
2020-04-27 18:34:35 +01:00
Matt-Yorkley
e33de8a20e Update specs and refactor a bit 2020-04-27 19:27:07 +02:00
Matt-Yorkley
468cb3f57e Remove obviously private methods from the public interface in CartService
These methods are not called from anywhere in the app, only in a couple of tests in cart_service_spec.
2020-04-27 19:27:07 +02:00
Matt-Yorkley
1152f307e2 Eager-load associated line_items data in #update_distribution_charge! 2020-04-27 19:27:07 +02:00
Matt-Yorkley
25525d4f75 Use guard clause in each block 2020-04-27 19:27:07 +02:00
Matt-Yorkley
a759d8c7c7 Avoid N+1s for variants and for line_items of variants 2020-04-27 19:27:07 +02:00
Matt-Yorkley
b3242041e5 Return earlier (before scoping process, if possible) 2020-04-27 19:27:07 +02:00
Matt-Yorkley
106bb7a27f Rename some variables and add comments for clarity in cart_service 2020-04-27 19:27:07 +02:00
Matt-Yorkley
2334ab6d00 Delete some dead code in cart_service
This Bugsnag error was added a year ago and hasn't been seen
2020-04-27 19:27:07 +02:00
Matt-Yorkley
11af5dffdc Memoize scoper in cart_service
Avoids fetching all of the hub's variant overrides from the db every time it's initialized.
2020-04-27 19:27:07 +02:00
Matt-Yorkley
3ce7e96777 Add some debounce and an onwheel hack to product add to basket field
Debounce ensures we don't get a million requests if the up/down buttons are clicked rapidly. The onwheel hack adds some protection against scrolling triggering the quantity up/down. See: https://stackoverflow.com/a/51076231
2020-04-27 19:27:07 +02:00
Transifex-Openfoodnetwork
670fff9d36 Updating translations for config/locales/es_CR.yml 2020-04-28 02:38:07 +10:00
Transifex-Openfoodnetwork
171ba09663 Updating translations for config/locales/fr.yml 2020-04-28 01:40:44 +10:00
Transifex-Openfoodnetwork
65c9c287e8 Updating translations for config/locales/en_FR.yml 2020-04-28 01:37:49 +10:00
Transifex-Openfoodnetwork
4332734f27 Updating translations for config/locales/ca.yml 2020-04-28 01:37:44 +10:00
Transifex-Openfoodnetwork
340f669506 Updating translations for config/locales/en_GB.yml 2020-04-28 01:37:36 +10:00
Transifex-Openfoodnetwork
3b7ad0ef4e Updating translations for config/locales/ca.yml 2020-04-27 23:49:48 +10:00
Luis Ramos
6e23f5bdac Merge pull request #5233 from luisramos0/stripe_sca_bo
[StripeSCA] Fix card payments in the Backoffice
2020-04-27 13:00:24 +01:00
Luis Ramos
8b5378e673 Merge pull request #5251 from luisramos0/Issue4654
Change Result of PriceSack Calculation from Integers to Floats, clone #4812
2020-04-27 12:36:18 +01:00
Transifex-Openfoodnetwork
ba32e2d676 Updating translations for config/locales/fil_PH.yml 2020-04-27 18:08:38 +10:00
Pau Pérez Fabregat
74c4722cfe Merge pull request #5286 from rmklaus12/4966-missing-translation-admin-prod-list
4966 missing translation admin prod list
2020-04-27 09:28:57 +02:00
Luis Ramos
b3eda9fecb Merge pull request #5256 from dacook/5190-fix-order-sorting
Fix sorting of orders list
2020-04-26 14:24:00 +01:00
Pau Perez
c224df9b6a Do not trigger an orderChanged with null quantity
When loading the page $watchGroup calls the listener function for every
listed line item but with a set variant and null quantity and
max_quantity. There's no point on computing an order change when there
was none.

This saves an empty request on the second most used endpoint of the app,
specially busy when users are placing orders.
2020-04-24 15:54:46 +02:00
Luis Ramos
b9c86d54b0 Merge pull request #5261 from luisramos0/search-iphone
[Mobile] Make search box font size be 16px so that no zoom happens on iphone
2020-04-24 11:30:26 +01:00
Transifex-Openfoodnetwork
cebba4dd43 Updating translations for config/locales/en_GB.yml 2020-04-24 18:22:49 +10:00
Matt-Yorkley
43ba73ac19 Avoid expensive queries for supplied product properties if enterprise is not a supplier 2020-04-23 21:51:39 +02:00
Matt-Yorkley
728326c2a5 Eager-load :properties on supplied products in enterprise_shopfront_serializer 2020-04-23 21:48:41 +02:00
Transifex-Openfoodnetwork
8bcc9456d8 Updating translations for config/locales/en_FR.yml 2020-04-24 04:30:04 +10:00
Transifex-Openfoodnetwork
5f51b21fe9 Updating translations for config/locales/fr.yml 2020-04-24 04:29:52 +10:00
Luis Ramos
2984829790 Merge pull request #5253 from luisramos0/edit_order
Make edit order page work even if inventory_items dont have a corresponding line_item in the order
2020-04-23 19:27:31 +01:00
Luis Ramos
f366aa2605 Merge pull request #5290 from openfoodfoundation/dependabot/bundler/mini_racer-0.2.10
Bump mini_racer from 0.2.9 to 0.2.10
2020-04-23 18:53:14 +01:00
Matt-Yorkley
bf16a10129 Update all locales with the latest Transifex translations 2020-04-23 19:05:22 +02:00
Matt-Yorkley
43836d2b30 Merge pull request #5292 from openfoodfoundation/transifex
Transifex
2020-04-23 18:53:36 +02:00
Pau Pérez Fabregat
82156e32e0 Merge pull request #4920 from luisramos0/api_var_ctrl
Bring Spree::Variant#active from Spree so that we can improve it
2020-04-23 17:35:49 +02:00
Matt-Yorkley
69cf7dff2c Memoize :active in enterprise serializers that call it multiple times 2020-04-23 13:17:44 +02:00
Pau Pérez Fabregat
a8ca471cd2 Merge pull request #5189 from Matt-Yorkley/mobile-buttons
[Mobile UX] Style updates on buttons
2020-04-23 12:56:49 +02:00
Luis Ramos
aa52cf8bf0 Merge pull request #5254 from chrishil1/missing_translation_save_as_default
Added missing translation to column dropdown
2020-04-23 11:08:33 +01:00
Luis Ramos
ac6501c5d8 Merge pull request #5195 from luisramos0/prod_helper
Delete dead code from several places...
2020-04-23 11:07:44 +01:00
Luis Ramos
568e570b4b Move method to more generic helper to use it in mailers 2020-04-23 16:08:10 +10:00
Luis Ramos
42be6c905f Added spec for OrderPaymentFinder 2020-04-23 16:08:10 +10:00
Luis Ramos
d482cccefe Use OrderPaymentFinder methods instead of payments.last and payments.pending.last 2020-04-23 16:08:10 +10:00
Luis Ramos
52becf6abc Extract payment method logic from OrderPaymentFinder into the orders helper 2020-04-23 16:08:10 +10:00
Transifex-Openfoodnetwork
15319d66e2 Updating translations for config/locales/es_CR.yml 2020-04-23 12:27:58 +10:00
Robin Klaus
d8f4df4bcc Fixed missing translation, added keys to en.yml file 2020-04-23 09:58:47 +10:00
dependabot-preview[bot]
240d4a7802 Bump mini_racer from 0.2.9 to 0.2.10
Bumps [mini_racer](https://github.com/discourse/mini_racer) from 0.2.9 to 0.2.10.
- [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.2.9...v0.2.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-22 19:41:50 +00:00
Luis Ramos
3dff11e405 Merge pull request #5182 from luisramos0/nokogiri
Bump Nokogiri
2020-04-22 20:40:04 +01:00
Pau Perez
2d9b41729e Use memory cache-store when profiling
Or you want see any change when playing fragment-caching or other caching
strategies.
2020-04-22 17:56:56 +02:00
Pau Perez
de8d8e658c Add PROFILE var to set production-like settings
I took this from a recent newsletter I read. Sometimes replication
performance issues locally is actually slower than production due to dev
mode settings (code reloading, etc.), heavy de-only gems and the asset
pipeline.

The PROFILE env var switches these settings all at the same time,
giving us an environment closer to production, essential for reliable
profiling. Then, rack-mini-profiler is going to be more accurate.

Apparently it's something
[RubyGems](b026df86ae/config/environments/development.rb (L72-L92))
and
[CodeTriage](a3c957647d)
both use.
2020-04-22 17:53:17 +02:00
Pau Pérez Fabregat
a7013b5542 Merge pull request #5241 from Matt-Yorkley/remove-old-migrations
Remove old migrations!
2020-04-22 17:01:01 +02:00
Maikel
24fe7e8878 Merge pull request #5280 from openfoodfoundation/transifex
Transifex
2020-04-22 16:08:57 +10:00
Maikel
eb94c5a5bd Merge pull request #5283 from Matt-Yorkley/customer-tags
Fix disappearing tags issue
2020-04-22 16:03:17 +10:00
Matt-Yorkley
4ef61b642e Fix disappearing tags issue 2020-04-22 01:33:38 +02:00
Luis Ramos
23f4faf192 Merge pull request #4841 from luisramos0/kill_rabl
Hide broken product taxons field, remove last rabl template and rabl itself
2020-04-21 18:49:12 +01:00
Transifex-Openfoodnetwork
becd57f7a4 Updating translations for config/locales/fr.yml 2020-04-21 22:52:47 +10:00
Transifex-Openfoodnetwork
2e4b224d48 Updating translations for config/locales/en_FR.yml 2020-04-21 22:42:53 +10:00
Transifex-Openfoodnetwork
2b210bd096 Updating translations for config/locales/fr.yml 2020-04-21 22:42:34 +10:00
Matt-Yorkley
53183b8598 Eager-load properties in inject_enterprise_and_relatives 2020-04-21 11:13:20 +02:00
Pau Perez
91306d5ce4 Update all locales with the latest Transifex translations 2020-04-21 10:13:00 +02:00
Pau Pérez Fabregat
e20e19f963 Merge pull request #5244 from coopdevs/include-deleted-variants-and-products
Include deleted products in OC mailer
2020-04-20 20:46:21 +02:00
Luis Ramos
2ab07bc6a9 Make search box font size be 16px so that no zoom happens on iphone 2020-04-18 18:50:25 +01:00
Luis Ramos
15e56b21ae Merge pull request #5229 from chrishil1/missing_translation
Added missing translations to enterprise_relationship page
2020-04-18 18:15:54 +01:00
Luis Ramos
629db3ae4d Merge pull request #5230 from chrishil1/missing_translation_2
Add product translations to admin order creation
2020-04-18 18:15:01 +01:00
Luis Ramos
43274ecb4f Remove dead code
Dead since https://github.com/openfoodfoundation/openfoodnetwork/pull/3305
2020-04-18 14:47:33 +01:00
Luis Ramos
437c7367db Remove dead code 2020-04-18 14:37:07 +01:00
Lucas Hiago
acfe0c540a Create instagram css property and apply 2020-04-18 10:06:14 -03:00
Lucas Hiago
ac2ab34e11 Add connect with us footer to customer order confirmation email 2020-04-18 10:06:06 -03:00
Lucas Hiago
41c0204cfa Update instagram and linkedin links 2020-04-18 10:05:59 -03:00
Luis Ramos
910cc99c2f Add spec to cover orders_controller watch sortOptions 2020-04-18 10:23:02 +01:00
David Cook
a0a361673a Fix sorting of orders
(wrong copied function call)
2020-04-18 15:03:39 +10:00
jeffrey s hill md
70005a99a3 Added missing translations 2020-04-17 17:02:37 -05:00
Luis Ramos
8f8dce4bab Do not render inventory items in the shipment that dont have a line item in the order 2020-04-17 20:23:29 +01:00
Luis Ramos
8973a1b76c Merging 6 specs in one takes around 1 minute of execution time 2020-04-17 20:18:13 +01:00
Luis Ramos
c1b28543c6 Extract print ticket spec to a separate file 2020-04-17 20:07:45 +01:00
Luis Ramos
c33352904a Make spec a bit more resilient 2020-04-17 18:48:20 +01:00
Luis Ramos
8bd3062b16 Fix rubocop issues 2020-04-17 18:17:54 +01:00
jeffrey s hill md
ed91c179cd Changed translation paths 2020-04-17 12:04:27 -05:00
Luis Ramos
c7fb85a715 Replace background with members with before with let statements 2020-04-17 17:34:36 +01:00
Luis Ramos
e901615b61 Make spec simpler 2020-04-17 16:56:56 +01:00
Pau Perez
d8e6d98912 Preload line item's option_values
This fixes an N+1 with the query

```sql
SELECT "spree_option_values".* FROM "spree_option_values"
INNER JOIN "spree_option_types"
  ON "spree_option_types"."id" = "spree_option_values"."option_type_id"
INNER JOIN "spree_option_values_line_items"
  ON "spree_option_values"."id" = "spree_option_values_line_items"."option_value_id"
WHERE "spree_option_values_line_items"."line_item_id" = 1679
ORDER BY spree_option_types.position asc
```
2020-04-17 17:34:53 +02:00
Luis Ramos
c455dfb609 Make some specs faster by going directly to the order edit page and move incomplete order spec to a specific context 2020-04-17 16:28:27 +01:00
Pau Perez
63eb0980eb Memoize result of line items query
No need to fetch twice what we just loaded from DB.
2020-04-17 17:27:21 +02:00
Pau Perez
06ead827d8 Split long method 2020-04-17 17:27:21 +02:00
Pau Perez
6dd4a866e5 Address some Rubocop violations 2020-04-17 17:25:35 +02:00
Pau Perez
04c962432a Skip deleted default_scope in OC notification
This fixes the RuntimeError we get when accessing deleted variants due
to the variant being nil.

https://github.com/rails/rails/issues/11036 is still an open Rails bug,
as some people mention in https://github.com/rails/rails/pull/21550.

The issue is that `includes` doesn't respect `unscoped`. I found
a potential solution for the entire app in
https://github.com/rails/rails/issues/11036#issuecomment-302133116 but
our friend @markets has a gem,
https://github.com/markets/unscoped_associations, that solves that too.
2020-04-17 17:25:34 +02:00
Luis Ramos
d96d6b2337 Split orders_spec in two: tests for orders list page and tests for orders edit page 2020-04-17 15:21:03 +01:00
Luis Ramos
9147518422 Remove some unnecessary code 2020-04-17 14:51:06 +01:00
Luis Ramos
d23397f250 Move float test to a separate context 2020-04-17 14:49:09 +01:00
blainebillings
993a684e44 Add Price Sack Spec for Float Amounts 2020-04-17 14:43:28 +01:00
blainebillings
427dc54945 Change Result of PriceSack Calculation from Integers to Floats 2020-04-17 14:43:28 +01:00
Luis Ramos
ffceff3f0a Update GETTING_STARTED.md
Update link to osx catalina setup guide in wiki
2020-04-17 11:41:02 +01:00
Maikel Linke
b5d159e163 Add cache to mirror_db script
Also added some better error handling around image syncing.
2020-04-17 16:09:22 +10:00
Maikel Linke
4658a53aeb Update translations from Transifex 2020-04-17 15:37:54 +10:00
Maikel
3bc834435d Merge pull request #5152 from Matt-Yorkley/missing-indexes
Add missing indexes to spree_orders and spree_products
2020-04-17 15:16:03 +10:00
Maikel
9111ff1a38 Merge pull request #5211 from openfoodfoundation/transifex
Transifex
2020-04-17 14:24:26 +10:00
Maikel
b0eac1ecaa Merge branch 'master' into missing-indexes 2020-04-17 14:17:32 +10:00
Maikel
2e31f234d6 Merge pull request #5196 from Matt-Yorkley/customers-performance
Admin Customers performance
2020-04-17 13:28:39 +10:00
Maikel
e29a81cacc Merge pull request #5186 from oeoeaio/customer-totals-inventory-sku
Take sku overrides into account in customer totals report
2020-04-17 13:27:43 +10:00
Maikel
a672af1a79 Merge pull request #5237 from luisramos0/master_with_change
Clone of #5176
2020-04-17 13:27:14 +10:00
Maikel Linke
75207247e6 Correct database commands 2020-04-17 12:52:05 +10:00
Maikel Linke
8af40f4675 Format and indent migration message
It's much clearer to read this way:

```
==  OldMigrationsRemoved: migrating ===========================================
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

      You haven't updated your dev environment in a long time!
      Legacy migration files before 2019 have now been removed.
      Run `rails db:schema:load` before running `rails db:migrate`.

```
2020-04-17 12:47:49 +10:00
Maikel Linke
63ac6c5088 Remove superfluous conditional
A migration's `up` method is only run when the migration needs to be
applied. The only case we could have a higher version number is when a
migration with a higher version got merged before the current one. And
in that case, we still want this migration to fail, because it hasn't
been applied yet.
2020-04-17 12:40:54 +10:00
jeffrey s hill md
d8444dcf3c Added placeholders 2020-04-16 14:59:41 -05:00
Matt-Yorkley
71c7c35679 Remove old migrations! 🎉 2020-04-16 13:44:18 +02:00
Pau Pérez Fabregat
e1c2b7e105 Merge pull request #5159 from luisramos0/timezone_mixup
[Spree 2.1] Fix timezone mix up in a spec
2020-04-16 11:38:54 +02:00
Pau Pérez Fabregat
7b656fa0a4 Merge pull request #5194 from luisramos0/update_spree_rev
[Spree 2.1] Update spree revision to a version that doesnt depend on deface
2020-04-16 11:37:42 +02:00
Maikel
f282ff805d Merge pull request #5172 from kristinalim/feature/5170-increase_locale_chars_in_spree_users
Increase max characters for locale in spree_users
2020-04-16 18:18:45 +10:00
Transifex-Openfoodnetwork
2f7dc9a578 Updating translations for config/locales/es.yml 2020-04-16 17:09:44 +10:00
chrishil1
a9829ba5d9 Update _enterprise_relationship.html.haml 2020-04-15 17:01:22 -05:00
Luis Ramos
8532fa16cd Merge pull request #5202 from luisramos0/improve_checkout_js
Improve Checkout error handling in JS
2020-04-15 22:25:05 +01:00
chrishil1
c3f01be580 Fixed display all required tag 2020-04-15 19:00:35 +01:00
Luis Ramos
fcc746a1b7 Fix long lines in payments_controller_spec 2020-04-15 16:18:17 +01:00
Luis Ramos
8f7b3df9b5 Make payment controller authorize stripe_sca payments before processing them or advancing order workflow (that also calls payment.process) 2020-04-15 16:07:34 +01:00
jeffrey s hill md
e23045b19e Add product translations 2020-04-14 14:15:57 -05:00
jeffrey s hill md
5e1dea61a8 added missing translations to enterprise_relationship page 2020-04-14 11:20:56 -05:00
Luis Ramos
cedf1b26f2 If no flash is sent from the server, show the generic error 2020-04-14 14:31:34 +01:00
Luis Ramos
47a93568dc Make code simpler by extracting methods 2020-04-14 13:55:20 +01:00
Luis Ramos
62471bf2ab Clear Loading spinner when exception is caught 2020-04-14 13:50:38 +01:00
Luis Ramos
cdf5bcb7eb Improve unexpected error handling and add test cases for it 2020-04-14 13:44:58 +01:00
Luis Ramos
7414047b92 Switch from old success/error to modern then/catch structure
Catch() will get a few more errors then errors()

Also, add try/catch inside catch to detect any errors parsing the
response error payload
2020-04-14 13:04:28 +01:00
Pau Pérez Fabregat
4ef5dfe430 Merge pull request #5199 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.5.2
Bump rubocop-rails from 2.5.1 to 2.5.2
2020-04-14 10:17:59 +02:00
Pau Pérez Fabregat
e58a1d080f Merge pull request #5205 from openfoodfoundation/dependabot/bundler/ddtrace-0.34.2
Bump ddtrace from 0.34.1 to 0.34.2
2020-04-14 10:17:06 +02:00
Luis Ramos
357a88fa22 Merge pull request #4786 from luisramos0/stripe_sca_extra_subs_fix
Make StripeSCA (with new authorize/purchase workflow) work with Subscriptions again
2020-04-13 17:21:53 +01:00
Rob H
f71045b3f2 Improve naming of variables in VariantOverridesIndexed for readability 2020-04-13 22:24:25 +10:00
Rob H
dcdd3f2444 Modify interface of VariantOverridesIndexed#indexed
Stop using keyword args and accept variant_ids instead of line_items
2020-04-13 22:11:58 +10:00
Rob H
6820919552 Rename VariantOverrides class to VariantOverridesIndexed 2020-04-13 21:56:37 +10:00
Rob H
4a4173bdc0 Move VariantOverrides class to app/services 2020-04-13 21:54:10 +10:00
Rob H
9a7e782102 Only load up variant overrides for relevant hubs 2020-04-13 12:07:17 +10:00
Transifex-Openfoodnetwork
9fa892346e Updating translations for config/locales/es_CR.yml 2020-04-13 10:30:00 +10:00
Transifex-Openfoodnetwork
7341912390 Updating translations for config/locales/pt_BR.yml 2020-04-12 07:14:21 +10:00
Transifex-Openfoodnetwork
d0c797b797 Updating translations for config/locales/es_CR.yml 2020-04-12 07:12:21 +10:00
Transifex-Openfoodnetwork
cb2e17d7dc Updating translations for config/locales/es_CR.yml 2020-04-12 07:09:21 +10:00
Transifex-Openfoodnetwork
147654df41 Updating translations for config/locales/es_CR.yml 2020-04-12 07:05:59 +10:00
Rob H
14cf168e3b Take sku overrides into account in customer totals report 2020-04-11 16:05:15 +10:00
dependabot-preview[bot]
c3ee7b7c64 Bump ddtrace from 0.34.1 to 0.34.2
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.34.1 to 0.34.2.
- [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.34.1...v0.34.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-10 19:19:13 +00:00
Matt-Yorkley
a6414b6dbe Make sure taggable_type is 'Customer' when querying customer tags 2020-04-10 20:14:14 +02:00
Luis Ramos
eafffa2c23 Update all locales with the latest Transifex translations 2020-04-10 13:08:11 +01:00
Luis Ramos
82a4753eec Merge pull request #5191 from openfoodfoundation/transifex
Transifex
2020-04-10 13:05:30 +01:00
Matt-Yorkley
b92e858448 Merge pull request #5197 from Matt-Yorkley/cart-populate-performance
Cart populate performance
2020-04-10 11:41:56 +02:00
Matt-Yorkley
4c41c84cc1 Refactor tag rules loading for customers
Fixes N+1 queries on customer tags
2020-04-10 10:12:32 +02:00
Matt-Yorkley
e53f733966 Eager-load addresses in customer serializer 2020-04-10 08:20:15 +02:00
Matt-Yorkley
2a8809e6e8 Eager-load default card in customer serializer 2020-04-10 08:20:15 +02:00
Matt-Yorkley
31a54e49c5 Allow User#default_card to work with eager-loading 2020-04-10 08:20:13 +02:00
Luis Ramos
b5ba2acb21 Merge pull request #5169 from jeduardo824/enhancement/5102-make-shop-names-links
make shop name a link on /account
2020-04-09 22:01:34 +01:00
dependabot-preview[bot]
0fabde8849 Bump rubocop-rails from 2.5.1 to 2.5.2
Bumps [rubocop-rails](https://github.com/rubocop-hq/rubocop-rails) from 2.5.1 to 2.5.2.
- [Release notes](https://github.com/rubocop-hq/rubocop-rails/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop-rails/compare/v2.5.1...v2.5.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-09 19:21:30 +00:00
Transifex-Openfoodnetwork
e97a16cb40 Updating translations for config/locales/ca.yml 2020-04-10 04:14:21 +10:00
Luis Ramos
314fed063d Merge property with property_decorator both in our codebase 2020-04-09 19:09:22 +01:00
Luis Ramos
0d5c08c363 Remove dead code, there's no Spree::Money in app/models/spree and the Spree::Money in lib/spree already has a class_eval with this function 2020-04-09 19:06:05 +01:00
Matt-Yorkley
57d87a8042 Eager-load variant stock items
Avoids another N+1
2020-04-09 19:55:08 +02:00
Matt-Yorkley
0ca87580e8 Load variants in cart in one query
Avoids an N+1
2020-04-09 19:55:06 +02:00
Luis Ramos
59f56cb0f6 Remove before delivery method in checkout controller, this differentiator is never used in OFN, only in Spree frontend code 2020-04-09 17:32:28 +01:00
Matt-Yorkley
cf712e9478 Select only enterprise id 2020-04-09 17:41:13 +02:00
Luis Ramos
2ff8356c63 Delete dead code from products helper 2020-04-09 16:33:17 +01:00
Luis Ramos
59e0f3d9f4 Merge pull request #5175 from Matt-Yorkley/memoize-scoper
Memoize ScopeProductToHub in product list
2020-04-09 14:45:57 +01:00
Luis Ramos
fc5aff8c79 Merge pull request #5145 from luisramos0/inv_perf
Performance improvements to Inventory page
2020-04-09 13:56:33 +01:00
Luis Ramos
7d82c6a014 Update spre revision to a version that doesnt depend on deface, this allows us to upgrade nokogiri (done in another PR in the master branch) 2020-04-09 13:51:54 +01:00
Luis Ramos
4aad80c134 Update message for capybara with new upgrade blocker 2020-04-09 13:39:40 +01:00
Luis Ramos
71ffa6b178 Upgrade nokogiri as much as possible (it's not an explicit dependency of OFN and we dont need to control the version now, so I remove it from Gemfile) 2020-04-09 13:39:40 +01:00
Luis Ramos
e3de71668a Depend on a spree version in which spree_core doesnt depend on deface AND remove deface from list of dependencies 2020-04-09 13:39:40 +01:00
Luis Ramos
dd717fe8ac Merge pull request #5184 from Matt-Yorkley/inventory-loading
Inventory loading
2020-04-09 13:26:12 +01:00
Luis Ramos
4b23adca2d Merge pull request #5157 from luisramos0/email_validation
[Spree 2.1] Add order.email regexp validation
2020-04-09 10:14:11 +01:00
Luis Ramos
6341c5fd80 Merge pull request #4964 from luisramos0/po_fix
Fix proxy orders controller in rails 4 by removing the use of responders
2020-04-09 10:12:33 +01:00
Matt-Yorkley
47ac6c1491 Remove unused methods from ProductSimpleSerializer 2020-04-09 09:51:32 +02:00
Matt-Yorkley
6afda141a1 Remove track_inventory_levels conditional
This value is always true in OFN
2020-04-09 09:19:37 +02:00
Matt-Yorkley
5bb2614f9d Refactor PagedFetcher so it makes one request at a time 2020-04-09 09:19:37 +02:00
Matt-Yorkley
b3c968856b Fix some rubocop issues 2020-04-09 09:19:37 +02:00
Matt-Yorkley
b0a7497f2a Remove another N+1 in product serialization 2020-04-09 09:19:37 +02:00
Matt-Yorkley
f959e632ea Modify Spree::Stock::Quantifier to not re-fetch stock items if they are already eager-loaded
This helps to remove a big N+1 here, and will also be very helpful elsewhere in the app
2020-04-09 09:19:37 +02:00
Matt-Yorkley
f9cf826f1c Bring Spree::Stock::Quantifier in to OFN
This is the original unmodified Class from Spree. Modifications added in subsequent commits.
2020-04-09 09:19:36 +02:00
Matt-Yorkley
ececbce596 Only select id in producers query 2020-04-09 09:16:44 +02:00
Matt-Yorkley
1b7ac1a252 Don't re-use fat serializers when thin ones are needed.
This cuts the pageload and query count in half, again.
2020-04-09 09:10:41 +02:00
Transifex-Openfoodnetwork
d31b24786a Updating translations for config/locales/en_NZ.yml 2020-04-09 16:16:24 +10:00
Matt-Yorkley
374bf04118 Merge pull request #5142 from Matt-Yorkley/shops-firefighting
Don't load distributed properties on inactive distributors
2020-04-08 20:45:01 +02:00
Matt-Yorkley
3aff7f62e3 Don't query distributed properties on enterprises that aren't active distributors
Cuts page load on /shops by ~75% (with production data) and removes ~300 expensive and superfluous queries.
2020-04-08 20:08:12 +02:00
Matt-Yorkley
fc5e346a06 Merge pull request #5156 from Matt-Yorkley/closed-shops
Load closed shops in a separate request on /shops page
2020-04-08 20:05:26 +02:00
Matt-Yorkley
538e4e54d2 Set cart buttons to fixed width and expand when screen is too small 2020-04-08 11:19:14 +02:00
Matt-Yorkley
1ddbabd841 Adjust colours of primary buttons to use (bright) orange instead of (warning) red 2020-04-08 10:57:33 +02:00
Matt-Yorkley
0414f4984d Align buttons left and right on cart page 2020-04-08 10:55:55 +02:00
Matt-Yorkley
9c421e146e Remove arrows from cart and checkout buttons 2020-04-08 10:23:18 +02:00
Luis Ramos
29bbf2fa74 Merge pull request #5088 from coopdevs/do-not-recreate-when-booting-docker
Do not reset the dev env when booting docker
2020-04-07 21:56:09 +01:00
Matt-Yorkley
64c66ddedc Eager-load variant data for overridable products
Cuts query count and page load time in half for this endpoint.
2020-04-07 15:16:32 +02:00
Luis Ramos
e0e2c32d9f Merge pull request #5177 from openfoodfoundation/dependabot/bundler/oj-3.10.6
Bump oj from 3.10.5 to 3.10.6
2020-04-07 11:44:09 +01:00
Luis Ramos
ff799b6e82 Avoid using update_attributes that save the order to the DB 2020-04-07 11:13:29 +01:00
Matt-Yorkley
003341ef7a Add loading indicator when showing closed shops 2020-04-07 10:40:49 +02:00
Matt-Yorkley
94f8ea2f93 Fix flicker effect showing 3 buttons when clicking "Show Closed Shops" button 2020-04-07 10:31:56 +02:00
Kristina Lim
e6cd33ee57 Increase max characters for locale in spree_users
There are many locales that have six (6) characters.
2020-04-07 15:08:49 +08:00
Maikel
45c0209971 Merge pull request #5154 from luisramos0/prop_strong
[Spree 2.1] Add strong params implementation to properties controller
2020-04-07 16:27:22 +10:00
Maikel
eb64112b22 Merge pull request #5144 from openfoodfoundation/transifex
Transifex
2020-04-07 16:23:35 +10:00
Maikel
3e14b62b46 Merge pull request #5136 from openfoodfoundation/dependabot/bundler/ddtrace-0.34.1
Bump ddtrace from 0.34.0 to 0.34.1
2020-04-07 16:05:53 +10:00
Maikel
3244650932 Merge pull request #5135 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.5.1
Bump rubocop-rails from 2.5.0 to 2.5.1
2020-04-07 16:05:18 +10:00
Transifex-Openfoodnetwork
b6753a2593 Updating translations for config/locales/fil_PH.yml 2020-04-07 16:03:57 +10:00
Transifex-Openfoodnetwork
1b119805b4 Updating translations for config/locales/fil_PH.yml 2020-04-07 15:15:12 +10:00
Transifex-Openfoodnetwork
edde7689a9 Updating translations for config/locales/de_DE.yml 2020-04-07 13:57:54 +10:00
Transifex-Openfoodnetwork
8060977786 Updating translations for config/locales/en_GB.yml 2020-04-07 13:54:53 +10:00
Transifex-Openfoodnetwork
837a345958 Updating translations for config/locales/en_FR.yml 2020-04-07 13:54:46 +10:00
dependabot-preview[bot]
7c5e511fde Bump oj from 3.10.5 to 3.10.6
Bumps [oj](https://github.com/ohler55/oj) from 3.10.5 to 3.10.6.
- [Release notes](https://github.com/ohler55/oj/releases)
- [Changelog](https://github.com/ohler55/oj/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/ohler55/oj/compare/v3.10.5...v3.10.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-06 19:24:48 +00:00
Luis Ramos
d18a06a0f7 Merge pull request #4783 from luisramos0/stripe_sca_extra_subs
Move all subscriptions services to the OrderManagement engine
2020-04-06 20:20:02 +01:00
Luis Ramos
d23b4fd307 Merge pull request #5174 from coopdevs/change-pool-size
Allow changing the connection pool size
2020-04-06 19:29:09 +01:00
Matt-Yorkley
2cb4c6bec2 Memoize OpenFoodNetwork::ScopeProductToHub
This means we avoid fetching all of the hub's variants every time we scope a product. Applies to every product loaded when displaying a shops's product list.
2020-04-06 19:41:05 +02:00
Pau Pérez Fabregat
924e816a5b Merge pull request #5151 from luisramos0/fix_order_perms
Fix Permissions::Order spec in rails 4
2020-04-06 18:07:39 +02:00
Pau Pérez Fabregat
109da43905 Merge pull request #2 from luisramos0/do-not-recreate-when-booting-docker
Re-add setup instructions removed from docker-compose into Dockerfile…
2020-04-06 16:55:59 +02:00
Pau Perez
33ca6a2096 Allow changing the connection pool size
This allows us to tune for UK. The hypothesis from @kristinalim is:

> From what I understand, it can result to Rails processes waiting for
each other to complete, while the DB server can take more simultaneous
connections.
2020-04-06 16:03:06 +02:00
Eduardo
e7b780f963 make shop name a link on /account 2020-04-06 08:34:24 -03:00
dependabot-preview[bot]
13cba3d244 Bump ddtrace from 0.34.0 to 0.34.1
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.34.0 to 0.34.1.
- [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.34.0...v0.34.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-06 11:27:10 +00:00
Matt-Yorkley
ce45e7cf71 Merge pull request #5162 from Matt-Yorkley/unicorn-worker-killer
Add optional unicorn-worker-killer configs
2020-04-06 13:25:22 +02:00
Matt-Yorkley
ba5a56db14 Make upper and lower bounds configurable 2020-04-06 10:39:51 +02:00
Matt-Yorkley
276dcf4a3b Add optional unicorn-worker-killer configs 2020-04-06 10:39:50 +02:00
Transifex-Openfoodnetwork
dcfb1aec6d Updating translations for config/locales/en_PH.yml 2020-04-06 18:11:07 +10:00
Pau Pérez Fabregat
fde2aac366 Merge pull request #5163 from coopdevs/collect-Ruby-GC
Enable Ruby Runtime Metrics in Datadog
2020-04-05 14:32:54 +02:00
Luis Ramos
63138aef30 Re-add setup instructions removed from docker-compose into Dockerfile and Docker.md 2020-04-05 00:06:31 +01:00
Pau Perez
7612415991 Enable Ruby Runtime Metrics in Datadog
This automatically collects a bunch of Ruby's GC-related metrics that
will come in handy while we tune the Unicorn workers. Some of theres
are:

* runtime.ruby.class_count
* runtime.ruby.gc.malloc_increase_bytes
* runtime.ruby.gc.total_allocated_objects
* runtime.ruby.gc.total_freed_objects
* runtime.ruby.gc.heap_marked_slots
* runtime.ruby.gc.heap_available_slots
* runtime.ruby.gc.heap_free_slots
* runtime.ruby.thread_count

Check https://docs.datadoghq.com/tracing/runtime_metrics/ruby/#data-collected for the complete list.

The cool thing is that

> Runtime metrics can be viewed in correlation with your Ruby services
2020-04-05 00:16:10 +02:00
Luis Ramos
53d901b41b Merge pull request #5064 from luisramos0/fix_sample_data
Fix sample data and custom paper_trail config on order_cycles and schedules on rails 4
2020-04-04 18:29:26 +01:00
Luis Ramos
fa4b8832e9 Fix timezone mix up in specs
Converting times with timezones to string was ignoring the timezone and this making the start date be before the end date in this spec
2020-04-04 16:39:23 +01:00
Luis Ramos
4ceaebf098 Add order.email regexp validation and add some tests for it 2020-04-04 16:13:23 +01:00
Matt-Yorkley
bc859cf9f7 Add api/shops_controller and refactor 2020-04-04 17:02:27 +02:00
Matt-Yorkley
af48cac140 Load closed shops in a separate request on /shops page 2020-04-04 14:06:10 +02:00
Luis Ramos
451cfac788 Merge pull request #4995 from Matt-Yorkley/3-0-eager-load
[Spree 2.1] Staging and Production configs
2020-04-04 12:21:25 +01:00
Luis Ramos
59bb956677 Merge pull request #5010 from Matt-Yorkley/remove_simple_form
Remove simple_form
2020-04-04 11:53:06 +01:00
Luis Ramos
4f08ed1801 Remove commented turbo-sprockets-rails3 from Gemfile, thsi gem is not needed in rails 4 2020-04-04 11:39:20 +01:00
Luis Ramos
1364a5e367 Merge pull request #4916 from luisramos0/adj_eli
[Spree 2.1] Make Spree::OrderUpdater update all adjustments, not just promotions and shipment adjustments
2020-04-04 11:28:13 +01:00
Luis Ramos
07264446e6 Add strong params implementation to properties controller 2020-04-04 11:17:38 +01:00
Luis Ramos
b8f8db0341 Merge pull request #5147 from luisramos0/3-0-stable-apr3
[Spree 2.1] Merge master into 3-0-stable
2020-04-04 11:03:14 +01:00
Matt-Yorkley
8a544f3ab3 Add missing indexes to spree_orders and spree_products 2020-04-04 10:12:15 +02:00
Luis Ramos
04986dd0d5 Merge pull request #4932 from luisramos0/line_items_fix
Adapt line items scope to include deleted variants and deleted products - rails 4 fix
2020-04-03 20:09:35 +01:00
Luis Ramos
55b3f4d54f Move search params test case to a different context so that we dont have to set the producer of the products in the order
This is working in master by chance of the factories but breaks in rails 4 because the orders in this test dont have products supplied by the producer which is a necessary condition in the context where it was
2020-04-03 19:47:33 +01:00
Luis Ramos
384ca310a3 Merge branch 'master' into 3-0-stable-apr3 2020-04-03 18:26:26 +01:00
Luis Ramos
452ab3a842 Add comment to better explain variant_override_set.collection_to_delete 2020-04-03 15:36:19 +01:00
Luis Ramos
a049e7a433 Add product to includes to avoid N+1 queries to fetch products when VO authorization is done right after this 2020-04-03 14:48:06 +01:00
Transifex-Openfoodnetwork
97063bf47e Updating translations for config/locales/en_GB.yml 2020-04-03 23:24:25 +11:00
Luis Ramos
e64d573337 Revert accidental push of a byebug statement with the direct translations push to master 🙈 2020-04-03 12:06:39 +01:00
Luis Ramos
7858a26e5e Update all locales with the latest Transifex translations 2020-04-03 12:03:40 +01:00
Luis Ramos
4922c05bcf Merge pull request #5139 from openfoodfoundation/transifex
Transifex
2020-04-03 11:28:11 +01:00
Transifex-Openfoodnetwork
d06b7b8606 Updating translations for config/locales/de_DE.yml 2020-04-03 19:26:04 +11:00
Transifex-Openfoodnetwork
72b47fbceb Updating translations for config/locales/de_DE.yml 2020-04-03 19:22:55 +11:00
Luis Ramos
da7b0966be Merge pull request #5133 from Matt-Yorkley/cache-in-hand
Cache counts used in homepage for 24 hours
2020-04-03 08:34:58 +01:00
Luis Ramos
445eb9f287 Merge pull request #5121 from Matt-Yorkley/flaky-maps-js
Update vendor/assets/angular-google-maps.min.js
2020-04-02 22:13:51 +01:00
dependabot-preview[bot]
5b4dd57380 Bump rubocop-rails from 2.5.0 to 2.5.1
Bumps [rubocop-rails](https://github.com/rubocop-hq/rubocop-rails) from 2.5.0 to 2.5.1.
- [Release notes](https://github.com/rubocop-hq/rubocop-rails/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop-rails/compare/v2.5.0...v2.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-02 19:15:11 +00:00
Matt-Yorkley
adb61e48c5 Cache counts used in homepage for 24 hours 2020-04-02 19:09:03 +02:00
Matt-Yorkley
838ffdbf00 Add code comment for dependency 2020-04-02 17:33:10 +02:00
Pau Pérez Fabregat
fe8beb5448 Merge pull request #5099 from Matt-Yorkley/ticking-time-bom
Improve BOM
2020-04-02 16:01:48 +02:00
Matt-Yorkley
18ee5254f9 Make Geo service calls more resilient in /shops page
The Geo service is used heavily in the /shops page and especially in the search function. If the google maps js library has failed to load it was throwing a lot of fatal errors, so this change ensures the /shops page can at least: a) load, b) show some shops, and c) search for shops by name (but not location)
2020-04-02 13:56:25 +02:00
Matt-Yorkley
40f8cf660c Update vendor/assets/angular-google-maps.min.js
Fixes an issue where if the js library from maps.googleapis.com failed to load in the <head>, all of our subsequent Angular would completely break.
See: https://github.com/angular-ui/angular-google-maps
Note: `bluebird.js` is a new dependency of `angular-google-maps.js`.
2020-04-02 13:32:55 +02:00
Matt-Yorkley
2c70db7952 Merge pull request #5070 from luisramos0/master_card
Translate credit card brand so that active merchand code handles the payment correctly
2020-04-02 12:18:00 +02:00
Pau Pérez Fabregat
1a38a4e1a7 Merge pull request #5091 from openfoodfoundation/transifex
Transifex
2020-04-02 11:56:29 +02:00
Pau Pérez Fabregat
15d106bb0a Merge pull request #5116 from openfoodfoundation/dependabot/bundler/ddtrace-0.34.0
Bump ddtrace from 0.33.1 to 0.34.0
2020-04-02 11:55:53 +02:00
Pau Pérez Fabregat
c8be2fb89a Merge pull request #5125 from openfoodfoundation/dependabot/bundler/rubocop-0.81.0
Bump rubocop from 0.80.1 to 0.81.0
2020-04-02 11:54:00 +02:00
Transifex-Openfoodnetwork
b1f8f91011 Updating translations for config/locales/fr.yml 2020-04-02 18:03:11 +11:00
Transifex-Openfoodnetwork
e08606a310 Updating translations for config/locales/en_FR.yml 2020-04-02 18:02:57 +11:00
Transifex-Openfoodnetwork
2230d83729 Updating translations for config/locales/pt_BR.yml 2020-04-02 08:41:25 +11:00
dependabot-preview[bot]
d38da02113 Bump rubocop from 0.80.1 to 0.81.0
Bumps [rubocop](https://github.com/rubocop-hq/rubocop) from 0.80.1 to 0.81.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v0.80.1...v0.81.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-01 19:20:42 +00:00
Luis Ramos
0e268a171f Switch to console.error so we get a bugsnag alert everytime a user has a problem with their card
Add paymentMethodsAPI specific mapping function, we had some errors in production with mastercards probably caused by ActiveMerchant not handling the card type correctly
2020-04-01 18:58:43 +01:00
Luis Ramos
73c4eedd06 Translate credit card brand so that active merchant code handles the payment correctly
Adds a simple console.log statement in case there is an error adding the
card
2020-04-01 18:58:10 +01:00
Luis Ramos
8a220742f5 Merge pull request #5103 from jeduardo824/bug/5092-remove-blue-setence-in-payment-method-setting
remove blue sentence in payment method setting
2020-04-01 18:56:09 +01:00
Luis Ramos
9fa604db0d Merge pull request #5076 from luisramos0/rails_f_helper
Remove Rails Foundation Helper and improve error display and logging in checkout controller
2020-04-01 18:54:45 +01:00
Transifex-Openfoodnetwork
6083d91d3e Updating translations for config/locales/ca.yml 2020-04-02 01:57:50 +11:00
Transifex-Openfoodnetwork
9bdb396b86 Updating translations for config/locales/ca.yml 2020-04-02 01:54:42 +11:00
Matt-Yorkley
ad42b1b485 Remove pagination limits in BOM
We can re-assess this later, but for now it looks like some of the BOM functionality won't work if results are returned across multiple pages.
2020-04-01 13:43:21 +02:00
Luis Ramos
78170bc709 Merge pull request #4807 from openfoodfoundation/dependabot/bundler/compass-rails-4.0.0
Bump compass-rails from 3.1.0 to 4.0.0
2020-04-01 12:42:42 +01:00
Luis Ramos
957b398a54 Add call to $evalAsync() after Loading and FlashLoader are updated so
that a angular digest is triggered

This is required so that Loading.clear triggers a refresh and makes its placeholder to be cleared
2020-04-01 12:08:55 +01:00
Luis Ramos
c3d25bf163 Make checkout controller send bugsnag alerts on every checkout problem
There are two new situations here: we will see order.errors after update_attributes fails but before order restart; and we will see how often the order is not complete when the workflow finishes (maybe none)
2020-04-01 12:03:39 +01:00
Luis Ramos
ce2a164c66 Stop using f_form_for
Add labels for some fields, this was done automatically by rails foundation helper
2020-04-01 12:03:39 +01:00
Luis Ramos
b898ce1ae1 Make checkout controller add flash error if order contains any type of error
Here we add translations for a particular case where the credit card expiry date is in the past
2020-04-01 12:03:39 +01:00
Luis Ramos
409681b7af Merge pull request #5089 from Matt-Yorkley/checkout-scoping
Cart variant scoping
2020-04-01 11:49:23 +01:00
Luis Ramos
9317549103 Merge pull request #4813 from luisramos0/oc_selector
If there's only one OC available to the customer because there are tag rules hidding other OCs, select that OC by default
2020-04-01 10:44:58 +01:00
Luis Ramos
154e223a12 Make sure test data is available before the test 2020-04-01 10:00:07 +01:00
Luis Ramos
80b9800b36 Replace SQL with equivalent AR code 2020-04-01 10:00:07 +01:00
Luis Ramos
6e095bdb68 Fix bug in line_item_decorator, should be inner join not left outer join 2020-04-01 10:00:07 +01:00
Luis Ramos
a4c7dbc329 Add comment to better explain why this scope is not simply using joins(:product) 2020-04-01 10:00:07 +01:00
Luis Ramos
8909238682 Fix one rubocop issue 2020-04-01 10:00:07 +01:00
Luis Ramos
7c367da904 Adapt LineItem#supplied_by_any scope to include deleted variants and deleted products (both not included in the respective default scopes) and use it in Permissions::Order so that variants of deleted products are seen in reports 2020-04-01 10:00:07 +01:00
Luis Ramos
0c8635403a Delete dead scope in line_items
This is not used anywhere in the code
2020-04-01 10:00:07 +01:00
dependabot-preview[bot]
b22ad244f9 Bump ddtrace from 0.33.1 to 0.34.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.33.1 to 0.34.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.33.1...v0.34.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-31 19:40:01 +00:00
Transifex-Openfoodnetwork
9c17a91215 Updating translations for config/locales/en_GB.yml 2020-04-01 05:07:08 +11:00
Luis Ramos
6a1c541479 Remove specific error color on checkout page so that the error message takes the default foundation error color which is white 2020-03-31 16:32:33 +01:00
Luis Ramos
6c64261868 Merge pull request #5113 from mkllnk/5110-bugsnag-js-logging
Add Bugsnag JS logging
2020-03-31 15:51:12 +01:00
Matt-Yorkley
f437d0f8a0 Report environment correctly in Bugsnag JS 2020-03-31 15:59:17 +02:00
Transifex-Openfoodnetwork
79d6d7cc9e Updating translations for config/locales/de_DE.yml 2020-03-31 22:09:16 +11:00
Matt-Yorkley
e200ece280 Rename partial to bugsnag_js for clarity 2020-03-31 12:57:12 +02:00
Matt-Yorkley
30bf9257ab Move conditional inside partial and use default key as fallback 2020-03-31 12:55:28 +02:00
Matt-Yorkley
03e229da08 Add bugsnag js script to admin layout above all.js 2020-03-31 12:25:42 +02:00
Maikel Linke
28473c9087 Add Bugsnag JS logging 2020-03-31 15:51:04 +11:00
Matt-Yorkley
09c8819e5a Remove unnecessary Bugsnag calls
The Bugsnag notification was just here to see if this was dead code. It's not.
2020-03-30 20:36:45 +02:00
Matt-Yorkley
f7c047b798 Memoize ScopeVariantToHub to avoid fetching the hub's overrides each time 2020-03-30 20:33:27 +02:00
Luis Ramos
635ea9c505 Fix some long lines on variant_decorator 2020-03-30 11:21:47 +01:00
Luis Ramos
fbbe586996 Avoid rails 3 bug where the first where clause is overriden by a second where clause
Co-Authored-By: Maikel <maikel@email.org.au>
2020-03-30 11:21:47 +01:00
Luis Ramos
a5184cce9d Make method a bit more readable and add comment with details 2020-03-30 11:21:47 +01:00
Luis Ramos
69b57544f1 Bring Spree::Variant#active so that we can make it return just variants without includes
This makes the variants returned not readonly in rails 4 and thus fixes a spec in Spree::VariantsController#destroy
2020-03-30 11:21:47 +01:00
Eduardo
b6da0e2092 remove @payment_method explict variable from the view 2020-03-29 20:32:55 -03:00
Matt-Yorkley
95963c5732 Refactor Angular line_items_controller 2020-03-29 19:54:49 +02:00
Matt-Yorkley
aba1b5b67a Add pagination specs and refactor 2020-03-29 19:54:49 +02:00
Matt-Yorkley
fe58121c7f Fix clear filters button 2020-03-29 19:54:49 +02:00
Matt-Yorkley
5c4a2c2790 Update javascript specs 2020-03-29 19:54:49 +02:00
Matt-Yorkley
a07281910b Fix dropdown placeholders 2020-03-29 19:54:49 +02:00
Matt-Yorkley
72f9da3ac4 Fix regex validation and HTML "type" settings not allowing decimals for final_weight_volume
`final_weight_volume` can be a decimal, and often *is* in production data. Not regarding them as valid was breaking the form submission in various cases
2020-03-29 19:54:49 +02:00
Matt-Yorkley
375b4648dc Add pagination to Bulk Order Management 2020-03-29 19:54:47 +02:00
Transifex-Openfoodnetwork
9af0a39305 Updating translations for config/locales/en_FR.yml 2020-03-29 06:43:01 +11:00
Transifex-Openfoodnetwork
6817231f29 Updating translations for config/locales/fr.yml 2020-03-29 06:42:36 +11:00
Matt-Yorkley
7c7f9551d6 Fix bug in order cycle select dropdown
The date filters were being filled with the string: "Invalid date" because momentjs was not able to parse the input
2020-03-28 15:17:31 +01:00
Matt-Yorkley
d568b45d4a Limit spamming the server with lots of requests
This uses "debounce" to add a little waiting time whilst the user is part-way through selecting dates (or manually typing in the date filter) so we don't make too many unnecessary requests.
2020-03-28 11:20:23 +01:00
Matt-Yorkley
b76a6d15a3 Improve date field query triggers
Don't submit the request if the user is part-way through typing something in the date field and the date is (currently) invalid; this results in the date ranges being broken and triggering a query for *all* results (with no date range).
2020-03-28 11:16:25 +01:00
Luis Ramos
940423acfc Merge pull request #5067 from gao329700254/fix/fix_fr_translation_in_order_cycles_outgoing(4937)
Fix translation missing in order cycles outgoing page (closed #4937)
2020-03-27 22:00:19 +00:00
Transifex-Openfoodnetwork
6a57aa3b29 Updating translations for config/locales/en_FR.yml 2020-03-28 04:08:31 +11:00
Transifex-Openfoodnetwork
ca78e9d0e2 Updating translations for config/locales/fr.yml 2020-03-28 04:08:17 +11:00
Luis Ramos
e705e88007 Merge pull request #5087 from luisramos0/custom_data
Fix bug in subscriptions logging by making versions.custom_data a longer field
2020-03-27 16:04:31 +00:00
Pau Pérez Fabregat
1fbb9fa3df Merge pull request #5083 from openfoodfoundation/transifex
Transifex
2020-03-27 16:51:30 +01:00
Matt-Yorkley
71f00f9283 Remove comment warning about this issue 2020-03-27 14:23:48 +01:00
Matt-Yorkley
7d33a237d0 Add scoping to VariantsStockLevels when variant is not in the order 2020-03-27 14:15:15 +01:00
Matt-Yorkley
857cacb74b Add test for additional case where variant is not in the order 2020-03-27 14:03:17 +01:00
Matt-Yorkley
fbfe663ebc Add variant scoping to VariantStockLevels 2020-03-27 13:38:57 +01:00
Matt-Yorkley
83b90f3167 Add spec variant override test to VariantsStockLevels 2020-03-27 13:31:39 +01:00
Luis Ramos
14fd9a121e Make versions.custom_data text so it can take longer lists 2020-03-27 11:34:01 +00:00
Pau Perez
904e89e325 Do not reset the dev env when booting docker
The current web container's command destroys anything you might have in
your local DB from a previous session, assuming you always want start
from a clean environment. This is hardly the case and makes
`docker-compose up` take quite long. What if you just stopped containers
temporally while developing?

This changes the approach to not assume anything. If you need to install
a new gem or reset your DB just run the commands you would without
docker. You can run anything you want with `docker-compose run web bundle exec
<rails/rake command>` anyway.

For someone setting things for the first time, the `Dockerfile` process
still installs all dependencies.
2020-03-27 12:17:09 +01:00
Maikel
d254df7ccc Merge pull request #5073 from Matt-Yorkley/mobile-checkout
[Mobile UX] Order cycle section updates
2020-03-27 15:34:19 +11:00
Pau Pérez Fabregat
a218eab67b Merge pull request #4987 from Matt-Yorkley/3-0-packing
[Spree 2.1] Packing report deleted variants
2020-03-26 17:37:51 +01:00
Pau Pérez Fabregat
8caf10f634 Merge pull request #5079 from openfoodfoundation/dependabot/bundler/unicorn-5.5.4
Bump unicorn from 5.5.3 to 5.5.4
2020-03-26 17:32:17 +01:00
Transifex-Openfoodnetwork
2e98b0b5c1 Updating translations for config/locales/en_GB.yml 2020-03-27 01:40:20 +11:00
Matt-Yorkley
2966dd9536 Update all locales with the latest Transifex translations 2020-03-26 14:25:34 +01:00
Matt-Yorkley
21e1c0ed0b Merge pull request #5025 from openfoodfoundation/transifex
Transifex
2020-03-26 14:22:38 +01:00
Matt-Yorkley
48b99d02b9 Merge pull request #5060 from Matt-Yorkley/weight-calculator
Fix weight calculator
2020-03-26 14:19:21 +01:00
Pau Pérez Fabregat
f17a2eeaea Merge pull request #5062 from luisramos0/prop_bug
Fix broken new property button in properties page (regression from removing spree_backend)
2020-03-26 11:35:47 +01:00
Pau Pérez Fabregat
18419d0276 Merge pull request #5043 from luisramos0/fix_cookies
Fix cookies policy helper spec in rails 4
2020-03-26 11:23:49 +01:00
Pau Pérez Fabregat
1c2815d2b7 Merge pull request #5044 from luisramos0/add_spring
[Spree 2.1] Re-add spring and newrelic_rpm
2020-03-26 11:23:19 +01:00
Pau Pérez Fabregat
bd19d8b0bd Merge pull request #5042 from luisramos0/api_base
Make explicit the namespace of the BaseController for api controllers
2020-03-26 11:21:27 +01:00
Pau Pérez Fabregat
b3a47964e6 Merge pull request #5033 from luisramos0/ent_fees_data_types
[Spree 2.1] Adapt EnterpriseFeeSummary report code to slightly different rails 4 sql data conversion
2020-03-26 11:20:44 +01:00
Pau Pérez Fabregat
9daa40ce9c Merge pull request #5028 from luisramos0/remove_attr_accessible
[Spree 2.1] Remove new attr_accessible entries
2020-03-26 11:20:08 +01:00
Pau Pérez Fabregat
f70e155b1b Merge pull request #4984 from Matt-Yorkley/3-0-cart-route
[Spree 2.1] Fix cart page update
2020-03-26 11:14:07 +01:00
Maikel Linke
4bcd665379 Handle all line items without unit_value in weight calculation 2020-03-26 17:13:29 +11:00
Matt-Yorkley
e63dbcfa89 Fix some SCSS linting warnings 2020-03-25 23:12:23 +01:00
Matt-Yorkley
c3283adcf5 Show full-width ordercycle subheader on tablet and below 2020-03-25 23:12:23 +01:00
Matt-Yorkley
b2ed69831b Adjust style contexts 2020-03-25 23:12:23 +01:00
Matt-Yorkley
7daba62f43 Update colours for different order cycle sidebar cases 2020-03-25 23:12:23 +01:00
Matt-Yorkley
a08020490d Define new colour and use variable where already in use 2020-03-25 23:12:23 +01:00
Matt-Yorkley
eb4d970bc7 Adjust positioning for order cycle sidebar 2020-03-25 23:12:23 +01:00
Matt-Yorkley
7a3549209f Use 4 columns on checkout sidebar 2020-03-25 23:12:23 +01:00
Matt-Yorkley
52ebd1b402 Remove order cycle popovers; these styles are no longer used 2020-03-25 23:12:08 +01:00
Matt-Yorkley
a3a26f704f Extract re-used box-shadow style 2020-03-25 23:07:39 +01:00
Matt-Yorkley
cff8f6dd96 Add box-shadow to distributor header for cart, checkout, and order confirmation pages 2020-03-25 23:07:39 +01:00
Matt-Yorkley
81537d92cf Extract styles for distributor header
These styles are used in shop, cart, checkout, order confirmation. Not just shop.
2020-03-25 23:07:39 +01:00
Matt-Yorkley
91e88bd028 Allow conditional use of order cycle sidebar
We need to re-use the "shopping_shared/header" partial in multiple places, but we don't always want the (nested) order cycle sidebar inside it.
2020-03-25 23:07:39 +01:00
Matt-Yorkley
f5e254a105 Remove quick fix for hiding oc selector 2020-03-25 23:07:39 +01:00
Sigmund Petersen
b41b5d0395 Update Slack invitation link 2020-03-25 20:38:45 +01:00
dependabot-preview[bot]
296d2e5edb Bump unicorn from 5.5.3 to 5.5.4
Bumps [unicorn](https://yhbt.net/unicorn/) from 5.5.3 to 5.5.4.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-25 19:17:31 +00:00
Luis Ramos
ac0a62e962 Merge pull request #5050 from Matt-Yorkley/bullet_tweaks
Performance tweaks 2
2020-03-25 18:32:49 +00:00
Matt-Yorkley
0cc5cbd1d2 Merge pull request #5038 from luisramos0/strong_params_prod
[Spree 2.1] Implement strong params in products, variants, variant_overrides and resource controllers
2020-03-25 18:35:58 +01:00
Luis Ramos
523faa670d Remove FoundationRailsHelper, this is dead code now 2020-03-25 17:31:56 +00:00
Luis Ramos
2c5db8935b Merge pull request #5022 from Matt-Yorkley/performance_tweaks
Performance tweaks
2020-03-25 15:42:07 +00:00
Luis Ramos
e5e9325499 Fix paper_trail custom_data for order_cycle, custom data must be a string, cant be an array 2020-03-25 15:35:51 +00:00
Luis Ramos
2e4f8003b6 Fix group factory in rails 4
params[:address] was breaking the creation of the EnterpriseGroup
2020-03-25 15:32:16 +00:00
Luis Ramos
24c8f38111 Restructure spec to avoid variable names with numbers 2020-03-25 15:48:57 +01:00
Luis Ramos
b801bffcd9 Merge pull request #5030 from Matt-Yorkley/reports-loading
Improve reports performance
2020-03-25 12:54:34 +00:00
Yuhao Gao
60d9edb185 fix translation missing in order cycles outgoing page (closed #4937) 2020-03-25 21:51:13 +09:00
Luis Ramos
434b68b019 Merge pull request #5048 from Matt-Yorkley/3-0-user-spec
Ensure perform_deliveries is correctly set in user email spec
2020-03-25 11:52:43 +00:00
Luis Ramos
f1b64e90e0 Add comment to explain unusual fix 2020-03-25 11:49:14 +00:00
Matt-Yorkley
433ae00818 Ensure :info log level is set in Rails 4 2020-03-25 11:39:03 +00:00
Matt-Yorkley
7bc29769cd Fix logging configs for Rails 4 2020-03-25 11:38:29 +00:00
Matt-Yorkley
483d847b00 Use eager_load = true in production and staging environments 2020-03-25 11:36:33 +00:00
Luis Ramos
9af4bb9757 Use create instead of build so that we test with callbacks 2020-03-25 11:22:40 +00:00
Luis Ramos
95ba1fd02c Merge pull request #5065 from luisramos0/upgrade_deps
[Spree 2.1] Upgrade some dependencies... rails 4.0.13 :-)
2020-03-25 11:04:13 +00:00
Luis Ramos
c02a3e919f Merge pull request #5039 from luisramos0/strong_params_ent
[Spree 2.1] Implement strong params in enterprises, enterprise_groups, enterprise_roles, customers and customer_details controllers
2020-03-25 10:53:01 +00:00
Luis Ramos
b7cb95ae3e Fix problem in PermittedAttributes::Address namespace 2020-03-25 10:52:23 +00:00
Luis Ramos
6b62c8aafd Extract permitted attributes to separate service 2020-03-25 10:52:23 +00:00
Luis Ramos
e5f56c19c0 Switch to using PermittedAttributes::Address instead of spree version of it that will be removed later 2020-03-25 10:52:23 +00:00
Luis Ramos
22a005df47 Add needed permitted attributes to admin/customers_controller 2020-03-25 10:51:55 +00:00
Luis Ramos
9b0d7b9604 Ammend customers_controller to include ship address attributes permit and also permit #update with specific attributes 2020-03-25 10:51:55 +00:00
Luis Ramos
4fd3026bd8 Add strong parameters permits to some controllers 2020-03-25 10:51:55 +00:00
Luis Ramos
a9a92e11e2 Bring some strong parameters code from spree to our Spree controllers
This code comes from spree commit fbc2d150f6
2020-03-25 10:51:55 +00:00
Luis Ramos
fec5e1d84e Add needed param to enterprises controller 2020-03-25 10:51:55 +00:00
Luis Ramos
ad9e5d979a Permit extra needed params in enterprises controller 2020-03-25 10:51:55 +00:00
Luis Ramos
29a457575b Permit specific params in enterprise_groups controller 2020-03-25 10:51:55 +00:00
Luis Ramos
5c179a0932 Ammend strong params on enterprise controller to cover create action 2020-03-25 10:51:55 +00:00
Luis Ramos
34488e5f63 Handle strong params in enterprise_roles controller 2020-03-25 10:51:55 +00:00
Luis Ramos
6ba3a3c373 Handle strong params in admin/enterprises_controller 2020-03-25 10:51:55 +00:00
Matt-Yorkley
d847560d7c Fix rubocop issues 2020-03-25 10:15:03 +01:00
Pau Pérez Fabregat
a72957e3c3 Merge pull request #4827 from luisramos0/strong_params
[Spree 2.1] Implement Strong Parameters in various controllers
2020-03-25 10:07:14 +01:00
Pau Pérez Fabregat
87fae15434 Merge pull request #4909 from luisramos0/line_items_spec
Adapt line_items_spec to work in the rails 4 branch as well
2020-03-25 10:05:20 +01:00
Pau Pérez Fabregat
2c487c2592 Merge pull request #5037 from luisramos0/strong_params_subs
[Spree 2.1] Implement strong params in subscriptions controller
2020-03-25 09:50:47 +01:00
Pau Pérez Fabregat
d4d72c6c6c Merge pull request #5036 from luisramos0/strong_params_users
[Spree 2.1] Implement strong params in user related controllers
2020-03-25 09:48:52 +01:00
Pau Pérez Fabregat
b323364661 Merge pull request #5035 from luisramos0/strong_params_checkout
[Spree 2.1] Implement strong params in checkout controller
2020-03-25 09:46:53 +01:00
Pau Pérez Fabregat
e70daf53ce Merge pull request #4876 from luisramos0/strong_params_oc
[Spree 2.1] Implement strong params in admin Order cycles controller
2020-03-25 09:44:13 +01:00
Pau Pérez Fabregat
c5621b7740 Merge pull request #5034 from luisramos0/strong_params_payment_methods
[Spree 2.1] Implement strong params in admin payment methods controller
2020-03-25 09:39:34 +01:00
Matt-Yorkley
e27f7a4301 Ensure perform_deliveries is correctly set when testing user confirmation emails 2020-03-25 08:42:21 +01:00
Luis Ramos
bddfa95eb5 Fix broken new property button in properties page 2020-03-24 21:50:49 +00:00
Matt-Yorkley
ef0fb18fda Fix calculations for weight when variant.unit_value is zero 2020-03-24 22:05:55 +01:00
Luis Ramos
570fb4bfb4 Upgrade factory_bot_rails 2020-03-24 19:18:13 +00:00
Luis Ramos
89cc7ee5ef Upgrade devise-encryptable to 0.2.0 which is latest 2020-03-24 19:18:13 +00:00
Luis Ramos
5453fed716 Upgrade rails from 4.0.0 to 4.0.13 2020-03-24 19:18:13 +00:00
Luis Ramos
b8ed28b38c Remove deface, it's already included in spree_core, it's not a direct dependency of OFN anymore 2020-03-24 19:18:13 +00:00
Matt-Yorkley
87ee4bbebc Add spec for current problematic behaviour 2020-03-24 20:09:54 +01:00
Transifex-Openfoodnetwork
f5567e556b Updating translations for config/locales/pt_BR.yml 2020-03-25 02:22:31 +11:00
Matt-Yorkley
e014e6c1a4 Ensure perform_deliveries is correctly set when testing user confirmation emails 2020-03-24 13:12:20 +00:00
Matt-Yorkley
54c3c73ed2 Fix duplicate key in hash 2020-03-24 12:46:21 +01:00
Luis Ramos
8dfdc9bc15 Merge pull request #5056 from openfoodfoundation/dependabot/bundler/rubocop-rails-2.5.0
Bump rubocop-rails from 2.4.2 to 2.5.0
2020-03-24 11:22:21 +00:00
Matt-Yorkley
36aa52736a Refactor order filtering logic 2020-03-24 09:36:59 +01:00
Matt-Yorkley
ac38b2735c Eager-load data in OrdersController 2020-03-23 22:38:57 +01:00
Matt-Yorkley
8b93c5ab56 Invert conditionals for better readability 2020-03-23 22:38:57 +01:00
Matt-Yorkley
434f98fb46 Fix insane N+1 in Package
The #ships_with? method was being called ~800 times when loading the admin order edit page (with Aus production data), and triggering a new query each time it was called.
2020-03-23 22:38:57 +01:00
Matt-Yorkley
c82c54873c Pluck :id when querying active distributors for serializer data 2020-03-23 22:38:55 +01:00
dependabot-preview[bot]
de180d32bf Bump rubocop-rails from 2.4.2 to 2.5.0
Bumps [rubocop-rails](https://github.com/rubocop-hq/rubocop-rails) from 2.4.2 to 2.5.0.
- [Release notes](https://github.com/rubocop-hq/rubocop-rails/releases)
- [Changelog](https://github.com/rubocop-hq/rubocop-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop-hq/rubocop-rails/compare/v2.4.2...v2.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-23 20:37:57 +00:00
Matt-Yorkley
5b481c19cc Eager-load country in Producers controller 2020-03-23 19:33:15 +01:00
Matt-Yorkley
7110f9e6ee Eager-load data used in EnterpriseGroupsController
Cuts page load time by ~75%
2020-03-23 19:33:13 +01:00
Transifex-Openfoodnetwork
63d748b2a4 Updating translations for config/locales/pt_BR.yml 2020-03-24 03:32:23 +11:00
Transifex-Openfoodnetwork
310906c7da Updating translations for config/locales/en_NZ.yml 2020-03-23 15:49:19 +11:00
Transifex-Openfoodnetwork
b81843921b Updating translations for config/locales/en_CA.yml 2020-03-23 08:57:54 +11:00
Luis Ramos
2de550eac1 Make OrderUpdate update all adjustments again as in v2.0.4 otherwise adjustments that are not shipment adjustments will not be calculated correctly 2020-03-22 20:08:11 +00:00
Luis Ramos
85f6be756e Merge pull request #5027 from luisramos0/3-0-stable-mar20
[Spree 2.1] Merge master into 3-0-stable - 20 March 2020
2020-03-22 13:20:54 +00:00
Matt-Yorkley
dd0e135a4d Add test coverage for Permissions::Order with search_params 2020-03-22 11:45:40 +01:00
Luis Ramos
658a024272 Re-add spring and newrelix_rpm 2020-03-22 10:41:59 +00:00
Luis Ramos
0f2c5d379a Add test locales to I18n.available_locales before the test and reset them afterwards 2020-03-22 10:32:16 +00:00
Luis Ramos
a29f263041 Make explicit the namespace of the BaseController for api controllers 2020-03-22 09:55:07 +00:00
Luis Ramos
478f885b26 Fix problem in PermittedAttributes::Variant namespace 2020-03-21 22:36:31 +00:00
Luis Ramos
5e6a210632 Fix problem in PermittedAttributes::User namespace 2020-03-21 22:36:03 +00:00
Luis Ramos
26cd0f4a9d Merge pull request #5023 from mkllnk/5019-invoice-bill-address
Display shipping and billing address on invoices
2020-03-21 20:38:00 +00:00
Luis Ramos
4e43535512 Add missing permitted attribute 2020-03-21 20:30:34 +00:00
Luis Ramos
3ccd58d50b Fix a problem in the permit list to allow a list to be taken 2020-03-21 20:30:34 +00:00
Luis Ramos
5a0319213f Fix schedules controller permitted attributes 2020-03-21 20:30:34 +00:00
Luis Ramos
b7c0caf883 Add needed permitted attributes to orders_controller 2020-03-21 20:30:34 +00:00
Luis Ramos
8c5dfea92f Fix strong params in order_cycles and schedules controllers 2020-03-21 20:30:34 +00:00
Luis Ramos
2a426d29b6 Permit specific params in zones controller 2020-03-21 20:30:34 +00:00
Luis Ramos
47505b6225 Permit specific params in shipping methods controller 2020-03-21 20:30:34 +00:00
Luis Ramos
6fa1ed03dc Permit specific params in adjustments controller 2020-03-21 20:30:34 +00:00
Luis Ramos
d73d851095 Permit specific params in tax_rates controller 2020-03-21 20:30:34 +00:00
Luis Ramos
495c3a3810 Permit specific params in images controller 2020-03-21 20:30:34 +00:00
Luis Ramos
9681437fba Permit specific params in tax_categories controller 2020-03-21 20:30:34 +00:00
Luis Ramos
b99d4ab627 Permit specific params in schedules controller 2020-03-21 20:30:34 +00:00
Luis Ramos
423d5a5a61 Permit specific params in taxonomies controller 2020-03-21 20:30:34 +00:00
Luis Ramos
e5a214da78 Permit specific params in states controller 2020-03-21 20:30:34 +00:00
Luis Ramos
46025915d5 Make taxons_controller strong_params method consistent with all other controllers 2020-03-21 20:30:34 +00:00
Luis Ramos
e23267156d Improve inventory_items_controller strong params by not using permit! 2020-03-21 20:30:34 +00:00
Luis Ramos
6bd72f44de Handle strong params in credit card controllers 2020-03-21 20:30:34 +00:00
Luis Ramos
913ea5b883 Handle strong parameters in bulk_line_items controller 2020-03-21 20:30:34 +00:00
Luis Ramos
d496a4bdc8 Add strong parameters permits to some controllers 2020-03-21 20:30:34 +00:00
Luis Ramos
c15433af3f Bring some strong parameters code from spree to our Spree controllers
This code comes from spree commit fbc2d150f6
2020-03-21 20:30:34 +00:00
Luis Ramos
244499a27d Extract permitted atttributes to specific classes 2020-03-21 19:41:05 +00:00
Luis Ramos
58a2805bc9 Make resource controller raise error if permitted_resource_params is not overriden 2020-03-21 19:41:05 +00:00
Luis Ramos
49a2522305 Permit specific params in variants controller 2020-03-21 19:27:55 +00:00
Luis Ramos
527f6cb624 Add necessary attributes to admin/products_controller and handle empty params case 2020-03-21 19:14:26 +00:00
Luis Ramos
36389b7bed Add missing permitted attributes to bulk_product_update controller 2020-03-21 19:14:26 +00:00
Luis Ramos
b5cdcdf8cb Permit specific params in products controller 2020-03-21 19:14:26 +00:00
Luis Ramos
a261ae118d Add missing permitted attributes to variant overrides controller 2020-03-21 19:14:26 +00:00
Luis Ramos
7320b38b93 Add missing attributes to variant override controller 2020-03-21 19:14:26 +00:00
Luis Ramos
0151b5ee9a Permit extra needed params in variant overrides controller 2020-03-21 19:14:26 +00:00
Luis Ramos
5b37e89738 Handle strong params in variant_overrides_controller
We use a simpler way to permit on array within params here and change products_controller to the same style
2020-03-21 19:14:26 +00:00
Luis Ramos
c110f4832d Handle strong params in spree/admin/products_controller 2020-03-21 19:14:26 +00:00
Luis Ramos
79b0867507 Extract permitted attributes to separate service 2020-03-21 19:08:37 +00:00
Luis Ramos
58c83d056d Add missing permitted attributes to subscriptions controller 2020-03-21 18:57:37 +00:00
Luis Ramos
c3897b2f1c Handle strong params in subscriptions controller 2020-03-21 18:57:37 +00:00
Luis Ramos
d7cfda8385 Handle strong params in subscription_line_items controller 2020-03-21 18:57:37 +00:00
Luis Ramos
0ee562c718 Add test coverage for PermittedAttributes::User 2020-03-21 18:48:04 +00:00
Luis Ramos
aec7f12f5a Extract common user permitted attributes to a separate class 2020-03-21 18:31:14 +00:00
Luis Ramos
6ed93da3f1 Fix case with empty spree_user in user_registrations controller 2020-03-21 18:00:04 +00:00
Luis Ramos
d0bd2818c2 Handle strong params on users_controller 2020-03-21 18:00:04 +00:00
Luis Ramos
431076fc6d Add strong parameters permits to admin users_controller 2020-03-21 17:59:46 +00:00
Luis Ramos
980fdd65a1 Replace hash rockets syntax 2020-03-21 17:00:08 +00:00
Luis Ramos
2c453359c1 Extract permitted params into a specific service 2020-03-21 16:49:26 +00:00
Luis Ramos
1d9a6edefb Permit params in checkout controller before we adapt them to bypass issues with permitting added attributes like source CreditCard 2020-03-21 16:30:20 +00:00
Luis Ramos
5ae2e6865c Add one more needed permitted attribute to checkout controller 2020-03-21 16:30:20 +00:00
Luis Ramos
d7cccd4143 Add guard clause in checkout_controller for empty params[:order] 2020-03-21 16:30:20 +00:00
Luis Ramos
5af27bb14e Make checkout controller handle strong parameters 2020-03-21 16:30:20 +00:00
Luis Ramos
fd2cf7295e Extract permitted_attributes from order_cycle_controller into a specific service 2020-03-21 16:17:20 +00:00
Luis Ramos
20c7a0d3ef Adapt to latest changes in order cycles controller strong params changes 2020-03-21 14:45:51 +00:00
Luis Ramos
57f8fa26ab Fix strong params in order_cycles 2020-03-21 14:45:51 +00:00
Luis Ramos
1a46e7b7ee Improve strong params implementation on order_cycle controller and fix corresponding specs 2020-03-21 14:45:51 +00:00
Luis Ramos
905811ccb3 Handle strong params in admin order_cycles controller 2020-03-21 14:45:51 +00:00
Luis Ramos
df799340df Add missing permitted attributes to payment_methods controller 2020-03-21 14:21:52 +00:00
Luis Ramos
eac0da9812 Fix payment method controllers by removing unnecessary param that only exists in stripe connect payment method preferred_enterprise_id 2020-03-21 14:09:33 +00:00
Luis Ramos
e5ebf45765 Improve strong params implementation on payment methods controller by specifying specific list of permitted attributes 2020-03-21 14:09:33 +00:00
Luis Ramos
38849f5589 Extract method in payments_method_controller to make it readable 2020-03-21 14:09:32 +00:00
Luis Ramos
86d09ff21e Bring strong parameters code from spree to payment_methods_controller
This code comes from spree commit fbc2d150f6
2020-03-21 14:08:03 +00:00
Luis Ramos
337b2ab592 Merge pull request #4979 from Matt-Yorkley/3-0-customer-details
[Spree 2.1] Customer details
2020-03-21 13:26:09 +00:00
Matt-Yorkley
80e5608436 Ensure customer selection dropdown is visible when adding customer details
For some reason the order is in address state here instead of cart state when adding customer details. There's a conditional in the view which loads the customer selection dropdown that was not being triggered, so a customer could not be selected (and their existing address was not being filled out in the form).

Fixes:

  1)
    As an administrator
    I want to manage orders
 filling customer details
     Failure/Error: expect(order.ship_address.lastname).to eq @customer.ship_address.lastname

     NoMethodError:
       undefined method `lastname' for nil:NilClass
     # ./spec/features/admin/orders_spec.rb:179:in `block (2 levels) in <top (required)>'
2020-03-21 14:14:31 +01:00
Luis Ramos
b33969e6a2 Adapt to slightly different rails 4 sql data conversion 2020-03-21 12:50:34 +00:00
Matt-Yorkley
0b878dd0a2 Use named scope for finding line_items in a set of orders 2020-03-21 09:45:35 +01:00
Matt-Yorkley
45c204017f Improve reports performance
Add the scoping from the search filters for reports into the logic of building sets like `editable_line_items` before combining them into the query to reduce the number of `line_item` ids in the IN clause.
2020-03-21 09:45:33 +01:00
Transifex-Openfoodnetwork
fa98a8ea17 Updating translations for config/locales/en_NZ.yml 2020-03-21 15:19:06 +11:00
Luis Ramos
17c2f7b138 Merge pull request #4889 from luisramos0/3-0-prod-set
[Spree 2.1] Fix ProductSet spec (1 broken spec)
2020-03-20 19:33:19 +00:00
Matt-Yorkley
70643a84b2 Update all locales with the latest Transifex translations 2020-03-20 18:44:23 +01:00
Matt-Yorkley
62a00b17a2 Merge pull request #5026 from Matt-Yorkley/checkout_display
Temporarily hide OC selector in checkout page
2020-03-20 18:33:47 +01:00
Luis Ramos
9915717a22 Remove attr_accessible from paper_trail config
In rails 4 this is not needed
2020-03-20 15:09:18 +00:00
Luis Ramos
03cdaf589e Remove newly added attr_accessible from stripe_sca
This is not needed, in rails 4 the params are permitted at controller level
2020-03-20 15:08:29 +00:00
Pau Pérez Fabregat
c4f96a1dcf Merge pull request #4972 from mkllnk/4810-tab-navigation
4810 Shop tab / page navigation with browser buttons
2020-03-20 15:24:50 +01:00
Pau Pérez Fabregat
6f4f3d42cc Merge pull request #5012 from openfoodfoundation/dependabot/bundler/rack-mini-profiler-2.0.1
Bump rack-mini-profiler from 2.0.0 to 2.0.1
2020-03-20 15:22:43 +01:00
Transifex-Openfoodnetwork
7582df2771 Updating translations for config/locales/en_CA.yml 2020-03-21 00:37:37 +11:00
Luis Ramos
1c628fac58 Merge branch 'master' into 3-0-stable-mar20 2020-03-20 11:28:06 +00:00
Matt-Yorkley
e8692fec4c Temporarily hide OC selector in checkout page 2020-03-20 12:08:58 +01:00
Luis Ramos
9994bc75ca Adapt reports controller to handle routes of reports in the order_management engine differently 2020-03-20 11:07:23 +00:00
Luis Ramos
3f5a964dec Move enterprise_fee_summaries_spec to order_management engine, moving
translation keys for the views and adapting some routes
2020-03-20 11:07:23 +00:00
Luis Ramos
b4befea606 Fix namespace in spec 2020-03-20 11:07:23 +00:00
Luis Ramos
58465c4645 Adapt routes placeholder in the new catalog engine to make it similar to the other engines 2020-03-20 11:07:23 +00:00
Luis Ramos
0b05312f19 Move cookies spec to web engine and adapt routes to the fact they are now normal main apps routes 2020-03-20 11:07:23 +00:00
Luis Ramos
e209452f8b Make engine routes just prepend to apps routes instead of creating engine routes
This makes things a bit simpler in terms of routing, we avoid a problem running specs and we can still have the engine routes separated in specific files
2020-03-20 11:07:23 +00:00
Luis Ramos
a8078b22f8 Move enterprise fees summaries controller and views to ordermanagement engine 2020-03-20 11:07:23 +00:00
Luis Ramos
3b2c10526d Merge pull request #4838 from openfoodfoundation/dependabot/bundler/jquery-rails-3.1.5
[Security] Bump jquery-rails from 3.0.4 to 3.1.5
2020-03-20 09:49:22 +00:00
Luis Ramos
0e62dc04bd Improve comments to explain glitch on set_order_cycle and OrderCyclesList 2020-03-20 09:47:59 +00:00
Luis Ramos
e2940eb9ff Add namespace to OrderCyclesList
Shop will probably be the name of the future engine/domain for the shopfront pages
2020-03-20 09:47:59 +00:00
Luis Ramos
1c1f066884 Extract Shop::OrderCyclesList from base_controller 2020-03-20 09:47:59 +00:00
Luis Ramos
d5cf355a11 Call fetch_order_cycles from reset_order_cycles so we dont repeat the calculation
BaseController#set_order_cycle cant be used in reset_order_cycle because it will empty the order if the OC is not defined previously
2020-03-20 09:47:59 +00:00
Luis Ramos
d2eee1dafd Extract and fix reset_order_cycle logic from set_order_cycles: ActiveRecord.count will reload the relation and ignore the changes done by the TagRuleApplicator 2020-03-20 09:46:05 +00:00
Luis Ramos
540b26105f Delete dead code in oc helper 2020-03-20 09:46:05 +00:00
Transifex-Openfoodnetwork
c788f1ae57 Updating translations for config/locales/it.yml 2020-03-20 19:32:35 +11:00
Maikel Linke
b1a274ea27 Update translations 2020-03-20 16:20:21 +11:00
Maikel
00c7b9986b Merge pull request #5020 from openfoodfoundation/transifex
Transifex
2020-03-20 16:15:54 +11:00
Maikel Linke
25b11f1f4b Display delivery details in the header 2020-03-20 15:51:49 +11:00
Maikel Linke
22384cb4da Display shipping and billing address on invoices 2020-03-20 15:14:24 +11:00
Transifex-Openfoodnetwork
9dc18afef0 Updating translations for config/locales/pt_BR.yml 2020-03-20 12:20:04 +11:00
Matt-Yorkley
7baa875a91 Fix big N+1 issues in enterprises#edit for superadmin
The page is usable now as superadmin. Roughly 10x faster...
2020-03-19 23:41:47 +01:00
Matt-Yorkley
3de887e1d8 Remove some N+1s relating to address (found with bullet gem) 2020-03-19 23:41:47 +01:00
Transifex-Openfoodnetwork
d2d3d767ac Updating translations for config/locales/en_GB.yml 2020-03-19 23:53:09 +11:00
Transifex-Openfoodnetwork
a4ff74272b Updating translations for config/locales/nb.yml 2020-03-19 22:47:36 +11:00
Transifex-Openfoodnetwork
1000dc52bf Updating translations for config/locales/en_FR.yml 2020-03-19 19:37:32 +11:00
Transifex-Openfoodnetwork
54b8d22e0d Updating translations for config/locales/fr.yml 2020-03-19 19:37:21 +11:00
Maikel Linke
7e00f78a77 Highlight menu item only when active or hovered
The `:focus` selector meant that every link that was clicked on was
still highlighted after going back or forward in the browser history. We
don't need that selector because tabs you click on are then active and
are highlighted anyway.
2020-03-19 15:49:29 +11:00
Maikel Linke
5a9b5660f1 Simplify logic in PageSelectionCtrl 2020-03-19 15:38:00 +11:00
Maikel Linke
1d42ce885b Stay on shop page when opening login modal
The login modal changes the URL to `#/login` which interfers with our
shop pages. In order to show the right shop page, we need to know which
pages are valid and where we have been before we clicked on Login.
2020-03-19 15:38:00 +11:00
Maikel Linke
17751c448f Rename PageSelectionCtrl for clarity 2020-03-19 15:37:13 +11:00
Maikel Linke
4b8d9d18d7 Simplify PagesetCtrl 2020-03-19 15:37:13 +11:00
Maikel Linke
a21ef19529 Render only shop tabs within shop
The include directive was listening to all $location paths including
`#login` which is unrelated to the shop tabs. Angular tried to load the
template `shop/login.html` which doesn't exist.

We now whitelist the templates that can be included by having an include
tag for each shop tab/page.
2020-03-19 15:37:13 +11:00
Maikel Linke
ea80ae3832 Enable page navigation via URL fragment
The broadcasting of notifications didn't update properly and I couldn't
find a way to listen to $location updates. I replaced the three
intertwined directives with one controller and a bit more HTML code. Now
we have only one scope that listens to $location and all browser actions
like the back button is reflected in the page.

As nice side-effect, the menu links have now the right destination so
that you can copy the link and paste it into another browser window.

40 lines less code.
2020-03-19 15:37:13 +11:00
Maikel Linke
bf26a26743 Reduce complexity by removing unused code branch 2020-03-19 15:36:24 +11:00
Maikel Linke
e3f840f48c Remove dependency to Tabsets 2020-03-19 15:36:23 +11:00
Maikel Linke
42ca7888c0 Simplify by reducing unused options 2020-03-19 15:36:23 +11:00
Maikel Linke
8aa892136e Duplicate shop tab code for rewrite
The old code is still used on the user page.
2020-03-19 15:36:23 +11:00
Maikel Linke
2d21341183 Update all locales with the latest Transifex translations 2020-03-19 14:06:04 +11:00
Maikel
5cabf59015 Merge pull request #5016 from openfoodfoundation/revert-4879-inner-join-visible-orders
Revert "Inner join visible orders"
2020-03-19 12:37:20 +11:00
Maikel
289dff5b91 Merge pull request #4988 from openfoodfoundation/transifex
Transifex
2020-03-19 12:06:37 +11:00
Maikel
c4e4beb912 Revert "Inner join visible orders" 2020-03-19 12:01:00 +11:00
Maikel
27d8951add Merge pull request #5013 from openfoodfoundation/mobile-ux-3
Merge mobile-ux-3 branch into master
2020-03-19 11:51:41 +11:00
Transifex-Openfoodnetwork
f7720f1b1f Updating translations for config/locales/en_FR.yml 2020-03-19 05:18:19 +11:00
Transifex-Openfoodnetwork
c46ae4354d Updating translations for config/locales/en_FR.yml 2020-03-19 05:15:09 +11:00
Transifex-Openfoodnetwork
5f00323cbb Updating translations for config/locales/fr.yml 2020-03-19 05:14:27 +11:00
Transifex-Openfoodnetwork
c52f29706b Updating translations for config/locales/en_CA.yml 2020-03-19 03:47:42 +11:00
Luis Ramos
2590745b2e Merge pull request #4954 from luisramos0/dead_temp
Delete templates that are not used
2020-03-18 13:52:15 +00:00
Matt-Yorkley
6db0421347 Merge pull request #4764 from Matt-Yorkley/mobile-tabs-styling
[mobile ux] Mobile tabs styling
2020-03-18 08:42:44 +01:00
Maikel
b63c47cca2 Merge pull request #4816 from mkllnk/1860-copy-paste
1860 Remove style from pasted text for shopfront messages
2020-03-18 16:23:50 +11:00
Maikel
2b9f57f4e0 Merge pull request #4998 from mkllnk/4277-signup-flow
Direct new enterprise users to their dashboard
2020-03-18 16:17:41 +11:00
Matt-Yorkley
8a1de72542 Center order cycle select elements in tablet view 2020-03-17 20:32:18 +01:00
Matt-Yorkley
2cb3a0cd99 Adjust padding, size, colour (transparency), caret size and position, border-radius, etc 2020-03-17 20:32:18 +01:00
Matt-Yorkley
b0637a24ff Adjust padding, size, colour transparency, caret size 2020-03-17 20:32:18 +01:00
Matt-Yorkley
d969b68c8c Add placeholder to order cycle selector 2020-03-17 20:32:18 +01:00
Matt-Yorkley
a89d4266d5 Update ordercycleselector to show message in red and remove powertip. 2020-03-17 20:32:18 +01:00
Matt-Yorkley
4b8ced5fc0 Add right-margin on bullet points in groups tab 2020-03-17 20:32:18 +01:00
Matt-Yorkley
2678342122 Reduce padding on ordercycle selector 2020-03-17 20:32:18 +01:00
Matt-Yorkley
b33c819863 Reduce rounding on ordercycle edges (box-radius) 2020-03-17 20:32:18 +01:00
Matt-Yorkley
97d7e27786 Update social icon colours 2020-03-17 20:32:18 +01:00
Matt-Yorkley
e73e43838c Add 2px margin under Contact subheadings 2020-03-17 20:32:18 +01:00
Matt-Yorkley
cdc40fbc38 Update Contact tab subheading text colour 2020-03-17 20:32:18 +01:00
Matt-Yorkley
3430cc617a Maximise space for tabs to fit on small screens 2020-03-17 20:32:18 +01:00
Matt-Yorkley
ed6f042446 Adjust tab widths/spacing on mobile and tablet 2020-03-17 20:32:18 +01:00
Matt-Yorkley
80a8c436d6 Update box-shadow underneath tab buttons 2020-03-17 20:32:18 +01:00
Matt-Yorkley
049a87e8a9 Remove defunct text-shadow from tab text 2020-03-17 20:32:18 +01:00
Matt-Yorkley
deb5b8e74c Fix minor display issue where "Ready For" option with lots of characters is too big to fit on screen on mobile.
The layout was breaking in some specific cases where the content didn't fit on very small screens.
2020-03-17 20:32:18 +01:00
Matt-Yorkley
a5dd14d902 Adjust new colour variables to match Zeplin 2020-03-17 20:32:18 +01:00
Matt-Yorkley
9a6859edc0 Fix CodeClimate issue with SCSS variable naming 2020-03-17 20:32:18 +01:00
Matt-Yorkley
c0c53113d3 Change font on shop tab titles 2020-03-17 20:32:18 +01:00
Matt-Yorkley
26688409a1 Use alternate dots in <ul> display 2020-03-17 20:32:18 +01:00
Matt-Yorkley
0893d14025 Add new shop link colours 2020-03-17 20:32:18 +01:00
Matt-Yorkley
efd314e3b1 Restyle contact tab 2020-03-17 20:23:45 +01:00
Matt-Yorkley
bd7549c57f Update layout for producers and groups tabs 2020-03-17 20:23:45 +01:00
Matt-Yorkley
45cf54408d Readjust layout after rebase 2020-03-17 20:23:45 +01:00
Matt-Yorkley
15360740b1 Add ng-cloak to ordercycle box to improve appearance whilst page loads 2020-03-17 20:23:45 +01:00
Matt-Yorkley
5ce5072f26 Adjust position of OC popover tip to not cover up the "ready for" label 2020-03-17 20:23:45 +01:00
Matt-Yorkley
35133f7ee8 Adjust height of ordercycle selector on desktop 2020-03-17 20:23:45 +01:00
Matt-Yorkley
5becbc2a11 Move caret svg to /app/assets/images 2020-03-17 20:23:45 +01:00
Matt-Yorkley
390d80f0eb Update order cycle selector positioning 2020-03-17 20:23:45 +01:00
Matt-Yorkley
6da43850d1 Restyle order cycle dropdown 2020-03-17 20:23:45 +01:00
Matt-Yorkley
a146bdacc8 Realign ordercycle text on tablet downwards 2020-03-17 20:23:45 +01:00
Matt-Yorkley
43cadb00c4 Recolour order cycle selector 2020-03-17 20:23:45 +01:00
Matt-Yorkley
2e616a9e31 Fix conditional display of order cycle selection element 2020-03-17 20:23:45 +01:00
Matt-Yorkley
1927e2883e Move brackets inside conditionals for rendering last closed / next open message 2020-03-17 20:23:45 +01:00
Matt-Yorkley
a4b94cf39f Add dividing line on tabs
Shows a thin grey line when the tab view content is white, but doesn't interfere when the content below is a full-width colour image.
2020-03-17 20:23:45 +01:00
Matt-Yorkley
a35f3c130e Recolour shop tab buttons 2020-03-17 20:23:45 +01:00
Matt-Yorkley
a93243a8b7 Change vertical position of shop name in relation to logo 2020-03-17 20:23:45 +01:00
Matt-Yorkley
de4402457a Improve layout and positioning on mobile and tablet 2020-03-17 20:23:45 +01:00
Matt-Yorkley
bf9f7309f7 Adapt style definitions to altered layout 2020-03-17 20:23:45 +01:00
Matt-Yorkley
4b0e1610ec Update order cycle selection box 2020-03-17 20:23:45 +01:00
dependabot-preview[bot]
0c6fe20e82 Bump rack-mini-profiler from 2.0.0 to 2.0.1
Bumps [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/MiniProfiler/rack-mini-profiler/releases)
- [Changelog](https://github.com/MiniProfiler/rack-mini-profiler/blob/master/CHANGELOG.md)
- [Commits](https://github.com/MiniProfiler/rack-mini-profiler/compare/v2.0.0...v2.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-17 19:19:22 +00:00
Luis Ramos
0f2e23d225 Merge pull request #4968 from lin-d-hop/customer-balances
Revert changes that broke existing usage of this report
2020-03-17 18:06:35 +00:00
Matt-Yorkley
45b5e838b7 Remove simple_form
It looks like we don't use this at all. Discovered during the Spree 2.1 upgrade.
2020-03-17 17:03:48 +01:00
Luis Ramos
da837ff100 Remove rabl dependency 🎉 2020-03-17 15:51:50 +00:00
Luis Ramos
da2598282b Can be object or {}, it's what the injector is doing, not related to rabl any more 2020-03-17 15:51:26 +00:00
Luis Ramos
0308f1465d Remove taxons/search action and respective rabl view
This is dead code
2020-03-17 15:51:26 +00:00
Luis Ramos
a6e4893287 Remove taxons list field from product edit form.
It is not working and it's not used in any other place in the app, there's the product category already (product.primary_taxon_id)
2020-03-17 15:51:25 +00:00
Luis Ramos
eccaaca907 Merge pull request #4930 from luisramos0/3-0-stable-mar6
Merge master into 3-0-stable
2020-03-17 14:49:30 +00:00
Pau Pérez Fabregat
42d5b5d8a3 Merge pull request #4974 from luisramos0/payment_rollback
[Spree 2.1] Bypass broken payment rollback callback
2020-03-17 15:37:28 +01:00
Pau Pérez Fabregat
129de8fd57 Merge pull request #5006 from Matt-Yorkley/loggageddon
Logageddon Hotfix
2020-03-17 14:48:12 +01:00
Matt-Yorkley
e24d858af9 Ensure log level is the default :info for staging and production
The default was being ignored in our new logging configuration, and the actual log output was way too high. This was causing serious disk space issues.
2020-03-17 12:25:25 +01:00
Matt-Yorkley
d2cacf5330 Add comments for unusable log_level setting 2020-03-17 12:22:58 +01:00
Transifex-Openfoodnetwork
af231d2ebe Updating translations for config/locales/fr.yml 2020-03-17 20:32:15 +11:00
Pau Pérez Fabregat
711a3debe7 Merge pull request #4990 from openfoodfoundation/dependabot/bundler/webmock-3.8.3
Bump webmock from 3.8.2 to 3.8.3
2020-03-17 09:59:10 +01:00
Pau Pérez Fabregat
d09b0849e4 Merge pull request #4936 from luisramos0/fix_order_syncer
Fixes spec/services/order_syncer_spec in rails 4
2020-03-17 09:56:17 +01:00
Pau Pérez Fabregat
b2d015416a Merge pull request #4934 from luisramos0/latest_spree_branch
[Spree 2.1] Use latest version of spree which includes PR openfoodfoundation/spree#39
2020-03-17 09:55:49 +01:00
Pau Pérez Fabregat
c639821dc3 Merge pull request #4931 from luisramos0/fix_ent_ser
Fix serializers/api/enterprise_shopfront_serializer_spec in rails 4
2020-03-17 09:53:31 +01:00
Maikel
d9b643d795 Merge pull request #4799 from mkllnk/4771-back-to-shop-button
4771 Back to shop button
2020-03-17 19:51:02 +11:00
Maikel Linke
6b8b3be524 Show "Back To Store" button when no shop has been selected yet 2020-03-17 10:28:03 +11:00
Maikel Linke
1db8283e98 Link "Back To Store" button to products page 2020-03-17 10:28:03 +11:00
Maikel Linke
5fce40ee71 Link "Continue shopping" to products tab 2020-03-17 10:28:03 +11:00
Maikel Linke
c64493ca77 Continue shopping with the products list 2020-03-17 10:28:03 +11:00
Maikel Linke
5b942e6933 Add spec for "continue shopping" from cart
https://github.com/openfoodfoundation/openfoodnetwork/issues/4771
2020-03-17 10:28:03 +11:00
Luis Ramos
26769b4150 Add StripeSCA payment authorize and use it both subs_confirm job as well as on teh checkout stripe redirect 2020-03-16 20:04:59 +00:00
Luis Ramos
84745e4ccb Add stripe payment setup spec and make minor tweaks to the code itself.
Also, add a missing . to card_set? that eanbles it! If the card was
already set, it would anyway set the default card. Now it will use the
defined card if there is one already.
2020-03-16 20:03:12 +00:00
Luis Ramos
aac7a5e559 Adapt PaymentSetup spec to new version and remove some private method testing (payment) as well as some tests testing order.pending_payments logic 2020-03-16 20:03:12 +00:00
Luis Ramos
0a2941ed96 Extract StripePaymentSetup from PaymentSetup 2020-03-16 20:03:12 +00:00
Luis Ramos
ffbb5934d7 Merge pull request #4989 from luisramos0/specs_in_engines
Adapt task that runs engine specs
2020-03-16 19:17:04 +00:00
dependabot-preview[bot]
05ccd1ecbf Bump compass-rails from 3.1.0 to 4.0.0
Bumps [compass-rails](https://github.com/Compass/compass-rails) from 3.1.0 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-preview[bot] <support@dependabot.com>
2020-03-16 18:49:51 +00:00
Luis Ramos
bae9df8214 Merge pull request #4787 from luisramos0/catalog_domain
Add new domain/engine Catalog
2020-03-16 18:47:55 +00:00
Luis Ramos
f8a4f00d52 Fix rubocop issues in subs specs 2020-03-16 17:20:01 +00:00
Luis Ramos
29377bbff9 Move 5 subscriptions services from app/services to the engines/order_management/app/services 2020-03-16 17:20:01 +00:00
Luis Ramos
f68d0c2a0f Remove Subscription from the name of the subscription summarizer and summary because it is already in the namespace 2020-03-16 17:20:01 +00:00
Luis Ramos
3901c49af9 Fix rubocop issues 2020-03-16 17:20:01 +00:00
Luis Ramos
ae0ceb61a1 Move ProxyOrderSyncer to OrderManagement engine 2020-03-16 17:20:01 +00:00
Luis Ramos
fb1c825fbc Move both subscription summarizer and subscription summary to order management engine 2020-03-16 17:20:01 +00:00
Luis Ramos
e36b0249b9 Use nested module names to fix rubocpo issue 2020-03-16 17:20:01 +00:00
Luis Ramos
34fa2d7ad6 Move Subscriptions::PaymentSetup to OrderManagement engine where all subscription code will be at some point in the future 2020-03-16 17:19:04 +00:00
Luis Ramos
3aefea9f04 Prepare SubsConfirmJob to receive a bit more payment logic 2020-03-16 17:19:04 +00:00
Luis Ramos
15231a9128 Make SubsConfirmJob more readable 2020-03-16 17:19:04 +00:00
Luis Ramos
25e3f72934 Fix rubocop issues in subs payment_setup 2020-03-16 17:19:04 +00:00
Luis Ramos
523d819575 Move and rename SubscriptionPaymentUpdater to Subscriptios::PaymentSetup to move to services/subscriptions and call it Setup instead to make explicit this is executed before the payment is processed 2020-03-16 17:16:31 +00:00
Luis Ramos
5da47b3f19 Merge pull request #4757 from luisramos0/stripe_sca_extra
StripeSCA - Handle further SCA auth request when checking out
2020-03-16 16:45:28 +00:00
Luis Ramos
b14e4237cc Make the task that runs engines specs run from the main app, not inside the engine
Right now and for some time the engines are not independent of the main_app. We should aim for that but it will naturally take a while to disentangle the code
2020-03-16 16:20:36 +00:00
Pau Pérez Fabregat
3e7685193f Merge pull request #4996 from luisramos0/fix_build
Fix broken master build
2020-03-16 16:37:09 +01:00
Luis Ramos
8558000c22 Merge pull request #5 from coopdevs/fix-suppliers-report-test-case
Fix suppliers report test case
2020-03-16 13:47:03 +00:00
Pau Perez
6486e5f908 Provide a non-zero amount for ship/pay calculator
This way the adjustment's total_amount is not 0 and thus, not filtered
out but the report service.
2020-03-16 13:56:52 +01:00
Maikel Linke
9244a95472 Direct new enterprise users to their dashboard
People were directed to the home page and had to do several more clicks
to continue with their enterprise setup.
2020-03-16 11:18:32 +11:00
Transifex-Openfoodnetwork
bd237ef257 Updating translations for config/locales/fr_CA.yml 2020-03-15 07:22:12 +11:00
Transifex-Openfoodnetwork
bc06e10146 Updating translations for config/locales/en_CA.yml 2020-03-15 07:21:33 +11:00
Pau Perez
05eadac935 Fix some filtering test cases for fee report
The calculators of the adjustments related to the enterprise fees
created in the test setup have a preferred_amount of 0. So, when
computed, the adjustments' amounts end up being `0 = 0 * 1 line_item`.

Then, the ReportService filters these out in
`#exclude_groups_with_zero_total` from the result set. This is why the
assertions can't find them in `totals`.
2020-03-14 11:19:35 +01:00
Pau Perez
5a83b12c66 Make EnterpriseFee report SQL readable 2020-03-14 11:04:49 +01:00
Pau Perez
71576fd7db Refactor PerItem calculator to ease readability 2020-03-14 11:04:16 +01:00
Luis Ramos
63a1d4145a Adapt order factories to work with enterprise fees summaries report specs 2020-03-13 12:36:01 +00:00
Luis Ramos
1049525e50 Merge pull request #4963 from luisramos0/variants_fix
Fix 2 broken buttons in the product variants list page
2020-03-12 23:48:50 +00:00
Luis Ramos
bd32510837 Merge pull request #4860 from mkllnk/3395-remove-unused-assets
3395 remove unused assets
2020-03-12 22:44:41 +00:00
dependabot-preview[bot]
f0b40eea1e Bump webmock from 3.8.2 to 3.8.3
Bumps [webmock](https://github.com/bblimke/webmock) from 3.8.2 to 3.8.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.8.2...v3.8.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-12 19:20:17 +00:00
Transifex-Openfoodnetwork
ed790ab65d Updating translations for config/locales/en_GB.yml 2020-03-13 05:26:37 +11:00
Matt-Yorkley
1cba129432 Ensure line_item.variant succeeds when variant is soft-deleted 2020-03-12 19:13:15 +01:00
Matt-Yorkley
e24d8d7104 Fix deprecation warning for use of #includes without #references 2020-03-12 19:12:36 +01:00
Matt-Yorkley
40b8eb470c Fix deprecation warning for use of #all 2020-03-12 19:12:06 +01:00
Luis Ramos
f2089af0c4 Merge pull request #4907 from luisramos0/3-0-enterprise_relationship
[Spree 2.1] Uncomment Enterprise#relate_to_owners_enterprises
2020-03-12 17:18:47 +00:00
Luis Ramos
949b6ebad1 Merge pull request #4982 from Matt-Yorkley/3-0-orders-form
[Spree 2.1] Fix order index search form
2020-03-12 16:58:08 +00:00
Luis Ramos
32a4355f09 Merge branch 'master' into 3-0-stable-mar6 2020-03-12 16:54:09 +00:00
Luis Ramos
46e23b28fd Merge pull request #4975 from openfoodfoundation/dependabot/bundler/rspec-rails-3.9.1
Bump rspec-rails from 3.9.0 to 3.9.1
2020-03-12 16:47:14 +00:00
Luis Ramos
bc904a7afa Merge pull request #4976 from openfoodfoundation/dependabot/bundler/rack-mini-profiler-2.0.0
Bump rack-mini-profiler from 1.1.6 to 2.0.0
2020-03-12 16:46:43 +00:00
Luis Ramos
a209b3e860 Merge pull request #4980 from Matt-Yorkley/3-0-destroy-route
[Spree 2.1] Line items destroy route
2020-03-12 16:28:05 +00:00
Matt-Yorkley
9a5452cd52 Delete test in line_items_controller_spec.rb
Rails 4 does not recognise requests to destroy routes without ids as valid routes.

Fixes:

 14) LineItemsController destroying a line item on a completed order without a line item id fails and raises an error
      Failure/Error: delete :destroy

      ActionController::UrlGenerationError:
        No route matches {:action=>"destroy", :controller=>"line_items"}
      # ./spec/controllers/line_items_controller_spec.rb:46:in `block (5 levels) in <top (required)>'
2020-03-12 14:15:00 +01:00
Matt-Yorkley
a207c6c45f Fix cart page update
Fixes:

  2) full-page cart viewing the cart updating quantities with insufficient stock available shows the quantities saved, not those submitted
     Failure/Error: @app.call(env)

     AbstractController::ActionNotFound:
       The action 'update' could not be found for CartController
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
     # ------------------
     # --- Caused by: ---
     # Capybara::ExpectationNotMet:
     #   expected to find text "Insufficient stock available, only 2 remaining" in "Internal Server Error The action 'update' could not be found for CartController WEBrick/1.3.1 (Ruby/2.3.7/2018-03-28) at 127.0.0.1:38614"
     #   ./spec/features/consumer/shopping/cart_spec.rb:182:in `block (5 levels) in <top (required)>'
2020-03-12 13:34:55 +01:00
Pau Perez
8ccc8dfaf6 Update all locales with the latest Transifex translations 2020-03-12 13:33:42 +01:00
Luis Ramos
55b32c828c Merge pull request #4978 from Matt-Yorkley/dev-env-reload
Fix reloading issue in dev environment
2020-03-12 12:22:00 +00:00
Pau Pérez Fabregat
25dfd8ad40 Merge pull request #4939 from openfoodfoundation/transifex
Transifex
2020-03-12 13:19:59 +01:00
Pau Pérez Fabregat
62c35ef6e5 Merge pull request #4953 from luisramos0/sch_fix
Fix problem with misssing params in schedules controller
2020-03-12 12:57:27 +01:00
Pau Pérez Fabregat
f6a1a101a8 Merge pull request #4955 from luisramos0/auth_fix
[Spree 2.1] Fix authentication spec by adapting code to devise 3
2020-03-12 12:51:46 +01:00
Pau Pérez Fabregat
2a5311493f Merge pull request #4969 from luisramos0/oc_apli
Fix spec in rails 4 branch by making code in OrderCycleFormApplicator a bit more resilient
2020-03-12 12:51:23 +01:00
Pau Pérez Fabregat
57ac28cfbd Merge pull request #4970 from openfoodfoundation/dependabot/bundler/ddtrace-0.33.1
Bump ddtrace from 0.33.0 to 0.33.1
2020-03-12 12:50:01 +01:00
Pau Pérez Fabregat
1cba857bdb Merge pull request #4933 from luisramos0/ent_helper
[Spree 2.1] Fix tag rule applicator in enterprises_helper
2020-03-12 12:49:18 +01:00
Pau Pérez Fabregat
568cba9d58 Merge pull request #4941 from luisramos0/devise
[Spree 2.1] Delete unnecessary code related to spree_auth_devise
2020-03-12 12:48:59 +01:00
Pau Pérez Fabregat
4b12d0be46 Merge pull request #4940 from luisramos0/ent_ctrl
[Spree 2.1] Fix issues in EnterprisesController
2020-03-12 12:48:28 +01:00
Pau Pérez Fabregat
de06eed945 Merge pull request #4911 from luisramos0/3-0-manifest
[Spree 2.1] Change Shipment#manifest to include deleted variants (again, this time in rails 4)
2020-03-12 12:47:45 +01:00
Pau Pérez Fabregat
fb02043e6e Merge pull request #4926 from luisramos0/prod_api
Fix products api spec in rails 4
2020-03-12 12:46:45 +01:00
Matt-Yorkley
d62d89aa4f Fix order index search form
Fixes:

  2) spree/admin/orders/index.html.haml print invoices button displays button when invoices are enabled
     Failure/Error: = form_tag nil, {name: "orders_form", "ng-submit" => "fetchResults()"} do

     ActionView::Template::Error:
       No route matches {:action=>"index", :controller=>"spree/admin/orders"}
     # ./app/views/spree/admin/orders/_filters.html.haml:2:in `_a1b716152f19bf3f4772a98e56adf411'
     # ./app/views/spree/admin/orders/index.html.haml:20:in `block in _d04c5552f7a480bf5f02e5fad0c10de6'
     # ./app/views/spree/admin/orders/index.html.haml:19:in `_d04c5552f7a480bf5f02e5fad0c10de6'
     # ./spec/views/spree/admin/orders/index.html.haml_spec.rb:26:in `block (3 levels) in <top (required)>'
     # ./spec/views/spree/admin/orders/index.html.haml_spec.rb:8:in `block (2 levels) in <top (required)>'
     # ------------------
     # --- Caused by: ---
     # ActionController::UrlGenerationError:
     #   No route matches {:action=>"index", :controller=>"spree/admin/orders"}
     #   ./app/views/spree/admin/orders/_filters.html.haml:2:in `_a1b716152f19bf3f4772a98e56adf411'

  3) spree/admin/orders/index.html.haml print invoices button does not display button when invoices are disabled
     Failure/Error: = form_tag nil, {name: "orders_form", "ng-submit" => "fetchResults()"} do

     ActionView::Template::Error:
       No route matches {:action=>"index", :controller=>"spree/admin/orders"}
     # ./app/views/spree/admin/orders/_filters.html.haml:2:in `_a1b716152f19bf3f4772a98e56adf411'
     # ./app/views/spree/admin/orders/index.html.haml:20:in `block in _d04c5552f7a480bf5f02e5fad0c10de6'
     # ./app/views/spree/admin/orders/index.html.haml:19:in `_d04c5552f7a480bf5f02e5fad0c10de6'
     # ./spec/views/spree/admin/orders/index.html.haml_spec.rb:34:in `block (3 levels) in <top (required)>'
     # ./spec/views/spree/admin/orders/index.html.haml_spec.rb:8:in `block (2 levels) in <top (required)>'
     # ------------------
     # --- Caused by: ---
     # ActionController::UrlGenerationError:
     #   No route matches {:action=>"index", :controller=>"spree/admin/orders"}
     #   ./app/views/spree/admin/orders/_filters.html.haml:2:in `_a1b716152f19bf3f4772a98e56adf411'
2020-03-12 12:44:50 +01:00
Transifex-Openfoodnetwork
30d7cc89fa Updating translations for config/locales/pt_BR.yml 2020-03-12 09:25:51 +11:00
Transifex-Openfoodnetwork
d14b5eb46b Updating translations for config/locales/pt_BR.yml 2020-03-12 09:22:44 +11:00
dependabot-preview[bot]
8eb60388fd Bump rack-mini-profiler from 1.1.6 to 2.0.0
Bumps [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler) from 1.1.6 to 2.0.0.
- [Release notes](https://github.com/MiniProfiler/rack-mini-profiler/releases)
- [Changelog](https://github.com/MiniProfiler/rack-mini-profiler/blob/master/CHANGELOG.md)
- [Commits](https://github.com/MiniProfiler/rack-mini-profiler/compare/v1.1.6...v2.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-11 19:19:24 +00:00
dependabot-preview[bot]
633f1bd7cf Bump rspec-rails from 3.9.0 to 3.9.1
Bumps [rspec-rails](https://github.com/rspec/rspec-rails) from 3.9.0 to 3.9.1.
- [Release notes](https://github.com/rspec/rspec-rails/releases)
- [Changelog](https://github.com/rspec/rspec-rails/blob/master/Changelog.md)
- [Commits](https://github.com/rspec/rspec-rails/compare/v3.9.0...v3.9.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-11 19:15:51 +00:00
Luis Ramos
5506cc86d2 Bypass after_rollback callback in payment
This is causing several specs to fail on rollback and, according to some manual testing (and all the auto tests we have), we dont need this fix in OFN
2020-03-11 14:33:54 +00:00
Matt-Yorkley
933b5f1606 Fix reloading issue in dev environment
I constantly get `NameError: uninitialized constant Spree::AuthenticationHelpers` when touching local files and then reloading a page, and have to restart my rails server every time (in development). I read the other day that this is the best way to fix the issue, and it seems to work...
2020-03-11 15:31:25 +01:00
Transifex-Openfoodnetwork
4c7b8209b9 Updating translations for config/locales/nb.yml 2020-03-11 19:49:14 +11:00
Pau Pérez Fabregat
802ac647e3 Merge pull request #4879 from coopdevs/inner-join-visible-orders
Inner join visible orders
2020-03-10 22:54:03 +01:00
dependabot-preview[bot]
c83bded763 Bump ddtrace from 0.33.0 to 0.33.1
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.33.0 to 0.33.1.
- [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.33.0...v0.33.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-10 19:19:31 +00:00
Luis Ramos
03246d425d Make this method handle the case where the variants hash passed is nil
This fixes a spec in the rails 4 branch
2020-03-10 18:41:26 +00:00
Luis Ramos
7585e3d1d6 The variants_to_a method was dead but actually we can use it to make the code simpler 2020-03-10 18:40:46 +00:00
Luis Ramos
bc0a1d9bae Remove one more responder and fix rubocop issues 2020-03-10 15:56:08 +00:00
Luis Ramos
a53dc3a8c1 Remove usage of the responder as this is a json only controller 2020-03-10 14:46:16 +00:00
Luis Ramos
bc1430c984 Make new_variant button work again by making a normal call to the server, isntead of an ajax call that was no longer working 2020-03-10 14:21:26 +00:00
Luis Ramos
676d949972 Make variants collection show deleted again by bypassing the default scope that removed deleted variants 2020-03-10 14:21:20 +00:00
Luis Ramos
de2c6a8717 Revert previous commits and use collection_singular_ids=(ids) setter instead 2020-03-10 11:21:36 +00:00
lin-d-hop
e4bd7c4e30 Revert changes that broke existing usage of this report 2020-03-10 10:59:18 +00:00
Pau Pérez Fabregat
50cdda7c63 Merge pull request #4802 from luisramos0/too_many
Last batch to fix error "subquery with too many columns" in rails 4 branch
2020-03-10 09:20:44 +01:00
Pau Pérez Fabregat
d0af046e59 Merge pull request #4908 from luisramos0/package_spec
Make package spec work in rails 4
2020-03-10 09:17:53 +01:00
Pau Pérez Fabregat
5811f3ead1 Merge pull request #4905 from luisramos0/untouch
Remove some live but elderly debug code
2020-03-10 09:17:13 +01:00
Pau Pérez Fabregat
d7d3c9ea53 Merge pull request #4938 from openfoodfoundation/dependabot/bundler/ddtrace-0.33.0
Bump ddtrace from 0.32.0 to 0.33.0
2020-03-10 08:48:31 +01:00
Pau Pérez Fabregat
a02cc1de34 Merge pull request #4857 from luisramos0/schedules_ctrl
Remove dead spec in SchedulesController
2020-03-10 08:38:46 +01:00
Luis Ramos
014e22a7ad Fix problem with misssing params in schedules controller and adapt its spec 2020-03-09 16:04:59 +00:00
Luis Ramos
5ce4fec68b Add html to show the errors reported by devise 3 about password and password confirmation mismatch on user.errors[:password_confirmation] (instead of user.errors[:password]) 2020-03-09 15:48:45 +00:00
Luis Ramos
94783f44f9 Delete templates that are not used 2020-03-09 15:30:37 +00:00
Luis Ramos
8c367a2ed2 Merge branch 'master' into 3-0-stable-mar6 2020-03-09 13:20:19 +00:00
Luis Ramos
e5f05b4db9 Handle case where no user_ids are sent to the controller. Fixes original spec. 2020-03-07 20:10:32 +00:00
Luis Ramos
7daa68a8bc Adapt consumer/shopping/orders_spec to use an order with a nil user to test a guest checkout, which is what happens in the real checkout 2020-03-07 20:00:40 +00:00
Luis Ramos
56c29ab472 Make EnterprisesController inherit from Api::BaseController to fix authentication and fix problem with saving params[:user_ids] 2020-03-07 18:14:36 +00:00
Luis Ramos
ffe814ce6b Adapt specs to not use anonymous user
Api::BaseController#authenticate is already taking care of the unauthenticated use case when spree_current_user is nil
2020-03-07 18:14:07 +00:00
Luis Ramos
e4d307fe5e Remove dead code related to user management 2020-03-07 18:14:07 +00:00
Luis Ramos
2184c7c06b Merge pull request #4856 from Matt-Yorkley/dead-code
Delete some dead code in Product Import (fixes 1 broken spec)
2020-03-07 15:26:39 +00:00
Transifex-Openfoodnetwork
928bf0d9c7 Updating translations for config/locales/fr.yml 2020-03-08 01:24:08 +11:00
Transifex-Openfoodnetwork
0d02b2afcf Updating translations for config/locales/en_FR.yml 2020-03-08 01:21:12 +11:00
Transifex-Openfoodnetwork
1e76f3f744 Updating translations for config/locales/fr.yml 2020-03-08 01:20:57 +11:00
dependabot-preview[bot]
7c3a0a292f Bump ddtrace from 0.32.0 to 0.33.0
Bumps [ddtrace](https://github.com/DataDog/dd-trace-rb) from 0.32.0 to 0.33.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.32.0...v0.33.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-03-06 19:31:47 +00:00
Luis Ramos
c5ca0976a5 Merge pull request #4873 from jeduardo824/ampersand-not-showing-correctly
fix ampersand problem using ng-bind-html
2020-03-06 17:40:54 +00:00
Pau Pérez Fabregat
be7b3d5a12 Merge pull request #4809 from jeduardo824/redirect-to-shops-when-shop-does-not-exist
redirect to shops list when an enterprise is not found
2020-03-06 18:39:00 +01:00
Luis Ramos
d3f498f5b1 The shipping rates refresh process changed a little in spree 2.1 and the selection is and was random, it picks the first acceptable
In this case we need to specifically select one shipping method so that the test is valid
2020-03-06 16:39:20 +00:00
Luis Ramos
855d08957c Adjust completed_order_with_totals to have a distributor so that logic around refreshing shipping rates doesnt fail badly 2020-03-06 16:01:29 +00:00
Luis Ramos
063f733dda Use latest version of spree which includes PR openfoodfoundation/spree#39 2020-03-06 15:05:29 +00:00
Luis Ramos
4b21aaafc4 Convert ActiveRecord_Associations_CollectionProxy to array so that the modifications the tagRuleApplicator does on it will remain
Reject on ActiveRecord_Associations_CollectionProxy wont work
2020-03-06 13:51:53 +00:00
Luis Ramos
55941a1206 Round time values to make spec green as in rails 4, for unknown reason, the timestamps are differing in some miliseconds 2020-03-06 10:16:58 +00:00
Luis Ramos
0815068050 Merge branch 'master' into 3-0-stable-mar6 2020-03-06 09:20:03 +00:00
Pau Pérez Fabregat
4ea891ee2f Merge pull request #4834 from Matt-Yorkley/3-0-bind-message
[Spree 2.1] PG::ProtocolViolation: ERROR: bind message supplies 0 parameters...
2020-03-05 19:31:06 +01:00
Pau Pérez Fabregat
2a010a3233 Merge pull request #4919 from luisramos0/ship_ctrl
[Spree 2.1] Fix shipments admin/enterprises and api/enterprises controller specs
2020-03-05 19:07:10 +01:00
Pau Perez
0042ab2f28 Rewrite INNER JOIN in ActiveRecord's DSL 2020-03-05 17:45:06 +01:00
Pau Perez
53a63775fe Replace LEFT JOIN with INNER JOIN
I see no reason why a LEFT might be needed and its the root cause of the
awful performance.
2020-03-05 17:45:06 +01:00
Pau Perez
461b1b26f3 Add controller tests to cover totals by supplier 2020-03-05 17:45:06 +01:00
Luis Ramos
f13d7d6845 Fix products api spec in rails 4 2020-03-05 15:20:45 +00:00
Luis Ramos
cfbec2accc Fix controller specs after PR #4675 adapted code to rails 4 finders 2020-03-05 11:55:13 +00:00
Luis Ramos
0f726c207f Fix shipments controller after PR #4675 adapted code to rails 4 finders 2020-03-04 14:47:32 +00:00
Luis Ramos
3b37fa8872 Move variant scoping from alias method into manifest method 2020-03-03 16:40:31 +00:00
Luis Ramos
5688de4936 Make Shipment#manifest work with deleted variants again
This makes the default variant scope in inventory_unit being used which includes deleted variants
2020-03-03 16:38:03 +00:00
Luis Ramos
d8a92eec4b Bring Shipment#manifest from spree as is 2020-03-03 16:37:00 +00:00
Luis Ramos
1382bb3c6b For some reason in rails 4/spree 2.1 setting the line item as adjustable on the adjustment is not enough to populate line_item.adjustments. Here we make this assignment explicit fixing the spec in rails 4 2020-03-03 15:04:51 +00:00
Luis Ramos
7fdaa0f0c7 Make package spec work in rails 4 by persisting the test enterprises so that the copnnection between shipping methods and enterprises works 2020-03-03 14:46:12 +00:00
Luis Ramos
e584233c9e Uncomment code that was commented earlier on in the upgrade, we are now ready to handle this 2020-03-03 14:25:17 +00:00
Luis Ramos
af8369ae1b Remove 5 years old debug code
This reverts ab9bc7b1dc, it can be added if the issue happens again
2020-03-03 10:56:57 +00:00
Luis Ramos
cf777b3fa2 Merge pull request #4882 from Matt-Yorkley/3-0-api-with-nil-id
[Spree 2.1] Fix spec setup in api/orders_controller_spec
2020-03-03 10:00:32 +00:00
Pau Pérez Fabregat
9980723060 Merge pull request #4880 from Matt-Yorkley/3-0-duplicate-validations
[Spree 2.1] Fix duplicate validations in payment methods and shipping methods
2020-03-03 10:44:40 +01:00
Pau Pérez Fabregat
f5ec11047a Merge pull request #4896 from Matt-Yorkley/3-0-cc_type
[Spree 2.1] Add missing :cc_type attribute to default :credit_card factory
2020-03-03 10:43:18 +01:00
Pau Pérez Fabregat
f50593ced8 Merge pull request #4883 from Matt-Yorkley/3-0-helper
[Spree 2.1] Fix expectation in helper spec
2020-03-03 10:42:28 +01:00
Pau Pérez Fabregat
b0962f65da Merge pull request #4872 from Matt-Yorkley/3-0-touch
[Spree 2.1] Touch on new records
2020-03-03 10:39:58 +01:00
Pau Pérez Fabregat
a47745c1cc Merge pull request #4866 from Matt-Yorkley/3-0-ofn-qz
[Spree 2.1] ofn-qz
2020-03-03 10:37:10 +01:00
Pau Pérez Fabregat
a60974c760 Merge pull request #4864 from luisramos0/oc_times
[Spree 2.1] Fix OrderCycle.earliest_closing_times spec
2020-03-03 10:36:35 +01:00
Pau Pérez Fabregat
e733761e8a Merge pull request #4847 from Matt-Yorkley/3-0-enterprise-user
[Spree 2.1] Fix #create_enterprise_user
2020-03-03 10:30:25 +01:00
Pau Pérez Fabregat
390cc61273 Merge pull request #4867 from Matt-Yorkley/3-0-gmappable
[Spree 2.1] acts_as_gmappable
2020-03-03 10:28:12 +01:00
Pau Pérez Fabregat
1e2e50ce54 Merge pull request #4888 from Matt-Yorkley/3-0-shipping-method-id
[Spree 2.1] Remove assignment of invalid attribute in test setup
2020-03-03 10:26:15 +01:00
Pau Pérez Fabregat
c48bd12440 Merge pull request #4843 from Matt-Yorkley/3-0-product-import
[Spree 2.1] Product import specs
2020-03-03 10:21:48 +01:00
Matt-Yorkley
6cb8bb2fc3 Add missing :cc_type attribute to default :credit_card factory
Fixes 5 specs, including:

  11) Spree::CreditCardsController#update when the specified credit card is found and the card is owned by the user when the update completes successfully renders a serialized copy of the updated card
      Failure/Error: object.cc_type.capitalize

      NoMethodError:
        undefined method `capitalize' for nil:NilClass
      # ./app/serializers/api/credit_card_serializer.rb:6:in `brand'
      # (eval):4:in `_fast_attributes'
      # ./app/controllers/spree/credit_cards_controller.rb:26:in `update'
      # ./spec/controllers/spree/credit_cards_controller_spec.rb:100:in `block (7 levels) in <top (required)>'
      # ./spec/controllers/spree/credit_cards_controller_spec.rb:100:in `block (6 levels) in <top (required)>'
      # ------------------
      # --- Caused by: ---
      # NoMethodError:
      #   undefined method `capitalize' for nil:NilClass
      #   ./app/serializers/api/credit_card_serializer.rb:6:in `brand'
2020-03-02 22:07:20 +01:00
Luis Ramos
777754f8a9 Remove dead code that creates products in product_set 2020-03-02 19:41:51 +00:00
Matt-Yorkley
13b8cfcd9c Remove assignment of invalid attribute in test setup
Fixes:

  11) Order Management viewing a completed order when checking out as an anonymous guest allows the user to see the details
      Failure/Error:
        order.update_attributes!(
          bill_address: bill_address,
          ship_address: ship_address,
          shipping_method_id: shipping_method.id
        )

      ActiveRecord::UnknownAttributeError:
        unknown attribute: shipping_method_id
      # ./spec/features/consumer/shopping/orders_spec.rb:30:in `block (3 levels) in <top (required)>'
      # ------------------
      # --- Caused by: ---
      # NoMethodError:
      #   undefined method `shipping_method_id=' for #<Spree::Order:0x00007f5e82a94d80>
      #   ./spec/features/consumer/shopping/orders_spec.rb:30:in `block (3 levels) in <top (required)>'

  12) Order Management viewing a completed order when logged in as the customer allows the user to see order details
      Failure/Error:
        order.update_attributes!(
          bill_address: bill_address,
          ship_address: ship_address,
          shipping_method_id: shipping_method.id
        )

      ActiveRecord::UnknownAttributeError:
        unknown attribute: shipping_method_id
      # ./spec/features/consumer/shopping/orders_spec.rb:30:in `block (3 levels) in <top (required)>'
      # ------------------
      # --- Caused by: ---
      # NoMethodError:
      #   undefined method `shipping_method_id=' for #<Spree::Order:0x00007f5e83382708>
      #   ./spec/features/consumer/shopping/orders_spec.rb:30:in `block (3 levels) in <top (required)>'

  13) Order Management viewing a completed order when not logged in allows the user to see order details after login
      Failure/Error:
        order.update_attributes!(
          bill_address: bill_address,
          ship_address: ship_address,
          shipping_method_id: shipping_method.id
        )

      ActiveRecord::UnknownAttributeError:
        unknown attribute: shipping_method_id
      # ./spec/features/consumer/shopping/orders_spec.rb:30:in `block (3 levels) in <top (required)>'
      # ------------------
      # --- Caused by: ---
      # NoMethodError:
      #   undefined method `shipping_method_id=' for #<Spree::Order:0x00007f5e8bafe6f0>
      #   ./spec/features/consumer/shopping/orders_spec.rb:30:in `block (3 levels) in <top (required)>'
2020-03-02 20:37:58 +01:00
Matt-Yorkley
0d08ad7d2e Fix expectation in helper spec
The output of this link helper has changed slightly. All the attributes are the same as before, but they seem to be in alphabetical order now.

Fixes:

  69) Spree::BaseHelper#link_to_remove_fields returns an `a` tag followed by a hidden `input` tag
      Failure/Error: expect(subject).to eq("<a href=\"#\" class=\"remove_fields  icon_link with-tip icon-trash\" data-action=\"remove\" title=\"Remove\"><span class='text'>Hola</span></a>&lt;input type=&quot;hidden&quot; name=&quot;_method&quot; value=&quot;destroy&quot;&gt;")

        expected: "<a href=\"#\" class=\"remove_fields  icon_link with-tip icon-trash\" data-action=\"remove\" title=\"...</span></a>&lt;input type=&quot;hidden&quot; name=&quot;_method&quot; value=&quot;destroy&quot;&gt;"
             got: "<a class=\"remove_fields  icon_link with-tip icon-trash\" data-action=\"remove\" href=\"#\" title=\"...</span></a>&lt;input type=&quot;hidden&quot; name=&quot;_method&quot; value=&quot;destroy&quot;&gt;"

        (compared using ==)
      # ./spec/helpers/spree/admin/base_helper_spec.rb:12:in `block (3 levels) in <top (required)>'
2020-03-02 19:41:47 +01:00
Matt-Yorkley
0784b8263a Fix spec setup in api/orders_controller_spec
ActionController doesn't accept nil values for :id as a valid route request in Rails 4.

Fixes:

  2) Api::OrdersController#show Resource not found when no order number is given
     Failure/Error: get :show, id: nil

     ActionController::UrlGenerationError:
       No route matches {:action=>"show", :controller=>"api/orders", :id=>nil}
     # ./spec/controllers/api/orders_controller_spec.rb:168:in `block (4 levels) in <module:Api>'
2020-03-02 19:22:43 +01:00
Matt-Yorkley
ed5351d23e Fix duplicate validations in payment methods and shipping methods
Updates the syntax to follow the recommended usage in the code comments of the ActiveModel #validates_with method.

Fixes:

  12) Spree::PaymentMethod raises errors when required fields are missing
      Failure/Error: expect(pm.errors.to_a).to eq(["Name can't be blank", "At least one hub must be selected"])

        expected: ["Name can't be blank", "At least one hub must be selected"]
             got: ["Name can't be blank", "At least one hub must be selected", "At least one hub must be selected"]

        (compared using ==)
      # ./spec/models/spree/payment_method_spec.rb:16:in `block (2 levels) in <module:Spree>'
2020-03-02 19:02:07 +01:00
Luis Ramos
02008769e9 Make spree_payment.cvv_response_message without size limit so that long stripe redirect URLs can be stored there 2020-03-02 17:31:01 +00:00
Luis Ramos
65dd9f51cf Add spec to cover update request where a stripe redirect must happen 2020-03-02 17:30:12 +00:00
Luis Ramos
a224c53200 Add spec to test receiving a redirect from stripe with a valid payment intent id 2020-03-02 17:30:12 +00:00
Luis Ramos
66f07c0d1c Make checkout controller spec test both extracted payment redirects 2020-03-02 17:30:12 +00:00
Luis Ramos
d5287026f8 Add spec for Checkout::PostCheckoutActions 2020-03-02 17:30:12 +00:00
Luis Ramos
6b80eb2c16 Add spec for AuthorizeResponsePatcher 2020-03-02 17:30:12 +00:00
Luis Ramos
b54b981740 Improve readability of PaymentIntentValidator and cover with specs 2020-03-02 17:30:12 +00:00
Luis Ramos
895032fe6a Move stubbed requests to the top as they are the same for every test 2020-03-02 17:30:12 +00:00
Luis Ramos
531c385aae Adapt stripe sca spec to new double step auth+capture payment process 2020-03-02 17:30:12 +00:00
Luis Ramos
d0a3ab68f3 Make processing payments also pending payments 2020-03-02 17:30:12 +00:00
luisramos0
b5038c5745 Adapt subscriptionPaymentUpdater to include pending payments as pending payments! Pending payments of credit cards are payments already authorized, ready to be captured
This is problably what will happen with subscriptions credit cards where payments will be authorized by the customer and the confirmation process on process_payments! will just capture the payment
2020-03-02 17:30:12 +00:00
luisramos0
6877485c90 Extract AuthorizeResponsePatcher from stripeSCA gateway 2020-03-02 17:30:12 +00:00
luisramos0
95c1b7f7a6 Extract PaymentIntentValidator from StripeSCA gateway 2020-03-02 17:30:12 +00:00
luisramos0
3fcf286516 Extract PostCheckoutActions from checkout controller 2020-03-02 17:30:12 +00:00
luisramos0
e2cdb01a28 Improve readability of stripe sca gateway code 2020-03-02 17:30:12 +00:00
luisramos0
08e729673f Move stripe sca gateway error messages to translatable keys 2020-03-02 17:30:12 +00:00
luisramos0
c0bf09131f Make order.pending_payments include payments in pending state so that these payments (pending is the state after authorization for credit cards) are also processed as part of the normal order workflow 2020-03-02 17:30:12 +00:00
luisramos0
19042e0d37 Make checkout controller able to receive a redirect from stripe with a payment_intent as parameter 2020-03-02 17:30:12 +00:00
luisramos0
4b3b4e00ff Add authorize action to the stripe_sca gateway and make it fetch the redirect url if provided
Change the purchase action to only capture the alrteady authorized payment intent
2020-03-02 17:30:12 +00:00
luisramos0
e3ffe8fe6b Add Checkout Stripe redirect logic to get users redirected to stripe authentication pages provided by the stripe API 2020-03-02 17:30:12 +00:00
luisramos0
d91578ab80 Rename checkout payment redirect to checkout paypal redirect 2020-03-02 17:30:12 +00:00
luisramos0
873dcc373f Small refactoring to make next commit easier 2020-03-02 17:30:12 +00:00
luisramos0
1289c3f1a2 Fix rubocop issues in credit_cards_controller 2020-03-02 17:29:30 +00:00
Eduardo
64d83bfc4d fix ampersand problem using ng-bind-html 2020-03-01 17:54:36 -03:00
Matt-Yorkley
a0999f5d58 Check #persisted? before calling #touch
Rails 4 now throws a fatal error if calling #touch on an object that hasn't been saved yet: c63cfc8722/activerecord/lib/active_record/persistence.rb (L957)

Fixes:

  41) Stock::Package#shipping_methods does not return shipping methods not used by the package's order distributor
      Failure/Error: distributors.each(&:touch)

      ActiveRecord::ActiveRecordError:
        can not touch on a new record object
      # ./app/models/spree/shipping_method_decorator.rb:81:in `touch_distributors'
      # ./spec/models/stock/package_spec.rb:39:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:17:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:32:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:7:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:44:in `block (3 levels) in <module:Stock>'

  42) Stock::Package#shipping_categories returns shipping categories that are not shipping categories of the order's products
      Failure/Error: distributors.each(&:touch)

      ActiveRecord::ActiveRecordError:
        can not touch on a new record object
      # ./app/models/spree/shipping_method_decorator.rb:81:in `touch_distributors'
      # ./spec/models/stock/package_spec.rb:39:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:17:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:32:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:7:in `block (2 levels) in <module:Stock>'
      # ./spec/models/stock/package_spec.rb:50:in `block (3 levels) in <module:Stock>'
2020-03-01 18:40:15 +01:00
Matt-Yorkley
847a349a6b Fix geocoding in Rails 4 🎉
Responsibility for geocoding has moved from the `gmaps4rails` gem using `acts_as_taggable`, to the `geocoding` gem using `geocoded_by`. We already use this in the Address model.
2020-02-29 13:08:06 +01:00
Matt-Yorkley
7dbe0bd6b9 Use new branch of ofn-qz gem 2020-02-28 15:27:11 +01:00
Matt-Yorkley
5c526bf5cc Move definitions into constants and use #freeze 2020-02-28 13:08:17 +01:00
Matt-Yorkley
a9e6622639 Update product import #assign_attributes calls
For some reason some of the superfluous attributes being assigned here have started throwing fatal errors in Rails 4 instead of being silently ignored...
2020-02-28 13:08:17 +01:00
Luis Ramos
ddebd47e32 Merge pull request #4862 from Matt-Yorkley/3-0-paypal
[Spree 2.1] Re-introduce Paypal gem
2020-02-28 11:25:16 +00:00
Luis Ramos
56c6ef5e79 Merge pull request #4853 from Matt-Yorkley/3-0-base-controller
[Spree 2.1] Fix headers in api/base_controller spec
2020-02-28 11:21:16 +00:00
Matt-Yorkley
eef1574ebe Call #permit on params object in before_filter 2020-02-28 12:18:53 +01:00
Matt-Yorkley
95996dc11e Un-comment :credit_cards in routes 2020-02-28 12:18:53 +01:00
Matt-Yorkley
78e430613f Fix spree routes helper in payment_redirect.rb 2020-02-28 12:18:53 +01:00
Luis Ramos
4f3247c196 Revert "Temporarily remove broken specs"
This reverts commit c0dc999e0d.
2020-02-28 12:18:53 +01:00
Luis Ramos
427d3b7641 Revert "Comment spree_paypal express in all.js temporarily"
This reverts commit 26ba37b117.
2020-02-28 12:18:53 +01:00
Luis Ramos
61439a3750 Re-add paypal controller code 2020-02-28 12:18:53 +01:00
Matt-Yorkley
1f59bc8bef Use new branch of the paypal gem
This uses the `2-1-0-stable` branch of the paypal gem. It's the 2-1-stable branch plus a couple of old OFN modifications (from 2-0-stable), plus a minor modification to the gemspec to allow it to be used with spree_core `2.1.0`
2020-02-28 12:18:53 +01:00
Matt-Yorkley
cc1ab1bdb9 Fix issue with broken SQL fragments in scopes and nested subqueries
It looks like there are some issues with prepared statements here, where the resulting SQL contains something like: `WHERE "enterprise_roles"."user_id" = $1` in a subquery. The "$1" part is being lost somehow and isn't present if it's used in nested subqueries.

Example fixed spec (there are lots like this one):

  59) Spree::Admin::ReportsController Supplier Bulk Coop where I have granted P-OC to the distributor only shows product line items that I am supplying
      Failure/Error: produced_line_items.select("spree_line_items.id"))

      ActiveRecord::StatementInvalid:
        PG::ProtocolViolation: ERROR:  bind message supplies 0 parameters, but prepared statement "" requires 1
        : SELECT id FROM "spree_line_items"  WHERE "spree_line_items"."order_id" IN (SELECT id FROM "spree_orders"  WHERE (("spree_orders"."distributor_id" IN (SELECT enterprises.id FROM "enterprises" INNER JOIN "enterprise_roles" ON "enterprise_roles"."enterprise_id" = "enterprises"."id" WHERE (enterprise_roles.user_id = 947)) OR "spree_orders"."order_cycle_id" IN (SELECT id FROM "order_cycles"  WHERE "order_cycles"."coordinator_id" IN (SELECT "enterprises"."id" FROM "enterprises" INNER JOIN "enterprise_roles" ON "enterprises"."id" = "enterprise_roles"."enterprise_id" WHERE "enterprise_roles"."user_id" = $1)))))
      # ./app/services/permissions/order.rb:28:in `visible_line_items'
      # ./lib/open_food_network/reports/line_items.rb:16:in `list'
      # ./lib/open_food_network/bulk_coop_report.rb:54:in `table_items'
      # ./app/controllers/spree/admin/reports_controller.rb:264:in `order_grouper_table'
      # ./app/controllers/spree/admin/reports_controller.rb:101:in `bulk_coop'
      # ./spec/controllers/spree/admin/reports_controller_spec.rb:168:in `block (5 levels) in <top (required)>'
      # ------------------
      # --- Caused by: ---
      # PG::ProtocolViolation:
      #   ERROR:  bind message supplies 0 parameters, but prepared statement "" requires 1
      #   ./app/services/permissions/order.rb:28:in `visible_line_items'
2020-02-28 12:16:55 +01:00
Luis Ramos
e5232c6b79 Merge pull request #4863 from Matt-Yorkley/3-0-gemfile-lock-fixed
[Spree 2.1] Fix Gemfile.lock
2020-02-28 11:15:24 +00:00
Luis Ramos
95415cddbd Merge pull request #4858 from Matt-Yorkley/3-0-embedded
[Spree 2.1] Fix embedded response headers
2020-02-28 11:12:16 +00:00
Matt-Yorkley
789ecbb8f2 Fix Gemfile.lock 2020-02-28 12:06:44 +01:00
Luis Ramos
0e607003c1 Fix problem in order cycles spec where miliseconds were not matching 2020-02-28 11:06:16 +00:00
Luis Ramos
1d0392e644 Merge pull request #4848 from Matt-Yorkley/3-0-test-locales
[Spree 2.1] Add 'pt' to list of available locales in test suite
2020-02-28 11:04:23 +00:00
Matt-Yorkley
02d46b7c51 Fix test in order_cycles_spec.rb 2020-02-28 11:51:09 +01:00
Matt-Yorkley
8672124f31 Add 'pt' to list of available locales in test suite
Fixes several errors such as:

104) UserRegistrationsController via ajax sets user.locale from cookie on create
       Failure/Error: I18n.locale = spree_current_user.andand.locale || cookies[:locale] || I18n.default_locale

       I18n::InvalidLocale:
         "pt" is not a valid locale
       # ./app/helpers/i18n_helper.rb:14:in `set_locale'
       # ./spec/controllers/user_registrations_controller_spec.rb:56:in `block (3 levels) in <top (required)>'
2020-02-28 11:44:33 +01:00
Pau Pérez Fabregat
9440363a22 Merge pull request #4821 from luisramos0/3_val_issues
[Spree 2.1] Fix creation of enterprises/users in specs
2020-02-28 11:34:27 +01:00
Pau Pérez Fabregat
19dd5d0af3 Merge pull request #4855 from luisramos0/3-0-ship-method-services
[Spree 2.1] Fix ShippingMethod.services query
2020-02-28 11:31:53 +01:00
Pau Pérez Fabregat
3d453eb5ee Merge pull request #4861 from luisramos0/3-0-merge-master
[Spree 2.1] Merge master into 3-0-stable
2020-02-28 11:28:56 +01:00
Pau Pérez Fabregat
de9f14c305 Merge pull request #4849 from Matt-Yorkley/3-0-private-method
[Spree 2.1] Make private method #total_units public
2020-02-28 11:00:12 +01:00
Pau Pérez Fabregat
455241859e Merge pull request #4850 from Matt-Yorkley/3-0-shipments
[Spree 2.1] Fix expectations in order_shipment_spec
2020-02-28 10:58:58 +01:00
Luis Ramos
bf47d34434 Merge branch 'master' into 3-0-merge-master 2020-02-28 09:52:01 +00:00
Pau Pérez Fabregat
d03d1c0cc2 Merge pull request #4832 from Matt-Yorkley/3-0-more_strong_params
[Spree 2.1] Add strong_params to admin/enterprise_relationships_controller.rb
2020-02-28 10:41:05 +01:00
Pau Pérez Fabregat
6854301025 Merge pull request #4828 from Matt-Yorkley/3-0-strong_params
[Spree 2.1] Strong params
2020-02-28 10:40:52 +01:00
Pau Pérez Fabregat
dc9ebd620a Merge pull request #4833 from Matt-Yorkley/3-0-moar_params
[Spree 2.1] Add strong params to admin/column_preferences_controller.rb
2020-02-28 10:30:54 +01:00
Matt-Yorkley
7124c6bb73 Fix embedded response headers
Rails 4 adds an extra layer of "default" headers that override any that are missing (or deleted). This was breaking embedded shopfront responses.

Fixes:

  74) setting response headers for embedded shopfronts with embedded shopfronts enabled with a valid whitelist allows iframes on certain pages when enabled in configuration
      Failure/Error: expect(response.headers['X-Frame-Options']).to be_nil

        expected: nil
             got: "SAMEORIGIN"
      # ./spec/requests/embedded_shopfronts_headers_spec.rb:54:in `block (4 levels) in <top (required)>'

  75) setting response headers for embedded shopfronts with embedded shopfronts enabled with www prefix matches the URL structure in the header
      Failure/Error: expect(response.headers['X-Frame-Options']).to be_nil

        expected: nil
             got: "SAMEORIGIN"
      # ./spec/requests/embedded_shopfronts_headers_spec.rb:75:in `block (4 levels) in <top (required)>'
2020-02-27 20:53:09 +01:00
Luis Ramos
b528903aa8 Remove spec covering html format in SchedulesController#index, this is not used anywhere 2020-02-27 19:05:36 +00:00
Luis Ramos
bd0245229b Move enterprise logo and promo_image setting in factories to after creation fixes a problem with enterprise_roles in the enterprise validation 2020-02-27 18:32:56 +00:00
Matt-Yorkley
38215c2a88 Delete some dead code
This feature for assigning defaults via the UI was previously removed
2020-02-27 19:28:25 +01:00
Luis Ramos
b1714d73ef Capitalize 'Method' in the flash message to make specs pass 2020-02-27 18:01:24 +00:00
Luis Ramos
ade52dd07d Make ship methods services query work with rails 4, bool_or now results in a boolean and not in t or f as before 2020-02-27 17:40:32 +00:00
Matt-Yorkley
0fa73e3b02 Fix headers in api/base_controller spec
The headers in the request were not being populated correctly in the test, so the #api_key method was not functioning as intended.

Fixes:

  48) Api::BaseController cannot make a request to the API with an invalid API key
      Failure/Error: expect(json_response).to eq( "error" => "Invalid API key (fake_key) specified." )

        expected: {"error"=>"Invalid API key (fake_key) specified."}
             got: {"products"=>[]}

        (compared using ==)

        Diff:
        @@ -1,2 +1,2 @@
        -"error" => "Invalid API key (fake_key) specified.",
        +"products" => [],

      # ./spec/controllers/api/base_controller_spec.rb:40:in `block (3 levels) in <top (required)>'
2020-02-27 11:23:48 +01:00
Eduardo
4c3916a93d redirect to shops list when an enterprise is not found 2020-02-26 19:25:38 -03:00
Matt-Yorkley
c758cb5508 Fix expectations in order_shipment_spec
Some depreacted calls to #find_by_* had previously been updated elsewhere, but the spec was still checking if the object received the #find_by_shipping_method_id message.

Fixes:

  85) OrderShipment#select_shipping_method when order has a shipment when shipping_method_id is not valid for the order returns nil
      Failure/Error: expect(shipment.shipping_rates).to receive(:find_by_shipping_method_id).with(invalid_shipping_method_id) { nil }

        (#<ActiveRecord::Associations::CollectionProxy []>).find_by_shipping_method_id(1312)
            expected: 1 time with arguments: (1312)
            received: 0 times
      # ./spec/models/concerns/order_shipment_spec.rb:53:in `block (5 levels) in <top (required)>'
2020-02-26 11:50:51 +01:00
Matt-Yorkley
82052e459d Make private method #total_units public
This method is being called by another class as if it were public.

Fixes 2 instances of this error:

  90) OpenFoodNetwork::OrdersAndFulfillmentsReport::SupplierTotalsReport generates the report
      Failure/Error: delegate :supplier_name, :product_name, :line_items_name, :total_units, to: :context

      NoMethodError:
        private method `total_units' called for #<OpenFoodNetwork::OrdersAndFulfillmentsReport:0x00007f8db5d67168>
      # ./lib/open_food_network/orders_and_fulfillments_report/supplier_totals_report.rb:8:in `total_units'
      # ./lib/open_food_network/orders_and_fulfillments_report/supplier_totals_report.rb:48:in `block in columns'
      # ./lib/open_food_network/order_grouper.rb:41:in `block in build_table'
      # ./lib/open_food_network/order_grouper.rb:41:in `map'
      # ./lib/open_food_network/order_grouper.rb:41:in `build_table'
      # ./lib/open_food_network/order_grouper.rb:47:in `block in build_table'
      # ./lib/open_food_network/order_grouper.rb:43:in `each'
      # ./lib/open_food_network/order_grouper.rb:43:in `build_table'
      # ./lib/open_food_network/order_grouper.rb:47:in `block in build_table'
      # ./lib/open_food_network/order_grouper.rb:43:in `each'
      # ./lib/open_food_network/order_grouper.rb:43:in `build_table'
      # ./lib/open_food_network/order_grouper.rb:47:in `block in build_table'
      # ./lib/open_food_network/order_grouper.rb:43:in `each'
      # ./lib/open_food_network/order_grouper.rb:43:in `build_table'
      # ./lib/open_food_network/order_grouper.rb:56:in `table'
      # ./spec/lib/open_food_network/orders_and_fulfillments_report/supplier_totals_report_spec.rb:19:in `block (2 levels) in <top (required)>'
      # ./spec/lib/open_food_network/orders_and_fulfillments_report/supplier_totals_report_spec.rb:23:in `block (2 levels) in <top (required)>'
2020-02-26 11:35:00 +01:00
Matt-Yorkley
167c8543aa Fix #create_enterprise_user
User was not being associated to enterprises passed in attributes
2020-02-26 10:46:41 +01:00
Luis Ramos
6b6cdf07fb Remove inactive confirm
The new version of jquery is picking up a confirm in the ship action that was not being triggered in the previous version

The orders_spec was not expecting this confirm to appear so we are removing here to keep the behaviour and the spec green
2020-02-25 11:56:23 +00:00
Maikel Linke
8432dab142 Remove unused Javascript manifest
It reduces compilation from 25s to 24s.
2020-02-25 11:43:53 +11:00
Maikel Linke
0b0263a605 Remove unused stylesheet manifest
Compiling assets with application.css: 40s
Compiling assets without application.css: 25s
2020-02-25 11:43:39 +11:00
dependabot-preview[bot]
51dd55c5b9 [Security] Bump jquery-rails from 3.0.4 to 3.1.5
Bumps [jquery-rails](https://github.com/rails/jquery-rails) from 3.0.4 to 3.1.5. **This update includes a security fix.**
- [Release notes](https://github.com/rails/jquery-rails/releases)
- [Changelog](https://github.com/rails/jquery-rails/blob/v3.1.5/CHANGELOG.md)
- [Commits](https://github.com/rails/jquery-rails/compare/v3.0.4...v3.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-02-24 19:14:38 +00:00
Maikel Linke
17ea2cd510 Clean up JS assets comments 2020-02-24 11:22:47 +11:00
Maikel Linke
325c427219 Remove style from pasted HTML in editor 2020-02-24 11:22:47 +11:00
Maikel Linke
a3e87d893a Remove obsolete angular-sanitize
Our TextAngular module supplies that code.
2020-02-24 11:22:47 +11:00
Maikel Linke
480a629349 Bump textAngular to latest v1.5.16
I'm not sure which version we had previously. This update should come
with lots of minor improvements even though we didn't have anyone
complain.
2020-02-24 11:22:47 +11:00
Luis Ramos
03fac6f285 Avoid subquery with too many columns error by specifying the selected column 2020-02-23 20:05:13 +00:00
Matt-Yorkley
90d1a5e605 Add strong params to admin/column_preferences_controller.rb
Fixes failures such as:

  119) Admin::ColumnPreferencesController bulk_update json where I don't own the preferences submitted prevents me from updating the column preferences
       Failure/Error: raise ActiveModel::ForbiddenAttributesError, params.to_s

       ActiveModel::ForbiddenAttributesError:
         {"action_name"=>"enterprises_index", "column_preferences"=>[{"id"=>1, "user_id"=>2716, "action_name"=>"enterprises_index", "column_name"=>"name", "visible"=>false}, {"id"=>nil, "user_id"=>2716, "action_name"=>"enterprises_index", "column_name"=>"producer", "visible"=>true}, {"id"=>nil, "user_id"=>2716, "action_name"=>"enterprises_index", "column_name"=>"status", "visible"=>true}], "format"=>"json", "controller"=>"admin/column_preferences", "action"=>"bulk_update"}
       # ./app/controllers/application_controller.rb:16:in `print_params'
       # ./spec/controllers/admin/column_preferences_controller_spec.rb:28:in `block (5 levels) in <top (required)>'
       # ------------------
       # --- Caused by: ---
       # ActiveModel::ForbiddenAttributesError:
       #   ActiveModel::ForbiddenAttributesError
       #   ./app/models/model_set.rb:24:in `block in collection_attributes='
2020-02-23 14:52:06 +01:00
Matt-Yorkley
fccc8037f0 Add strong_params to enterprise_relationships_controller.rb
Fixes specs such as:

  31)
  As an Administrator
  I want to manage relationships between enterprises
 as a site administrator creating a relationship
      Failure/Error: raise ActiveModel::ForbiddenAttributesError, params.to_s

      ActiveModel::ForbiddenAttributesError:
        {"enterprise_relationship"=>{"parent_id"=>284, "child_id"=>285, "permissions_list"=>["add_to_order_cycle", "edit_profile", "create_variant_overrides"]}, "action"=>"create", "controller"=>"admin/enterprise_relationships"}
      # ./app/controllers/application_controller.rb:16:in `print_params'
      # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
      # ------------------
      # --- Caused by: ---
      # ActiveModel::ForbiddenAttributesError:
      #   ActiveModel::ForbiddenAttributesError
      #   ./app/controllers/admin/enterprise_relationships_controller.rb:10:in `create'
2020-02-23 14:26:14 +01:00
Matt-Yorkley
f77194875c Add strong parameters to orders_controller.rb 2020-02-22 16:24:30 +01:00
Matt-Yorkley
bd6b409708 Add strong parameters to user_registrations_controller.rb 2020-02-22 16:24:30 +01:00
Matt-Yorkley
eae7dc7f2e Temporarily add extra debugging to help with strong parameters 2020-02-22 16:24:28 +01:00
Matt-Yorkley
f5bc120fb1 Remove without_protection: true argument from #create calls
Needed for using Strong Parameters in Rails 4
2020-02-22 14:35:10 +01:00
Matt-Yorkley
3896644a04 Remove attr_accessible declarations
Needed for using Strong Parameters in Rails 4
2020-02-22 14:03:16 +01:00
Matt-Yorkley
74965eb635 Remove protected_attributes gem
This starts the move towards using Strong Parameters in Rails 4
2020-02-22 13:41:46 +01:00
Luis Ramos
e64d21d81d Move user enterprises definition in tests to after creation fixes a problem with enterprise_roles 2020-02-22 12:06:33 +00:00
Luis Ramos
1dc7b5793c Fix Enterprise validation and factory so that users are added after the validation 2020-02-22 12:06:33 +00:00
Luis Ramos
10c6e5ad9b Rebuild rubocop todo after latest rebase 2020-02-22 11:53:35 +00:00
Luis Ramos
f06a4fb1d0 This configuration is no longer needed as this is the default behaviour in rails 4 2020-02-22 11:53:35 +00:00
Luis Ramos
7640c7b606 Make all timestamps nullable, non-nullable timestamps are not required to maketimestamps work properly 2020-02-22 11:53:35 +00:00
Luis Ramos
26ba37b117 Comment spree_paypal express in all.js temporarily 2020-02-22 11:53:35 +00:00
Matt-Yorkley
8b54281254 Add missing method removed from order model in Spree 2.1
It looks like #price_adjustments was refactored/removed in Spree 2.1, but we still call the method in order_decorator
2020-02-22 11:06:51 +00:00
Matt-Yorkley
e9e4168102 Fix ActiveModel::MissingAttributeError in order_cycle_permissions.rb
Failure/Error: variant_ids_by_supplier_id(permissions.all_incoming_editable_variants.all)

     ActiveModel::MissingAttributeError:
       missing attribute: product_id
     # ./app/serializers/api/admin/order_cycle_serializer.rb:36:in `editable_variants_for_incoming_exchanges'
     # (eval):9:in `_fast_attributes'
     # ./app/controllers/spree/admin/base_controller_decorator.rb:98:in `render_as_json'
     # ./app/controllers/admin/order_cycles_controller.rb:28:in `block (2 levels) in show'
     # ./app/controllers/admin/order_cycles_controller.rb:25:in `show'
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
     # ------------------
     # --- Caused by: ---
     # ActiveModel::MissingAttributeError:
     #   missing attribute: product_id
     #   ./app/serializers/api/admin/order_cycle_serializer.rb:36:in `editable_variants_for_incoming_exchanges'
2020-02-22 11:06:51 +00:00
Matt-Yorkley
b9db6df952 Replace current_spree_user method
This wasn't working before but now seems to be fixed
2020-02-22 11:06:51 +00:00
Matt-Yorkley
b3e7f9a07e Fix deprecated arguments used in #sanitize
Failure/Error: d = sanitize(object.description, tags: "p, b, strong, em, i, a, u", attributes: "href, target")

     ArgumentError:
       You should pass :tags as an Enumerable
     # ./app/serializers/api/product_serializer.rb:26:in `description_html'
     # (eval):10:in `_fast_attributes'
     # ./app/services/products_renderer.rb:24:in `products_json'
     # ./app/controllers/api/order_cycles_controller.rb:14:in `products'
     # ./lib/open_food_network/rack_request_blocker.rb:36:in `call'
2020-02-22 11:06:51 +00:00
Matt-Yorkley
04b760f221 Fix changed order of arguments for TestCase#process
DEPRECATION WARNING: TestCase#process now expects the HTTP method as second argument: process(action, http_method, params, session, flash). (called from api_process at /home/user/Github/openfoodnetwork/spec/support/controller_hacks.rb:22)
2020-02-22 11:06:51 +00:00
Matt-Yorkley
df1299b290 Fix user not yet loaded in prepend_before_filter 2020-02-22 11:06:51 +00:00
Matt-Yorkley
c0ecdb9e3a Fix deprecated #includes in join without reference
DEPRECATION WARNING: It looks like you are eager loading table(s) (one of: variant_overrides, enterprises, enterprise_roles) that are referenced in a string SQL snippet. For example:

    Post.includes(:comments).where("comments.title = 'foo'")

Currently, Active Record recognizes the table in the string, and knows to JOIN the comments table to the query, rather than loading comments in a separate query. However, doing this without writing a full-blown SQL parser is inherently flawed. Since we don't want to write an SQL parser, we are removing this functionality. From now on, you must explicitly tell Active Record when you are referencing a table from a string:

    Post.includes(:comments).where("comments.title = 'foo'").references(:comments)

If you don't rely on implicit join references you can disable the feature entirely by setting `config.active_record.disable_implicit_join_references = true`. (called from collection at /home/user/Github/openfoodnetwork/app/controllers/admin/variant_overrides_controller.rb:77)
2020-02-22 11:06:51 +00:00
Matt-Yorkley
6c22d655c8 Temporarily remove additional email validation on Spree::Order
A new custom email validator class was added to Spree::Order, and currently it fails every time (breaking lots of specs). This ugly hack disables it for now.
2020-02-22 11:06:51 +00:00
Matt-Yorkley
3615dcd355 Fix namespacing in cookies test
NameError: uninitialized constant ActionDispatch::Cookies::SignedCookieJar::MAX_COOKIE_SIZE
     # ./spec/requests/large_request_spec.rb:8
2020-02-22 11:06:51 +00:00
Matt-Yorkley
49bc3308be Fix broken references to url_helpers 2020-02-22 11:06:51 +00:00
Matt-Yorkley
fd11d4fa5b Fix broken html encoding of injected json in admin views 2020-02-22 11:06:51 +00:00
Matt-Yorkley
e3ae65fad5 Update rubocop_todo 2020-02-22 11:06:51 +00:00
Matt-Yorkley
ae11cb9954 Update rubocop_styleguide for Rails 4 2020-02-22 11:06:51 +00:00
Matt-Yorkley
98fdbb8621 Update deprecated #scoped calls
Model#scoped is now deprecated. Model#where(nil) in Rails 4 returns the same result as Model#scoped in Rails 3
2020-02-22 11:06:51 +00:00
Matt-Yorkley
241e9221b4 Replace deprecated :restrict option in address_decorator.rb
DEPRECATION WARNING: The :restrict option is deprecated. Please use :restrict_with_exception instead, which provides the same functionality. (called from block in <top (required)> at /home/user/Github/openfoodnetwork/app/models/spree/address_decorator.rb:4)
2020-02-22 11:06:51 +00:00
Matt-Yorkley
9fd4863a13 Fix missing roles error in spec workflow #create_enterprise_user 2020-02-22 11:06:51 +00:00
Matt-Yorkley
6541b55872 Fix default_association deprecated syntax in OrderCycle and Schedule 2020-02-22 11:06:51 +00:00
Matt-Yorkley
aff8911309 Update database_cleaner to >1.0 to fix transaction issues in test suite 2020-02-22 11:06:51 +00:00
Matt-Yorkley
39459b4a63 Temporarily fix root_path missing error in many controllers 2020-02-22 11:06:51 +00:00
Matt-Yorkley
7aef5af71c Fix report types spec 2020-02-22 11:06:51 +00:00
Matt-Yorkley
0a9d63dd2f Fix deprecated syntax on associations 2020-02-22 11:06:51 +00:00
Matt-Yorkley
5cc223e8f4 Update routes loading for Rails 4 2020-02-22 11:06:51 +00:00
Matt-Yorkley
a12ec8c5d9 Move filter parameters to initializer for Rails 4 2020-02-22 11:06:51 +00:00
Matt-Yorkley
046d8e0b87 Explicitly configure shoulda-matchers in spec_helper
This is apparently needed in Rails 4
2020-02-22 11:06:51 +00:00
Matt-Yorkley
16d56a8cbd Routes using match must specify a request method in Rails 4 2020-02-22 11:06:51 +00:00
Matt-Yorkley
a8b8269a02 Update deprecated #find_or_initialize_by_* methods 2020-02-22 11:06:51 +00:00
Matt-Yorkley
b80929022b Remove unused newrelic_rpm gem 2020-02-22 11:06:51 +00:00
Matt-Yorkley
53645517af Update deprecated #find_by_* methods 2020-02-22 11:06:51 +00:00
Matt-Yorkley
30558485de Update deprecated #find_or_create_by_* methods 2020-02-22 11:06:51 +00:00
Matt-Yorkley
6dd982532c Update deprecated/changed Rubocop rule names 2020-02-22 11:06:51 +00:00
Matt-Yorkley
418e9d23fe Add missing eager_load setting in test.rb 2020-02-22 11:06:51 +00:00
Matt-Yorkley
b8e608abc2 Remove deprecated #whiny_nils 2020-02-22 11:06:51 +00:00
Matt-Yorkley
6eef2555f1 Fix i18n available locales error
For some reason the locales defined in config/environment/test.rb are `en,es`, but in the used application.yml they were `en,es,en-GB`. This seems to trigger errors in the test environment ("en-GB is not a valid locale") if the two lists don't match..?
2020-02-22 11:06:51 +00:00
Matt-Yorkley
5603b70379 Fix html escaping of characters in AMS rendering causing fatal javascript errors 2020-02-22 11:06:51 +00:00
Matt-Yorkley
b03ef140f7 Enable sass 2020-02-22 11:06:51 +00:00
Matt-Yorkley
8ffdd806bf Enable rails-i18n 4.0 2020-02-22 11:06:25 +00:00
Matt-Yorkley
1fa2d05c0c Fix AuthenticationHelper#spree_current_user
`current_spree_user`: method not found...
2020-02-22 11:05:24 +00:00
Matt-Yorkley
5b8552f541 Fix ActiveRecord::Relation issue
Rails 4 now returns an Activerecord::Relation when using `SomeModel.all`. To get all the objects (as in Rails 3) we need to use `SomeModel.all.to_a`. See: https://stackoverflow.com/a/22417170
2020-02-22 11:05:24 +00:00
Matt-Yorkley
6f62c2cf27 Fix SCSS import file error 2020-02-22 11:05:24 +00:00
luisramos0
2f69d2a7e7 Remove devise email validation regexp, it's not needed in this version 2020-02-22 11:05:24 +00:00
luisramos0
2dc78d2f50 Remove spree_auth_devise and upgrade devise to 3.0.1 2020-02-22 11:05:24 +00:00
luisramos0
d1248c76fa Temporarily disable caching classes in test to fix karma rake task
This fixes the error "can't modify immutable index" in lib/tasks/karma.rake:25:in `application_spec_files'
2020-02-22 11:05:24 +00:00
luisramos0
4ca9a19d8a Temporarily remove broken fontawesome and spree_paypal_express assets 2020-02-22 11:05:24 +00:00
luisramos0
1ef9209183 Remove the assets group in the gemfile (removed in rails 4) 2020-02-22 11:05:24 +00:00
luisramos0
9c369caae2 Temporarily comment part of Enterprise.relate_to_owners_enterprises so that most specs pass for now 2020-02-22 11:05:24 +00:00
luisramos0
b23ce20488 Add migration from spree v2.1 2020-02-22 11:05:24 +00:00
luisramos0
18ca9980c9 Temporarily comment Enterprise.ensure_owner_is_manager otherwise all specs erroring out with 'Enterprise roles invalid' 2020-02-22 11:05:24 +00:00
luisramos0
c0dc999e0d Temporarily remove broken specs 2020-02-22 11:05:24 +00:00
luisramos0
8fe3a8aea4 Setting secret key in config/initializers/secret_token.rb 2020-02-22 11:05:24 +00:00
luisramos0
8e747e54a0 Setting eager loading on each env configuration 2020-02-22 11:05:24 +00:00
luisramos0
8dbe4accaf Upgrade to the spree branch 2-1-0-stable and rails 4.0.0 2020-02-22 11:05:24 +00:00
Luis Ramos
1eba17f048 Make select column explicit to avoid too many columns sql error 2020-02-18 18:32:52 +00:00
Luis Ramos
00e57c8a55 Add module definition in the recently moved service and adapt all it's usages to refer to the new namespace 2020-02-13 20:17:09 +00:00
Luis Ramos
2e74e64e22 Move Product Reset Strategy to the catalog domain 2020-02-13 20:17:09 +00:00
Luis Ramos
fc5d623465 Add new domain structure Catalog 2020-02-13 20:17:06 +00:00
1640 changed files with 57280 additions and 26319 deletions

View File

@@ -16,6 +16,10 @@ plugins:
enabled: false
PropertySortOrder:
enabled: false
StringQuotes:
enabled: false
DeclarationOrder:
enabled: false
duplication:
enabled: true
exclude_patterns:

1
.gitignore vendored
View File

@@ -31,6 +31,7 @@ public/system
public/stylesheets
public/images
public/spree
public/assets
config/abr.yml
config/initializers/feature_toggle.rb
NERD_tree*

View File

@@ -21,27 +21,21 @@
Layout/LineLength:
Max: 100
Exclude:
- Gemfile
- 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_groups_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/proxy_orders_controller.rb
- app/controllers/admin/schedules_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/admin/variant_overrides_controller.rb
- app/controllers/api/enterprise_attachment_controller.rb
- app/controllers/api/product_images_controller.rb
- app/controllers/spree/admin/adjustments_controller_decorator.rb
- app/controllers/spree/admin/orders_controller_decorator.rb
- app/controllers/spree/credit_cards_controller.rb
- app/controllers/spree/paypal_controller_decorator.rb
- app/controllers/stripe/callbacks_controller.rb
- app/helpers/angular_form_builder.rb
@@ -51,8 +45,6 @@ Layout/LineLength:
- app/helpers/injection_helper.rb
- app/helpers/markdown_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/shop_helper.rb
- app/helpers/spree/admin/base_helper_decorator.rb
- app/helpers/spree/orders_helper.rb
- app/jobs/subscription_confirm_job.rb
- app/mailers/subscription_mailer.rb
@@ -62,14 +54,10 @@ Layout/LineLength:
- app/models/concerns/variant_stock.rb
- app/models/content_configuration.rb
- app/models/customer.rb
- app/models/enterprise_fee.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/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/product_import/spreadsheet_data.rb
- app/models/product_import/spreadsheet_entry.rb
- app/models/product_import/unit_converter.rb
- app/models/proxy_order.rb
@@ -86,21 +74,23 @@ Layout/LineLength:
- app/models/spree/payment_method_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/shipping_method_decorator.rb
- app/models/spree/tax_rate_decorator.rb
- app/models/spree/taxon_decorator.rb
- app/models/spree/tax_rate_decorator.rb
- app/models/spree/user.rb
- app/models/spree/variant_decorator.rb
- app/models/subscription.rb
- app/models/variant_override.rb
- app/models/variant_override_set.rb
- app/serializers/api/admin/subscription_line_item_serializer.rb
- app/services/cart_service.rb
- app/services/default_stock_location.rb
- app/services/embedded_page_service.rb
- app/services/order_cycle_form.rb
- app/services/order_factory.rb
- app/services/subscriptions_count.rb
- app/services/variants_stock_levels.rb
- engines/order_management/app/services/order_management/subscriptions/validator.rb
- engines/web/app/helpers/web/cookies_policy_helper.rb
- engines/web/config/routes.rb
- 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
@@ -115,12 +105,11 @@ Layout/LineLength:
- lib/open_food_network/payments_report.rb
- lib/open_food_network/reports/bulk_coop_allocation_report.rb
- lib/open_food_network/sales_tax_report.rb
- lib/open_food_network/scope_variants_for_search.rb
- lib/open_food_network/variant_and_line_item_naming.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/core/controller_helpers/respond_with_decorator.rb
- lib/spree/localized_number.rb
- lib/spree/product_filters.rb
- lib/stripe/profile_storer.rb
- lib/tasks/data.rake
- lib/tasks/enterprises.rake
- spec/controllers/admin/bulk_line_items_controller_spec.rb
@@ -145,7 +134,6 @@ Layout/LineLength:
- spec/controllers/api/product_images_controller_spec.rb
- spec/controllers/api/products_controller_spec.rb
- spec/controllers/api/promo_images_controller_spec.rb
- spec/controllers/api/shipments_controller_spec.rb
- spec/controllers/api/variants_controller_spec.rb
- spec/controllers/cart_controller_spec.rb
- spec/controllers/checkout_controller_spec.rb
@@ -155,20 +143,21 @@ Layout/LineLength:
- 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/customer_details_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/payment_methods_controller_spec.rb
- spec/controllers/spree/admin/payments_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/user_sessions_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/order_factory.rb
- spec/factories.rb
- spec/features/admin/adjustments_spec.rb
- spec/features/admin/bulk_order_management_spec.rb
- spec/features/admin/bulk_product_update_spec.rb
@@ -176,14 +165,19 @@ Layout/LineLength:
- spec/features/admin/enterprise_fees_spec.rb
- spec/features/admin/enterprise_relationships_spec.rb
- spec/features/admin/enterprise_roles_spec.rb
- spec/features/admin/enterprise_user_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/image_settings_spec.rb
- spec/features/admin/multilingual_spec.rb
- spec/features/admin/order_cycles_spec.rb
- spec/features/admin/orders_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
- spec/features/admin/order_cycles/list_spec.rb
- spec/features/admin/order_cycles/simple_spec.rb
- spec/features/admin/order_spec.rb
- spec/features/admin/overview_spec.rb
- spec/features/admin/payment_method_spec.rb
- spec/features/admin/product_import_spec.rb
@@ -199,9 +193,11 @@ Layout/LineLength:
- spec/features/consumer/account/settings_spec.rb
- spec/features/consumer/account_spec.rb
- spec/features/consumer/authentication_spec.rb
- spec/features/consumer/cookies_spec.rb
- spec/features/consumer/caching/darkwarm_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
@@ -231,7 +227,6 @@ Layout/LineLength:
- spec/lib/open_food_network/group_buy_report_spec.rb
- spec/lib/open_food_network/lettuce_share_report_spec.rb
- spec/lib/open_food_network/option_value_namer_spec.rb
- spec/lib/open_food_network/order_and_distributor_report_spec.rb
- spec/lib/open_food_network/order_cycle_form_applicator_spec.rb
- spec/lib/open_food_network/order_cycle_permissions_spec.rb
- spec/lib/open_food_network/order_grouper_spec.rb
@@ -239,11 +234,9 @@ Layout/LineLength:
- spec/lib/open_food_network/packing_report_spec.rb
- spec/lib/open_food_network/permissions_spec.rb
- spec/lib/open_food_network/products_and_inventory_report_spec.rb
- spec/lib/open_food_network/proxy_order_syncer_spec.rb
- spec/lib/open_food_network/scope_variant_to_hub_spec.rb
- spec/lib/open_food_network/subscription_payment_updater_spec.rb
- spec/lib/open_food_network/subscription_summarizer_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/stripe/account_connector_spec.rb
@@ -264,8 +257,8 @@ Layout/LineLength:
- spec/models/exchange_spec.rb
- spec/models/model_set_spec.rb
- spec/models/order_cycle_spec.rb
- spec/models/producer_property_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/adjustment_spec.rb
@@ -279,10 +272,9 @@ Layout/LineLength:
- spec/models/spree/payment_spec.rb
- spec/models/spree/product_set_spec.rb
- spec/models/spree/product_spec.rb
- spec/models/spree/property_spec.rb
- spec/models/spree/shipping_method_spec.rb
- spec/models/spree/tax_rate_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
@@ -295,10 +287,10 @@ Layout/LineLength:
- spec/performance/orders_controller_spec.rb
- spec/performance/shop_controller_spec.rb
- spec/requests/checkout/failed_checkout_spec.rb
- spec/requests/checkout/stripe_sca_spec.rb
- spec/requests/embedded_shopfronts_headers_spec.rb
- spec/serializers/api/admin/customer_serializer_spec.rb
- spec/serializers/api/admin/exchange_serializer_spec.rb
- spec/serializers/api/admin/for_order_cycle/enterprise_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
@@ -307,6 +299,7 @@ Layout/LineLength:
- spec/serializers/api/enterprise_shopfront_serializer_spec.rb
- spec/serializers/api/order_serializer_spec.rb
- spec/services/cart_service_spec.rb
- spec/services/checkout/form_data_adapter_spec.rb
- spec/services/embedded_page_service_spec.rb
- spec/services/exchange_products_renderer_spec.rb
- spec/services/order_cycle_distributed_products_spec.rb
@@ -314,20 +307,17 @@ Layout/LineLength:
- spec/services/order_cycle_form_spec.rb
- spec/services/order_factory_spec.rb
- spec/services/order_syncer_spec.rb
- spec/services/order_tax_adjustments_fetcher_spec.rb
- spec/services/permissions/order_spec.rb
- spec/services/product_tag_rules_filterer_spec.rb
- spec/services/permitted_attributes/order_cycle_spec.rb
- spec/services/products_renderer_spec.rb
- spec/services/subscription_estimator_spec.rb
- spec/services/subscription_form_spec.rb
- spec/services/subscription_validator_spec.rb
- spec/services/subscription_variants_service_spec.rb
- spec/services/product_tag_rules_filterer_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/matchers/select2_matchers.rb
- spec/support/matchers/table_matchers.rb
- spec/support/request/authentication_workflow.rb
- spec/support/request/shop_workflow.rb
- spec/support/request/web_helper.rb
- spec/support/seeds.rb
@@ -341,7 +331,6 @@ Metrics/AbcSize:
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/product_import_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
@@ -351,14 +340,12 @@ Metrics/AbcSize:
- app/controllers/api/shipments_controller.rb
- app/controllers/api/taxons_controller.rb
- app/controllers/api/variants_controller.rb
- app/controllers/base_controller.rb
- app/controllers/cart_controller.rb
- app/controllers/discourse_sso_controller.rb
- app/controllers/enterprises_controller.rb
- app/controllers/spree/admin/adjustments_controller_decorator.rb
- app/controllers/spree/admin/image_settings_controller.rb
- app/controllers/spree/admin/orders/customer_details_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
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/payments_controller.rb
@@ -368,13 +355,12 @@ Metrics/AbcSize:
- app/controllers/spree/admin/search_controller.rb
- app/controllers/spree/admin/taxons_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/controllers/spree/admin/variants_controller.rb
- app/controllers/spree/credit_cards_controller.rb
- app/controllers/spree/orders_controller.rb
- app/controllers/spree/user_passwords_controller.rb
- app/controllers/spree/user_registrations_controller.rb
- app/controllers/spree/user_sessions_controller.rb
- app/controllers/spree/users_controller.rb
- app/controllers/spree/user_sessions_controller.rb
- app/controllers/stripe/callbacks_controller.rb
- app/controllers/user_confirmations_controller.rb
- app/controllers/user_passwords_controller.rb
@@ -382,19 +368,19 @@ Metrics/AbcSize:
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/zones_helper.rb
- app/helpers/spree/orders_helper.rb
- app/mailers/producer_mailer.rb
- app/models/calculator/flat_percent_per_item.rb
- app/models/column_preference.rb
- app/models/enterprise.rb
- app/models/enterprise_group.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
- app/models/model_set.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/proxy_order.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/calculator/default_tax_decorator.rb
@@ -403,15 +389,20 @@ Metrics/AbcSize:
- app/models/spree/order_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/shipment.rb
- app/models/spree/taxon_decorator.rb
- app/models/spree/tax_rate_decorator.rb
- app/serializers/api/admin/enterprise_serializer.rb
- app/serializers/api/admin/order_cycle_serializer.rb
- app/serializers/api/product_serializer.rb
- app/serializers/api/variant_serializer.rb
- app/services/cart_service.rb
- app/services/create_order_cycle.rb
- app/services/order_cycle_form.rb
- app/services/order_syncer.rb
- app/services/subscription_validator.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- engines/order_management/app/services/order_management/stock/package.rb
- engines/order_management/app/services/order_management/stock/packer.rb
- 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
@@ -429,26 +420,29 @@ Metrics/AbcSize:
- 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
- lib/open_food_network/variant_and_line_item_naming.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/api/controller_setup.rb
- lib/spree/core/controller_helpers/respond_with_decorator.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/account_connector.rb
- lib/tasks/enterprises.rake
- lib/tasks/sample_data/order_factory.rb
- lib/tasks/sample_data/product_factory.rb
- spec/features/admin/product_import_spec.rb
- spec/features/admin/reports_spec.rb
- spec/features/admin/subscriptions_spec.rb
- spec/features/consumer/shopping/checkout_paypal_spec.rb
- spec/features/consumer/shopping/shopping_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/models/enterprise_spec.rb
- spec/models/product_importer_spec.rb
- spec/services/restart_checkout_spec.rb
- spec/services/order_checkout_restart_spec.rb
- spec/support/performance_helper.rb
Metrics/BlockLength:
@@ -467,17 +461,20 @@ Metrics/BlockLength:
"scenario"
]
Exclude:
- 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.rb
- spec/factories/enterprise_factory.rb
- spec/factories/order_cycle_factory.rb
- spec/factories/order_factory.rb
- spec/factories/product_factory.rb
- spec/factories.rb
- spec/factories/shipping_method_factory.rb
- spec/factories/subscription_factory.rb
- spec/factories/user_factory.rb
- spec/factories/variant_factory.rb
- spec/features/admin/orders_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
@@ -496,23 +493,24 @@ Metrics/CyclomaticComplexity:
- app/helpers/checkout_helper.rb
- app/helpers/i18n_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/models/enterprise.rb
- app/models/enterprise_relationship.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/payment_decorator.rb
- app/models/spree/payment_method_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/variant_override_set.rb
- app/services/cart_service.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/spree/core/controller_helpers/order_decorator.rb
- lib/spree/core/controller_helpers/respond_with_decorator.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
@@ -528,23 +526,24 @@ Metrics/PerceivedComplexity:
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/models/enterprise_relationship.rb
- app/models/product_import/entry_processor.rb
- app/models/product_import/entry_validator.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/order_decorator.rb
- app/models/spree/product_decorator.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
- lib/open_food_network/enterprise_issue_validator.rb
- lib/spree/core/controller_helpers/order_decorator.rb
- lib/spree/core/controller_helpers/respond_with_decorator.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/contents_controller.rb
- app/controllers/admin/customers_controller.rb
- app/controllers/admin/enterprise_fees_controller.rb
- app/controllers/admin/enterprises_controller.rb
@@ -556,12 +555,11 @@ Metrics/MethodLength:
- app/controllers/api/shipments_controller.rb
- app/controllers/api/taxons_controller.rb
- app/controllers/api/variants_controller.rb
- app/controllers/base_controller.rb
- app/controllers/cart_controller.rb
- app/controllers/shop_controller.rb
- app/controllers/spree/admin/image_settings_controller.rb
- app/controllers/spree/admin/orders/customer_details_controller.rb
- app/controllers/spree/admin/orders_controller.rb
- app/controllers/spree/admin/orders/customer_details_controller.rb
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/payments_controller.rb
- app/controllers/spree/admin/products_controller.rb
@@ -580,9 +578,8 @@ Metrics/MethodLength:
- app/controllers/user_registrations_controller.rb
- app/helpers/checkout_helper.rb
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/jobs/subscription_placement_job.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/mailers/producer_mailer.rb
- app/models/column_preference.rb
- app/models/enterprise.rb
@@ -599,10 +596,14 @@ Metrics/MethodLength:
- app/models/spree/payment_decorator.rb
- app/models/spree/payment_method_decorator.rb
- app/models/spree/product_decorator.rb
- app/models/spree/shipment.rb
- app/serializers/api/admin/order_cycle_serializer.rb
- app/serializers/api/cached_enterprise_serializer.rb
- app/services/order_cycle_form.rb
- app/services/permitted_attributes/checkout.rb
- engines/order_management/app/services/order_management/reports/enterprise_fee_summary/scope.rb
- engines/order_management/app/services/order_management/stock/estimator.rb
- engines/order_management/app/services/order_management/stock/package.rb
- lib/active_merchant/billing/gateways/stripe_payment_intents.rb
- lib/discourse/single_sign_on.rb
- lib/open_food_network/bulk_coop_report.rb
@@ -630,30 +631,36 @@ Metrics/MethodLength:
- lib/open_food_network/users_and_enterprises_report.rb
- lib/open_food_network/xero_invoices_report.rb
- lib/spree/api/controller_setup.rb
- lib/spree/core/controller_helpers/respond_with_decorator.rb
- lib/spree/core/controller_helpers/auth.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/profile_storer.rb
- lib/tasks/data/truncate_data.rb
- lib/tasks/sample_data/group_factory.rb
- lib/tasks/sample_data/order_factory.rb
- lib/tasks/sample_data/product_factory.rb
- spec/features/consumer/shopping/checkout_paypal_spec.rb
- spec/features/consumer/shopping/variant_overrides_spec.rb
- spec/models/product_importer_spec.rb
- spec/support/request/authentication_workflow.rb
- spec/support/request/authentication_helper.rb
Metrics/ClassLength:
Max: 100
Exclude:
- app/controllers/admin/enterprises_controller.rb
- app/controllers/admin/order_cycles_controller.rb
- app/controllers/admin/schedules_controller.rb
- app/controllers/admin/subscriptions_controller.rb
- app/controllers/api/products_controller.rb
- app/controllers/application_controller.rb
- app/controllers/checkout_controller.rb
- app/controllers/spree/admin/base_controller.rb
- app/controllers/spree/admin/orders_controller.rb
- app/controllers/spree/admin/payment_methods_controller.rb
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/reports_controller.rb
- app/controllers/spree/admin/resource_controller.rb
- app/controllers/spree/admin/products_controller.rb
- app/controllers/spree/admin/users_controller.rb
- app/controllers/spree/orders_controller.rb
- app/models/enterprise.rb
@@ -662,6 +669,7 @@ Metrics/ClassLength:
- app/models/product_import/entry_validator.rb
- app/models/product_import/product_importer.rb
- app/models/spree/ability_decorator.rb
- app/models/spree/shipment.rb
- app/models/spree/user.rb
- app/serializers/api/cached_enterprise_serializer.rb
- app/serializers/api/enterprise_shopfront_serializer.rb
@@ -684,8 +692,15 @@ Metrics/ModuleLength:
Exclude:
- app/helpers/admin/injection_helper.rb
- app/helpers/injection_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/base_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- engines/order_management/spec/services/order_management/stock/package_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/estimator_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/form_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/proxy_order_syncer_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/summarizer_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/validator_spec.rb
- engines/order_management/spec/services/order_management/subscriptions/variants_list_spec.rb
- lib/open_food_network/column_preference_defaults.rb
- spec/controllers/admin/enterprises_controller_spec.rb
- spec/controllers/admin/order_cycles_controller_spec.rb
@@ -701,10 +716,9 @@ Metrics/ModuleLength:
- spec/lib/open_food_network/order_grouper_spec.rb
- spec/lib/open_food_network/permissions_spec.rb
- spec/lib/open_food_network/products_and_inventory_report_spec.rb
- spec/lib/open_food_network/proxy_order_syncer_spec.rb
- spec/lib/open_food_network/scope_variant_to_hub_spec.rb
- spec/lib/open_food_network/subscription_payment_updater_spec.rb
- spec/lib/open_food_network/tag_rule_applicator_spec.rb
- spec/lib/open_food_network/user_balance_calculator_spec.rb
- spec/lib/open_food_network/users_and_enterprises_report_spec.rb
- spec/models/spree/ability_spec.rb
- spec/models/spree/adjustment_spec.rb

View File

@@ -5,7 +5,7 @@
# rubocop locally, the default configuration file `.rubocop.yml` loads
# our "todo lists" to ignore all current violations.
AllCops:
TargetRailsVersion: 3.2
TargetRailsVersion: 4.0
Exclude:
- 'bin/**/*'
- 'db/**/*'
@@ -20,9 +20,6 @@ AllCops:
#
# Cop settings that have been agreed upon by the OFN community
Rails:
Enabled: true
Style/Documentation:
Enabled: false
@@ -43,6 +40,12 @@ Layout/MultilineMethodCallIndentation:
Layout/LineLength:
Max: 100
Lint/RaiseException:
Enabled: true
Lint/StructNewOverride:
Enabled: true
## TEMPORARY/CONTESTED SETTINGS
#
# These are still to be decided upon, but recommended for inclusion by
@@ -61,24 +64,6 @@ Lint/UselessAssignment:
Exclude:
- spec/**/*
# AFAIK, there is no good alternative to dynamic matchers until we upgrade
# to Rails 4 and can use #find_by. If there is a better approach, let's do it.
Rails/DynamicFindBy:
Enabled: false
# Same as above, #find_by is not available until Rails 4
Rails/FindBy:
Enabled: false
# Same as above, #update! is not available until Rails 4
Rails/ActiveRecordAliases:
Enabled: false
# This should be the programmer's discretion, perhaps we should review all of
# the uses of it an make specific exceptions though.
Rails/SkipsModelValidations:
Enabled: false
## Relaxed.Ruby.Style SETTINGS
#
# These styles are a starting point for the conversation around conventions

View File

@@ -1,79 +1,24 @@
# This configuration was generated by
# `rubocop --auto-gen-config --exclude-limit 1400`
# on 2020-01-09 11:26:09 +1100 using RuboCop version 0.79.0.
# on 2020-06-22 13:28:10 +0100 using RuboCop version 0.81.0.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of RuboCop, may require this file to be generated again.
# Offense count: 6
# Cop supports --auto-correct.
Layout/EmptyLineAfterGuardClause:
Exclude:
- 'lib/open_food_network/bulk_coop_report.rb'
- 'lib/open_food_network/orders_and_fulfillments_report.rb'
- 'lib/open_food_network/packing_report.rb'
# Offense count: 1
# Cop supports --auto-correct.
Layout/EmptyLines:
Exclude:
- 'spec/features/admin/order_cycles_spec.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: empty_lines, no_empty_lines
Layout/EmptyLinesAroundBlockBody:
Exclude:
- 'spec/controllers/api/orders_controller_spec.rb'
# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
# SupportedHashRocketStyles: key, separator, table
# SupportedColonStyles: key, separator, table
# SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
Layout/HashAlignment:
Exclude:
- 'spec/lib/open_food_network/orders_and_fulfillments_report/customer_totals_report_spec.rb'
# Offense count: 27
# Offense count: 139
# Cop supports --auto-correct.
# Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
# URISchemes: http, https
Layout/LineLength:
Max: 129
Max: 268
# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
# SupportedStylesForExponentOperator: space, no_space
Layout/SpaceAroundOperators:
Exclude:
- 'app/services/cart_service.rb'
- 'spec/support/cancan_helper.rb'
# Offense count: 4
Lint/AmbiguousOperator:
Exclude:
- 'app/controllers/spree/admin/orders/customer_details_controller_decorator.rb'
- 'app/controllers/spree/admin/orders_controller_decorator.rb'
- 'spec/controllers/api/enterprise_fees_controller_spec.rb'
- 'spec/controllers/spree/admin/payments_controller_spec.rb'
# Offense count: 1
Lint/DuplicateHashKey:
Exclude:
- 'spec/models/calculator/weight_spec.rb'
# Offense count: 4
Lint/DuplicateMethods:
Exclude:
- 'lib/discourse/single_sign_on.rb'
- 'lib/open_food_network/subscription_summary.rb'
# Offense count: 10
# Offense count: 9
Lint/IneffectiveAccessModifier:
Exclude:
- 'app/models/column_preference.rb'
@@ -82,31 +27,6 @@ Lint/IneffectiveAccessModifier:
- 'lib/open_food_network/feature_toggle.rb'
- 'spec/lib/open_food_network/reports/report_spec.rb'
# Offense count: 1
Lint/InterpolationCheck:
Exclude:
- 'spec/features/consumer/shopping/embedded_groups_spec.rb'
# Offense count: 3
# Cop supports --auto-correct.
Lint/NonDeterministicRequireOrder:
Exclude:
- 'engines/order_management/spec/spec_helper.rb'
- 'engines/web/spec/spec_helper.rb'
- 'spec/spec_helper.rb'
# Offense count: 3
Lint/ShadowingOuterLocalVariable:
Exclude:
- 'app/models/model_set.rb'
- 'spec/models/model_set_spec.rb'
# Offense count: 2
# Configuration parameters: AllowKeywordBlockArguments.
Lint/UnderscorePrefixedVariableName:
Exclude:
- 'spec/support/cancan_helper.rb'
# Offense count: 5
# Configuration parameters: ContextCreatingMethods, MethodCreatingMethods.
Lint/UselessAccessModifier:
@@ -117,16 +37,36 @@ Lint/UselessAccessModifier:
- 'lib/open_food_network/reports/bulk_coop_report.rb'
- 'spec/lib/open_food_network/reports/report_spec.rb'
# Offense count: 6
# Configuration parameters: IgnoredMethods.
Metrics/AbcSize:
Max: 37
# Offense count: 1
# Configuration parameters: CheckForMethodsWithNoSideEffects.
Lint/Void:
Exclude:
- 'app/serializers/api/enterprise_serializer.rb'
# Configuration parameters: CountComments, ExcludedMethods.
# ExcludedMethods: refine
Metrics/BlockLength:
Max: 27
# Offense count: 1
# Configuration parameters: CountComments.
Metrics/ClassLength:
Max: 101
# Offense count: 1
# Configuration parameters: IgnoredMethods.
Metrics/CyclomaticComplexity:
Max: 7
# Offense count: 6
# Configuration parameters: CountComments, ExcludedMethods.
Metrics/MethodLength:
Max: 20
# Offense count: 1
# Configuration parameters: CountComments.
Metrics/ModuleLength:
Max: 114
Max: 121
# Offense count: 8
Naming/AccessorMethodName:
@@ -149,23 +89,10 @@ Naming/HeredocDelimiterNaming:
# SupportedStylesForLeadingUnderscores: disallowed, required, optional
Naming/MemoizedInstanceVariableName:
Exclude:
- 'app/controllers/spree/admin/payments_controller_decorator.rb'
- 'app/mailers/producer_mailer.rb'
- 'lib/open_food_network/address_finder.rb'
# Offense count: 8
# Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
# AllowedNames: io, id, to, by, on, in, at, ip, db, os
Naming/MethodParameterName:
Exclude:
- 'app/helpers/spree/admin/base_helper_decorator.rb'
- 'app/helpers/spree/base_helper_decorator.rb'
- 'app/services/subscription_validator.rb'
- 'lib/open_food_network/reports/bulk_coop_report.rb'
- 'lib/open_food_network/xero_invoices_report.rb'
- 'spec/lib/open_food_network/reports/report_spec.rb'
- 'spec/mailers/producer_mailer_spec.rb'
# Offense count: 22
# Offense count: 19
# Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros.
# NamePrefix: is_, has_, have_
# ForbiddenPrefixes: is_, has_, have_
@@ -174,7 +101,6 @@ Naming/MethodParameterName:
Naming/PredicateName:
Exclude:
- 'spec/**/*'
- 'app/mailers/producer_mailer.rb'
- 'app/models/enterprise.rb'
- 'app/models/enterprise_relationship.rb'
- 'app/models/order_cycle.rb'
@@ -184,7 +110,6 @@ Naming/PredicateName:
- 'app/models/spree/order_decorator.rb'
- 'app/models/spree/payment_method_decorator.rb'
- 'app/models/spree/preferences/file_configuration.rb'
- 'app/models/spree/product_decorator.rb'
- 'app/models/spree/shipping_method_decorator.rb'
- 'lib/open_food_network/customers_report.rb'
- 'lib/open_food_network/order_cycle_management_report.rb'
@@ -192,71 +117,6 @@ Naming/PredicateName:
- 'lib/open_food_network/packing_report.rb'
- 'lib/tasks/data.rake'
# Offense count: 152
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, Include.
# SupportedStyles: action, filter
# Include: app/controllers/**/*.rb
Rails/ActionFilter:
Exclude:
- 'app/controllers/admin/column_preferences_controller.rb'
- 'app/controllers/admin/customers_controller.rb'
- 'app/controllers/admin/enterprise_fees_controller.rb'
- 'app/controllers/admin/enterprise_groups_controller.rb'
- 'app/controllers/admin/enterprises_controller.rb'
- 'app/controllers/admin/order_cycles_controller.rb'
- 'app/controllers/admin/producer_properties_controller.rb'
- 'app/controllers/admin/product_import_controller.rb'
- 'app/controllers/admin/schedules_controller.rb'
- 'app/controllers/admin/stripe_connect_settings_controller.rb'
- 'app/controllers/admin/subscription_line_items_controller.rb'
- 'app/controllers/admin/subscriptions_controller.rb'
- 'app/controllers/admin/variant_overrides_controller.rb'
- 'app/controllers/api/base_controller.rb'
- 'app/controllers/api/enterprise_attachment_controller.rb'
- 'app/controllers/api/enterprises_controller.rb'
- 'app/controllers/api/shipments_controller.rb'
- 'app/controllers/api/variants_controller.rb'
- 'app/controllers/application_controller.rb'
- 'app/controllers/base_controller.rb'
- 'app/controllers/cart_controller.rb'
- 'app/controllers/checkout_controller.rb'
- 'app/controllers/discourse_sso_controller.rb'
- 'app/controllers/enterprises_controller.rb'
- 'app/controllers/home_controller.rb'
- 'app/controllers/line_items_controller.rb'
- 'app/controllers/producers_controller.rb'
- 'app/controllers/registration_controller.rb'
- 'app/controllers/shop_controller.rb'
- 'app/controllers/shops_controller.rb'
- 'app/controllers/spree/admin/adjustments_controller.rb'
- 'app/controllers/spree/admin/base_controller.rb'
- 'app/controllers/spree/admin/images_controller.rb'
- 'app/controllers/spree/admin/mail_methods_controller.rb'
- 'app/controllers/spree/admin/orders/customer_details_controller_decorator.rb'
- 'app/controllers/spree/admin/orders_controller_decorator.rb'
- 'app/controllers/spree/admin/payment_methods_controller.rb'
- 'app/controllers/spree/admin/payments_controller_decorator.rb'
- 'app/controllers/spree/admin/product_properties_controller.rb'
- 'app/controllers/spree/admin/products_controller_decorator.rb'
- 'app/controllers/spree/admin/reports/enterprise_fee_summaries_controller.rb'
- 'app/controllers/spree/admin/reports_controller.rb'
- 'app/controllers/spree/admin/shipping_methods_controller.rb'
- 'app/controllers/spree/admin/states_controller.rb'
- 'app/controllers/spree/admin/tax_rates_controller.rb'
- 'app/controllers/spree/admin/users_controller.rb'
- 'app/controllers/spree/admin/zones_controller.rb'
- 'app/controllers/spree/checkout_controller.rb'
- 'app/controllers/spree/orders_controller.rb'
- 'app/controllers/spree/paypal_controller_decorator.rb'
- 'app/controllers/spree/store_controller.rb'
- 'app/controllers/spree/user_registrations_controller.rb'
- 'app/controllers/spree/user_sessions_controller.rb'
- 'app/controllers/spree/users_controller.rb'
- 'app/controllers/stripe/webhooks_controller.rb'
- 'app/controllers/user_passwords_controller.rb'
- 'app/controllers/user_registrations_controller.rb'
# Offense count: 1
# Configuration parameters: EnforcedStyle.
# SupportedStyles: strict, flexible
@@ -264,6 +124,14 @@ Rails/Date:
Exclude:
- 'app/models/order_cycle.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: Whitelist.
# Whitelist: find_by_sql
Rails/DynamicFindBy:
Exclude:
- 'app/controllers/spree/admin/orders/customer_details_controller.rb'
# Offense count: 16
# Configuration parameters: EnforcedStyle.
# SupportedStyles: slashes, arguments
@@ -283,18 +151,36 @@ Rails/FilePath:
- 'spec/support/downloads_helper.rb'
# Offense count: 7
# Cop supports --auto-correct.
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/FindBy:
Exclude:
- 'app/models/enterprise.rb'
- 'app/models/product_import/entry_processor.rb'
- 'app/models/product_import/entry_validator.rb'
- 'app/models/product_import/spreadsheet_data.rb'
- 'app/models/spree/user.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/FindEach:
Exclude:
- 'app/models/spree/order_decorator.rb'
# Offense count: 5
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/HasAndBelongsToMany:
Exclude:
- 'app/models/enterprise.rb'
- 'app/models/enterprise_group.rb'
- 'app/models/order_cycle.rb'
- 'app/models/schedule.rb'
- 'app/models/spree/concerns/payment_method_distributors.rb'
- 'app/models/spree/line_item_decorator.rb'
# Offense count: 26
# Offense count: 25
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/HasManyOrHasOneDependent:
@@ -305,13 +191,13 @@ Rails/HasManyOrHasOneDependent:
- 'app/models/spree/adjustment_decorator.rb'
- 'app/models/spree/order_decorator.rb'
- 'app/models/spree/payment_method_decorator.rb'
- 'app/models/spree/property_decorator.rb'
- 'app/models/spree/property.rb'
- 'app/models/spree/shipping_method_decorator.rb'
- 'app/models/spree/user.rb'
- 'app/models/spree/variant_decorator.rb'
- 'app/models/subscription.rb'
# Offense count: 78
# Offense count: 84
# Configuration parameters: Include.
# Include: app/helpers/**/*.rb
Rails/HelperInstanceVariable:
@@ -323,28 +209,55 @@ Rails/HelperInstanceVariable:
- 'app/helpers/injection_helper.rb'
- 'app/helpers/order_cycles_helper.rb'
- 'app/helpers/shared_helper.rb'
- 'app/helpers/spree/admin/orders_helper_decorator.rb'
- 'app/helpers/shop_helper.rb'
- 'app/helpers/spree/admin/orders_helper.rb'
- 'app/helpers/spree/orders_helper.rb'
# Offense count: 6
# Offense count: 35
# Configuration parameters: Include.
# Include: app/controllers/**/*.rb
Rails/LexicallyScopedActionFilter:
Exclude:
- 'app/controllers/admin/enterprise_groups_controller.rb'
- 'app/controllers/admin/enterprises_controller.rb'
- 'app/controllers/admin/order_cycles_controller.rb'
- 'app/controllers/admin/producer_properties_controller.rb'
- 'app/controllers/admin/product_import_controller.rb'
- 'app/controllers/admin/schedules_controller.rb'
- 'app/controllers/admin/subscriptions_controller.rb'
- 'app/controllers/registration_controller.rb'
- 'app/controllers/spree/admin/adjustments_controller.rb'
- 'app/controllers/spree/admin/payment_methods_controller.rb'
- 'app/controllers/spree/admin/payments_controller.rb'
- 'app/controllers/spree/admin/product_properties_controller.rb'
- 'app/controllers/spree/admin/products_controller.rb'
- 'app/controllers/spree/admin/search_controller.rb'
- 'app/controllers/spree/admin/shipping_methods_controller.rb'
- 'app/controllers/spree/admin/users_controller.rb'
- 'app/controllers/spree/admin/zones_controller.rb'
- 'app/controllers/spree/users_controller.rb'
- 'app/controllers/user_passwords_controller.rb'
# Offense count: 12
Rails/OutputSafety:
Exclude:
- 'app/controllers/spree/admin/reports_controller.rb'
- 'app/helpers/angular_form_helper.rb'
- 'app/helpers/spree/admin/base_helper.rb'
- 'app/helpers/spree/admin/zones_helper.rb'
- 'app/helpers/spree/reports_helper.rb'
- 'app/helpers/spree/admin/navigation_helper.rb'
- 'app/helpers/spree/admin/orders_helper.rb'
- 'app/helpers/spree/admin/zones_helper.rb'
- 'app/helpers/spree/reports_helper.rb'
- 'app/serializers/api/product_serializer.rb'
- 'lib/spree/money_decorator.rb'
- 'spec/features/admin/orders_spec.rb'
- 'spec/features/admin/order_print_ticket_spec.rb'
# Offense count: 2
# Configuration parameters: Include.
# Include: **/Rakefile, **/*.rake
Rails/RakeEnvironment:
Exclude:
- 'lib/capistrano/tasks/**/*.rake'
- 'lib/tasks/specs.rake'
# Offense count: 9
@@ -355,6 +268,108 @@ Rails/ReflectionClassName:
- 'app/models/enterprise_role.rb'
- 'app/models/subscription.rb'
# Offense count: 227
# Configuration parameters: Blacklist, Whitelist.
# Blacklist: decrement!, decrement_counter, increment!, increment_counter, toggle!, touch, update_all, update_attribute, update_column, update_columns, update_counters
Rails/SkipsModelValidations:
Exclude:
- 'app/controllers/spree/admin/payment_methods_controller.rb'
- 'app/controllers/spree/admin/resource_controller.rb'
- 'app/controllers/spree/admin/shipping_methods_controller.rb'
- 'app/controllers/spree/admin/taxons_controller.rb'
- 'app/controllers/spree/orders_controller.rb'
- 'app/jobs/subscription_confirm_job.rb'
- 'app/jobs/subscription_placement_job.rb'
- 'app/models/enterprise.rb'
- 'app/models/enterprise_relationship.rb'
- 'app/models/product_import/inventory_reset_strategy.rb'
- 'app/models/proxy_order.rb'
- 'app/models/spree/address_decorator.rb'
- 'app/models/spree/credit_card_decorator.rb'
- 'app/models/spree/order_decorator.rb'
- 'app/models/spree/payment_decorator.rb'
- 'app/models/spree/shipping_method_decorator.rb'
- 'app/models/subscription.rb'
- 'app/models/variant_override.rb'
- 'app/services/order_factory.rb'
- 'engines/order_management/spec/performance/order_management/subscriptions/proxy_order_syncer_spec.rb'
- 'engines/order_management/spec/services/order_management/reports/enterprise_fee_summary/report_service_spec.rb'
- 'engines/order_management/spec/services/order_management/subscriptions/stripe_payment_setup_spec.rb'
- 'lib/tasks/data/anonymize_data.rake'
- 'lib/tasks/sample_data/product_factory.rb'
- 'lib/tasks/users.rake'
- 'spec/controllers/admin/subscription_line_items_controller_spec.rb'
- 'spec/controllers/admin/variant_overrides_controller_spec.rb'
- 'spec/controllers/api/order_cycles_controller_spec.rb'
- 'spec/controllers/api/orders_controller_spec.rb'
- 'spec/controllers/api/products_controller_spec.rb'
- 'spec/controllers/api/shipments_controller_spec.rb'
- 'spec/controllers/api/variants_controller_spec.rb'
- 'spec/controllers/checkout_controller_spec.rb'
- 'spec/controllers/enterprises_controller_spec.rb'
- 'spec/controllers/spree/admin/orders_controller_spec.rb'
- 'spec/controllers/spree/admin/overview_controller_spec.rb'
- 'spec/controllers/spree/admin/payment_methods_controller_spec.rb'
- 'spec/controllers/spree/credit_cards_controller_spec.rb'
- 'spec/factories.rb'
- 'spec/factories/order_factory.rb'
- 'spec/features/admin/bulk_order_management_spec.rb'
- 'spec/features/admin/bulk_product_update_spec.rb'
- 'spec/features/admin/configuration/tax_rates_spec.rb'
- 'spec/features/admin/order_cycles/complex_editing_spec.rb'
- 'spec/features/admin/order_cycles/simple_spec.rb'
- 'spec/features/admin/order_spec.rb'
- 'spec/features/admin/payments_spec.rb'
- 'spec/features/admin/reports_spec.rb'
- 'spec/features/consumer/caching/shops_caching_spec.rb'
- 'spec/features/consumer/shopping/checkout_spec.rb'
- 'spec/features/consumer/shopping/products_spec.rb'
- 'spec/features/consumer/shopping/shopping_spec.rb'
- 'spec/helpers/enterprises_helper_spec.rb'
- 'spec/helpers/order_cycles_helper_spec.rb'
- 'spec/jobs/subscription_placement_job_spec.rb'
- 'spec/lib/open_food_network/address_finder_spec.rb'
- 'spec/lib/open_food_network/enterprise_fee_calculator_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/stripe/credit_card_cloner_spec.rb'
- 'spec/models/calculator/weight_spec.rb'
- 'spec/models/concerns/variant_stock_spec.rb'
- 'spec/models/enterprise_relationship_spec.rb'
- 'spec/models/exchange_spec.rb'
- 'spec/models/spree/adjustment_spec.rb'
- 'spec/models/spree/line_item_spec.rb'
- 'spec/models/spree/order_spec.rb'
- 'spec/models/spree/variant_spec.rb'
- 'spec/models/tag_rule/discount_order_spec.rb'
- 'spec/serializers/api/admin/subscription_line_item_serializer_spec.rb'
- 'spec/services/cache_service_spec.rb'
- 'spec/services/order_cart_reset_spec.rb'
- 'spec/services/order_checkout_restart_spec.rb'
- 'spec/services/order_cycle_distributed_products_spec.rb'
- 'spec/services/order_factory_spec.rb'
- 'spec/services/order_syncer_spec.rb'
- 'spec/services/product_tag_rules_filterer_spec.rb'
- 'spec/services/products_renderer_spec.rb'
- 'spec/support/request/shop_workflow.rb'
- 'spec/views/spree/shared/_order_details.html.haml_spec.rb'
# Offense count: 2
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/UniqueValidationWithoutIndex:
Exclude:
- 'app/models/customer.rb'
- 'app/models/exchange.rb'
# Offense count: 2
# Configuration parameters: Include.
# Include: app/models/**/*.rb
Rails/UniqueValidationWithoutIndex:
Exclude:
- 'app/models/spree/stock_item.rb'
# Offense count: 1
# Configuration parameters: Environments.
# Environments: development, test, production
@@ -368,13 +383,12 @@ Style/CaseEquality:
- 'app/helpers/angular_form_helper.rb'
- 'spec/models/spree/payment_spec.rb'
# Offense count: 76
# Offense count: 75
# Cop supports --auto-correct.
# Configuration parameters: AutoCorrect, EnforcedStyle.
# SupportedStyles: nested, compact
Style/ClassAndModuleChildren:
Exclude:
- 'app/helpers/angular_form_helper.rb'
- 'app/models/calculator/flat_percent_per_item.rb'
- 'app/models/spree/concerns/payment_method_distributors.rb'
- 'app/models/spree/gateway/migs.rb'
@@ -453,32 +467,18 @@ Style/ClassVars:
Exclude:
- 'lib/open_food_network/rack_request_blocker.rb'
# Offense count: 1
Style/CommentedKeyword:
Exclude:
- 'app/controllers/application_controller.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
# SupportedStyles: assign_to_condition, assign_inside_condition
Style/ConditionalAssignment:
Exclude:
- 'app/controllers/api/taxons_controller.rb'
# Offense count: 6
# Offense count: 4
# Configuration parameters: EnforcedStyle.
# SupportedStyles: annotated, template, unannotated
Style/FormatStringToken:
Exclude:
- 'app/helpers/order_cycles_helper.rb'
- 'lib/open_food_network/sales_tax_report.rb'
- 'spec/features/admin/bulk_order_management_spec.rb'
# Offense count: 928
# Offense count: 874
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: always, never
# SupportedStyles: always, always_true, never
Style/FrozenStringLiteralComment:
Exclude:
- 'Gemfile'
@@ -510,10 +510,8 @@ Style/FrozenStringLiteralComment:
- 'app/controllers/admin/variant_overrides_controller.rb'
- 'app/controllers/api/base_controller.rb'
- 'app/controllers/api/customers_controller.rb'
- 'app/controllers/api/enterprise_attachment_controller.rb'
- 'app/controllers/api/enterprise_fees_controller.rb'
- 'app/controllers/api/enterprises_controller.rb'
- 'app/controllers/api/exchange_products_controller.rb'
- 'app/controllers/api/logos_controller.rb'
- 'app/controllers/api/order_cycles_controller.rb'
- 'app/controllers/api/orders_controller.rb'
@@ -528,7 +526,6 @@ Style/FrozenStringLiteralComment:
- 'app/controllers/application_controller.rb'
- 'app/controllers/base_controller.rb'
- 'app/controllers/cart_controller.rb'
- 'app/controllers/checkout_controller.rb'
- 'app/controllers/discourse_sso_controller.rb'
- 'app/controllers/enterprises_controller.rb'
- 'app/controllers/groups_controller.rb'
@@ -549,19 +546,17 @@ Style/FrozenStringLiteralComment:
- 'app/controllers/spree/admin/images_controller.rb'
- 'app/controllers/spree/admin/invoices_controller.rb'
- 'app/controllers/spree/admin/mail_methods_controller.rb'
- 'app/controllers/spree/admin/orders/customer_details_controller_decorator.rb'
- 'app/controllers/spree/admin/orders_controller_decorator.rb'
- 'app/controllers/spree/admin/orders/customer_details_controller.rb'
- 'app/controllers/spree/admin/orders_controller.rb'
- 'app/controllers/spree/admin/overview_controller.rb'
- 'app/controllers/spree/admin/payment_methods_controller.rb'
- 'app/controllers/spree/admin/payments_controller_decorator.rb'
- 'app/controllers/spree/admin/product_properties_controller.rb'
- 'app/controllers/spree/admin/products_controller_decorator.rb'
- 'app/controllers/spree/admin/products_controller.rb'
- 'app/controllers/spree/admin/properties_controller.rb'
- 'app/controllers/spree/admin/reports/enterprise_fee_summaries_controller.rb'
- 'app/controllers/spree/admin/reports_controller.rb'
- 'app/controllers/spree/admin/resource_controller_decorator.rb'
- 'app/controllers/spree/admin/resource_controller.rb'
- 'app/controllers/spree/admin/return_authorizations_controller.rb'
- 'app/controllers/spree/admin/search_controller_decorator.rb'
- 'app/controllers/spree/admin/search_controller.rb'
- 'app/controllers/spree/admin/shipping_categories_controller.rb'
- 'app/controllers/spree/admin/shipping_methods_controller.rb'
- 'app/controllers/spree/admin/states_controller.rb'
@@ -571,13 +566,11 @@ Style/FrozenStringLiteralComment:
- 'app/controllers/spree/admin/taxonomies_controller.rb'
- 'app/controllers/spree/admin/taxons_controller.rb'
- 'app/controllers/spree/admin/users_controller.rb'
- 'app/controllers/spree/admin/variants_controller_decorator.rb'
- 'app/controllers/spree/admin/variants_controller.rb'
- 'app/controllers/spree/admin/zones_controller.rb'
- 'app/controllers/spree/checkout_controller.rb'
- 'app/controllers/spree/credit_cards_controller.rb'
- 'app/controllers/spree/home_controller.rb'
- 'app/controllers/spree/orders_controller.rb'
- 'app/controllers/spree/paypal_controller_decorator.rb'
- 'app/controllers/spree/store_controller.rb'
- 'app/controllers/spree/user_passwords_controller.rb'
- 'app/controllers/spree/user_registrations_controller.rb'
@@ -588,6 +581,7 @@ Style/FrozenStringLiteralComment:
- 'app/controllers/user_confirmations_controller.rb'
- 'app/controllers/user_passwords_controller.rb'
- 'app/controllers/user_registrations_controller.rb'
- 'app/helpers/admin/enterprises_helper.rb'
- 'app/helpers/admin/image_settings_helper.rb'
- 'app/helpers/admin/injection_helper.rb'
- 'app/helpers/admin/orders_helper.rb'
@@ -606,20 +600,19 @@ Style/FrozenStringLiteralComment:
- 'app/helpers/injection_helper.rb'
- 'app/helpers/map_helper.rb'
- 'app/helpers/markdown_helper.rb'
- 'app/helpers/order_cycles_helper.rb'
- 'app/helpers/serializer_helper.rb'
- 'app/helpers/shared_helper.rb'
- 'app/helpers/shop_helper.rb'
- 'app/helpers/shop_mail_helper.rb'
- 'app/helpers/spree/admin/base_helper_decorator.rb'
- 'app/helpers/spree/admin/base_helper.rb'
- 'app/helpers/spree/admin/general_settings_helper.rb'
- 'app/helpers/spree/admin/navigation_helper_decorator.rb'
- 'app/helpers/spree/admin/orders_helper_decorator.rb'
- 'app/helpers/spree/admin/orders_helper.rb'
- 'app/helpers/spree/admin/payments_helper.rb'
- 'app/helpers/spree/admin/taxons_helper.rb'
- 'app/helpers/spree/admin/zones_helper.rb'
- 'app/helpers/spree/api/api_helpers.rb'
- 'app/helpers/spree/base_helper_decorator.rb'
- 'app/helpers/spree/orders_helper.rb'
- 'app/helpers/spree/products_helper_decorator.rb'
- 'app/helpers/spree/reports_helper.rb'
- 'app/helpers/spree_currency_helper.rb'
- 'app/jobs/confirm_order_job.rb'
@@ -631,7 +624,6 @@ Style/FrozenStringLiteralComment:
- 'app/jobs/subscription_placement_job.rb'
- 'app/jobs/welcome_enterprise_job.rb'
- 'app/mailers/enterprise_mailer.rb'
- 'app/mailers/producer_mailer.rb'
- 'app/mailers/spree/base_mailer_decorator.rb'
- 'app/mailers/spree/order_mailer_decorator.rb'
- 'app/mailers/spree/user_mailer.rb'
@@ -681,7 +673,6 @@ Style/FrozenStringLiteralComment:
- 'app/models/product_import/entry_validator.rb'
- 'app/models/product_import/inventory_reset_strategy.rb'
- 'app/models/product_import/product_importer.rb'
- 'app/models/product_import/products_reset_strategy.rb'
- 'app/models/product_import/reset_absent.rb'
- 'app/models/product_import/settings.rb'
- 'app/models/product_import/spreadsheet_data.rb'
@@ -709,7 +700,6 @@ Style/FrozenStringLiteralComment:
- 'app/models/spree/gateway_decorator.rb'
- 'app/models/spree/image_decorator.rb'
- 'app/models/spree/line_item_decorator.rb'
- 'app/models/spree/money_decorator.rb'
- 'app/models/spree/option_type_decorator.rb'
- 'app/models/spree/order_decorator.rb'
- 'app/models/spree/payment_decorator.rb'
@@ -721,9 +711,7 @@ Style/FrozenStringLiteralComment:
- 'app/models/spree/product_property_decorator.rb'
- 'app/models/spree/product_set.rb'
- 'app/models/spree/property.rb'
- 'app/models/spree/property_decorator.rb'
- 'app/models/spree/shipment_decorator.rb'
- 'app/models/spree/shipping_category_decorator.rb'
- 'app/models/spree/shipping_method_decorator.rb'
- 'app/models/spree/stock/availability_validator_decorator.rb'
- 'app/models/spree/stock_location_decorator.rb'
@@ -743,7 +731,6 @@ Style/FrozenStringLiteralComment:
- 'app/models/tag_rule/filter_shipping_methods.rb'
- 'app/models/variant_override.rb'
- 'app/models/variant_override_set.rb'
- 'app/presenters/variant_presenter.rb'
- 'app/serializers/api/address_serializer.rb'
- 'app/serializers/api/adjustment_serializer.rb'
- 'app/serializers/api/admin/basic_enterprise_fee_serializer.rb'
@@ -823,6 +810,7 @@ Style/FrozenStringLiteralComment:
- 'app/serializers/api/uncached_enterprise_serializer.rb'
- 'app/serializers/api/user_serializer.rb'
- 'app/serializers/api/variant_serializer.rb'
- 'app/services/action_callbacks.rb'
- 'app/services/advance_order_service.rb'
- 'app/services/bulk_invoice_service.rb'
- 'app/services/cart_service.rb'
@@ -831,7 +819,6 @@ Style/FrozenStringLiteralComment:
- 'app/services/default_shipping_category.rb'
- 'app/services/default_stock_location.rb'
- 'app/services/embedded_page_service.rb'
- 'app/services/exchange_products_renderer.rb'
- 'app/services/exchange_variant_bulk_updater.rb'
- 'app/services/exchange_variant_deleter.rb'
- 'app/services/invoice_renderer.rb'
@@ -847,14 +834,7 @@ Style/FrozenStringLiteralComment:
- 'app/services/permissions/order.rb'
- 'app/services/product_tag_rules_filterer.rb'
- 'app/services/products_renderer.rb'
- 'app/services/reset_order_service.rb'
- 'app/services/restart_checkout.rb'
- 'app/services/search_orders.rb'
- 'app/services/subscription_estimator.rb'
- 'app/services/subscription_form.rb'
- 'app/services/subscription_validator.rb'
- 'app/services/subscription_variants_service.rb'
- 'app/services/subscriptions_count.rb'
- 'app/services/tax_rate_finder.rb'
- 'app/services/upload_sanitizer.rb'
- 'app/services/variant_deleter.rb'
@@ -862,7 +842,6 @@ Style/FrozenStringLiteralComment:
- 'app/validators/date_time_string_validator.rb'
- 'app/validators/distributors_validator.rb'
- 'app/validators/integer_array_validator.rb'
- 'app/views/spree/admin/taxons/search.rabl'
- 'config.ru'
- 'engines/order_management/app/controllers/order_management/application_controller.rb'
- 'engines/order_management/app/services/order_management/reports/enterprise_fee_summary/authorizer.rb'
@@ -900,7 +879,6 @@ Style/FrozenStringLiteralComment:
- 'engines/order_management/spec/services/order_management/reports/enterprise_fee_summary/renderers/html_renderer_spec.rb'
- 'engines/order_management/spec/services/order_management/reports/enterprise_fee_summary/report_data/enterprise_fee_type_total_spec.rb'
- 'engines/order_management/spec/services/order_management/reports/enterprise_fee_summary/report_service_spec.rb'
- 'engines/order_management/spec/spec_helper.rb'
- 'engines/web/app/controllers/web/angular_templates_controller.rb'
- 'engines/web/app/controllers/web/api/cookies_consent_controller.rb'
- 'engines/web/app/controllers/web/application_controller.rb'
@@ -911,7 +889,6 @@ Style/FrozenStringLiteralComment:
- 'engines/web/lib/web/engine.rb'
- 'engines/web/lib/web/version.rb'
- 'engines/web/spec/helpers/cookies_policy_helper_spec.rb'
- 'engines/web/spec/spec_helper.rb'
- 'engines/web/web.gemspec'
- 'lib/discourse/single_sign_on.rb'
- 'lib/open_food_network/address_finder.rb'
@@ -930,7 +907,6 @@ Style/FrozenStringLiteralComment:
- 'lib/open_food_network/lettuce_share_report.rb'
- 'lib/open_food_network/locking.rb'
- 'lib/open_food_network/model_class_from_controller_name.rb'
- 'lib/open_food_network/option_value_namer.rb'
- 'lib/open_food_network/order_and_distributor_report.rb'
- 'lib/open_food_network/order_cycle_form_applicator.rb'
- 'lib/open_food_network/order_cycle_management_report.rb'
@@ -950,7 +926,6 @@ Style/FrozenStringLiteralComment:
- 'lib/open_food_network/products_and_inventory_report.rb'
- 'lib/open_food_network/products_and_inventory_report_base.rb'
- 'lib/open_food_network/property_merge.rb'
- 'lib/open_food_network/proxy_order_syncer.rb'
- 'lib/open_food_network/rack_request_blocker.rb'
- 'lib/open_food_network/referer_parser.rb'
- 'lib/open_food_network/reports/bulk_coop_allocation_report.rb'
@@ -966,9 +941,6 @@ Style/FrozenStringLiteralComment:
- 'lib/open_food_network/scope_variant_to_hub.rb'
- 'lib/open_food_network/scope_variants_for_search.rb'
- 'lib/open_food_network/spree_api_key_loader.rb'
- 'lib/open_food_network/subscription_payment_updater.rb'
- 'lib/open_food_network/subscription_summarizer.rb'
- 'lib/open_food_network/subscription_summary.rb'
- 'lib/open_food_network/tag_rule_applicator.rb'
- 'lib/open_food_network/user_balance_calculator.rb'
- 'lib/open_food_network/users_and_enterprises_report.rb'
@@ -988,7 +960,6 @@ Style/FrozenStringLiteralComment:
- 'lib/stripe/webhook_handler.rb'
- 'lib/tasks/data.rake'
- 'lib/tasks/data/anonymize_data.rake'
- 'lib/tasks/data/truncate_data.rake'
- 'lib/tasks/enterprises.rake'
- 'lib/tasks/karma.rake'
- 'lib/tasks/missing_payments.rake'
@@ -1029,7 +1000,6 @@ Style/FrozenStringLiteralComment:
- 'spec/controllers/api/customers_controller_spec.rb'
- 'spec/controllers/api/enterprise_fees_controller_spec.rb'
- 'spec/controllers/api/enterprises_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'
@@ -1062,16 +1032,13 @@ Style/FrozenStringLiteralComment:
- 'spec/controllers/spree/admin/payment_methods_controller_spec.rb'
- 'spec/controllers/spree/admin/payments_controller_spec.rb'
- 'spec/controllers/spree/admin/products_controller_spec.rb'
- 'spec/controllers/spree/admin/reports/enterprise_fee_summaries_controller_spec.rb'
- 'spec/controllers/spree/admin/reports_controller_spec.rb'
- 'spec/controllers/spree/admin/search_controller_spec.rb'
- 'spec/controllers/spree/admin/shipping_methods_controller_spec.rb'
- 'spec/controllers/spree/admin/users_controller_spec.rb'
- 'spec/controllers/spree/admin/variants_controller_spec.rb'
- 'spec/controllers/spree/checkout_controller_spec.rb'
- 'spec/controllers/spree/credit_cards_controller_spec.rb'
- 'spec/controllers/spree/orders_controller_spec.rb'
- 'spec/controllers/spree/paypal_controller_spec.rb'
- 'spec/controllers/spree/store_controller_spec.rb'
- 'spec/controllers/spree/user_sessions_controller_spec.rb'
- 'spec/controllers/spree/users_controller_spec.rb'
@@ -1119,14 +1086,11 @@ Style/FrozenStringLiteralComment:
- 'spec/features/admin/external_services_spec.rb'
- 'spec/features/admin/image_settings_spec.rb'
- 'spec/features/admin/multilingual_spec.rb'
- 'spec/features/admin/order_cycles_spec.rb'
- 'spec/features/admin/orders_spec.rb'
- 'spec/features/admin/overview_spec.rb'
- 'spec/features/admin/payment_method_spec.rb'
- 'spec/features/admin/payments_spec.rb'
- 'spec/features/admin/product_import_spec.rb'
- 'spec/features/admin/products_spec.rb'
- 'spec/features/admin/reports/enterprise_fee_summaries_spec.rb'
- 'spec/features/admin/reports/packing_report_spec.rb'
- 'spec/features/admin/reports_spec.rb'
- 'spec/features/admin/schedules_spec.rb'
@@ -1142,7 +1106,6 @@ Style/FrozenStringLiteralComment:
- 'spec/features/consumer/account_spec.rb'
- 'spec/features/consumer/authentication_spec.rb'
- 'spec/features/consumer/confirm_invitation_spec.rb'
- 'spec/features/consumer/cookies_spec.rb'
- 'spec/features/consumer/footer_links_spec.rb'
- 'spec/features/consumer/groups_spec.rb'
- 'spec/features/consumer/multilingual_spec.rb'
@@ -1170,7 +1133,6 @@ Style/FrozenStringLiteralComment:
- 'spec/helpers/injection_helper_spec.rb'
- 'spec/helpers/navigation_helper_spec.rb'
- 'spec/helpers/order_cycles_helper_spec.rb'
- 'spec/helpers/products_helper_spec.rb'
- 'spec/helpers/serializer_helper_spec.rb'
- 'spec/helpers/shared_helper_spec.rb'
- 'spec/helpers/shop_helper_spec.rb'
@@ -1210,7 +1172,6 @@ Style/FrozenStringLiteralComment:
- 'spec/lib/open_food_network/permissions_spec.rb'
- 'spec/lib/open_food_network/products_and_inventory_report_spec.rb'
- 'spec/lib/open_food_network/property_merge_spec.rb'
- 'spec/lib/open_food_network/proxy_order_syncer_spec.rb'
- 'spec/lib/open_food_network/referer_parser_spec.rb'
- 'spec/lib/open_food_network/reports/report_spec.rb'
- 'spec/lib/open_food_network/reports/row_spec.rb'
@@ -1218,9 +1179,6 @@ Style/FrozenStringLiteralComment:
- 'spec/lib/open_food_network/sales_tax_report_spec.rb'
- 'spec/lib/open_food_network/scope_variant_to_hub_spec.rb'
- 'spec/lib/open_food_network/scope_variants_to_search_spec.rb'
- 'spec/lib/open_food_network/subscription_payment_updater_spec.rb'
- 'spec/lib/open_food_network/subscription_summarizer_spec.rb'
- 'spec/lib/open_food_network/subscription_summary_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'
@@ -1254,10 +1212,8 @@ Style/FrozenStringLiteralComment:
- 'spec/models/model_set_spec.rb'
- 'spec/models/order_cycle_spec.rb'
- 'spec/models/order_updater_spec.rb'
- 'spec/models/producer_property_spec.rb'
- 'spec/models/product_import/entry_processor_spec.rb'
- 'spec/models/product_import/inventory_reset_strategy_spec.rb'
- 'spec/models/product_import/products_reset_strategy_spec.rb'
- 'spec/models/product_import/reset_absent_spec.rb'
- 'spec/models/product_import/settings_spec.rb'
- 'spec/models/product_importer_spec.rb'
@@ -1274,7 +1230,6 @@ Style/FrozenStringLiteralComment:
- 'spec/models/spree/classification_spec.rb'
- 'spec/models/spree/credit_card_spec.rb'
- 'spec/models/spree/gateway/stripe_connect_spec.rb'
- 'spec/models/spree/gateway_tagging_spec.rb'
- 'spec/models/spree/image_spec.rb'
- 'spec/models/spree/line_item_spec.rb'
- 'spec/models/spree/order/checkout_spec.rb'
@@ -1285,7 +1240,6 @@ Style/FrozenStringLiteralComment:
- 'spec/models/spree/price_spec.rb'
- 'spec/models/spree/product_set_spec.rb'
- 'spec/models/spree/product_spec.rb'
- 'spec/models/spree/property_spec.rb'
- 'spec/models/spree/shipment_spec.rb'
- 'spec/models/spree/shipping_method_spec.rb'
- 'spec/models/spree/stock/availability_validator_spec.rb'
@@ -1306,7 +1260,6 @@ Style/FrozenStringLiteralComment:
- 'spec/models/variant_override_spec.rb'
- 'spec/performance/injection_helper_spec.rb'
- 'spec/performance/orders_controller_spec.rb'
- 'spec/performance/proxy_order_syncer_spec.rb'
- 'spec/performance/shop_controller_spec.rb'
- 'spec/requests/checkout/failed_checkout_spec.rb'
- 'spec/requests/checkout/paypal_spec.rb'
@@ -1349,19 +1302,13 @@ Style/FrozenStringLiteralComment:
- '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_cycle_warning_spec.rb'
- 'spec/services/order_factory_spec.rb'
- 'spec/services/order_syncer_spec.rb'
- 'spec/services/permissions/order_spec.rb'
- 'spec/services/product_tag_rules_filterer_spec.rb'
- 'spec/services/products_renderer_spec.rb'
- 'spec/services/reset_order_service_spec.rb'
- 'spec/services/restart_checkout_spec.rb'
- 'spec/services/search_orders_spec.rb'
- 'spec/services/subscription_estimator_spec.rb'
- 'spec/services/subscription_form_spec.rb'
- 'spec/services/subscription_validator_spec.rb'
- 'spec/services/subscription_variants_service_spec.rb'
- 'spec/services/subscriptions_count_spec.rb'
- 'spec/services/tax_rate_finder_spec.rb'
- 'spec/services/upload_sanitizer_spec.rb'
- 'spec/services/variants_stock_levels_spec.rb'
@@ -1369,7 +1316,6 @@ Style/FrozenStringLiteralComment:
- 'spec/support/ability_helper.rb'
- 'spec/support/api_helper.rb'
- 'spec/support/cancan_helper.rb'
- 'spec/support/controller_hacks.rb'
- 'spec/support/controller_helper.rb'
- 'spec/support/delayed_job_helper.rb'
- 'spec/support/downloads_helper.rb'
@@ -1392,7 +1338,7 @@ Style/FrozenStringLiteralComment:
- 'spec/support/performance_helper.rb'
- 'spec/support/products_helper.rb'
- 'spec/support/request/admin_helper.rb'
- 'spec/support/request/authentication_workflow.rb'
- 'spec/support/request/authentication_helper.rb'
- 'spec/support/request/checkout_workflow.rb'
- 'spec/support/request/cookie_helper.rb'
- 'spec/support/request/distribution_helper.rb'
@@ -1410,20 +1356,17 @@ Style/FrozenStringLiteralComment:
- 'spec/views/spree/admin/orders/edit.html.haml_spec.rb'
- 'spec/views/spree/admin/orders/index.html.haml_spec.rb'
# Offense count: 58
# Offense count: 51
# Configuration parameters: MinBodyLength.
Style/GuardClause:
Exclude:
- 'app/controllers/admin/enterprises_controller.rb'
- 'app/controllers/admin/order_cycles_controller.rb'
- 'app/controllers/admin/product_import_controller.rb'
- 'app/controllers/api/shipments_controller.rb'
- 'app/controllers/application_controller.rb'
- 'app/controllers/base_controller.rb'
- 'app/controllers/checkout_controller.rb'
- 'app/controllers/home_controller.rb'
- 'app/controllers/spree/admin/orders_controller_decorator.rb'
- 'app/controllers/spree/admin/variants_controller_decorator.rb'
- 'app/controllers/spree/checkout_controller.rb'
- 'app/controllers/spree/orders_controller.rb'
- 'app/controllers/spree/paypal_controller_decorator.rb'
- 'app/models/enterprise.rb'
@@ -1445,49 +1388,19 @@ Style/GuardClause:
- 'spec/support/request/distribution_helper.rb'
- 'spec/support/request/shop_workflow.rb'
# Offense count: 4
# Configuration parameters: AllowIfModifier.
Style/IfInsideElse:
Exclude:
- 'app/controllers/admin/column_preferences_controller.rb'
- 'app/controllers/admin/variant_overrides_controller.rb'
- 'app/controllers/api/taxons_controller.rb'
- 'app/controllers/spree/admin/products_controller_decorator.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: InverseMethods, InverseBlocks.
Style/InverseMethods:
Exclude:
- 'lib/open_food_network/reports/line_items.rb'
# Offense count: 1
Style/MissingRespondToMissing:
Exclude:
- 'app/helpers/application_helper.rb'
# Offense count: 5
# Offense count: 4
Style/MixinUsage:
Exclude:
- 'lib/open_food_network/orders_and_fulfillments_report.rb'
- 'spec/features/admin/orders_spec.rb'
- 'spec/lib/open_food_network/bulk_coop_report_spec.rb'
- 'spec/lib/open_food_network/order_cycle_management_report_spec.rb'
- 'spec/lib/open_food_network/packing_report_spec.rb'
# Offense count: 1
Style/MultipleComparison:
Exclude:
- 'spec/models/product_importer_spec.rb'
# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: both, prefix, postfix
Style/NegatedUnless:
Exclude:
- 'app/services/cart_service.rb'
# Offense count: 41
# Cop supports --auto-correct.
# Configuration parameters: AutoCorrect, EnforcedStyle, IgnoredMethods.
@@ -1520,27 +1433,9 @@ Style/NumericPredicate:
- 'lib/spree/money_decorator.rb'
- 'lib/tasks/sample_data.rake'
# Offense count: 15
# Cop supports --auto-correct.
# Configuration parameters: ConvertCodeThatCanStartToReturnNil, AllowedMethods.
# AllowedMethods: present?, blank?, presence, try, try!
Style/SafeNavigation:
Exclude:
- 'app/controllers/checkout_controller.rb'
- 'app/controllers/spree/credit_cards_controller.rb'
- 'app/controllers/spree/orders_controller.rb'
- 'app/helpers/i18n_helper.rb'
- 'app/models/producer_property.rb'
- 'app/models/product_import/entry_validator.rb'
- 'app/models/product_import/product_importer.rb'
- 'app/models/proxy_order.rb'
- 'lib/discourse/single_sign_on.rb'
- 'spec/factories.rb'
# Offense count: 235
# Offense count: 231
Style/Send:
Exclude:
- 'app/controllers/spree/checkout_controller.rb'
- 'app/models/spree/shipping_method_decorator.rb'
- 'spec/controllers/admin/subscriptions_controller_spec.rb'
- 'spec/controllers/checkout_controller_spec.rb'
@@ -1558,8 +1453,6 @@ Style/Send:
- 'spec/lib/open_food_network/permissions_spec.rb'
- 'spec/lib/open_food_network/products_and_inventory_report_spec.rb'
- 'spec/lib/open_food_network/sales_tax_report_spec.rb'
- 'spec/lib/open_food_network/subscription_payment_updater_spec.rb'
- 'spec/lib/open_food_network/subscription_summarizer_spec.rb'
- 'spec/lib/open_food_network/tag_rule_applicator_spec.rb'
- 'spec/lib/open_food_network/xero_invoices_report_spec.rb'
- 'spec/lib/stripe/webhook_handler_spec.rb'

View File

@@ -1,9 +1,9 @@
# Contributing
We love pull requests from everyone. Any contribution is valuable, but there are two issue streams that we especially love people to work on:
We love pull requests from everyone. Any contribution is valuable!
1) Our delivery backlog, is managed via a ZenHub board (ZenHub extensions are available for most major browsers). We use a Kanban-style approach, whereby devs pick issues from the top of the backlog which has been organised according to current priorities. If you have some time and are interested in working on some issues from the backlog, please make yourself known on the [#dev][slack-dev] channel on Slack and we can direct you to the most appropriate issue to pick up.
If you have some time and are interested in working on some issues please make yourself known on the [#dev][slack-dev] channel on Slack.
2) Our list of bugs and other self-contained issues that we consider to be a good starting point for new contributors, or devs who arent able to commit to seeing a whole feature through. These issues are marked with the `# good first issue` label.
We have curated all issues we consider to be a good starting point for new members of the community within the [Welcome New Developers project board][welcome-dev]. Have a look and pick the one you would prefer working on!
## Set up
@@ -19,10 +19,6 @@ If you want to run the whole test suite, we recommend using a free CI service to
bundle exec rspec spec
## Which issue to pick first?
We have curated all issues interesting for new members of the community within the [Welcome New Developers project board][welcome-dev]. Have a look and pick the one you would prefer working on!
## Internationalisation (i18n)
The locale `en` is maintained in the source code, but other locales are managed at [Transifex][ofn-transifex]. Read more about [internationalisation][i18n] in the developer wiki.

View File

@@ -17,7 +17,13 @@ Better to have at least 2GB free on your computer in order to download images an
Open a terminal with a shell.
Clone the repository:
Clone the repository. If you're planning on contributing code to the project (which we [LOVE](CONTRIBUTING.md)), it is a good idea to begin by forking this repo using the Fork button in the top-right corner of this screen. You should then be able to use git clone to copy your fork onto your local machine.
```sh
$ git clone https://github.com/YOUR_GITHUB_USERNAME_HERE/openfoodnetwork
```
Otherwise, if you just want to get things running, clone from the OFN main repo:
```sh
$ git clone git@github.com:openfoodfoundation/openfoodnetwork.git
@@ -35,13 +41,22 @@ Download the Docker images and build the containers:
$ docker-compose build
```
Run the app with all the required containers:
Setup the database and seed it with sample data:
```sh
$ docker-compose run web bundle exec rake db:reset
$ docker-compose run web bundle exec rake db:test:prepare
$ docker-compose run web bundle exec rake ofn:sample_data
```
Finally, run the app with all the required containers:
```sh
$ docker-compose up
```
This command will setup the database and seed it with sample data. The default admin user is 'ofn@example.com' with 'ofn123' password.
The default admin user is 'ofn@example.com' with 'ofn123' password.
Check the app in the browser at `http://localhost:3000`.
You will then get the trace of the containers in the terminal. You can stop the containers using Ctrl-C in the terminal.
You can find some useful tips and commands [here](https://github.com/openfoodfoundation/openfoodnetwork/wiki/Docker:-useful-tips-and-commands).

View File

@@ -12,21 +12,24 @@ ENV BUNDLE_PATH /bundles
WORKDIR /usr/src/app
COPY .ruby-version .
# Rbenv & Ruby part
RUN git clone https://github.com/rbenv/rbenv.git ${RBENV_ROOT} && \
git clone https://github.com/rbenv/ruby-build.git ${RBENV_ROOT}/plugins/ruby-build && \
# 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 && \
echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh && \
rbenv install $(cat .ruby-version) && \
rbenv global $(cat .ruby-version) && \
gem install bundler --version=1.17.2
# Postgres
# Install Postgres
RUN sh -c "echo 'deb https://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main' > /etc/apt/sources.list.d/pgdg.list" && \
wget --quiet -O - https://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | apt-key add - && \
apt-get update && \
apt-get install -yqq --no-install-recommends postgresql-client-9.5 libpq-dev
# Install node
RUN apt-get install -y nodejs
# Install Chrome
RUN wget --quiet -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \
sh -c "echo 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main' >> /etc/apt/sources.list.d/google-chrome.list" && \
@@ -38,4 +41,7 @@ RUN wget https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.z
unzip chromedriver_linux64.zip -d /usr/bin && \
chmod u+x /usr/bin/chromedriver
# Copy code and install app dependencies
COPY . /usr/src/app/
# Run bundler install in parallel with the amount of available CPUs
RUN bundle install --jobs="$(nproc)"

View File

@@ -1,20 +1,18 @@
### Getting Started
This is a general guide to setting up an Open Food Network development environment on your local machine.
This is a general guide to setting up an Open Food Network **development environment on your local machine**. If you want to setup OFN on a server, please have a look at the [ofn-install deployment guide](https://github.com/openfoodfoundation/ofn-install/wiki).
The following guides are located in the wiki and provide more OS-specific step-by-step instructions:
### Requirements
- [Ubuntu Setup Guide][ubuntu]
- [macOS Sierra Setup Guide][sierra]
- [OSX El Capitan Setup Guide][el-capitan]
### Dependencies
* Rails 3.2.x
* Ruby 2.1.9
The fastest way to make it work locally is to use Docker, you only need to setup git, see the [Docker setup guide](DOCKER.md).
Otherwise, for a local setup you will need:
* Ruby 2.3.7 and bundler
* PostgreSQL database
* PhantomJS (for testing)
* See Gemfile for a list of gems required
* Chrome (for testing)
The following guides will provide OS-specific step-by-step instructions to get these requirements installed:
- [Ubuntu Setup Guide][ubuntu]
- [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/).
@@ -50,18 +48,16 @@ This will create the "ofn" user as superuser and allowing it to create databases
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.
If you run into any other issues getting your local environment up and running please consult [the wiki][wiki].
If still you get stuck do not hesitate to open an issue reporting the full output of the script.
Now, your dreams of spinning up a development server can be realised:
bundle exec rails server
To login as Spree default user, use:
Go to [http://localhost:3000](http://localhost:3000) to play around!
email: spree@example.com
password: spree123
To login as the default user, use:
email: ofn@example.com
password: ofn123
### Testing
@@ -77,7 +73,7 @@ The tests of all custom engines can be run with:
bundle exec rake ofn:specs:engines:rspec
Note: If your OS is not explicitly supported in the setup guides then not all tests may pass. However, you may still be able to develop. Get in touch with the [#dev][slack-dev] channel on Slack to troubleshoot issues and determine if they will preclude you from contributing to OFN.
Note: If your OS is not explicitly supported in the setup guides then not all tests may pass. However, you may still be able to develop.
Note: The time zone on your machine should match the one defined in `config/application.yml`.
@@ -118,8 +114,7 @@ $ createdb open_food_network_test --owner=ofn
If these commands succeed, you should be able to [continue the setup process](#get-it-running).
[developer-wiki]: https://github.com/openfoodfoundation/openfoodnetwork/wiki
[sierra]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup%3A-macOS-%28Sierra%2C-HighSierra-and-Mojave%29
[el-capitan]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup:-OS-X-(El-Capitan)
[osx]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup:-OS-X
[ubuntu]: https://github.com/openfoodfoundation/openfoodnetwork/wiki/Development-Environment-Setup:-Ubuntu
[wiki]: https://github.com/openfoodfoundation/openfoodnetwork/wiki
[zeus]: https://github.com/burke/zeus

94
Gemfile
View File

@@ -3,15 +3,15 @@ ruby "2.3.7"
git_source(:github) { |repo_name| "https://github.com/#{repo_name}.git" }
gem 'i18n', '~> 0.6.11'
gem 'i18n-js', '~> 3.6.0'
gem 'rails', '~> 3.2.22'
gem 'rails-i18n', '~> 3.0.0'
gem 'i18n-js', '~> 3.7.1'
gem 'rails', '~> 4.0.13'
gem 'rails-i18n', '~> 4.0'
gem 'rails_safe_tasks', '~> 1.0'
gem "activerecord-import"
# Patched version. See http://rubysec.com/advisories/CVE-2015-5312/.
gem 'nokogiri', '>= 1.6.7.1'
gem "catalog", path: "./engines/catalog"
gem 'dfc_provider', path: './engines/dfc_provider'
gem "order_management", path: "./engines/order_management"
gem 'web', path: './engines/web'
@@ -21,22 +21,39 @@ gem 'pg', '~> 0.21.0'
# OFN-maintained and patched version of Spree v2.0.4. See
# https://github.com/openfoodfoundation/openfoodnetwork/wiki/Tech-Doc:-OFN's-Spree-fork%F0%9F%8D%B4
# for details.
gem 'spree_core', github: 'openfoodfoundation/spree', branch: '2-0-4-stable'
gem 'spree_core', github: 'openfoodfoundation/spree', branch: '2-1-0-stable'
### Dependencies brought from spree core
gem 'acts_as_list', '= 0.2.0'
gem 'awesome_nested_set', '~> 3.0.0.rc.1'
gem 'cancan', '~> 1.6.10'
gem 'ffaker', '~> 1.16'
gem 'highline', '= 1.6.18' # Necessary for the install generator
gem 'httparty', '~> 0.18' # Used to check alerts in spree_core, this is not used in OFN.
gem 'json', '>= 1.7.7'
gem 'money', '5.1.1'
gem 'paranoia', '~> 2.0'
gem 'ransack', '~> 1.8.10'
gem 'state_machine', '1.2.0'
gem 'stringex', '~> 1.5.1'
gem 'spree_i18n', github: 'spree/spree_i18n', branch: '1-3-stable'
# Our branch contains two changes
# Our branch contains the following changes:
# - Pass customer email and phone number to PayPal (merged to upstream master)
# - Change type of password from string to password to hide it in the form
gem 'spree_paypal_express', github: "openfoodfoundation/better_spree_paypal_express", branch: "2-0-stable"
# - Skip CA cert file and use the ones provided by the OS
gem 'spree_paypal_express', github: 'openfoodfoundation/better_spree_paypal_express', branch: '2-1-0-stable'
gem 'stripe'
# We need at least this version to have Digicert's root certificate
# which is needed for Pin Payments (and possibly others).
gem 'activemerchant', '~> 1.78'
gem 'activemerchant', '~> 1.78.0'
gem 'devise', '~> 2.2.5'
gem 'devise-encryptable', '0.2.0'
gem 'devise', '~> 3.5.10' # v4.0.0 needs rails 4.1
gem 'devise-encryptable'
gem 'devise-token_authenticatable', '~> 0.4.10' # v0.5.0 needs devise v4
gem 'jwt', '~> 2.2'
gem 'oauth2', '~> 1.4.4' # Used for Stripe Connect
@@ -44,36 +61,31 @@ gem 'daemons'
gem 'delayed_job_active_record'
gem 'delayed_job_web'
# Fix bug in simple_form preventing collection_check_boxes usage within form_for block
# When merged, revert to upstream gem
gem 'simple_form', github: 'RohanM/simple_form'
# Spree's default pagination gem (locked to the current version used by Spree)
# We use it's methods in OFN code as well, so this is a direct dependency
gem 'kaminari', '~> 0.14.1'
gem 'andand'
gem 'angularjs-rails', '1.5.5'
gem 'aws-sdk'
gem 'aws-sdk', '1.11.1' # temporarily locked down due to https://github.com/aws/aws-sdk-ruby/issues/273
gem 'bugsnag'
gem 'db2fog'
gem 'haml'
gem 'rabl'
gem 'redcarpet'
gem 'sass', "~> 3.3"
gem 'sass-rails', '~> 3.2.3'
gem 'truncate_html'
gem 'sass'
gem 'sass-rails'
gem 'truncate_html', '0.9.2'
gem 'unicorn'
# AMS is pinned to 0.8.4 because 0.9.x is a complete re-write, as is 0.10.x
# Once Rails is updated to 5.x we should bump directly to 0.10.x
gem 'actionpack-action_caching'
# AMS 0.9.x and 0.10.x are very different from 0.8.4 and the upgrade is not straight forward
# AMS is deprecated, we will introduce an alternative at some point
gem "active_model_serializers", "0.8.4"
gem 'acts-as-taggable-on', '~> 3.4'
gem 'activerecord-session_store'
gem 'acts-as-taggable-on', '~> 4.0'
gem 'angularjs-file-upload-rails', '~> 2.4.1'
gem 'blockenspiel'
gem 'custom_error_message', github: 'jeremydurham/custom-err-msg'
gem 'dalli'
gem 'deface', '1.0.2'
gem 'diffy'
gem 'figaro'
gem 'geocoder'
@@ -84,7 +96,6 @@ gem 'paperclip', '~> 3.4.1'
gem 'rack-rewrite'
gem 'rack-ssl', require: 'rack/ssl'
gem 'roadie-rails', '~> 1.3.0'
gem 'spinjs-rails'
gem 'combine_pdf'
gem 'wicked_pdf'
@@ -98,45 +109,45 @@ gem 'whenever', require: false
gem 'test-unit', '~> 3.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'coffee-rails', '~> 4.2.2'
gem 'compass-rails'
gem 'mini_racer', '0.2.9'
gem 'mini_racer', '0.2.15'
gem 'uglifier', '>= 1.0.3'
gem 'angular-rails-templates', '~> 0.3.0'
gem 'foundation-icons-sass-rails'
gem 'momentjs-rails'
gem 'turbo-sprockets-rails3'
gem "foundation-rails"
gem 'foundation_rails_helper', github: 'willrjmarshall/foundation_rails_helper', branch: "rails3"
gem 'foundation-rails', '= 5.5.2.1'
gem 'jquery-migrate-rails'
gem 'jquery-rails', '3.0.4'
gem 'jquery-ui-rails', '~> 4.0.0'
gem 'jquery-rails', '3.1.5'
gem 'jquery-ui-rails', '~> 4.2'
gem 'select2-rails', '~> 3.4.7'
gem 'ofn-qz', github: 'openfoodfoundation/ofn-qz', ref: '60da2ae4c44cbb4c8d602f59fb5fff8d0f21db3c'
gem 'ofn-qz', github: 'openfoodfoundation/ofn-qz', branch: 'ofn-rails-4'
group :production, :staging do
gem 'ddtrace'
gem 'unicorn-worker-killer'
end
group :test, :development do
# Pretty printed test output
gem 'atomic'
gem 'awesome_print'
gem 'capybara', '>= 2.18.0' # 3.0 requires nokogiri 1.8
gem 'database_cleaner', '0.7.1', require: false
gem "factory_bot_rails", require: false
gem 'capybara', '>= 2.18.0' # 3.0 requires rack 1.6 that only works with Rails 4.2
gem 'database_cleaner', require: false
gem "factory_bot_rails", '4.10.0', require: false
gem 'fuubar', '~> 2.5.0'
gem 'json_spec', '~> 1.1.4'
gem 'knapsack'
gem 'letter_opener', '>= 1.4.1'
gem 'rspec-rails', ">= 3.5.2"
gem 'rspec-retry'
gem 'rswag'
gem 'selenium-webdriver'
gem 'shoulda-matchers'
gem 'timecop'
@@ -152,13 +163,14 @@ group :test do
end
group :development do
gem 'byebug', '~> 9.0.0' # 9.1 requires ruby 2.2
gem 'byebug', '~> 11.0.0' # 11.1 requires ruby 2.4
gem 'debugger-linecache'
gem "newrelic_rpm", "~> 3.0"
gem 'pry-byebug', '>= 3.4.3'
gem "pry", "~> 0.12.0" # pry 0.13 is not compatible with pry-byebug 3.7
gem 'pry-byebug', '~> 3.7.0' # 3.8 requires ruby 2.4
gem 'rubocop'
gem 'rubocop-rails'
gem 'spring', '1.7.2'
gem 'spring'
gem 'spring-commands-rspec'
# 1.0.9 fixed openssl issues on macOS https://github.com/eventmachine/eventmachine/issues/602
@@ -166,5 +178,5 @@ group :development do
# greater than 1.0.9, so we just required the latest available version here.
gem 'eventmachine', '>= 1.2.3'
gem 'rack-mini-profiler', '< 2.0.0'
gem 'rack-mini-profiler', '< 3.0.0'
end

View File

@@ -1,11 +1,3 @@
GIT
remote: https://github.com/RohanM/simple_form.git
revision: 45f08a213b40f3d4bda5f5398db841137587160a
specs:
simple_form (2.0.2)
actionpack (~> 3.0)
activemodel (~> 3.0)
GIT
remote: https://github.com/jeremydurham/custom-err-msg.git
revision: 3a8ec9dddc7a5b0aab7c69a6060596de300c68f4
@@ -14,43 +6,41 @@ GIT
GIT
remote: https://github.com/openfoodfoundation/better_spree_paypal_express.git
revision: 27ad7165ea4c6e8c5f120b42b676cb9c2c272100
branch: 2-0-stable
revision: 1736e3268239a841576d2719a1f276cf9b74c5c5
branch: 2-1-0-stable
specs:
spree_paypal_express (2.0.3)
paypal-sdk-merchant (= 1.106.1)
spree_core (~> 2.0.3)
spree_core (~> 2.1.0)
GIT
remote: https://github.com/openfoodfoundation/ofn-qz.git
revision: 60da2ae4c44cbb4c8d602f59fb5fff8d0f21db3c
ref: 60da2ae4c44cbb4c8d602f59fb5fff8d0f21db3c
revision: 467f6ea1c44529c7c91cac4c8211bbd863588c0b
branch: ofn-rails-4
specs:
ofn-qz (0.1.0)
railties (~> 3.1)
GIT
remote: https://github.com/openfoodfoundation/spree.git
revision: 8a8585a43cd04d1a50dc65227f337a91b18d66d5
branch: 2-0-4-stable
revision: 0b0c422369c82b6dd7e7cb627a24e3a9fca19a6c
branch: 2-1-0-stable
specs:
spree_core (2.0.4)
activemerchant (~> 1.34)
spree_core (2.1.0)
activemerchant (= 1.78.0)
acts_as_list (= 0.2.0)
awesome_nested_set (= 2.1.5)
aws-sdk (~> 1.11.1)
awesome_nested_set (~> 3.0.0.rc.1)
aws-sdk (= 1.11.1)
cancan (~> 1.6.10)
deface (>= 0.9.1)
ffaker (~> 1.16)
highline (= 1.6.18)
httparty (~> 0.11)
json (>= 1.7.7)
kaminari (~> 0.14.1)
money (= 5.1.1)
paperclip (~> 3.0)
paranoia (~> 1.3)
rails (~> 3.2.14)
ransack (= 0.7.2)
paperclip (~> 3.4.1)
paranoia (~> 2.0)
rails (~> 4.0)
ransack (~> 1.0)
state_machine (= 1.2.0)
stringex (~> 1.5.1)
truncate_html (= 0.9.2)
@@ -65,15 +55,17 @@ GIT
rails-i18n
spree_core (>= 1.1)
GIT
remote: https://github.com/willrjmarshall/foundation_rails_helper.git
revision: 4d5d53fdc4b1fb71e66524d298c5c635de82cfbb
branch: rails3
PATH
remote: engines/catalog
specs:
foundation_rails_helper (0.4)
actionpack (>= 3.0)
activemodel (>= 3.0)
railties (>= 3.0)
catalog (0.0.1)
PATH
remote: engines/dfc_provider
specs:
dfc_provider (0.0.1)
jwt (~> 2.2)
rspec (~> 3.9)
PATH
remote: engines/order_management
@@ -89,19 +81,17 @@ GEM
remote: https://rubygems.org/
specs:
CFPropertyList (2.3.6)
actionmailer (3.2.22.5)
actionpack (= 3.2.22.5)
mail (~> 2.5.4)
actionpack (3.2.22.5)
activemodel (= 3.2.22.5)
activesupport (= 3.2.22.5)
builder (~> 3.0.0)
actionmailer (4.0.13)
actionpack (= 4.0.13)
mail (~> 2.5, >= 2.5.4)
actionpack (4.0.13)
activesupport (= 4.0.13)
builder (~> 3.1.0)
erubis (~> 2.7.0)
journey (~> 1.0.4)
rack (~> 1.4.5)
rack-cache (~> 1.2)
rack-test (~> 0.6.1)
sprockets (~> 2.2.1)
rack (~> 1.5.2)
rack-test (~> 0.6.2)
actionpack-action_caching (1.2.1)
actionpack (>= 4.0.0)
active_model_serializers (0.8.4)
activemodel (>= 3.0)
activemerchant (1.78.0)
@@ -109,26 +99,33 @@ GEM
builder (>= 2.1.2, < 4.0.0)
i18n (>= 0.6.9)
nokogiri (~> 1.4)
activemodel (3.2.22.5)
activesupport (= 3.2.22.5)
builder (~> 3.0.0)
activerecord (3.2.22.5)
activemodel (= 3.2.22.5)
activesupport (= 3.2.22.5)
arel (~> 3.0.2)
tzinfo (~> 0.3.29)
activerecord-import (1.0.4)
activemodel (4.0.13)
activesupport (= 4.0.13)
builder (~> 3.1.0)
activerecord (4.0.13)
activemodel (= 4.0.13)
activerecord-deprecated_finders (~> 1.0.2)
activesupport (= 4.0.13)
arel (~> 4.0.0)
activerecord-deprecated_finders (1.0.4)
activerecord-import (1.0.6)
activerecord (>= 3.2)
activerecord-postgresql-adapter (0.0.1)
pg
activeresource (3.2.22.5)
activemodel (= 3.2.22.5)
activesupport (= 3.2.22.5)
activesupport (3.2.22.5)
i18n (~> 0.6, >= 0.6.4)
multi_json (~> 1.0)
acts-as-taggable-on (3.5.0)
activerecord (>= 3.2, < 5)
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 (4.0.13)
i18n (~> 0.6, >= 0.6.9)
minitest (~> 4.2)
multi_json (~> 1.3)
thread_safe (~> 0.1)
tzinfo (~> 0.3.37)
acts-as-taggable-on (4.0.0)
activerecord (>= 4.0)
acts_as_list (0.2.0)
activerecord (>= 3.0)
addressable (2.7.0)
@@ -140,24 +137,21 @@ GEM
tilt
angularjs-file-upload-rails (2.4.1)
angularjs-rails (1.5.5)
arel (3.0.3)
arel (4.0.2)
ast (2.4.0)
atomic (1.1.101)
awesome_nested_set (2.1.5)
activerecord (>= 3.0.0)
awesome_nested_set (3.0.3)
activerecord (>= 4.0.0, < 5)
awesome_print (1.8.0)
aws-sdk (1.11.1)
json (~> 1.4)
nokogiri (>= 1.4.4)
uuidtools (~> 2.1)
bcrypt (3.1.13)
bcrypt-ruby (3.1.5)
bcrypt (>= 3.1.3)
blockenspiel (0.5.0)
bugsnag (6.13.0)
bugsnag (6.15.0)
concurrent-ruby (~> 1.0)
builder (3.0.4)
byebug (9.0.6)
builder (3.1.4)
byebug (11.0.1)
cancan (1.6.10)
capybara (2.18.0)
addressable
@@ -168,19 +162,18 @@ GEM
xpath (>= 2.0, < 4.0)
childprocess (3.0.0)
chronic (0.10.2)
chunky_png (1.3.10)
chunky_png (1.3.11)
climate_control (0.2.0)
cocaine (0.5.8)
climate_control (>= 0.0.3, < 1.0)
coderay (1.1.2)
coffee-rails (3.2.2)
coffee-rails (4.2.2)
coffee-script (>= 2.2.0)
railties (~> 3.2.0)
railties (>= 4.0.0)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.10.0)
colorize (0.8.1)
coffee-script-source (1.12.2)
combine_pdf (1.0.16)
ruby-rc4 (>= 0.1.5)
compass (1.0.3)
@@ -195,30 +188,25 @@ GEM
sass (>= 3.3.0, < 3.5)
compass-import-once (1.0.5)
sass (>= 3.2, < 3.5)
compass-rails (3.1.0)
compass-rails (4.0.0)
compass (~> 1.0.0)
sass-rails (< 5.1)
sprockets (< 4.0)
concurrent-ruby (1.1.5)
concurrent-ruby (1.1.6)
crack (0.4.3)
safe_yaml (~> 1.0.0)
css_parser (1.7.0)
css_parser (1.7.1)
addressable
daemons (1.3.1)
dalli (2.7.10)
database_cleaner (0.7.1)
database_cleaner (1.8.5)
db2fog (0.9.0)
activerecord (>= 3.2.0, < 5.0)
fog (~> 1.0)
rails (>= 3.2.0, < 5.0)
ddtrace (0.32.0)
ddtrace (0.39.0)
msgpack
debugger-linecache (1.2.0)
deface (1.0.2)
colorize (>= 0.5.8)
nokogiri (~> 1.6.0)
polyglot
rails (>= 3.1)
delayed_job (4.1.8)
activesupport (>= 3.0, < 6.1)
delayed_job_active_record (4.1.4)
@@ -229,13 +217,17 @@ GEM
delayed_job (> 2.0.3)
rack-protection (>= 1.5.5)
sinatra (>= 1.4.4)
devise (2.2.8)
bcrypt-ruby (~> 3.0)
devise (3.5.10)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (~> 3.1)
warden (~> 1.2.1)
railties (>= 3.2.6, < 5)
responders
thread_safe (~> 0.1)
warden (~> 1.2.3)
devise-encryptable (0.2.0)
devise (>= 2.1.0)
devise-token_authenticatable (0.4.10)
devise (>= 3.5.2, < 4.0.0)
diff-lcs (1.3)
diffy (3.3.0)
docile (1.3.2)
@@ -251,8 +243,8 @@ GEM
railties (>= 3.0.0)
faraday (1.0.0)
multipart-post (>= 1.2, < 3)
ffaker (1.22.1)
ffi (1.11.3)
ffaker (1.32.1)
ffi (1.12.2)
figaro (1.1.1)
thor (~> 0.14)
fission (0.5.0)
@@ -291,7 +283,7 @@ GEM
fog-xml (~> 0.1.1)
ipaddress (~> 0.5)
json (>= 1.8, < 2.0)
fog-aliyun (0.3.2)
fog-aliyun (0.3.5)
fog-core
fog-json
ipaddress (~> 0.8)
@@ -349,8 +341,8 @@ GEM
multi_json (~> 1.10)
fog-local (0.6.0)
fog-core (>= 1.27, < 3.0)
fog-openstack (0.1.25)
fog-core (~> 1.40)
fog-openstack (0.3.10)
fog-core (>= 1.45, <= 2.1.0)
fog-json (>= 1.0)
ipaddress (>= 0.8)
fog-powerdns (0.2.0)
@@ -394,12 +386,13 @@ GEM
fog-voxel (0.1.0)
fog-core
fog-xml
fog-vsphere (2.3.0)
fog-vsphere (3.2.1)
fog-core
rbvmomi (~> 1.9)
fog-xenserver (0.3.0)
rbvmomi (>= 1.9, < 3)
fog-xenserver (1.0.0)
fog-core
fog-xml
xmlrpc
fog-xml (0.1.3)
fog-core
nokogiri (>= 1.5.11, < 2.0.0)
@@ -415,30 +408,35 @@ GEM
fuubar (2.5.0)
rspec-core (~> 3.0)
ruby-progressbar (~> 1.4)
geocoder (1.1.8)
gmaps4rails (1.5.6)
haml (4.0.7)
geocoder (1.6.3)
get_process_mem (0.2.5)
ffi (~> 1.0)
gmaps4rails (2.1.2)
haml (5.1.2)
temple (>= 0.8.0)
tilt
hashdiff (1.0.0)
hashdiff (1.0.1)
highline (1.6.18)
hike (1.2.3)
httparty (0.16.2)
httparty (0.18.1)
mime-types (~> 3.0)
multi_xml (>= 0.5.2)
i18n (0.6.11)
i18n-js (3.6.0)
i18n-js (3.7.1)
i18n (>= 0.6.6)
immigrant (0.3.6)
activerecord (>= 3.0)
ipaddress (0.8.3)
jaro_winkler (1.5.4)
journey (1.0.4)
jquery-migrate-rails (1.2.1)
jquery-rails (3.0.4)
jquery-rails (3.1.5)
railties (>= 3.0, < 5.0)
thor (>= 0.14, < 2.0)
jquery-ui-rails (4.0.5)
railties (>= 3.1.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)
@@ -454,33 +452,36 @@ GEM
letter_opener (1.7.0)
launchy (~> 2.2)
libv8 (7.3.492.27.1)
mail (2.5.5)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mail (2.7.1)
mini_mime (>= 0.1.1)
method_source (0.9.2)
mime-types (1.25.1)
mini_mime (1.0.1)
mini_portile2 (2.1.0)
mini_racer (0.2.9)
libv8 (>= 6.9.411)
mime-types (3.3.1)
mime-types-data (~> 3.2015)
mime-types-data (3.2020.0512)
mini_mime (1.0.2)
mini_portile2 (2.4.0)
mini_racer (0.2.15)
libv8 (> 7.3)
minitest (4.7.5)
momentjs-rails (2.20.1)
railties (>= 3.1)
money (5.1.1)
i18n (~> 0.6.0)
msgpack (1.3.1)
multi_json (1.14.1)
msgpack (1.3.3)
multi_json (1.15.0)
multi_xml (0.6.0)
multipart-post (2.1.1)
newrelic_rpm (3.18.1.330)
nokogiri (1.6.8.1)
mini_portile2 (~> 2.1.0)
nokogiri (1.10.9)
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)
oj (3.10.5)
oj (3.10.8)
optimist (3.0.0)
orm_adapter (0.5.0)
paper_trail (5.2.3)
activerecord (>= 3.0, < 6.0)
@@ -492,9 +493,9 @@ GEM
cocaine (~> 0.5.0)
mime-types
parallel (1.19.1)
paranoia (1.3.4)
activerecord (~> 3.1)
parser (2.7.0.4)
paranoia (2.4.2)
activerecord (>= 4.0, < 6.1)
parser (2.7.1.0)
ast (~> 2.4.0)
paypal-sdk-core (0.2.10)
multi_json (~> 1.0)
@@ -502,70 +503,62 @@ GEM
paypal-sdk-merchant (1.106.1)
paypal-sdk-core (~> 0.2.3)
pg (0.21.0)
polyamorous (0.5.0)
activerecord (~> 3.0)
polyglot (0.3.5)
power_assert (1.1.5)
power_assert (1.2.0)
pry (0.12.2)
coderay (~> 1.1.0)
method_source (~> 0.9.0)
pry-byebug (3.4.3)
byebug (>= 9.0, < 9.1)
pry-byebug (3.7.0)
byebug (~> 11.0)
pry (~> 0.10)
public_suffix (4.0.3)
rabl (0.8.4)
activesupport (>= 2.3.14)
rack (1.4.7)
rack-cache (1.9.0)
rack (>= 0.4)
rack-mini-profiler (1.1.6)
public_suffix (4.0.5)
rack (1.5.5)
rack-mini-profiler (2.0.2)
rack (>= 1.2.0)
rack-protection (1.5.5)
rack
rack-rewrite (1.5.1)
rack-ssl (1.3.4)
rack-ssl (1.4.1)
rack
rack-test (0.6.3)
rack (>= 1.0)
rails (3.2.22.5)
actionmailer (= 3.2.22.5)
actionpack (= 3.2.22.5)
activerecord (= 3.2.22.5)
activeresource (= 3.2.22.5)
activesupport (= 3.2.22.5)
bundler (~> 1.0)
railties (= 3.2.22.5)
rails-i18n (3.0.1)
i18n (~> 0.5)
rails (>= 3.0.0, < 4.0.0)
rails (4.0.13)
actionmailer (= 4.0.13)
actionpack (= 4.0.13)
activerecord (= 4.0.13)
activesupport (= 4.0.13)
bundler (>= 1.3.0, < 2.0)
railties (= 4.0.13)
sprockets-rails (~> 2.0)
rails-i18n (4.0.5)
i18n (~> 0.6)
railties (~> 4.0)
rails_safe_tasks (1.0.0)
railties (3.2.22.5)
actionpack (= 3.2.22.5)
activesupport (= 3.2.22.5)
rack-ssl (~> 1.3.2)
railties (4.0.13)
actionpack (= 4.0.13)
activesupport (= 4.0.13)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (>= 0.14.6, < 2.0)
thor (>= 0.18.1, < 2.0)
rainbow (3.0.0)
raindrops (0.19.1)
rake (13.0.0)
ransack (0.7.2)
actionpack (~> 3.0)
activerecord (~> 3.0)
polyamorous (~> 0.5.0)
rake (13.0.1)
ransack (1.8.10)
actionpack (>= 3.0, < 5.2)
activerecord (>= 3.0, < 5.2)
activesupport (>= 3.0, < 5.2)
i18n
rb-fsevent (0.10.3)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
rbvmomi (1.13.0)
rb-inotify (0.10.1)
ffi (~> 1.0)
rbvmomi (2.2.0)
builder (~> 3.0)
json (>= 1.8)
nokogiri (~> 1.5)
trollop (~> 2.1)
rdoc (3.12.2)
json (~> 1.4)
optimist (~> 3.0)
redcarpet (3.5.0)
request_store (1.4.1)
rack (>= 1.4)
responders (1.1.2)
railties (>= 3.2, < 4.2)
rexml (3.2.4)
roadie (3.4.0)
css_parser (~> 1.4)
@@ -580,15 +573,15 @@ GEM
rspec-core (~> 3.9.0)
rspec-expectations (~> 3.9.0)
rspec-mocks (~> 3.9.0)
rspec-core (3.9.0)
rspec-support (~> 3.9.0)
rspec-core (3.9.1)
rspec-support (~> 3.9.1)
rspec-expectations (3.9.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.9.0)
rspec-mocks (3.9.0)
rspec-mocks (3.9.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.9.0)
rspec-rails (3.9.0)
rspec-rails (3.9.1)
actionpack (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
@@ -598,80 +591,96 @@ GEM
rspec-support (~> 3.9.0)
rspec-retry (0.6.2)
rspec-core (> 3.3)
rspec-support (3.9.0)
rubocop (0.80.1)
rspec-support (3.9.2)
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, < 1.7)
rubocop-rails (2.4.2)
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)
rubyzip (1.3.0)
safe_yaml (1.0.5)
sass (3.3.14)
sass-rails (3.2.6)
railties (~> 3.2.0)
sass (>= 3.1.10)
tilt (~> 1.3)
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 (2.8.0)
activesupport (>= 3.0.0)
shoulda-matchers (3.1.3)
activesupport (>= 4.0.0)
simplecov (0.17.1)
docile (~> 1.1)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.2)
sinatra (1.4.6)
rack (~> 1.4)
sinatra (1.4.8)
rack (~> 1.5)
rack-protection (~> 1.4)
tilt (>= 1.3, < 3)
spinjs-rails (1.4)
rails (>= 3.1)
spring (1.7.2)
spring-commands-rspec (1.0.4)
spring (>= 0.9.1)
sprockets (2.2.3)
sprockets (2.12.5)
hike (~> 1.2)
multi_json (~> 1.0)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
sprockets-rails (2.3.3)
actionpack (>= 3.0)
activesupport (>= 3.0)
sprockets (>= 2.8, < 4.0)
state_machine (1.2.0)
stringex (1.5.1)
stripe (5.15.0)
test-unit (3.3.5)
stripe (5.22.0)
temple (0.8.2)
test-unit (3.3.6)
power_assert
thor (0.20.3)
thread_safe (0.3.6)
tilt (1.4.1)
timecop (0.9.1)
treetop (1.4.15)
polyglot
polyglot (>= 0.3.1)
trollop (2.9.9)
truncate_html (0.9.2)
turbo-sprockets-rails3 (0.3.14)
railties (> 3.2.8, < 4.0.0)
sprockets (>= 2.2.0)
tzinfo (0.3.56)
tzinfo (0.3.57)
uglifier (4.2.0)
execjs (>= 0.3.0, < 3)
unicode-display_width (1.6.1)
unicorn (5.5.3)
unicode-display_width (1.7.0)
unicorn (5.6.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)
uuidtools (2.1.5)
warden (1.2.7)
rack (>= 1.0)
@@ -679,15 +688,17 @@ GEM
nokogiri (~> 1.6)
rubyzip (>= 1.3.0)
selenium-webdriver (>= 3.0, < 4.0)
webmock (3.8.2)
webmock (3.8.3)
addressable (>= 2.3.6)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
whenever (0.11.0)
whenever (1.0.0)
chronic (>= 0.6.3)
wicked_pdf (1.1.0)
wicked_pdf (2.1.0)
activesupport
wkhtmltopdf-binary (0.12.5)
xml-simple (1.1.5)
xmlrpc (0.3.0)
xpath (2.1.0)
nokogiri (~> 1.3)
@@ -695,107 +706,119 @@ PLATFORMS
ruby
DEPENDENCIES
actionpack-action_caching
active_model_serializers (= 0.8.4)
activemerchant (~> 1.78)
activemerchant (~> 1.78.0)
activerecord-import
activerecord-postgresql-adapter
acts-as-taggable-on (~> 3.4)
activerecord-session_store
acts-as-taggable-on (~> 4.0)
acts_as_list (= 0.2.0)
andand
angular-rails-templates (~> 0.3.0)
angularjs-file-upload-rails (~> 2.4.1)
angularjs-rails (= 1.5.5)
atomic
awesome_nested_set (~> 3.0.0.rc.1)
awesome_print
aws-sdk
blockenspiel
aws-sdk (= 1.11.1)
bugsnag
byebug (~> 9.0.0)
byebug (~> 11.0.0)
cancan (~> 1.6.10)
capybara (>= 2.18.0)
coffee-rails (~> 3.2.1)
catalog!
coffee-rails (~> 4.2.2)
combine_pdf
compass-rails
custom_error_message!
daemons
dalli
database_cleaner (= 0.7.1)
database_cleaner
db2fog
ddtrace
debugger-linecache
deface (= 1.0.2)
delayed_job_active_record
delayed_job_web
devise (~> 2.2.5)
devise-encryptable (= 0.2.0)
devise (~> 3.5.10)
devise-encryptable
devise-token_authenticatable (~> 0.4.10)
dfc_provider!
diffy
eventmachine (>= 1.2.3)
factory_bot_rails
factory_bot_rails (= 4.10.0)
ffaker (~> 1.16)
figaro
foreigner
foundation-icons-sass-rails
foundation-rails
foundation_rails_helper!
foundation-rails (= 5.5.2.1)
fuubar (~> 2.5.0)
geocoder
gmaps4rails
haml
highline (= 1.6.18)
httparty (~> 0.18)
i18n (~> 0.6.11)
i18n-js (~> 3.6.0)
i18n-js (~> 3.7.1)
immigrant
jquery-migrate-rails
jquery-rails (= 3.0.4)
jquery-ui-rails (~> 4.0.0)
jquery-rails (= 3.1.5)
jquery-ui-rails (~> 4.2)
json (>= 1.7.7)
json_spec (~> 1.1.4)
jwt (~> 2.2)
kaminari (~> 0.14.1)
knapsack
letter_opener (>= 1.4.1)
mini_racer (= 0.2.9)
mini_racer (= 0.2.15)
momentjs-rails
money (= 5.1.1)
newrelic_rpm (~> 3.0)
nokogiri (>= 1.6.7.1)
oauth2 (~> 1.4.4)
ofn-qz!
oj
order_management!
paper_trail (~> 5.2.3)
paperclip (~> 3.4.1)
paranoia (~> 2.0)
pg (~> 0.21.0)
pry-byebug (>= 3.4.3)
rabl
rack-mini-profiler (< 2.0.0)
pry (~> 0.12.0)
pry-byebug (~> 3.7.0)
rack-mini-profiler (< 3.0.0)
rack-rewrite
rack-ssl
rails (~> 3.2.22)
rails-i18n (~> 3.0.0)
rails (~> 4.0.13)
rails-i18n (~> 4.0)
rails_safe_tasks (~> 1.0)
ransack (~> 1.8.10)
redcarpet
roadie-rails (~> 1.3.0)
roo (~> 2.8.3)
rspec-rails (>= 3.5.2)
rspec-retry
rswag
rubocop
rubocop-rails
sass (~> 3.3)
sass-rails (~> 3.2.3)
sass
sass-rails
select2-rails (~> 3.4.7)
selenium-webdriver
shoulda-matchers
simple_form!
simplecov
spinjs-rails
spree_core!
spree_i18n!
spree_paypal_express!
spring (= 1.7.2)
spring
spring-commands-rspec
state_machine (= 1.2.0)
stringex (~> 1.5.1)
stripe
test-unit (~> 3.3)
timecop
truncate_html
turbo-sprockets-rails3
truncate_html (= 0.9.2)
uglifier (>= 1.0.3)
unicorn
unicorn-rails
unicorn-worker-killer
web!
webdrivers
webmock
@@ -807,4 +830,4 @@ RUBY VERSION
ruby 2.3.7p456
BUNDLED WITH
1.17.2
1.17.3

View File

@@ -35,7 +35,7 @@ We use [BrowserStack](https://www.browserstack.com/) as a manual testing tool. B
Copyright (c) 2012 - 2020 Open Food Foundation, released under the AGPL licence.
[survey]: https://docs.google.com/a/eaterprises.com.au/forms/d/1zxR5vSiU9CigJ9cEaC8-eJLgYid8CR8er7PPH9Mc-30/edit#
[slack-invite]: https://join.slack.com/t/openfoodnetwork/shared_invite/enQtNzY3NDEwNzM2MDM0LWFmNGRhNDUwYzNmNWNkYmFkMzgxNDg1OTg1ODNjNWY4Y2FhNDIwNmE4ZWI0OThiMGNmZjFkODczNGZiYTJmNWI
[slack-invite]: https://join.slack.com/t/openfoodnetwork/shared_invite/zt-9sjkjdlu-r02kUMP1zbrTgUhZhYPF~A
[contributor-guide]: https://ofn-user-guide.gitbook.io/ofn-contributor-guide/who-are-we
[ofn-install]: https://github.com/openfoodfoundation/ofn-install
[super-admin-guide]: https://ofn-user-guide.gitbook.io/ofn-super-admin-guide

View File

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 82 KiB

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
id="svg4"
xml:space="preserve"
enable-background="new 0 0 6 3"
viewBox="0 0 6 3"
height="3px"
width="24px"
y="0px"
x="12px"
version="1.1"><metadata
id="metadata10"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs8" /><polygon
style="fill:#000000;fill-opacity:1"
id="polygon2"
points="5.992,0 2.992,3 -0.008,0 " /></svg>

After

Width:  |  Height:  |  Size: 832 B

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 138 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 570 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 244 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 195 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 123 KiB

View File

@@ -1,72 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 17.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="386.638px" height="320px" viewBox="-31.319 2 386.638 320" enable-background="new -31.319 2 386.638 320"
xml:space="preserve">
<g>
<path fill="#ABDBD0" d="M331.518,159.254c-13.147,0-23.805,26.723-23.805,59.69c0,32.96,10.658,59.685,23.805,59.685
c13.142,0,23.801-26.725,23.801-59.685C355.319,185.977,344.66,159.254,331.518,159.254z M332.114,255.185
c-8.06,0-14.593-15.746-14.593-35.167s6.533-35.165,14.593-35.165c8.059,0,14.594,15.743,14.594,35.165
S340.173,255.185,332.114,255.185z"/>
<path fill="#ABDBD0" d="M304.557,219.468c0-36.244,11.718-65.623,26.171-65.623c2.107,0,4.154,0.642,6.116,1.823
c-10.469-8.709-35.108-4.515-46.498-2.514c-2.139,3.216-3.572,6.079-4.237,7.624c-3.91,9.023-7.063,22.001-7.063,22.001
l-11.863-0.291l11.689,55.666h-17.909c2.54,25.911,10.809,43.072,25.314,46.94c0,0,30.567,4.944,45.693-0.081
c-0.414,0.046-0.828,0.081-1.243,0.081C316.273,285.091,304.557,255.707,304.557,219.468z"/>
<path fill="#ABDBD0" d="M64.393,237.666c0-46.574,34.058-84.332,76.072-84.332c1.812,0,3.605,0.095,5.386,0.234
c-5.466-1.08-11.117-1.655-16.903-1.655c-47.453,0-85.919,38.074-85.919,85.044c0,46.967,38.467,85.042,85.919,85.042
c2.052,0,4.08-0.097,6.096-0.238C95.562,318.679,64.393,282.219,64.393,237.666z"/>
<path fill="#ABDBD0" d="M122.02,149.109c44.188-2.104,67.371,17.402,79.829,34.057l3.027-2.314l4.452-5.008l28.39,7.793
l10.02,52.325h27.275l-11.689-55.667l11.861,0.291c0,0,3.157-12.974,7.066-22c1.977-4.57,10.576-20.597,24.492-23.378
c13.917-2.784,26.31,15.218,26.31,15.218l-6.824-19.114l-25.606-9.464l-7.794-42.304l11.689-7.236l-1.114-11.69l-64.57-23.38
l-82.387,19.483V66.74l13.361,3.341l-8.908,25.608c0,0-23.709-3.198-47.031-1.02c-27.244,2.543-54.707,10.521-54.707,10.521
l-7.365,14.434l-5.009,66.242l2.983,0.565l5.182-59.414l70.49-6.662L122.02,149.109L122.02,149.109z M65.958,118.276
c-3.541,0.556-6.775-1.29-7.219-4.123c-0.446-2.835,2.065-5.583,5.606-6.139c3.543-0.556,6.776,1.288,7.22,4.124
C72.011,114.972,69.5,117.719,65.958,118.276z M107.793,115.428c-4.711,0.741-9.011-1.713-9.603-5.483
c-0.592-3.77,2.748-7.425,7.458-8.167c4.713-0.741,9.014,1.717,9.604,5.484C115.845,111.034,112.505,114.689,107.793,115.428z
M225.388,109.481h-19.989L166.472,98.96l7.715-25.25l57.162-10.17L225.388,109.481z M252.39,181.723l-17.886-0.702l7.015-117.482
l30.508,9.469l5.612,49.447L252.39,181.723z M282.025,122.017l-6.135-47.956l14.378,7.715l7.015,43.925L282.025,122.017z"/>
<path fill="#ABDBD0" d="M147.008,91.476V57.053h-6.84V41.534c-0.001-8.57-6.945-15.515-15.517-15.519v6.314
c5.083,0.008,9.198,4.123,9.206,9.204v15.519h-6.312v33.7C134.962,90.733,141.75,91.082,147.008,91.476z"/>
<path fill="#ABDBD0" d="M-22.811,227.408c0-33.523,28.628-60.694,63.942-60.694c1.17,0,2.333,0.034,3.487,0.094l0.406-5.338
c-2.084-0.176-4.193-0.274-6.325-0.274c-38.67-0.001-70.018,29.602-70.018,66.12c0,36.522,31.348,66.125,70.018,66.125
c6.585,0,12.95-0.877,18.994-2.483c-1.019-1.387-1.98-2.814-2.918-4.26c-4.397,0.909-8.959,1.4-13.642,1.4
C5.817,288.099-22.811,260.925-22.811,227.408z"/>
<path fill="#ABDBD0" d="M10.539,226.003c0-18.358,16.222-33.24,36.233-33.24c2.119,0,4.189,0.176,6.207,0.497
c0.214-0.435,0.437-0.864,0.675-1.295l-10.952-2.055l1.408-18.469c-1.078-0.059-2.159-0.087-3.249-0.087
c-32.898,0-59.568,25.249-59.568,56.395c0,31.139,26.67,56.388,59.568,56.388c4.363,0,8.614-0.457,12.71-1.299
c-4.71-7.248-8.31-15.242-10.552-23.764C24.771,257.346,10.539,243.2,10.539,226.003z"/>
<g>
<polygon fill="#ABDBD0" points="121.189,130.962 56.135,136.089 56.662,129.208 122.02,123.859 "/>
<polygon fill="#ABDBD0" points="120.531,141.218 55.478,146.347 56.004,139.465 121.364,134.116 "/>
<path fill="#ABDBD0" d="M120.311,143.455l-65.36,5.348l-0.526,6.882l50.139-3.953c4.875-1.368,9.922-2.336,15.109-2.83
L120.311,143.455z"/>
<path fill="#ABDBD0" d="M54.293,159.059l-0.527,6.883l24.851-1.96c4.491-3.131,9.296-5.842,14.364-8.088L54.293,159.059z"/>
<path fill="#ABDBD0" d="M72.954,168.275l-19.187,1.571l-0.526,6.882l11.721-0.926C67.461,173.128,70.129,170.612,72.954,168.275z"
/>
<path fill="#ABDBD0" d="M52.847,179.313l-0.526,6.882l4.571-0.362c1.745-2.542,3.636-4.978,5.641-7.313L52.847,179.313z"/>
</g>
<circle fill="#ABDBD0" cx="140.958" cy="239.852" r="19.726"/>
<ellipse fill="#ABDBD0" cx="328.491" cy="218.807" rx="4.487" ry="12.775"/>
<g>
<circle fill="#ABDBD0" cx="162.134" cy="223.81" r="2.781"/>
<circle fill="#ABDBD0" cx="133.371" cy="215.827" r="2.781"/>
<circle fill="#ABDBD0" cx="115.492" cy="239.462" r="2.781"/>
<circle fill="#ABDBD0" cx="131.915" cy="265.616" r="2.781"/>
<circle fill="#ABDBD0" cx="161.682" cy="255.915" r="2.783"/>
</g>
<path fill="#ABDBD0" d="M126.341,6.21c-9.103,0-16.483,7.379-16.483,16.482c0,2.76,0.686,5.357,1.886,7.641
c-2.135-2.062-3.7-4.699-4.48-7.655l0,0c-0.538,0.587-1.051,1.203-1.509,1.884c-5.088,7.548-3.096,17.791,4.454,22.881
c2.287,1.542,4.825,2.424,7.39,2.708c-4.22,0.898-8.783,0.158-12.644-2.444c-7.548-5.088-9.542-15.333-4.452-22.881
c1.634-2.423,3.81-4.247,6.245-5.472c-0.014-0.289-0.046-0.574-0.046-0.869c0-3.665,1.211-7.038,3.233-9.775l-0.001,0.001
c-0.855-0.185-1.731-0.312-2.642-0.312c-7.101,0-12.857,5.756-12.857,12.858c0,2.152,0.535,4.177,1.472,5.959
c-2.421-2.337-3.933-5.611-3.933-9.241c0-7.101,5.756-12.857,12.856-12.857c2.414,0,4.663,0.675,6.591,1.833
c-0.004,0.002-0.004,0.004-0.006,0.005C114.405,3.9,118.571,2,123.185,2c6.343,0,11.841,3.588,14.598,8.842
C134.817,7.98,130.789,6.21,126.341,6.21z"/>
<path fill="#ABDBD0" d="M188.32,300.982c-0.004,0-0.006,0.002-0.008,0.004c19.094-15.154,31.275-38.079,31.275-63.757
c0-40.085-29.659-73.5-69.016-81.055c-1.782-0.134-3.574-0.227-5.385-0.227c-42.013,0-76.072,36.7-76.072,81.97
c0,43.31,31.169,78.747,70.65,81.743c7.991-0.539,15.673-2.145,22.914-4.642L188.32,300.982z M144.663,286.068
c-23.696,0-42.907-20.166-42.907-45.041c0-24.878,19.211-45.042,42.907-45.042c23.697,0,42.908,20.166,42.908,45.042
C187.571,265.902,168.359,286.068,144.663,286.068z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 540 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 534 B

View File

@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="28px" height="33px" enable-background="new 0 0 28 33" version="1.1" viewBox="0 0 28 33" xmlns="http://www.w3.org/2000/svg"><path d="M14,25c-6.059,0-10.988,1.679-10.988,3.333c0,2.485,10.307,4.542,10.746,4.643 C13.828,32.992,13.914,33,14,33c0.084,0,0.17-0.008,0.239-0.023c0.439-0.099,10.749-2.114,10.749-4.643 C24.988,26.679,20.059,25,14,25z" fill="#282828" opacity=".25"/><path d="M14,0C6.28,0,0,6.717,0,13.332c0,9.941,13.132,18.169,13.691,18.572C13.78,31.968,13.891,32,14,32 c0.107,0,0.217-0.031,0.305-0.094C14.864,31.511,28,23.45,28,13.332C28,6.717,21.72,0,14,0z" fill="#fff"/><g><g fill="#0b8c61"><path d="m14 0c-7.72 0-14 6.717-14 13.333 0 9.941 13.132 18.169 13.691 18.571 0.089 0.064 0.2 0.096 0.309 0.096 0.107 0 0.217-0.031 0.305-0.094 0.559-0.395 13.695-8.456 13.695-18.573 0-6.616-6.28-13.333-14-13.333zm9.5 12.057c0 0.863-0.567 1.661-1.325 1.942l-1.025 5.889c-0.015 0.976-0.889 1.831-1.94 1.831h-10.466c-1.052 0-1.925-0.855-1.947-1.906l-1.024-5.828c-0.737-0.294-1.273-1.075-1.273-1.928v-0.827c0-1.074 0.874-1.948 1.948-1.948h2.302l1.396-2.247c0.4-0.698 1.417-0.978 2.145-0.555 0.755 0.435 1.015 1.403 0.58 2.159l-0.41 0.642h2.662l-0.39-0.61c-0.227-0.391-0.284-0.823-0.174-1.235 0.109-0.406 0.37-0.745 0.734-0.955 0.716-0.417 1.739-0.148 2.159 0.579l1.381 2.223h2.718c1.074 0 1.948 0.874 1.948 1.948v0.826z"/><rect x="3.6006" y="6.9915" width="20.415" height="15.521"/><rect x="8.9841" y="5.6631" width="10.487" height="3.6356"/></g><text x="5.0698848" y="20.243376" fill="#000000" font-family="sans-serif" font-size="16px" style="line-height:1.25" xml:space="preserve"><tspan x="5.0698848" y="20.243376" fill="#ffffff" font-family="Arial" font-size="16px" font-weight="bold">1+</tspan></text></g></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 759 B

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
id="svg4"
xml:space="preserve"
enable-background="new 0 0 6 3"
viewBox="0 0 6 3"
height="3px"
width="24px"
y="0px"
x="12px"
version="1.1"><metadata
id="metadata10"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs8" /><polygon
style="fill:#ffffff;fill-opacity:1"
id="polygon2"
points="5.992,0 2.992,3 -0.008,0 " /></svg>

After

Width:  |  Height:  |  Size: 832 B

View File

@@ -20,7 +20,6 @@
//= require angular
//= require angular-resource
//= require angular-animate
//= require angular-sanitize
//= require angularjs-file-upload
//= require ../shared/ng-infinite-scroll.min.js
//= require ../shared/ng-tags-input.min.js
@@ -31,7 +30,6 @@
//= require spree
//= require admin/spree/spree-select2
//= require modernizr
//= require spin
//= require equalize
//= require css_browser_selector_dev
//= require responsive-tables
@@ -67,6 +65,8 @@
// text, dates and translations
//= require textAngular-rangy.min.js
// This replaces angular-sanitize. We should include only one.
// https://github.com/textAngular/textAngular#where-to-get-it
//= require textAngular-sanitize.min.js
//= require textAngular.min.js
//= require i18n/translations
@@ -80,7 +80,11 @@
//= require moment/nb.js
//= require moment/pt-br.js
//= require moment/pt.js
//= require moment/ru.js
//= require moment/sv.js
//= require moment/ca.js
//= require moment/ar.js
//= require moment/tr.js
// foundation
//= require ../shared/mm-foundation-tpls-0.9.0-20180826174721.min.js

View File

@@ -105,6 +105,7 @@ angular.module("ofn.admin").controller "AdminProductEditCtrl", ($scope, $timeout
$scope.producerFilter = "0"
$scope.categoryFilter = "0"
$scope.importDateFilter = "0"
$scope.fetchProducts()
$scope.$watch 'sortOptions', (sort) ->
return unless sort && sort.predicate != ""

View File

@@ -29,7 +29,7 @@ angular.module("admin.enterprises")
# from a directive "nav-check" in the page - if we pass it here it will be called in the test suite,
# and on all new uses of this contoller, and we might not want that.
enterpriseNavCallback = ->
if $scope.enterprise_form != undefined && $scope.enterprise_form.$dirty
if $scope.enterprise_form?.$dirty
t('admin.unsaved_confirm_leave')
# Register the NavigationCheck callback

View File

@@ -2,19 +2,24 @@ angular.module("admin.indexUtils").factory "PagedFetcher", (dataFetcher) ->
new class PagedFetcher
# Given a URL like http://example.com/foo?page=::page::&per_page=20
# And the response includes an attribute pages with the number of pages to fetch
# Fetch each page async, and call the processData callback with the resulting data
fetch: (url, processData, onLastPageComplete) ->
dataFetcher(@urlForPage(url, 1)).then (data) =>
processData data
# Fetch each page async, and call the pageCallback callback with the resulting data
# Developer note: this class should not be re-used!
page: 1
last_page: 1
if data.pages > 1
for page in [2..data.pages]
lastPromise = dataFetcher(@urlForPage(url, page)).then (data) ->
processData data
onLastPageComplete && lastPromise.then onLastPageComplete
return
else
onLastPageComplete && onLastPageComplete()
fetch: (url, pageCallback) ->
@fetchPages(url, @page, pageCallback)
urlForPage: (url, page) ->
url.replace("::page::", page)
fetchPages: (url, page, pageCallback) ->
dataFetcher(@urlForPage(url, page)).then (data) =>
@page++
@last_page = data.pages
pageCallback(data) if pageCallback
if @page <= @last_page
@fetchPages(url, @page, pageCallback)

View File

@@ -1,7 +1,7 @@
angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout, $http, $q, StatusMessage, Columns, SortOptions, Dereferencer, Orders, LineItems, Enterprises, OrderCycles, VariantUnitManager, RequestMonitor) ->
$scope.initialized = false
$scope.RequestMonitor = RequestMonitor
$scope.filteredLineItems = []
$scope.line_items = LineItems.all
$scope.confirmDelete = true
$scope.startDate = moment().startOf('day').subtract(7, 'days').format('YYYY-MM-DD')
$scope.endDate = moment().startOf('day').format('YYYY-MM-DD')
@@ -15,50 +15,77 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
$scope.confirmRefresh = ->
LineItems.allSaved() || confirm(t("unsaved_changes_warning"))
$scope.resetFilters = ->
$scope.distributorFilter = ''
$scope.supplierFilter = ''
$scope.orderCycleFilter = ''
$scope.quickSearch = ''
$scope.resetSelectFilters = ->
$scope.distributorFilter = 0
$scope.supplierFilter = 0
$scope.orderCycleFilter = 0
$scope.quickSearch = ""
$scope.resetFilters()
$scope.refreshData()
$scope.refreshData = ->
unless !$scope.orderCycleFilter? || $scope.orderCycleFilter == 0
$scope.startDate = moment(OrderCycles.byID[$scope.orderCycleFilter].orders_open_at).format('YYYY-MM-DD')
$scope.endDate = moment(OrderCycles.byID[$scope.orderCycleFilter].orders_close_at).startOf('day').format('YYYY-MM-DD')
unless !$scope.orderCycleFilter? || $scope.orderCycleFilter == ''
$scope.setOrderCycleDateRange()
formatted_start_date = moment($scope.startDate).format()
formatted_end_date = moment($scope.endDate).add(1,'day').format()
$scope.formattedStartDate = moment($scope.startDate).format()
$scope.formattedEndDate = moment($scope.endDate).add(1,'day').format()
return unless moment($scope.formattedStartDate).isValid() and moment($scope.formattedEndDate).isValid()
$scope.loadOrders()
$scope.loadLineItems()
unless $scope.initialized
$scope.loadAssociatedData()
$scope.dereferenceLoadedData()
$scope.setOrderCycleDateRange = ->
start_date = OrderCycles.byID[$scope.orderCycleFilter].orders_open_at
end_date = OrderCycles.byID[$scope.orderCycleFilter].orders_close_at
format = "YYYY-MM-DD HH:mm:ss Z"
$scope.startDate = moment(start_date, format).format('YYYY-MM-DD')
$scope.endDate = moment(end_date, format).startOf('day').format('YYYY-MM-DD')
$scope.loadOrders = ->
RequestMonitor.load $scope.orders = Orders.index(
"q[state_not_eq]": "canceled",
"q[completed_at_not_null]": "true",
"q[completed_at_gteq]": formatted_start_date,
"q[completed_at_lt]": formatted_end_date
"q[distributor_id_eq]": $scope.distributorFilter,
"q[order_cycle_id_eq]": $scope.orderCycleFilter,
"q[completed_at_gteq]": $scope.formattedStartDate,
"q[completed_at_lt]": $scope.formattedEndDate
)
RequestMonitor.load $scope.lineItems = LineItems.index(
"q[order][state_not_eq]": "canceled",
"q[order][completed_at_not_null]": "true",
"q[order][completed_at_gteq]": formatted_start_date,
"q[order][completed_at_lt]": formatted_end_date
$scope.loadLineItems = ->
RequestMonitor.load LineItems.index(
"q[order_state_not_eq]": "canceled",
"q[order_completed_at_not_null]": "true",
"q[order_distributor_id_eq]": $scope.distributorFilter,
"q[variant_product_supplier_id_eq]": $scope.supplierFilter,
"q[order_order_cycle_id_eq]": $scope.orderCycleFilter,
"q[order_completed_at_gteq]": $scope.formattedStartDate,
"q[order_completed_at_lt]": $scope.formattedEndDate
)
unless $scope.initialized
RequestMonitor.load $scope.distributors = Enterprises.index(action: "visible", ams_prefix: "basic", "q[sells_in][]": ["own", "any"])
RequestMonitor.load $scope.orderCycles = OrderCycles.index(ams_prefix: "basic", as: "distributor", "q[orders_close_at_gt]": "#{moment().subtract(90,'days').format()}")
RequestMonitor.load $scope.suppliers = Enterprises.index(action: "visible", ams_prefix: "basic", "q[is_primary_producer_eq]": "true")
$scope.loadAssociatedData = ->
RequestMonitor.load $scope.distributors = Enterprises.index(action: "visible", ams_prefix: "basic", "q[sells_in][]": ["own", "any"])
RequestMonitor.load $scope.orderCycles = OrderCycles.index(ams_prefix: "basic", as: "distributor", "q[orders_close_at_gt]": "#{moment().subtract(90,'days').format()}")
RequestMonitor.load $scope.suppliers = Enterprises.index(action: "visible", ams_prefix: "basic", "q[is_primary_producer_eq]": "true")
RequestMonitor.load $q.all([$scope.orders.$promise, $scope.distributors.$promise, $scope.orderCycles.$promise, $scope.suppliers.$promise, $scope.lineItems.$promise]).then ->
$scope.dereferenceLoadedData = ->
RequestMonitor.load $q.all([$scope.orders.$promise, $scope.distributors.$promise, $scope.orderCycles.$promise, $scope.suppliers.$promise, $scope.line_items.$promise]).then ->
Dereferencer.dereferenceAttr $scope.orders, "distributor", Enterprises.byID
Dereferencer.dereferenceAttr $scope.orders, "order_cycle", OrderCycles.byID
Dereferencer.dereferenceAttr $scope.lineItems, "supplier", Enterprises.byID
Dereferencer.dereferenceAttr $scope.lineItems, "order", Orders.byID
Dereferencer.dereferenceAttr $scope.line_items, "supplier", Enterprises.byID
Dereferencer.dereferenceAttr $scope.line_items, "order", Orders.byID
$scope.bulk_order_form.$setPristine()
StatusMessage.clear()
unless $scope.initialized
$scope.initialized = true
$timeout ->
$scope.resetSelectFilters()
$scope.$watch 'bulk_order_form.$dirty', (newVal, oldVal) ->
if newVal == true
@@ -77,13 +104,12 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
$scope.deleteLineItem = (lineItem) ->
if ($scope.confirmDelete && confirm(t "are_you_sure")) || !$scope.confirmDelete
LineItems.delete lineItem, =>
$scope.lineItems.splice $scope.lineItems.indexOf(lineItem), 1
LineItems.delete lineItem
$scope.deleteLineItems = (lineItems) ->
$scope.deleteLineItems = (lineItemsToDelete) ->
existingState = $scope.confirmDelete
$scope.confirmDelete = false
$scope.deleteLineItem lineItem for lineItem in lineItems when lineItem.checked
$scope.deleteLineItem lineItem for lineItem in lineItemsToDelete when lineItem.checked
$scope.confirmDelete = existingState
$scope.allBoxesChecked = ->
@@ -154,4 +180,5 @@ angular.module("admin.lineItems").controller 'LineItemsCtrl', ($scope, $timeout,
lineItem.final_weight_volume = LineItems.pristineByID[lineItem.id].final_weight_volume * lineItem.quantity / LineItems.pristineByID[lineItem.id].quantity
$scope.weightAdjustedPrice(lineItem)
$scope.resetFilters()
$scope.refreshData()

View File

@@ -1,5 +1,5 @@
angular.module('admin.orderCycles')
.controller 'AdminEditOrderCycleCtrl', ($scope, $controller, $filter, $location, $window, OrderCycle, Enterprise, EnterpriseFee, StatusMessage, Schedules, RequestMonitor, ocInstance) ->
.controller 'AdminEditOrderCycleCtrl', ($scope, $controller, $filter, $location, $window, OrderCycle, Enterprise, EnterpriseFee, StatusMessage, Schedules, RequestMonitor, NavigationCheck, ocInstance) ->
$controller('AdminOrderCycleBasicCtrl', {$scope: $scope, ocInstance: ocInstance})
order_cycle_id = $location.absUrl().match(/\/admin\/order_cycles\/(\d+)/)[1]
@@ -18,5 +18,12 @@ angular.module('admin.orderCycles')
$scope.submit = ($event, destination) ->
$event.preventDefault()
NavigationCheck.clear()
StatusMessage.display 'progress', t('js.saving')
OrderCycle.update(destination, $scope.order_cycle_form)
warnAboutUnsavedChanges = ->
if $scope.order_cycle_form?.$dirty
t('admin.unsaved_confirm_leave')
NavigationCheck.register(warnAboutUnsavedChanges)

View File

@@ -23,10 +23,13 @@ angular.module("admin.orders").controller "ordersCtrl", ($scope, $timeout, Reque
$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')
$scope.resetSelected()
params = {
'q[completed_at_lt]': $scope['q']['completed_at_lt'],
'q[completed_at_gt]': $scope['q']['completed_at_gt'],
'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'],
@@ -34,15 +37,20 @@ angular.module("admin.orders").controller "ordersCtrl", ($scope, $timeout, Reque
'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[order_cycle_id_in]': $scope['q']['order_cycle_id_in'],
'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,
per_page: $scope.per_page,
page: page
}
RequestMonitor.load(Orders.index(params).$promise)
$scope.appendStringIfNotEmpty = (baseString, stringToAppend) ->
return baseString unless baseString
baseString + stringToAppend
$scope.resetSelected = ->
$scope.selected_orders.length = 0
$scope.selected = false
@@ -67,7 +75,7 @@ angular.module("admin.orders").controller "ordersCtrl", ($scope, $timeout, Reque
return unless sort && sort.predicate != ""
$scope.sorting = sort.getSortingExpr()
$scope.fetchProducts()
$scope.fetchResults()
, true
$scope.capturePayment = (order) ->

View File

@@ -14,9 +14,10 @@ angular.module("admin.payments").factory 'AdminStripeElements', ($rootScope, Sta
@stripe.createToken(@card, cardData).then (response) =>
if(response.error)
StatusMessage.display 'error', response.error.message
console.error(JSON.stringify(response.error))
else
secrets.token = response.token.id
secrets.cc_type = @mapCC(response.token.card.brand)
secrets.cc_type = @mapTokenApiCardBrand(response.token.card.brand)
secrets.card = response.token.card
submit()
@@ -29,15 +30,16 @@ angular.module("admin.payments").factory 'AdminStripeElements', ($rootScope, Sta
@stripe.createPaymentMethod({ type: 'card', card: @card }, @card, cardData).then (response) =>
if(response.error)
StatusMessage.display 'error', response.error.message
console.error(JSON.stringify(response.error))
else
secrets.token = response.paymentMethod.id
secrets.cc_type = response.paymentMethod.card.brand
secrets.cc_type = @mapPaymentMethodsApiCardBrand(response.paymentMethod.card.brand)
secrets.card = response.paymentMethod.card
submit()
# Maps the brand returned by Stripe to that required by activemerchant
mapCC: (ccType) ->
switch ccType
# Maps the brand returned by Stripe's tokenAPI to that required by activemerchant
mapTokenApiCardBrand: (cardBrand) ->
switch cardBrand
when 'MasterCard' then return 'master'
when 'Visa' then return 'visa'
when 'American Express' then return 'american_express'
@@ -45,6 +47,14 @@ angular.module("admin.payments").factory 'AdminStripeElements', ($rootScope, Sta
when 'JCB' then return 'jcb'
when 'Diners Club' then return 'diners_club'
# Maps the brand returned by Stripe's paymentMethodsAPI to that required by activemerchant
mapPaymentMethodsApiCardBrand: (cardBrand) ->
switch cardBrand
when 'mastercard' then return 'master'
when 'amex' then return 'american_express'
when 'diners' then return 'diners_club'
else return cardBrand # a few brands are equal, for example, visa
# It doesn't matter if any of these are nil, all are optional.
makeCardData: (secrets) ->
{'name': secrets.name,

View File

@@ -2,7 +2,6 @@ angular.module("admin.resources").factory 'LineItemResource', ($resource) ->
$resource('/admin/bulk_line_items/:id.json', {}, {
'index':
method: 'GET'
isArray: true
'update':
method: 'PUT'
transformRequest: (data, headersGetter) =>

View File

@@ -1,20 +1,27 @@
angular.module("admin.resources").factory 'LineItems', ($q, LineItemResource) ->
new class LineItems
all: []
byID: {}
pristineByID: {}
pagination: {}
index: (params={}, callback=null) ->
LineItemResource.index params, (data) =>
request = LineItemResource.index params, (data) =>
@load(data)
(callback || angular.noop)(data)
@all.$promise = request.$promise
@all
resetData: ->
@all.length = 0
@byID = {}
@pristineByID = {}
load: (lineItems) ->
load: (data) ->
angular.extend(@pagination, data.pagination)
@resetData()
for lineItem in lineItems
for lineItem in data.line_items
@all.push lineItem
@byID[lineItem.id] = lineItem
@pristineByID[lineItem.id] = angular.copy(lineItem)
@@ -25,8 +32,9 @@ angular.module("admin.resources").factory 'LineItems', ($q, LineItemResource) ->
save: (lineItem) ->
deferred = $q.defer()
lineItemResource = new LineItemResource(lineItem)
lineItem.errors = {}
lineItem.$update({id: lineItem.id})
lineItemResource.$update({id: lineItem.id})
.then( (data) =>
@pristineByID[lineItem.id] = angular.copy(lineItem)
deferred.resolve(data)
@@ -54,8 +62,10 @@ angular.module("admin.resources").factory 'LineItems', ($q, LineItemResource) ->
delete: (lineItem, callback=null) ->
deferred = $q.defer()
lineItem.$delete({id: lineItem.id})
lineItemResource = new LineItemResource(lineItem)
lineItemResource.$delete({id: lineItem.id})
.then( (data) =>
@all.splice(@all.indexOf(lineItem),1)
delete @byID[lineItem.id]
delete @pristineByID[lineItem.id]
(callback || angular.noop)(data)

View File

@@ -4,7 +4,6 @@ angular.module("admin.side_menu")
items: []
selected: null
# Checks for path and uses it to set the view
# If no path, loads first view
init: =>
@@ -31,11 +30,3 @@ angular.module("admin.side_menu")
for item in @items when item.name is name
return item
null
hide_item_by_name: (name) =>
item = @find_by_name(name)
item.visible = false if item
show_item_by_name: (name) =>
item = @find_by_name(name)
item.visible = true if item

View File

@@ -1,27 +1,7 @@
$(document).ready ->
opts =
lines: 11
length: 2
width: 3
radius: 9
corners: 1
rotate: 0
color: '#fff'
speed: 0.8
trail: 48
shadow: false
hwaccel: true
className: 'spinner'
zIndex: 2e9
top: 'auto'
left: 'auto'
target = document.getElementById("spinner")
$(document).ajaxStart ->
$("#progress").fadeIn()
spinner = new Spinner(opts).spin(target)
$(document).ajaxStop ->
$("#progress").fadeOut()
$("#progress").fadeOut()

View File

@@ -2,4 +2,10 @@ angular.module("admin.utils").directive "textangularStrip", () ->
restrict: 'CA'
link: (scope, element, attrs) ->
scope.stripFormatting = ($html) ->
return String($html).replace(/<[^>]+>/gm, '')
element = document.createElement("div")
element.innerHTML = String($html)
allTags = element.getElementsByTagName("*")
for child in allTags
child.removeAttribute("style")
child.removeAttribute("class")
return element.innerHTML

View File

@@ -43,12 +43,11 @@ angular.module("admin.variantOverrides").controller "AdminVariantOverridesCtrl",
$scope.fetchProducts = ->
url = "/api/products/overridable?page=::page::;per_page=100"
PagedFetcher.fetch url, (data) => $scope.addProducts data.products
PagedFetcher.fetch url, $scope.addProducts
$scope.addProducts = (products) ->
$scope.products = $scope.products.concat products
VariantOverrides.ensureDataFor hubs, products
$scope.addProducts = (data) ->
$scope.products = $scope.products.concat data.products
VariantOverrides.ensureDataFor hubs, data.products
$scope.displayDirty = ->
if DirtyVariantOverrides.count() > 0

View File

@@ -1,9 +0,0 @@
// This is a manifest file that'll be compiled into including all the files listed below.
// Add new JavaScript/Coffee code in separate files in this directory and they'll automatically
// be included in the compiled file accessible from http://example.com/assets/application.js
// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.
//
//= require jquery
//= require jquery_ujs
//= require_tree .

View File

@@ -1,14 +1,18 @@
#= require jquery
#= require jquery_ujs
#= require jquery.ui.all
#= require spin
#
#= require angular
#= require angular-cookies
#= require angular-sanitize
#= require angular-animate
#= require angular-resource
#= require autocomplete.min.js
#= 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
#= require bluebird.js
#= require angular-scroll.min.js
#= require angular-google-maps.min.js
#= require ../shared/mm-foundation-tpls-0.9.0-20180826174721.min.js
@@ -33,7 +37,11 @@
#= require moment/nb.js
#= require moment/pt-br.js
#= require moment/pt.js
#= require moment/ru.js
#= require moment/sv.js
#= require moment/ca.js
#= require moment/ar.js
#= require moment/tr.js
#
#= require modernizr
#

View File

@@ -1,2 +1,4 @@
Darkswarm.controller "CartCtrl", ($scope, Cart, $timeout) ->
Darkswarm.controller "CartCtrl", ($scope, Cart, CurrentHub) ->
$scope.Cart = Cart
$scope.CurrentHub = CurrentHub
$scope.max_characters = 20

View File

@@ -0,0 +1,7 @@
Darkswarm.controller "CartDropdownCtrl", ($scope, Cart, BodyScroll) ->
$scope.Cart = Cart
$scope.showCartSidebar = false
$scope.toggleCartSidebar = ->
$scope.showCartSidebar = !$scope.showCartSidebar
BodyScroll.toggle()

View File

@@ -0,0 +1,2 @@
Darkswarm.controller "CartFormCtrl", ($scope) ->

View File

@@ -9,8 +9,13 @@ Darkswarm.controller "EnterprisesCtrl", ($scope, $rootScope, $timeout, $location
$scope.show_closed = false
$scope.filtersActive = false
$scope.distanceMatchesShown = false
$scope.closed_shops_loading = false
$scope.closed_shops_loaded = false
$scope.$watch "query", (query)->
$scope.resetSearch(query)
$scope.resetSearch = (query) ->
Enterprises.flagMatching query
Search.search query
$rootScope.$broadcast 'enterprisesChanged'
@@ -19,6 +24,7 @@ Darkswarm.controller "EnterprisesCtrl", ($scope, $rootScope, $timeout, $location
$timeout ->
Enterprises.calculateDistance query, $scope.firstNameMatch()
$rootScope.$broadcast 'enterprisesChanged'
$scope.closed_shops_loading = false
$timeout ->
if $location.search()['show_closed']?
@@ -73,6 +79,12 @@ Darkswarm.controller "EnterprisesCtrl", ($scope, $rootScope, $timeout, $location
undefined
$scope.showClosedShops = ->
unless $scope.closed_shops_loaded
$scope.closed_shops_loading = true
$scope.closed_shops_loaded = true
Enterprises.loadClosedEnterprises().then ->
$scope.resetSearch($scope.query)
$scope.show_closed = true
$location.search('show_closed', '1')

View File

@@ -1,6 +1,3 @@
Darkswarm.controller "GroupPageCtrl", ($scope, enterprises, Enterprises, MapConfiguration, OfnMap) ->
Darkswarm.controller "GroupPageCtrl", ($scope, enterprises, Enterprises) ->
$scope.Enterprises = Enterprises
$scope.map = angular.copy MapConfiguration.options
$scope.mapMarkers = OfnMap.enterprise_markers enterprises
$scope.embedded_layout = window.location.search.indexOf("embedded_shopfront=true") != -1

View File

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

View File

@@ -0,0 +1,17 @@
Darkswarm.controller "PageSelectionCtrl", ($scope, $location) ->
$scope.selectedPage = ->
# The path looks like `/contact` for the URL `https://ofn.org/shop#/contact`.
# We remove the slash at the beginning.
page = $location.path()[1..]
return $scope.whitelist[0] unless page
# If the path points to an unrelated path like `/login`, stay where we were.
return $scope.lastPage unless page in $scope.whitelist
$scope.lastPage = page
page
$scope.whitelistPages = (pages) ->
$scope.whitelist = pages
$scope.lastPage = pages[0]

View File

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

View File

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

View File

@@ -1,4 +1,4 @@
Darkswarm.controller "ProductsCtrl", ($scope, $filter, $rootScope, Products, OrderCycle, OrderCycleResource, FilterSelectorsService, Cart, Dereferencer, Taxons, Properties, currentHub, $timeout) ->
Darkswarm.controller "ProductsCtrl", ($scope, $sce, $filter, $rootScope, Products, OrderCycle, OrderCycleResource, FilterSelectorsService, Cart, Dereferencer, Taxons, Properties, currentHub, $timeout) ->
$scope.Products = Products
$scope.Cart = Cart
$scope.query = ""
@@ -10,6 +10,7 @@ Darkswarm.controller "ProductsCtrl", ($scope, $filter, $rootScope, Products, Ord
$scope.order_cycle = OrderCycle.order_cycle
$scope.supplied_taxons = null
$scope.supplied_properties = null
$scope.showFilterSidebar = false
$rootScope.$on "orderCycleSelected", ->
$scope.update_filters()
@@ -75,15 +76,24 @@ Darkswarm.controller "ProductsCtrl", ($scope, $filter, $rootScope, Products, Ord
$scope.appliedTaxonsList = ->
$scope.activeTaxons.map( (taxon_id) ->
Taxons.taxons_by_id[taxon_id].name
).join(" #{t('products_or')} ") if $scope.activeTaxons?
).join($scope.filtersJoinWord()) if $scope.activeTaxons?
$scope.appliedPropertiesList = ->
$scope.activeProperties.map( (property_id) ->
Properties.properties_by_id[property_id].name
).join(" #{t('products_or')} ") if $scope.activeProperties?
).join($scope.filtersJoinWord()) if $scope.activeProperties?
$scope.filtersJoinWord = ->
$sce.trustAsHtml(" <span class='join-word'>#{t('products_or')}</span> ")
$scope.clearAll = ->
$scope.clearQuery()
$scope.clearFilters()
$scope.clearQuery = ->
$scope.query = ""
$scope.clearFilters = ->
$scope.taxonSelectors.clearAll()
$scope.propertySelectors.clearAll()
@@ -94,3 +104,9 @@ Darkswarm.controller "ProductsCtrl", ($scope, $filter, $rootScope, Products, Ord
$scope.Products.products = []
$scope.update_filters()
$scope.loadProducts()
$scope.filtersCount = () ->
$scope.taxonSelectors.totalActive() + $scope.propertySelectors.totalActive()
$scope.toggleFilterSidebar = ->
$scope.showFilterSidebar = !$scope.showFilterSidebar

View File

@@ -1,2 +1,2 @@
Darkswarm.controller "ProducersTabCtrl", ($scope, Shopfront, EnterpriseModal) ->
Darkswarm.controller "ProducersTabCtrl", ($scope, Shopfront) ->
$scope.shopfront = Shopfront.shopfront

View File

@@ -7,7 +7,7 @@ window.Darkswarm = angular.module("Darkswarm", [
'templates',
'ngSanitize',
'ngAnimate',
'google-maps',
'uiGmapgoogle-maps',
'duScroll',
'angularFileUpload',
'angularSlideables'

View File

@@ -0,0 +1,9 @@
Darkswarm.directive "bodyScroll", ($rootScope, BodyScroll) ->
restrict: 'A'
scope: true
link: (scope, elem, attrs) ->
$rootScope.$on "toggleBodyScroll", ->
if BodyScroll.disabled
elem.addClass "disable-scroll"
else
elem.removeClass "disable-scroll"

View File

@@ -1,19 +0,0 @@
Darkswarm.directive "cartToggle", ($document) ->
# Toggles visibility of the "cart" popover
restrict: 'A'
link: (scope, elem, attr)->
scope.open = false
$document.bind 'click', (event) ->
cart_button = elem[0]
element_and_parents = [event.target, event.target.parentElement, event.target.parentElement.parentElement]
cart_button_clicked = (element_and_parents.indexOf(cart_button) != -1)
if cart_button_clicked
scope.$apply ->
scope.open = !scope.open
else
scope.$apply ->
scope.open = false
return

View File

@@ -0,0 +1,11 @@
Darkswarm.directive "darkerBackground", ->
restrict: "A"
link: (scope, elm, attr)->
toggleClass = (value) ->
elm.closest('.page-view').toggleClass("with-darker-background", value)
toggleClass(true)
# if an OrderCycle is selected, disable darker background
scope.$watch 'order_cycle.order_cycle_id', (newvalue, oldvalue) ->
toggleClass(false) if newvalue

View File

@@ -0,0 +1,12 @@
# Allows disabling of link buttons via disabled attribute.
# This is normally ignored, ie the link appears disabled but is still clickable.
Darkswarm.directive "disableDynamically", ->
restrict: 'A'
link: (scope, element, attrs) ->
element.on 'click', (e) ->
if attrs.disabled
e.preventDefault()
return

View File

@@ -0,0 +1,9 @@
Darkswarm.directive "disableEnterWithBlur", ()->
# Stops enter from doing normal enter things, and blurs the input
restrict: 'A'
link: (scope, element, attrs)->
element.bind "keydown keypress", (e)->
code = e.keyCode || e.which
if code == 13
element.blur()
e.preventDefault()

View File

@@ -7,4 +7,4 @@ Darkswarm.directive "enterpriseModal", (EnterpriseModal) ->
elem.on "click", (event) =>
event.stopPropagation()
scope.modalInstance = EnterpriseModal.open scope.enterprise
scope.modalInstance = EnterpriseModal.open scope.enterprise

View File

@@ -0,0 +1,6 @@
Darkswarm.directive "focusSearch", ->
restrict: 'A'
link: (scope, element, attr)->
element.bind 'click', (event) ->
# Focus seach field, ready for typing
$(element).siblings('#search').focus()

View File

@@ -1,6 +1,6 @@
Darkswarm.directive 'mapOsmTiles', ($timeout) ->
restrict: 'E'
require: '^googleMap'
require: '^uiGmapGoogleMap'
scope: {}
link: (scope, elem, attrs, ctrl) ->
$timeout =>

View File

@@ -1,7 +1,7 @@
Darkswarm.directive 'mapSearch', ($timeout, Search) ->
# Install a basic search field in a map
restrict: 'E'
require: ['^googleMap', 'ngModel']
require: ['^uiGmapGoogleMap', 'ngModel']
replace: true
template: '<input id="pac-input" ng-model="query" placeholder="' + t('location_placeholder') + '"></input>'
scope: {}

View File

@@ -1,6 +1,7 @@
Darkswarm.directive "ofnOnHand", ->
Darkswarm.directive "ofnOnHand", (StockQuantity) ->
restrict: 'A'
require: "ngModel"
scope: true
link: (scope, elem, attr, ngModel) ->
# In cases where this field gets its value from the HTML element rather than the model,
@@ -23,6 +24,4 @@ Darkswarm.directive "ofnOnHand", ->
viewValue
scope.available_quantity = ->
on_hand = parseInt(attr.ofnOnHand)
finalized_quantity = parseInt(attr.finalizedquantity) || 0 # finalizedquantity is optional
on_hand + finalized_quantity
StockQuantity.available_quantity(attr.ofnOnHand, attr.finalizedquantity)

View File

@@ -0,0 +1,75 @@
Darkswarm.directive 'ofnOpenStreetMap', ($window, MapCentreCalculator, Enterprises, EnterpriseModal, availableCountries, openStreetMapConfig) ->
restrict: 'E'
replace: true
scope: true
template: "<div></div>"
link: (scope, element, attrs, ctrl, transclude)->
map = null
markers = []
enterpriseNames = []
openStreetMapProviderName = openStreetMapConfig.open_street_map_provider_name
openStreetMapProviderOptions = JSON.parse(openStreetMapConfig.open_street_map_provider_options)
buildMarker = (enterprise, latlng, title) ->
icon = L.icon
iconUrl: enterprise.icon
marker = L.marker latlng,
draggable: true,
icon: icon,
riseOnHover: true,
title: title
marker.on "click", ->
EnterpriseModal.open enterprise
marker
enterpriseName = (enterprise) ->
return enterprise.name + " (" + enterprise.address.address1 + ", " + enterprise.address.city + ", " + enterprise.address.state_name + ")";
goToEnterprise = (selectedEnterpriseName) ->
enterprise = Enterprises.enterprises.find (enterprise) ->
enterpriseName(enterprise) == selectedEnterpriseName
map.setView([enterprise.latitude, enterprise.longitude], 12)
displayMap = ->
setMapDimensions()
zoomLevel = 6
map = L.map('open-street-map')
L.tileLayer.provider(openStreetMapProviderName, openStreetMapProviderOptions).addTo(map)
map.setView([MapCentreCalculator.initialLatitude(), MapCentreCalculator.initialLongitude()], zoomLevel)
displayEnterprises = ->
for enterprise in Enterprises.geocodedEnterprises()
marker = buildMarker(enterprise, { lat: enterprise.latitude, lng: enterprise.longitude }, enterprise.name).addTo(map)
enterpriseNames.push(enterpriseName(enterprise))
markers.push(marker)
disableSearchField = () =>
$('#open-street-map--search input').prop("disabled", true)
displaySearchField = () ->
new Autocomplete('#open-street-map--search',
onSubmit: goToEnterprise
search: searchEnterprises
)
overwriteInlinePositionRelativeToAbsoluteOnSearchField()
if Enterprises.geocodedEnterprises().length == 0
disableSearchField()
overwriteInlinePositionRelativeToAbsoluteOnSearchField = ->
$('#open-street-map--search').css("position", "absolute")
searchEnterprises = (input) ->
if input.length < 1
return []
enterpriseNames.filter (country) ->
country.toLowerCase().includes input.toLowerCase()
setMapDimensions = ->
height = $window.innerHeight - element.offset().top
element.css "width", "100%"
element.css "height", (height + "px")
displayMap()
displayEnterprises()
displaySearchField()

View File

@@ -14,8 +14,8 @@ Darkswarm.directive "ofnPageAlert", ($timeout) ->
# Wait a moment after page load before showing the alert. Otherwise we often miss the
# start of the animation.
$timeout ->
container_elems.addClass("move-down")
container_elems.addClass("move-up")
, 1000
scope.close = ->
container_elems.removeClass("move-down")
container_elems.removeClass("move-up")

View File

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

View File

@@ -10,6 +10,5 @@ Darkswarm.directive "ofnSmoothScrollTo", ($location, $document)->
# Scrolling is confused by our position:fixed top bar and page alert bar
# - add an offset to scroll to the correct location, plus 5px buffer
offset = $("nav.top-bar").height()
offset += $(".page-alert.move-down").height()
offset += 5
$document.scrollTo target, offset, 1000

View File

@@ -0,0 +1,16 @@
Darkswarm.directive "validateStockQuantity", (StockQuantity) ->
restrict: 'A'
require: "ngModel"
scope: true
link: (scope, element, attr, ngModel) ->
ngModel.$parsers.push (selectedQuantity) ->
valid_number = parseInt(selectedQuantity) != NaN
valid_quantity = parseInt(selectedQuantity) <= scope.available_quantity()
ngModel.$setValidity('stock', (valid_number && valid_quantity) );
selectedQuantity
scope.available_quantity = ->
StockQuantity.available_quantity(attr.ofnOnHand, attr.finalizedquantity)

View File

@@ -12,4 +12,4 @@ Darkswarm.filter "sensible_timeframe", (date_in_wordsFilter)->
if moment().add(2, 'days') < moment(date, dateFormat)
t 'orders_open'
else
t('closing') + date_in_wordsFilter(date)
t('closing') + ' ' + date_in_wordsFilter(date)

View File

@@ -0,0 +1,7 @@
angular.module("Darkswarm").factory "BodyScroll", ($rootScope) ->
new class BodyScroll
disabled: false
toggle: ->
@disabled = !@disabled
$rootScope.$broadcast "toggleBodyScroll"

View File

@@ -1,4 +1,4 @@
Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http, $modal, $rootScope, $resource, localStorageService) ->
Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http, $modal, $rootScope, $resource, localStorageService, RailsFlashLoader) ->
# Handles syncing of current cart/order state to server
new class Cart
dirty: false
@@ -50,7 +50,7 @@ Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http, $modal, $roo
@popQueue() if @update_enqueued
.error (response, status)=>
@scheduleRetry(status)
RailsFlashLoader.loadFlash({error: t('js.cart.add_to_cart_failed')})
@update_running = false
compareAndNotifyStockLevels: (stockLevels) =>
@@ -87,13 +87,6 @@ Darkswarm.factory 'Cart', (CurrentOrder, Variants, $timeout, $http, $modal, $roo
max_quantity: li.max_quantity
{variants: variants}
scheduleRetry: (status) =>
console.log "Error updating cart: #{status}. Retrying in 3 seconds..."
$timeout =>
console.log "Retrying cart update"
@orderChanged()
, 3000
saved: =>
@dirty = false
$(window).unbind "beforeunload"

View File

@@ -14,15 +14,32 @@ Darkswarm.factory 'Checkout', ($injector, CurrentOrder, ShippingMethods, StripeE
submit: =>
Loading.message = t 'submitting_order'
$http.put('/checkout.json', {order: @preprocess()}).success (data, status)=>
Navigation.go data.path
.error (response, status)=>
if response.path
Navigation.go response.path
else
Loading.clear()
@errors = response.errors
RailsFlashLoader.loadFlash(response.flash)
$http.put('/checkout.json', {order: @preprocess()})
.then (response) =>
Navigation.go response.data.path
.catch (response) =>
try
@handle_checkout_error_response(response)
catch error
try
@loadFlash(error: t("checkout.failed")) # inform the user about the unexpected error
finally
throw error # generate a BugsnagJS alert
handle_checkout_error_response: (response) =>
throw response unless response.data?
if response.data.path?
Navigation.go response.data.path
else
throw response unless response.data.flash?
@errors = response.data.errors
@loadFlash(response.data.flash)
loadFlash: (flash) =>
Loading.clear()
RailsFlashLoader.loadFlash(flash)
# Rails wants our Spree::Address data to be provided with _attributes
preprocess: ->

View File

@@ -0,0 +1,10 @@
Darkswarm.factory "EnterpriseListModal", ($modal, $rootScope, $http, EnterpriseModal)->
new class EnterpriseListModal
open: (enterprises)->
scope = $rootScope.$new(true)
scope.enterprises = enterprises
scope.openModal = EnterpriseModal.open
if Object.keys(enterprises).length > 1
$modal.open(templateUrl: "enterprise_list_modal.html", scope: scope)
else
EnterpriseModal.open enterprises[Object.keys(enterprises)[0]]

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/enterprises/" + enterprise.id + "/shopfront").success (data) ->
$http.get("/api/shops/" + enterprise.id).success (data) ->
scope.enterprise = data
$modal.open(templateUrl: "enterprise_modal.html", scope: scope)
.error (data) ->

View File

@@ -1,27 +1,30 @@
Darkswarm.factory 'Enterprises', (enterprises, CurrentHub, Taxons, Dereferencer, Matcher, Geo, $rootScope) ->
Darkswarm.factory 'Enterprises', (enterprises, ShopsResource, CurrentHub, Taxons, Dereferencer, Matcher, GmapsGeo, $rootScope) ->
new class Enterprises
enterprises: []
enterprises_by_id: {}
constructor: ->
# Populate Enterprises.enterprises from json in page.
@enterprises = enterprises
@initEnterprises(enterprises)
initEnterprises: (enterprises) ->
# Map enterprises to id/object pairs for lookup.
for enterprise in enterprises
@enterprises.push enterprise
@enterprises_by_id[enterprise.id] = enterprise
# Replace enterprise and taxons ids with actual objects.
@dereferenceEnterprises()
@dereferenceEnterprises(enterprises)
@producers = @enterprises.filter (enterprise)->
enterprise.category in ["producer_hub", "producer_shop", "producer"]
@hubs = @enterprises.filter (enterprise)->
enterprise.category in ["hub", "hub_profile", "producer_hub", "producer_shop"]
dereferenceEnterprises: ->
dereferenceEnterprises: (enteprises) ->
if CurrentHub.hub?.id
CurrentHub.hub = @enterprises_by_id[CurrentHub.hub.id]
for enterprise in @enterprises
for enterprise in enterprises
@dereferenceEnterprise enterprise
dereferenceEnterprise: (enterprise) ->
@@ -42,6 +45,12 @@ Darkswarm.factory 'Enterprises', (enterprises, CurrentHub, Taxons, Dereferencer,
for enterprise in new_enterprises
@enterprises_by_id[enterprise.id] = enterprise
loadClosedEnterprises: ->
request = ShopsResource.closed_shops {}, (data) =>
@initEnterprises(data)
request.$promise
flagMatching: (query) ->
for enterprise in @enterprises
enterprise.matches_name_query = if query? && query.length > 0
@@ -50,7 +59,7 @@ Darkswarm.factory 'Enterprises', (enterprises, CurrentHub, Taxons, Dereferencer,
false
calculateDistance: (query, firstMatching) ->
if query?.length > 0
if query?.length > 0 and GmapsGeo.OK
if firstMatching?
@setDistanceFrom firstMatching
else
@@ -59,9 +68,9 @@ Darkswarm.factory 'Enterprises', (enterprises, CurrentHub, Taxons, Dereferencer,
@resetDistance()
calculateDistanceGeo: (query) ->
Geo.geocode query, (results, status) =>
GmapsGeo.geocode query, (results, status) =>
$rootScope.$apply =>
if status == Geo.OK
if status == GmapsGeo.OK
#console.log "Geocoded #{query} -> #{results[0].geometry.location}."
@setDistanceFrom results[0].geometry.location
else
@@ -70,8 +79,13 @@ Darkswarm.factory 'Enterprises', (enterprises, CurrentHub, Taxons, Dereferencer,
setDistanceFrom: (locatable) ->
for enterprise in @enterprises
enterprise.distance = Geo.distanceBetween enterprise, locatable
enterprise.distance = GmapsGeo.distanceBetween enterprise, locatable
$rootScope.$broadcast 'enterprisesChanged'
resetDistance: ->
enterprise.distance = null for enterprise in @enterprises
geocodedEnterprises: =>
@enterprises.filter (enterprise) ->
enterprise.latitude? && enterprise.longitude?

View File

@@ -1,6 +1,6 @@
Darkswarm.service "Geo", ->
new class Geo
OK: google.maps.GeocoderStatus.OK
Darkswarm.service "GmapsGeo", ->
new class GmapsGeo
OK: google?.maps?.GeocoderStatus?.OK
# Usage:
# Geo.geocode address, (results, status) ->
@@ -10,7 +10,7 @@ Darkswarm.service "Geo", ->
# 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': "<%= Spree::Country.find_by(id: Spree::Config[:default_country_id]).iso %>"}, callback
distanceBetween: (src, dst) ->
google.maps.geometry.spherical.computeDistanceBetween @toLatLng(src), @toLatLng(dst)

View File

@@ -1,21 +1,37 @@
Darkswarm.factory "OfnMap", (Enterprises, EnterpriseModal) ->
Darkswarm.factory "OfnMap", (Enterprises, EnterpriseListModal, MapConfiguration) ->
new class OfnMap
constructor: ->
@enterprises = @enterprise_markers(Enterprises.enterprises)
@enterprises = @enterprises.filter (enterprise) ->
enterprise.latitude != null || enterprise.longitude != null # Remove enterprises w/o lat or long
@coordinates = {}
@enterprises = Enterprises.geocodedEnterprises()
@enterprises = @enterprise_markers(@enterprises)
enterprise_markers: (enterprises) ->
@extend(enterprise) for enterprise in enterprises
enterprise_hash: (hash, enterprise) ->
hash[enterprise.id] = { id: enterprise.id, name: enterprise.name, icon: enterprise.icon_font }
hash
extend_marker: (marker, enterprise) ->
marker.latitude = enterprise.latitude
marker.longitude = enterprise.longitude
marker.icon = enterprise.icon
marker.id = [enterprise.id]
marker.enterprises = @enterprise_hash({}, enterprise)
# Adding methods to each enterprise
extend: (enterprise) ->
new class MapMarker
# We cherry-pick attributes because GMaps tries to crawl
# our data, and our data is cyclic, so it breaks
latitude: enterprise.latitude
longitude: enterprise.longitude
icon: enterprise.icon
id: enterprise.id
reveal: =>
EnterpriseModal.open enterprise
marker = @coordinates[[enterprise.latitude, enterprise.longitude]]
if marker
marker.icon = MapConfiguration.options.cluster_icon
@enterprise_hash(marker.enterprises, enterprise)
marker.id.push(enterprise.id)
else
marker = new class MapMarker
# We cherry-pick attributes because GMaps tries to crawl
# our data, and our data is cyclic, so it breaks
reveal: =>
EnterpriseListModal.open this.enterprises
@extend_marker(marker, enterprise)
@coordinates[[enterprise.latitude, enterprise.longitude]] = marker
marker

View File

@@ -0,0 +1,30 @@
Darkswarm.factory 'MapCentreCalculator', (Enterprises, openStreetMapConfig) ->
new class MapCentreCalculator
initialLatitude: =>
if Enterprises.geocodedEnterprises().length > 0
@_calculate("latitude", Enterprises.geocodedEnterprises())
else
openStreetMapConfig.open_street_map_default_latitude
initialLongitude: =>
if Enterprises.geocodedEnterprises().length > 0
@_calculate("longitude", Enterprises.geocodedEnterprises())
else
openStreetMapConfig.open_street_map_default_longitude
_calculate: (angleName, coordinates) =>
angles = []
for coordinate in coordinates
angles.push(coordinate[angleName])
minimumAngle = Math.min.apply(null, angles)
maximumAngle = Math.max.apply(null, angles)
distanceBetweenMinimumAndMaximum = if maximumAngle > minimumAngle
maximumAngle - minimumAngle
else
minimumAngle - maximumAngle
minimumAngle + (distanceBetweenMinimumAndMaximum / 2)

View File

@@ -4,6 +4,7 @@ Darkswarm.factory "MapConfiguration", ->
center:
latitude: -37.4713077
longitude: 144.7851531
cluster_icon: "<%= image_path('map_009-cluster.svg') %>"
zoom: 12
additional_options:
# mapTypeId: 'satellite'

View File

@@ -1,6 +1,6 @@
Darkswarm.factory 'OrderCycle', ($resource, orderCycleData) ->
class OrderCycle
@order_cycle = orderCycleData # Object or {} due to RABL
@order_cycle = orderCycleData # Object or {}
@push_order_cycle: (callback) ->
new $resource("/shop/order_cycle").save {order_cycle_id: @order_cycle.order_cycle_id}, (order_data)->
OrderCycle.order_cycle.orders_close_at = order_data.orders_close_at

View File

@@ -34,7 +34,7 @@ Darkswarm.factory 'Products', (OrderCycleResource, OrderCycle, Shopfront, curren
product.price = Math.min.apply(null, prices)
product.hasVariants = product.variants?.length > 0
product.primaryImage = product.images[0]?.small_url if product.images
product.primaryImageOrMissing = product.primaryImage || "/assets/noimage/small.png"
product.primaryImageOrMissing = product.primaryImage || "/noimage/small.png"
product.largeImage = product.images[0]?.large_url if product.images
dereference: ->

View File

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

View File

@@ -0,0 +1,7 @@
Darkswarm.factory "StockQuantity", ->
new class StockQuantity
available_quantity: (on_hand, finalized_quantity) ->
on_hand = parseInt(on_hand)
finalized_quantity = parseInt(finalized_quantity) || 0 # finalized_quantity is optional
on_hand + finalized_quantity

View File

@@ -15,9 +15,11 @@ Darkswarm.factory 'StripeElements', ($rootScope, Loading, RailsFlashLoader) ->
if(response.error)
Loading.clear()
RailsFlashLoader.loadFlash({error: t("error") + ": #{response.error.message}"})
@triggerAngularDigest()
console.error(JSON.stringify(response.error))
else
secrets.token = response.token.id
secrets.cc_type = @mapCC(response.token.card.brand)
secrets.cc_type = @mapTokenApiCardBrand(response.token.card.brand)
secrets.card = response.token.card
submit()
@@ -32,15 +34,21 @@ Darkswarm.factory 'StripeElements', ($rootScope, Loading, RailsFlashLoader) ->
if(response.error)
Loading.clear()
RailsFlashLoader.loadFlash({error: t("error") + ": #{response.error.message}"})
@triggerAngularDigest()
console.error(JSON.stringify(response.error))
else
secrets.token = response.paymentMethod.id
secrets.cc_type = response.paymentMethod.card.brand
secrets.cc_type = @mapPaymentMethodsApiCardBrand(response.paymentMethod.card.brand)
secrets.card = response.paymentMethod.card
submit()
# Maps the brand returned by Stripe to that required by activemerchant
mapCC: (ccType) ->
switch ccType
triggerAngularDigest: ->
# $evalAsync is improved way of triggering a digest without calling $apply
$rootScope.$evalAsync()
# Maps the brand returned by Stripe's tokenAPI to that required by activemerchant
mapTokenApiCardBrand: (cardBrand) ->
switch cardBrand
when 'MasterCard' then return 'master'
when 'Visa' then return 'visa'
when 'American Express' then return 'american_express'
@@ -48,6 +56,14 @@ Darkswarm.factory 'StripeElements', ($rootScope, Loading, RailsFlashLoader) ->
when 'JCB' then return 'jcb'
when 'Diners Club' then return 'diners_club'
# Maps the brand returned by Stripe's paymentMethodsAPI to that required by activemerchant
mapPaymentMethodsApiCardBrand: (cardBrand) ->
switch cardBrand
when 'mastercard' then return 'master'
when 'amex' then return 'american_express'
when 'diners' then return 'diners_club'
else return cardBrand # a few brands are equal, for example, visa
# It doesn't matter if any of these are nil, all are optional.
makeCardData: (secrets) ->
{'name': secrets.name,

View File

@@ -20,7 +20,6 @@ Darkswarm.factory 'Variants', ->
name = variant.product_name
else
name = "#{variant.product_name} - #{variant.name_to_display}"
name += " (#{variant.options_text})" if variant.options_text
name
lineItemFor: (variant) ->

View File

@@ -4,8 +4,8 @@
%div.menu{ 'ng-show' => "expanded" }
%div.menu_item{ ng: { repeat: "column in columns", click: "toggle(column)", class: "{selected: column.visible}" } }
%span.check
%span.name {{column.name }}
%span.name {{ column.name }}
%hr
%div.menu_item.text-center
%input.fullwidth.orange{ type: "button", ng: { value: "saved() ? 'Saved': 'Saving'", show: "saved() || saving", disabled: "saved()" } }
%input.fullwidth.red{ type: "button", value: 'Save As Default', ng: { show: "!saved() && !saving", click: "saveColumnPreferences(action)"} }
%input.fullwidth.red{ type: "button", :value => t('admin.column_save_as_default').html_safe, ng: { show: "!saved() && !saving", click: "saveColumnPreferences(action)"} }

View File

@@ -0,0 +1,2 @@
%ng-include{src: "'partials/enterprise_listing.html'"}
%ng-include{src: "'partials/close.html'"}

View File

@@ -1,4 +1,3 @@
%ul
%active-selector{ ng: { repeat: "selector in allSelectors", show: "ifDefined(selector.fits, true)" } }
%render-svg{path: "{{selector.object.icon}}", ng: { if: "selector.object.icon"} }
%span{"ng-bind" => "::selector.object.name"}

View File

@@ -20,6 +20,7 @@
type: "email",
id: "email",
tabindex: 1,
inputmode: "email",
"ng-model" => "spree_user.email"}
.row
.large-12.columns
@@ -27,3 +28,4 @@
tabindex: "3",
type: "submit",
value: "{{'reset_password' | t}}"}

View File

@@ -15,6 +15,7 @@
type: "email",
id: "email",
tabindex: 1,
inputmode: "email",
"ng-model" => "spree_user.email"}
.row
.large-12.columns
@@ -24,6 +25,7 @@
id: "password",
autocomplete: "off",
tabindex: 2,
inputmode: "password",
"ng-model" => "spree_user.password"}
.row
.large-12.columns
@@ -39,3 +41,4 @@
tabindex: "3",
type: "submit",
value: "{{'label_login' | t}}"}

View File

@@ -0,0 +1,10 @@
.modal-list
.row{"ng-repeat" => "(id, enterprise) in ::enterprises"}
.highlight
.highlight-top.row.enterprise
.small-12.medium-12.large-12.columns
%h4
%a.heading{"ng-click" => "::openModal(enterprise)"}
%i{"ng-class" => "enterprise.icon"}
%span{"ng-bind" => "enterprise.name"}
%img.hero-img{"ng-src" => "{{::enterprise.promo_image}}"}

View File

@@ -6,6 +6,8 @@
min: 0,
placeholder: "0",
"ofn-disable-scroll" => true,
"ng-debounce" => "500",
onwheel: "this.blur()",
"ng-model" => "variant.line_item.quantity",
"ofn-on-hand" => "{{variant.on_demand && 9999 || variant.on_hand }}",
"ng-disabled" => "!variant.on_demand && variant.on_hand == 0",

View File

@@ -9,6 +9,8 @@
"ng-model" => "variant.line_item.quantity",
placeholder: "{{::'shop_variant_quantity_min' | t}}",
"ofn-disable-scroll" => true,
"ng-debounce" => "500",
onwheel: "this.blur()",
"ofn-on-hand" => "{{variant.on_demand && 9999 || variant.on_hand }}",
name: "variants[{{::variant.id}}]", id: "variants_{{::variant.id}}"}
%span.bulk-input
@@ -19,6 +21,8 @@
"ng-model" => "variant.line_item.max_quantity",
placeholder: "{{::'shop_variant_quantity_max' | t}}",
"ofn-disable-scroll" => true,
"ng-debounce" => "500",
onwheel: "this.blur()",
min: "{{variant.line_item.quantity}}",
name: "variant_attributes[{{::variant.id}}][max_quantity]",
id: "variants_{{::variant.id}}_max"}

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