Maikel Linke cdb49f88b0 Move Variant deletion into its own service
This keeps the override of Spree's model leaner. More importantly, it
prepares us for using `destroy` instead of `delete`.

In the past, `Product#delete` soft-deleted the product, but didn't
delete the variants. When we use `Product#destroy` to soft-delete the
product, it will also call destroy on the variants. If the model doesn't
allow the deletion of the last variant, it will fail. So when a product
is deleted we want to allow the deletion of all variants. But the user
should not be allowed to delete the last variant. That's why I'm moving
the check to the controller level.

Related commits:

- e6c7acdff3
- 2b47c9145a
- b9f19d5777 (diff-412c5af2ec1ba9f6643f6df5a673c1d4R105)
2019-02-19 14:25:18 +11:00
2019-02-08 16:58:32 +11:00
2015-12-24 11:44:12 +11:00
2012-03-27 10:10:26 +11:00
2019-01-16 01:18:46 +00:00
2015-01-09 15:30:49 +11:00
2015-11-05 11:09:22 +11:00
2016-02-09 06:11:13 +00:00
2012-12-18 15:56:54 +11:00
2018-10-04 18:43:30 +02:00

Build Status Code Climate View performance data on Skylight

Open Food Network

The Open Food Network is an online marketplace for local food. It enables a network of independent online food stores that connect farmers and food hubs (including coops, online farmers' markets, independent food businesses etc); with individuals and local businesses. It gives farmers and food hubs an easier and fairer way to distribute their food.

Supported by the Open Food Foundation and a network of global affiliates, we are proudly open source and not-for-profit - we're trying to seriously disrupt the concentration of power in global agri-food systems, and we need as many smart people working together on this as possible.

We're part of global movement - get involved!

Contributing

If you are interested in contributing to the OFN in any capacity, please introducing yourself on Slack, and have a look through our Contributor Guide

Our GETTING_STARTED and CONTRIBUTING guides are the best place to start for developers looking to set up a development environment and make contributions to the codebase.

Provisioning

If you're interested in provisioning a server, see ofn-install for the project's Ansible playbooks.

We also have a Super Admin Guide to help with configuration of new servers.

Credits

Licence

Copyright (c) 2012 - 2018 Open Food Foundation, released under the AGPL licence.

Description
Connect suppliers, distributors and consumers to trade local produce.
Readme 159 MiB
Languages
Ruby 74.7%
Haml 9.4%
CoffeeScript 7.3%
SCSS 4.5%
JavaScript 3.6%
Other 0.4%