Commit Graph

960 Commits

Author SHA1 Message Date
Maikel Linke
600c8fcd4c Send confirmation emails immediately
Using deferred methods on the user model breaks delayed jobs when the
user is deleted while the job still exists. We could create a proper job
referencing a user id for sending these emails instead. But since the
user has to wait for the confirmation email anyway, we can send it
within the current request. This should be revised if performance
becomes an issue.

Sending the email directly also has the advantage that we can tell the
user if emailing failed. See the following commits.

This change impacts a bunch of specs as we now need a working email
setup to create unconfirmed users. This commit introduces a custom
matcher to unify testing for confirmation emails.
2018-09-27 13:33:08 +10:00
Maikel
51f9a0afa1 Merge pull request #2562 from Matt-Yorkley/pi/product_attributes
[Product Import] Product attributes
2018-09-25 11:36:03 +10:00
Pau Pérez Fabregat
b8417058b4 Merge pull request #2741 from coopdevs/refactor-checkout-process-bits
Refactor checkout process bits
2018-09-24 12:08:19 +02:00
luisramos0
0e6b0aa248 Deleted sample specs and one pending spec 2018-09-19 23:45:00 +01:00
Matt-Yorkley
fc68e28e4d Add :description to non-updatable attributes list 2018-09-19 22:30:10 +01:00
Matt-Yorkley
b57c6cf9ac Add errors when attempting to update non-updatable fields 2018-09-19 21:12:29 +01:00
Pau Perez
2a0e0eed73 Move state_machine's additions inside class_eval
And also cover them with tests.
2018-09-18 11:20:32 +02:00
Pau Perez
1fdc578901 Increase readability (a bit) of OrderUpdater 2018-09-18 11:20:32 +02:00
Pau Perez
99cdeca0b1 Remove useless RSpec context block 2018-09-18 11:20:32 +02:00
Pau Perez
13f73b4512 Test :restart_checkout state machine event 2018-09-18 11:20:32 +02:00
Maikel
beedd933e9 Merge pull request #2512 from kristinalim/feature-remove_enterprise_images
Support removal of enterprise logo and promo image
2018-09-14 15:07:24 +10:00
Kristina Lim
9c3bb863da Add endpoints for removing enterprise images 2018-09-04 01:32:39 +08:00
Matt-Yorkley
8de0355dc7 Add spec for multiple stages during import 2018-08-28 14:05:57 +01:00
Matt-Yorkley
f905284f7a Add spec for edge case 2018-08-28 12:45:04 +01:00
Matt-Yorkley
8c2a49a57c Update PI model spec 2018-08-27 23:08:19 +01:00
Matt-Yorkley
666fbf53bf Validate enterprise.is_primary_producer? 2018-08-24 15:51:37 +10:00
Maikel
a37931afda Merge pull request #2542 from luisramos0/add_to_cart
Extract OrderController.populate to new CartController and OrderPopulator to new CartService
2018-08-24 14:43:33 +10:00
Maikel
bf55190136 Merge pull request #2546 from Matt-Yorkley/pi/sku_validation
Remove empty SKU values if empty
2018-08-24 14:32:00 +10:00
luisramos0
910297572e Removed unnecessary currency from CartService constructor, using order.currency instead 2018-08-23 12:40:18 +01:00
luisramos0
05bfc098ff /controllers/spree/order_populator_decorator (with a class_eval) is now /services/CartService with no dependency to Spree::OrderPopulator. 2018-08-23 12:39:55 +01:00
Matt-Yorkley
28b1fc076a Remove empty SKU values if empty 2018-08-16 14:29:50 +01:00
luisramos0
0b9061df28 removed Cart route, controller, model and specs: dead code 2018-08-11 22:17:12 +01:00
Matt-Yorkley
67767f86eb Change import and reset logic to work with first page 2018-07-23 02:07:00 +01:00
Matt-Yorkley
bd200c885b Move options to first page 2018-07-23 01:46:32 +01:00
Pau Pérez Fabregat
4f215da735 Merge pull request #2467 from mkllnk/ci-output-test
Use progress formatter on Travis to avoid timeout
2018-07-18 19:19:40 +02:00
Pau Pérez Fabregat
fac8e26d8b Merge pull request #2475 from Matt-Yorkley/pi/landing_page
PI: landing page
2018-07-18 16:47:17 +02:00
Matt-Yorkley
c7deae4253 Remove category field from inventory specs 2018-07-18 12:59:19 +01:00
Pau Pérez Fabregat
7bf27ec6b3 Merge pull request #2409 from mkllnk/2013-remove-scope-active_distributors
2013 Remove dead code for Spree upgrade
2018-07-18 10:38:19 +02:00
Maikel Linke
622517501c Make spec robust on slow computers
This spec just failed in an unrelated pull request.
https://travis-ci.org/openfoodfoundation/openfoodnetwork/jobs/403435522

This change should fix it even on very slow computers.
2018-07-13 19:10:06 +10:00
Rob Harrington
4863f2b5b4 Remove unrequired credit_card_id field from subscriptions table 2018-07-05 19:26:12 +10:00
Rob Harrington
fc2844a3d5 Add default_card method to user model 2018-07-05 19:26:11 +10:00
Frank West
09534b41e9 Remove taxon when primary taxon is changed
We are adding taxons to the product as you change the primary taxon.
However we never remove the previous primary taxon so it forces the user
to update the taxons manually. This can be a big problem if you are bulk
updating products.

We now remove the taxon that matches the previously set primary taxon.
2018-07-04 09:16:50 +10:00
Rob Harrington
2da6234362 Add spec for StripeGateway#refund 2018-07-03 14:21:58 +10:00
Maikel Linke
306bfa1944 Remove unused method enterprise method
`Enterprise.has_supplied_products_on_hand?` is not used anywhere.
2018-06-27 11:25:44 +10:00
Maikel Linke
792701297b Remove unused scope Enterprise.active_distributors
Working on the Spree upgrade, we found that this scope is using the soon
obsolete column `spree_products.count_on_hand`. Trying to measure the
impact of changing this scope, I couldn't find any use of it.

There is a variable called `active_distributors` used when serialising
enterprises, but that variable is initialised with
`Enterprise.distributors_with_active_order_cycles.ready_for_checkout`,
not using the `active_distributors` scope.

See also:
https://github.com/openfoodfoundation/openfoodnetwork/issues/2013
2018-06-27 11:12:54 +10:00
Frank West
8324b00999 Renames product bulk edit action to index
When a user hit cancel while editing a product it took them to the spree
products index page instead of the bulk edit page. The button was part
of a shared view for all resources so changing it's actions were not
readily available.

It was suggested that instead of carrying our own separate controller
action we could just override the index action of the products
controller with the bulk edit functionality instead. This has the
advantage of removing some overrides and allows us to not add
additional overrides in the future.
2018-06-19 17:51:23 +10:00
Pau Perez
78e59d059a Show product import's UI only to superadmins
We still need to iterate on its implementation and it's too early to
make it publicly available.
2018-06-11 19:50:53 +02:00
Rob Harrington
d146d3714f Add callbacks to ensure a user always has a default credit card
(if any exist)
2018-06-08 15:30:01 +10:00
Matt-Yorkley
c2c42e1d9a Product Import refactor 2018-05-26 19:34:20 +01:00
Matt-Yorkley
b26bec45d6 Expanding PI specs
squash
2018-05-26 19:34:19 +01:00
Matt-Yorkley
6efd167400 PI inventories UX
Minor tweaks
2018-05-26 19:34:19 +01:00
Matt-Yorkley
fe01e8ede3 PI human-readable unit fields
Enhanced unit specs
2018-05-26 19:34:19 +01:00
Matt-Yorkley
b3c906b3a4 Product Import v3 with asynchronous processing
Fixed spec

Quick spec tweak
2018-05-26 19:34:19 +01:00
Matt-Yorkley
e76a818fde Update PI spec 2018-05-26 19:34:19 +01:00
Pau Perez
5a182e8e88 Remove enterprises producers tab from dashboard 2018-05-22 10:21:35 +02:00
Rory Trunkhill
5706cecf26 modify enterprise eror name message #620 2018-05-17 18:10:35 +00:00
Matt-Yorkley
358edb4727 Disable guest checkout in model 2018-05-11 12:05:27 +10:00
Daniel Dominguez
9d9a974295 Switched gem FactoryGirl to FactoryBot as FactoryGirl is deprecated.
- Change FactoryGirl to FactoryBot everywhere on code.
2018-05-04 11:52:08 -03:00
Pau Pérez Fabregat
1abfe2ab8c Merge pull request #2199 from coopdevs/auto-correct-cops
Auto correct cops
2018-04-16 14:58:28 +02:00
Pau Perez
f5a5d735fd Auto correct Rubocop's Layout/EmptyLinesAroundModuleBody cop 2018-04-09 18:47:18 +02:00